Booklet‐Xml - iqb-berlin/iqb-berlin.github.io GitHub Wiki
Attribute und Daten | Booklet Konfiguration |
Die Testheft-Definition besteht aus einer XML-Datei. Hinweise zur Bearbeitung von XML-Dateien erhalten Sie hier.
Die in der Xml-Datei angelegten Attribute und Elemente sind nicht frei wählbar, sondern orientieren sich an einer Schema-Definition. Diese gibt vor, welche Elemente und Attribute verwendet werden dürfen. Die Schema Definition für die Booklet.xml ist hier ersichtlich.
ℹ️ Die Schemadefinition legt fest, welche Elemente und welche Attribute für diese Elemente verwendet werden dürfen.
Die Struktur der Elemente einer Booklet-Xml sieht wie folgt aus:
<Booklet xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="Ort der Schemadefinition">
<?xml version="1.0" encoding="utf-8"?>
<Metadata>
</Metadata>
<BookletConfig>
</BookletConfig>
<Units>
<Testlet>
<Restrictions>
</Restrictions>
<Unit>
</Unit>
</Testlet>
</Units>
</Booklet>
Allen hier aufgeführten Elementen können weitere Attribute und Werte hinzugefügt werden.
Bsp: Das Element Testlet
kann die Attribute id
und label
enthalten. Diesen Attributen können dann bestimmte Werte zugewiesen werden:
<Testlet id="TSL01" label="Testlet01">
ℹ️ Elemente, die nicht benötigt werden, können einfach weggelassen werden. Wird bspw. kein Testlet benötigt, weil die Aufgaben (Units) einfach hintereinander weg im Element <Units>
aufgeführt werden sollen, kann das entsprechende Element einfach weggelassen werden.
ℹ️ Jedes Element verfügt über eine festgelegte Anzahl von möglichen Attributen. Diese möglichen Attribute sind in der Schemadefinition festgelegt. Werden ein oder mehrere Attribute nicht explizit aufgeführt und mit einem Wert versehen, werden für dieses Attribute Standardwerte verwendet.
Nachfolgend werden die oben gezeigten Elemente und deren mögliche Attribute, Attributwerte und Daten aufgeführt.
METADATA
Id: | >xxx< | Datum | Frei wählbarer Wert. Der Name muss in gleicher Schreibweise auch in der Testtakers.xml aufgeführt sein damit dieses Booklet aufgerufen werden kann! |
Label: | >xxx< | Datum | Frei wählbarer Wert zur Bezeichnung des Booklets. |
Description: | >xxx< | Datum | Frei wählbarer Wert zur weiteren Beschreibung dieses Booklets. |
<Metadata>
<Id>Booklet1</Id>
<Label>Sekundarstufe I Englisch Ansichtsaufgaben</Label>
<Description>Sekundarstufe I Englisch Ansichtsaufgaben</Description>
</Metadata>
BOOKLETCONFIG
Config: | key | Attribut | Vordefinierter Wert. Ermöglicht eine Booklet Konfiguration. Die möglichen zu verwendenden Werte sind im nächsten Abschnitt zu finden. |
Config: | >xxx< | Datum | Vordefinierter Wert. Die möglichen zu verwendenden Werte sind im nächsten Abschnitt zu finden. |
<BookletConfig>
<Config key="vordefinierter Attributwert">vordefiniertes Datum</Config>
</BookletConfig>
ℹ️ Welche vordefinierten Attributwerte und Daten dem Attribut key
zugeordnet werden können, ist dem nächsten Abschnitt zu entnehmen.
UNITS
Unit: | id | Attribut | Frei wählbarer Wert. Wert muss in gleicher Schreibweise auch in der entsprechenden Unit unter ID aufgeführt sein! |
Unit: | label | Attribut | Frei wählbarer Wert zur Bezeichnung der Unit. |
Unit: | labelshort | Attribut | Frei wählbarer Wert zur Bezeichnung der Navigationsleiste im Testcenter. |
Unit: | alias | Attribut | Eindeutiger frei wählbarer Alias |
<Unit id="Unit_Start" label="Beispielhafte Startseite" labelshort="1" alias=""/>
TESTLET
Testlet: | id | Attribut | Frei wählbarer Wert. |
Testlet: | label | Attribut | Frei wählbarer Wert zur Bezeichnung des Testlets. |
<Testlet id="Examples" label="Beispiele">
</Testlet>
Ein Testlet ist eine Gruppe von Units mit gemeinsamen Restriktionen, beispielsweise einer gemeinsamen Zeitbegrenzung. Testlets können auch rekursiv geschachtelt werden, mit anderen Worten: Ein Testlet kann weitere Testlets enthalten.
Die Testlets der obersten Ebene werden auch Test_blöcke_ genannt.
Zeitbegrenzungen (Restrictions/TimeMax) in geschachtelten Testlets werden ignoriert, sofern diese ebenfalls eine Zeitbegrezung haben.
Restrictions: | CodeToEnter: | code | Attribut | Frei wählbarer Code. |
Restrictions: | CodeToEnter: | >xxx< | Datum | Frei wählbarer Text. Wird als Text zur Codeeingabe angegeben. |
Restrictions: | TimeMax: | minutes | Attribut | Frei wählbarer Wert in Minuten. |
Restrictions: | DenyNavigationOnIncomplete: | presentation | Attribut | ON/OFF/ALWAYS |
Restrictions: | DenyNavigationOnIncomplete: | response | Attribut | ON/OFF/ALWAYS |
<Restrictions>
<CodeToEnter code="Hase">Bitte 1. Freigabewort eingeben!</CodeToEnter>
<TimeMax minutes="20"/>
<DenyNavigationOnIncomplete presentation="ON" response="ON"/>
</Restrictions>
Es ist möglich Booklets zu konfigurieren. Hierfür stehen einige Parameter (Attribute) zur Verfügung, die in der Booklet.xml
angegeben werden können. Alle verwendbaren Parameter befinden sich in einer separaten Konfiguraionsdatei
(booklet-config.json) auf die das Testcenter zugreifen kann. Möchten Sie die Bookletkonfiguration bzgl. spezifisches Eigenschaften ändern,
müssen Sie den gewünschten Parameter mit dem gewünschten Wert in der Booklet.xml unter BookletConfig
angeben. Ein Parameter setzt sich zusammen aus einem Attribut, einem Attributwert und einem entsprechenden Datum. Wie am nachfolgenden Bsp. zu sehen ist, ist key
das Attribut. Als Attribuwerte können nur vordefinierte Werte verwendet werden. Diese sind der weiter unten aufgeführten Tabelle zu entnehmen. Im nachfolgenden Code wäre der Attributwert bspw. c. Das Datum ist in diesem Fall OFF
. Auch das mögliche Datum für den jeweiligen Attributwert, ist der unten aufgeführten Tabelle zu entnehmen. Alle Parameter werden global in der Booklet.xml angelegt. Sie gelten dann für jedes in der Booklet.xml definierte Testlet. Eine Ausnahme stellen die beiden Parameter: force_response_complete
und force_presentation_complete
dar. Diese können auch Testletspezifisch angelegt werden.
Nachfolgend ist bsph. eine Bookletkonfiguration zu sehen. In der Booklet Konfigurationen werden hier die beiden Parameter: force_response_complete
und force_presentation_complete
global für alle Units und Testlets gesetzt. Die beiden Parameter können aber auch für einzelne Testlets die global gesetzten Werte überschreiben. So kann für einzelne Testlets ein anderes Verhalten erzwungen werden.
<Booklet>
<Metadata>
...
</Metadata>
<BookletConfig>
<Config key="force_response_complete">ON</Config>
<Config key="force_presentation_complete">ON</Config>
<Config key="unit_navibuttons">ARROWS_ONLY</Config>
</BookletConfig>
<Units>
<Unit id="Start" label="Willkommen" labelshort="•"/>
<Testlet id="Testlet1" label="Testlet 1">
<Restrictions>
<CodeToEnter code="Hase">Bitte gib das Freigabewort ein.</CodeToEnter>
<TimeMax minutes="10"/>
<DenyNavigationOnIncomplete presentation="OFF" response="OFF" />
</Restrictions>
<Unit id="Aufgabe1" label="Erste Aufgabe" labelshort="1"/>
<Unit id="Aufgabe2" label="Zweite Aufgabe" labelshort="2"/>
</Testlet>
<Unit id="ZWU" label="Zwischenunit" labelshort="•"/>
<Testlet id="Testlet2" label="Testlet 2">
<Restrictions>
<CodeToEnter code="Hase">Bitte gib das Freigabewort ein.</CodeToEnter>
<TimeMax minutes="10"/>
</Restrictions>
<Unit id="Aufgabe3" label="Erste Aufgabe" labelshort="3"/>
<Unit id="Aufgabe4" label="Zweite Aufgabe" labelshort="4"/>
</Testlet>
<Unit id="Ende" label="Verabschiedung" labelshort="•"/>
</Booklet>
ℹ️ Nicht vergebene Attribute werden mit Standardwerten beschrieben. Ist ein spezifisches Verhalten gewünscht, müssen die entsprechenden Attribute und die zugehörigen Werte angegeben werden!
Hier finden Sie eine Übersicht über die verwendbaren Parameter (Attribute) und deren Bedeutung.
ℹ️ Achten Sie bei der Verwendung dieser Parameter auf die richtige Schreibweise (Groß-/Kleinschreibung)!