McIndex-Variablen (Jack2)

Aus JACK Wiki
Zur Navigation springen Zur Suche springen

McIndex-Variablen finden in Multiple-Choice Aufgaben mit einem Pool an Aussagen Verwendung. Sie fungieren dabei als Hilfsvariablen für die zufällige Auswahl aus einer oder mehreren Set-Variablen. Alle mcindex-Variablen sind innerhalb einer Stufe disjunkt zueinander. Das heißt ein gezogener Index wird bei den noch zu ziehenden Indizes nicht mehr gezogen.

Beispiel: In der Stufe 1 sind 3 mcindex-Variablen vorhanden mit jeweils dem Attribut upperbound="5". Der erste Index zieht den Wert 3 (für den Zweiten stehen noch {0,1,2,4} zur Auswahl). Der zweite Index zieht den Wert 1 (für den Dritten stehen noch {0,2,4} zur Auswahl). Der letzte Index zieht den Wert 4 (ungezogen bleiben {0,2}).

Ein Anwendungsszenario ist eine MC-Aufgabe/Teilaufgabe mit z.B. 8 Aussagen, wovon aber nur 3 in der Aufgabe zur Auswahl stehen sollen. Demnach werden 3 Indizes benötigt, welche passende Werte für die answers option, das correctanswer choice pattern, die feedback choice pattern, den Feedback-Text und die skipmessage ziehen können.

Zwingend benötigte Attribute

 <option name="i1" type="mcindex" forstage="1" optionset="aussagen" answerposition="0" patternset="pattern" set="{0,1,2,3}" />
 <option name="i2" type="mcindex" forstage="1" optionset="aussagen" answerposition="1" patternset="pattern" upperbound="4" />
  • name - Die Variable wird, wie alle anderen, mit einem Namen versehen, welcher sie referenziert. Zulässig sind String-Werte.
  • type - Gibt an um was für eine option es sich handelt. Der Wert ist zwingend "mcindex".
  • forstage - Der Wert dieses Attributes referenziert die Stufen-ID, in welcher die Variable verwendet wird. Zulässig sind Integer-Werte und entspricht der ID der Stufe in der sie verwendet wird.
  • optionset - Gibt das set an aus der die elements für die answers option gezogen werden. Zulässig sind String-Werte und entspricht dem name des sets mit den Aussagen.
  • answerposition - Gibt an auf welcher Position das gezogene element in der Stufendatei steht. Die answers in der Stufe können auch randomisiert werden. Durch dieses Attribut wird die Auswahl der Studierenden den richtigen Aussagen zugeordnet. Die Werte werden ab 0 fortlaufend durchnummeriert und entsprechen der answers option position in der Stufendatei.
  • patternset - Gibt das set an, welches bestimmt, welche Aussagen Distraktoren bzw. richtige Antworten sind. Aus diesem set kann ebenfalls das pattern der correctanswer gezogen werden. Auch wenn das correctanswer pattern in der Stufe statisch ist, daher nicht gezogen wird, muss es ein set mit "0" und "1" als elemente in der exerciseChain angegeben werden. Zulässig sind String-Werte und entspricht dem name des sets welches die pattern-Werte beinhaltet.
  • set oder upperbound - Genau eines der beiden Attribute muss vorhanden sein, welches die zu ziehenden Indizes vorgibt.

Upperbound gibt eine obere Grenze an, sodass alle möglichen Indizes von 0 bis exklusive der Grenze zur Auswahl stehen. Es findet Anwendung in Aufgaben, in der die Aussagen völlig zufällig gezogen werden.

Set ermöglicht es eine beliebige Auswahl an Indizes vorzugeben. Dies ist sinnvoll, wenn Teilgruppierungen innerhalb des optionsets gewünscht sind.

Beispiel: upperbound="5" entspricht dem set="{0,1,2,3,4}"

Mögliche Exceptions

Die folgenden Exceptions können beim Hochladen der exerciseChain fliegen. AttributeNotUsedException

Diese Exception fliegt, wenn eines der benötigten Attribute nicht vorhanden ist. Die Fehlermeldung benennt die betroffene mcindex-Variabel und welches Attribut fehlt.

ForstageNotInteger Exception

Diese Exception fliegt, wenn der Wert des Attributs forstage kein Integer-Wert ist. Die Fehlermeldung benennt die betroffene mcindex-Variabel und den Fehler selbst.

AnswerpositionNotIntegerException

Diese Exception fliegt, wenn der Wert des Attributs answerposition kein Integer-Wert ist. Die Fehlermeldung benennt die betroffene mcindex-Variabel und den Fehler selbst.

ExpectedOptionNotFoundException

Diese Exception fliegt, wenn die von den Attributen optionset oder patternset geforderten set-Variablen nicht in der exerciseChain enthalten sind. Die Fehlermeldung benennt die fehlende set-Variabeln und welche mcindex-Variabel diese verlangt.

IllegalCombinationException

Diese Exception fliegt, wenn die Attribute set und upperbound beide innerhalb einer mcindex-Variabel verwendet werden. Die Fehlermeldung benennt die betroffene mcindex-Variabel und den Fehler selbst.

UpperboundNotIntegerException

Diese Exception fliegt, wenn der Wert des Attributs upperbound kein Integer-Wert ist. Die Fehlermeldung benennt die betroffene mcindex-Variabel und den Fehler selbst.

NotIntegerSetExceptiion

Diese Exception fliegt, wenn das Attribut set kein Interger-Set ist. Die Fehlermeldung benennt die betroffene mcindex-Variabel und den Fehler selbst.

AnswerpositionDoubleUsedException

Diese Exception fliegt, wenn zwei mcindex-Variabeln einer Stufe den selben Wert beim Attribut answerposition besitzen. Die Fehlermeldung benennt beide betroffenen mcindex-Variabeln und den Fehler selbst.