Kurzanleitung: Aufgabe FormBased (Jack2): Unterschied zwischen den Versionen
K (→exerciseChain) |
K (→Stage) |
||
Zeile 31: | Zeile 31: | ||
=== Stage === | === Stage === | ||
Eine Stage hat beispielsweise folgenden Aufbau | Eine Stage hat beispielsweise folgenden Aufbau: | ||
<?xml version="1.0" encoding="iso-8859-1"?> | <?xml version="1.0" encoding="iso-8859-1"?> |
Version vom 18. April 2017, 10:43 Uhr
Hier wird das Erstellen einer Aufgabe kurz und einfach beschrieben, um ohne viele Vorkenntnisse erfolgreich erste Aufgaben zu generieren. Diese Anleitung behandelt dabei nicht den kompletten Funktionsumfang von JACK, sondern dient lediglich als Einstieg. Weiterführende Informationen finden sich in den verlinkten Artikeln.
Grundlegende Information
Jede Aufgabe in JACK besteht aus mindestens zwei Dateien:
- eine xml-Datei exerciseChain.xml, die die einzelnen Teilaufgaben verwaltet
- mindestens eine xml-Datei stageX.xml, die jeweils eine Teilaufgabe darstellt und entsprechend durchnummeriert sein sollte (stage1.xml, stage2.xml, usw.)
exerciseChain
→ Hauptartikel: ExerciseChain
Eine exerciseChain hat beispielsweise folgenden Aufbau:
<?xml version="1.0" encoding="ISO-8859-1"?> <exercisechain> <variables> <option name="ersteVariable" min="1" max="10" /> </variables> <step id="1" file="stage1.xml"> <input value="[var=ersteVariable]" /> <next default="repeat"> <path target="end" result="100" /> </next> </step> </exercisechain>
Innerhalb von <variables> können mehrere Variablen unterschiedlichen Types definiert werden, die stage-übergreifend genutzt werden können. Auf jede Teilaufgabe kann jeweils mit einem <step> zugegriffen werden. Diese benötigen eine eindeutige id und den Namen der zugehörigen xml-Datei. Außerdem werden hier Variablen an die Teilaufgabe übergeben.
Stage
Eine Stage hat beispielsweise folgenden Aufbau:
<?xml version="1.0" encoding="iso-8859-1"?> <exercise type="fillIn"> <input> <inputvalue name="zahl" type="integer"/> </input> <task> Hier steht der Aufgabentext. Trage die richtige Zahl ein: [fillIn groesse="6"] </task> <advice> <option> Hier kann ein Hinweise stehen. </option> <option> Hier kann ein zweiter Hinweis stehen. </option> </advice> <correctanswer> <option result="[pos=1]==[var=zahl]"/> <message> Nachricht bei richtigem Beantworten der Aufgabe. </message> </correctanswer> <feedback> <option result="[pos=1]!=[var=zahl]"> Nachricht bei konkreter Falscheingabe. </option> <option result="andere"> Nachricht bei genereller Falscheingabe. </option> </feedback> <output/> </exercise>
- <input> greift die von der exerciseChain übergebenen Variablen auf, vergibt passende Typen und Namen zur weiteren Bearbeitung
- <task> beinhaltet den Aufgabentext und gegebenenfalls Fill-In-Felder, Dropdown-Menüs bzw. Multiple-Choice-Kästchen
- <advice> kann einen oder mehrere Hinweise zu der Aufgabe geben, welche sich nacheinander abrufen lassen
- <correctanswer> enthält die Regel für eine korrekte Antwort und entsprechendes Feedback bei richtiger Beantwortung
- <feedback> enthält entsprechend angepasstes Feedback bei nicht korrekten Antworten