Blog

Das Moodle-XML-Format erklärt, mit Beispiel zum Herunterladen

Moodle XML ist das Dateiformat, mit dem Moodle Fragen aus einer Fragensammlung exportiert und in einen anderen Kurs oder eine andere Website importiert. Es unterstützt alle Standard-Fragetypen, und Bilder und Formeln stecken direkt in der Datei. Deshalb schreiben Tools, die Tests in Moodle-Fragen umwandeln, genau dieses Format. Von Hand schreiben müssen Sie es selten, aber wenn ein Import schiefgeht oder sich eine Frage anders verhält als erwartet, hilft es zu wissen, was darin steht.

Diese Seite geht eine echte Datei Teil für Teil durch. Beide Dateien des Beispiels können Sie herunterladen: einen kurzen Word-Test und die Moodle-XML-Datei, die der kostenlose ExamQR-Test-Konverter daraus erstellt hat.

Das Beispiel herunterladen

Der Aufbau einer Datei

Eine Moodle-XML-Datei ist ein Element <quiz>, das eine Liste von <question>-Elementen enthält. Das Attribut type gibt an, was jedes davon ist. Das Beispiel enthält diese Typen:

TypWas es istIm Beispiel
categoryKeine Frage: die Kategorie der Fragensammlung, in der die folgenden Fragen gespeichert werdenEine pro Teil des Tests
multichoiceMultiple Choice mit einer oder mehreren richtigen AntwortenFragen 1 bis 5
truefalseEine einzelne Aussage, die richtig oder falsch istFrage 6, eine pro Aussage
numericalEine Antwort, die eine Zahl ist, mit optionaler ToleranzFrage 7
shortanswerEin eingetipptes Wort oder eine Wortgruppe, verglichen mit den akzeptierten AntwortenFrage 8
essayEine geschriebene Antwort, die eine Lehrkraft bewertetFrage 9

Moodle kennt außerdem matching, description (Text ohne Antwort, etwa ein Lesetext), gapselect, ddwtos und weitere. Fragen von Typen, die durch Plugins hinzukommen, lassen sich nur auf Websites importieren, auf denen diese Plugins installiert sind.

Kategorien

<question type="category">
  <category>
    <text>$course$/top/moodle-xml-example/Teil 1. Multiple Choice</text>
  </category>
</question>

Jede Frage nach diesem Eintrag kommt in die Kategorie Teil 1. Multiple Choice, innerhalb einer nach der Datei benannten Kategorie, ganz oben in der Fragensammlung des Kurses ($course$). Auf der Importseite von Moodle entscheidet Kategorie aus Datei übernehmen (Get category from file), ob diese Einträge verwendet werden. Entfernen Sie das Häkchen, um stattdessen alle Fragen in die Kategorie zu legen, die Sie auswählen.

Was jede Frage hat

<question type="multichoice">
  <name><text><![CDATA[Q1: Welches Gerät behält die Daten, wenn der Computer ausgesc...]]></text></name>
  <questiontext format="html">
    <text><![CDATA[<p>Welches Gerät behält die Daten, wenn der Computer ausgeschaltet ist?</p>]]></text>
  </questiontext>
  <generalfeedback format="html"><text></text></generalfeedback>
  <defaultgrade>1.0000000</defaultgrade>
  <penalty>0.0000000</penalty>
  <hidden>0</hidden>
  …
  • name ist das, was Sie in der Liste der Fragensammlung sehen, nicht das, was die Lernenden sehen. Der Konverter beginnt ihn mit der Fragenummer, damit die Sammlung Ihre Reihenfolge behält.
  • questiontext ist die Frage als HTML. Dank CDATA kann das HTML in der XML-Datei stehen, ohne dass jedes < maskiert werden muss.
  • generalfeedback wird den Lernenden nach dem Antworten angezeigt, wenn die Überprüfungsoptionen des Tests das erlauben. Ein Lösungsweg, der in der Word-Datei unter „Lösung:“ steht, landet hier.
  • defaultgrade sind die Punkte der Frage; penalty ist der Abzug für jeden falschen Versuch in Tests, die mehrere Versuche erlauben.

Multiple Choice

  <single>true</single>
  <shuffleanswers>true</shuffleanswers>
  <answernumbering>ABCD</answernumbering>
  <answer fraction="0"><text><![CDATA[RAM]]></text></answer>
  <answer fraction="100"><text><![CDATA[Festplatte]]></text></answer>
  <answer fraction="0"><text><![CDATA[CPU-Cache]]></text></answer>
  <answer fraction="0"><text><![CDATA[Grafikkarte]]></text></answer>
  • fraction ist der Anteil der Punkte, den eine Antwort bringt, in Prozent: 100 für die richtige, 0 für die anderen.
  • single ist true bei einer richtigen Antwort (Optionsfelder) und false, wenn mehrere richtig sind (Kontrollkästchen). In Frage 5 des Beispiels haben Python und Java jeweils fraction="50" und die beiden falschen Optionen fraction="-100", sodass ein falsches Kreuz die Punkte aufhebt; Moodle geht bei einer Frage nie unter null.
  • shuffleanswers erlaubt Moodle, die Optionen für jede Person neu anzuordnen, wenn der Test das ebenfalls zulässt. Frage 2 endet mit „Alle oben genannten“, das an letzter Stelle bleiben muss, und Moodle kann keine einzelne Option festsetzen. Deshalb schreibt der Konverter für diese Frage false und weist Sie darauf hin.

Richtig oder falsch

Die Moodle-Frage truefalse enthält genau eine Aussage. Eine Word-Frage mit vier Aussagen a) bis d) wird daher zu vier Moodle-Fragen, jede mit einem Viertel der Punkte (defaultgrade 0.25), und die gemeinsame Anweisung steht über jeder Aussage noch einmal:

<question type="truefalse">
  <questiontext format="html"><text><![CDATA[<p>Entscheiden Sie bei jeder Aussage über Netzwerke, ob sie richtig oder falsch ist.</p>
    <p><b>b)</b> Das Internet ist ein einziges Netzwerk, das einem Unternehmen gehört.</p>]]></text></questiontext>
  <defaultgrade>0.2500000</defaultgrade>
  <answer fraction="0"><text>true</text></answer>
  <answer fraction="100"><text>false</text></answer>

Kurzantworten und Zahlen

<question type="numerical">
  …
  <answer fraction="100"><text>11</text><tolerance>0</tolerance></answer>

<question type="shortanswer">
  …
  <usecase>0</usecase>
  <answer fraction="100"><text>Strg+C</text></answer>
  • Eine Antwort, die eine Zahl ist, wird zu numerical, sodass „11“, „11.0“ und „ 11“ alle akzeptiert werden. tolerance erlaubt einen Spielraum, zum Beispiel 0,5 bei Messwerten.
  • Andere Antworten werden zu shortanswer. usecase 0 ignoriert Groß- und Kleinschreibung. Mehrere akzeptierte Antworten sind mehrere <answer>-Elemente, jedes mit fraction 100.

Freitext

<question type="essay">
  …
  <responseformat>editor</responseformat>
  <responserequired>1</responserequired>
  <responsefieldlines>15</responsefieldlines>
  <attachments>0</attachments>
  <graderinfo format="html"><text></text></graderinfo>

Freitextantworten bewertet eine Lehrkraft, deshalb gibt es keine richtige Antwort. responseformat editor gibt den Lernenden einen Texteditor mit 15 Zeilen. graderinfo sehen nur die Bewertenden; wenn Ihr Test für die Frage eine Musterlösung enthält, kommt sie dorthin.

Bilder

<questiontext format="html">
  <text><![CDATA[<p>… Wie lang ist die längste Seite?</p>
    <p><img src="@@PLUGINFILE@@/1794550042_7b72e5454d8ace18_001.png" alt="" /></p>]]></text>
  <file name="1794550042_7b72e5454d8ace18_001.png" path="/" encoding="base64">iVBORw0KGgo…</file>
</questiontext>

Das Bild reist in der Datei mit. Das Element <file> enthält das Bild als Base64-Text, und das HTML verweist mit @@PLUGINFILE@@ darauf; Moodle ersetzt das nach dem Import durch die Adresse der gespeicherten Datei. Ein Link auf ein Bild auf einer anderen Website würde auch funktionieren, bricht aber, sobald sich diese Website ändert.

Formeln

<p>Welche Lösungen hat die Gleichung \(x^2-5x+6=0\)?</p>

Eine Word-Formel wird als TeX zwischen \( und \) geschrieben. Moodle zeigt sie über seinen MathJax-Filter als Formel an, der standardmäßig aktiviert ist. Sehen die Lernenden stattdessen den Code, bitten Sie die Moodle-Administration, den Filter MathJax für den Kurs zu aktivieren.

Das Beispiel importieren

  1. Öffnen Sie einen Kurs, in dem Sie testen können, und gehen Sie zu seiner Fragensammlung (im Kursmenü Mehr: Fragensammlung, in neueren Versionen Fragensammlungen).
  2. Wählen Sie Import, wählen Sie Moodle-XML-Format, ziehen Sie die .xml-Datei in das Dateifeld und klicken Sie auf Import.
  3. Moodle listet die gelesenen Fragen auf. Klicken Sie auf Weiter; die Fragen liegen in der Kategorie moodle-xml-example und ihren vier Teilen.
  4. Sehen Sie sich Frage 3 (das Bild) und Frage 4 (die Formel) in der Vorschau an, um zu prüfen, dass beide angezeigt werden.

Eine Datei von Hand bearbeiten

  • Verwenden Sie einen reinen Texteditor, der in UTF-8 speichert, keine Textverarbeitung.
  • Lassen Sie HTML innerhalb von CDATA. Außerhalb davon schreiben Sie &lt; für < und &amp; für &.
  • Ein einziges nicht geschlossenes Tag genügt, und Moodle lehnt die ganze Datei ab. Öffnen Sie sie zuerst in einem Browser: Eine fehlerhafte Datei zeigt die Zeile des Fehlers an.
  • Importieren Sie zuerst in einen Testkurs und erst dann in den echten Kurs, und sehen Sie sich einige Fragen in der Vorschau an.

Eine Datei aus Ihrem eigenen Word-Test erstellen

Schreiben Sie den Test wie gewohnt in Word, nach den Regeln im Spickzettel zum Word-Testformat. Öffnen Sie dann den kostenlosen Test-Konverter, laden Sie die Datei hoch und klicken Sie auf Moodle XML (.xml). Ein Konto ist nicht nötig. Der Konverter listet vor dem Download alles auf, was Moodle anders macht, zum Beispiel eine Mehrfachauswahlfrage, die Moodle mit Teilpunkten bewertet. Die vollständige Anleitung finden Sie unter einen Word-Test in Moodle importieren.

Häufige Fragen

Ist Moodle XML dasselbe wie GIFT oder Aiken? Nein. GIFT und Aiken sind reine Textformate, die man von Hand tippt; sie können keine Bilder in der Datei transportieren, und Aiken kennt nur Multiple Choice mit einer richtigen Antwort. Moodle XML ist länger, transportiert aber alles.

Können andere Systeme Moodle XML lesen? Manche ja, aber es ist das eigene Format von Moodle. Für Systeme, die QTI-2.1-Pakete importieren, erstellt der Konverter auch ein solches Paket. Canvas Classic Quizzes erwartet QTI 1.2 und liest dieses Paket daher nicht.

Warum zählt Moodle mehr Fragen, als mein Test hat? Weil manche Fragen zu mehreren Moodle-Fragen werden: Jede Richtig/Falsch-Aussage ist eine eigene Frage, und ein Lesetext wird zu einem Beschreibungselement vor seinen Fragen. Der Konverter sagt Ihnen, wie viele Moodle-Fragen er geschrieben hat.

Funktioniert das Beispiel auch in anderen Sprachen? Ja. Das Beispiel gibt es in jeder Sprache dieser Website; wechseln Sie oben auf der Seite die Sprache, um es herunterzuladen.

Weitere Artikel

17. Oktober 2026

Einen Word-Test ohne Abtippen in Moodle importieren

Moodle kann kein Quiz im .docx-Format lesen. Vergleichen Sie die Wege (Aiken, GIFT, Word-Plugin, Moodle XML), bereiten Sie die Word-Datei vor, wandeln Sie sie kostenlos in Moodle XML um und importieren Sie sie samt Bildern und Formeln.

17. Oktober 2026

Einen Online-Assessment-Tag für 300 Bewerber planen

Wie Sie 300 Bewerber auf Sitzungen verteilen, prüfen, wie viele Ihre Plattform gleichzeitig zulässt, Anmeldung, Plätze und Personal vorbereiten und am Tag selbst mit einem ausgefallenen Laptop oder einer abgebrochenen Verbindung umgehen. Mit Zeitplan und Checkliste.