Diese Anleitung soll das Vorgehen bei der Validierung von XML-Dokumenten erläutern. Dabei werden verschiedene Methoden vorgestellt, die sich auch mit einem offenen und kostenfreien Technologiestack durchführen lassen. Alle vorgestellten Tools können lokal und ohne Internetverbindung eingesetzt werden, sofern lokale Kopien der Spezifikationsdateien vorliegen.
Begleitend kann ebenfalls die folgende Videoanleitung zur Information Videoanleitung herangezogen werden.
In den XBildungsvorhaben (XSchule, XHochschule und XBerufsbildung) werden Informationen in Form von XML-Dokumenten (wie z.B. Exmatrikulationsbescheinigung oder Abiturzeugnis) generiert und ausgetauscht. Um mit der Spezifikation vorhabenkonform sein zu können, müssen diese XML-Dokumente validiert werden.
Die Prüfungen der Konformität bauen aufeinander auf, ein erfolgreiches Validieren der vorigen Prüfebene ist Grundlage für die darauffolgenden Prüfschritte.
- XML-Konformität: XML Wellformedness (Sind alle Tags geschlossen, gibt es ein root-Element?)
- XSD-Konformität: Sind die Angaben gemäß der XML Schemadefinition (Reihenfolgen, Pflichtfelder, Enumeration) konform?
- ISO Schematron-Konformität: Werden die formulierten Geschäftsregeln eingehalten?
- Spezifikationskonformität: lässt sich nicht automatisiert prüfen, kann nur durch menschlichen Einsatz geprüft werden
Um die Konformitätsprüfung zu ermöglichen, werden in den Vorhaben XML-Schemata und Schematron-Dateien bereitgestellt. Diese entsprechen auf maschinenlesbarer Ebene den fachlichen Anforderungen und Vorgaben, die im PDF-Spezifikationsdokument in menschenlesbarer Form dargestellt sind.
Validierung mit Oxygen XML
Bei der Entwicklung der Vorhabenspezifikationen wird für die Validierung das Programm "Oxygen XML" eingesetzt. Diese kommerziell verfügbare Anwendung erlaubt sowohl die Validierung mit XML-Schema als auch mit Schematron.
Eine kostenlose Probeversion kann auf dieser Seite angefordert werden: https://www.oxygenxml.com/oxygen_feedback_enterprise/try_it.html
XML-Schema mit Oxygen XML
- Das zu validierende Dokument in Oxygen XML öffnen.
- Auf den Pfeil neben dem Icon für "Validieren" klicken und Saxon EE auswählen
- Fehlermeldungen bzw. Warnungen werden angezeigt
Schematron mit Oxygen XML
- Das zu validierende Dokument in Oxygen XML öffnen.
- Auf den Pfeil neben dem Icon für "Validieren" klicken
-
"Validieren mit..." auswählen
-
Schematron-Datei (Dateiendung .sch) auswählen, "Ok" drücken
- Eventuelle Fehlermeldungen werden angezeigt
Validierung ohne Oxygen
Es stehen mehrere kostenfreie Anwendungen zur XML-Validierung zur Verfügung. Zwei davon werden im Folgenden vorgestellt.
Die vorgestellten Anwendungen sind für den privaten Gebrauch kostenlos, bitte beachten Sie die Lizenzbestimmungen, bevor Sie sie für kommerzielle Zwecke einsetzen.
XML-Schema mit Microsoft XML Notepad
XML Notepad führt eine automatisierte Validierung von XML-Dokumenten durch, die darin geöffnet werden.
- XML Notepad von dieser Adresse herunterladen: https://microsoft.github.io/XmlNotepad/#install/
Schematron-Validierung mit Saxon HE am Beispiel von XHochschule
In diesem Fall wird die kostenfreie Variante von Saxon für eine einfache XSLT-Transformation verwendet. Grundsätzlich sollte jedes Tool, das XSLT-Transformationen durchführen kann, dieselbe Operation durchführen können.
Saxon HE wird unter der Mozilla Public License 2.0 veröffentlicht.
- Schematron-Datei im XSLT-Format herunterladen (Dateiendung .xsl). Die Datei xhochschule-schematron-compiled.xsl ist unter diesem Link auf GitHub zu finden.
- Saxon HE in einer aktuellen Version herunterladen (z.B. diese: https://sourceforge.net/projects/saxon/files/Saxon-HE/11/Java/)
-
Folgenden Befehl in der Konsole ausführen, wobei anstelle von Ihre_Datei.xml der Name der zu validierenden Datei steht, und anstelle von Schematron_compiled.xsl der Name der kompilierten Schematron-Datei
java -jar saxon-he-11.3.jar -s:Ihre_Datei.xml -xsl:Schematron_compiled.xsl
- in der Konsole erscheinen eventuelle Fehlermeldungen. Diese dienen der Validierung.