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.

Attribute und Daten

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>

Booklet Konfiguration

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)!

⚠️ **GitHub.com Fallback** ⚠️