XML Validator
Verwendung
Ein XML Validator überprüft bei beliebigen XML-Eingangsnachrichten, ob diese
-
wohlgeformt sind
-
einem internen/externen XML-Schema entsprechen
Da die Schemavalidierung in INUBIT auf Basis von XSD 1.1 erfolgt, dürfen die beiden für den Zeilenanfang bzw. das Zeilenende gedachten Zeichen
^
und$
nicht für Muster in regulären Ausdrücken in der XSD verwendet werden. -
einer internen/externen DTD entsprechen.
Abhängig von der Größe des XML-Schemas bzw. der DTD und dem Ort, an dem diese Datei erreichbar ist, kann das XML-Validator-Modul die Performance der INUBIT Process Engine negativ beeinflussen. Um die Einbußen zu minimieren, sollten Sie die DTD bzw. das Schema lokal speichern statt dieses über einen Webserver oder eine externe Adresse (zum Beispiel HTTP oder FTP) verfügbar zu machen. |
Ergebnis des Validators
Abhängig vom Ergebnis der Validierung werden Eingangsnachrichten folgendermaßen weitergereicht:
-
Validierung war erfolgreich
Die Eingangsnachricht wird unverändert als Ausgangsnachricht weitergeleitet.
-
Validierung schlug fehl
Die Eingangsnachricht wird in folgender Form weitergeleitet:
<Validation> <Errors> <Error>[Fehlermeldung]</Error> </Errors> <OriginalDocument> [Inhalt der Eingangsnachricht] </OriginalDocument> </Validation>
Dialog XML Validator Eigenschaften
In diesem Dialog haben Sie folgende Optionen:
Überprüfung der Eingangsnachricht
-
Nur prüfen, ob Eingangsnachricht wohlgeformtes XML enthält
Wenn markiert, dann wird lediglich geprüft, ob die Eingangsnachrichten den XML-Regeln entsprechen, u.a.:
-
Jede Nachricht besitzt genau ein Wurzelelement.
-
Jedes Element mit Inhalt hat ein Beginn- und ein End-Tag.
-
Die Beginn- und End-Tags sind ebenentreu-paarig verschachtelt.
-
Kein Element hat mehrere Attribute mit demselben Namen.
Wenn die Prüfung fehlschlägt, wird der Fehlerausgang genutzt.
-
-
XML-Schemaprüfung der Eingangsnachricht
Wenn markiert, dann werden die Eingangsnachrichten gegen die XML Schemas geprüft, welche in den Eingangsnachrichten enthalten oder referenziert sind.
-
DTD-Prüfung der Eingangsnachricht
Wenn markiert, dann werden Eingangsnachrichten gegen die DTD geprüft, welche in den Eingangsnachrichten enthalten oder referenziert sind.
-
Schematron-Prüfung der Eingangsnachricht
Wenn markiert, dann werden die Eingangsnachrichten gegen Schematron geprüft, welche in den Eingangsnachrichten enthalten oder referenziert sind.
Externes XML-Schema, externe DTD oder externes Schematron verwenden
Um Eingangsnachrichten gegen ein XML Schema, eine DTD bzw. Schematron prüfen zu lassen, welche über einen URI referenziert ist oder statisch in das Modul geladen wird:
-
URI
Der Zugriff kann über das http-, ftp- oder file-Protokoll erfolgen, z.B.
-
file:///usr/local/schema/test.xsd
-
http://www.inubit.com/schema/test.xsd
-
file:///c:/example.xsd
-
-
Statische Datei
Nach dem Laden werden der Dateiname, die Dateigröße und der MIME-Typ der Datei im Dialog angezeigt.
-
XML Schema/DTD/Schematron cachen
Die Dateien werden vorkompiliert und im Arbeitsspeicher gehalten, um die Performance des Moduls zu verbessern.
Weitere Einstellungen
-
Validierung nach Fund des ersten Fehlers sofort abbrechen
Die Validierung stoppt beim ersten Fehler, statt die gesamte Eingangsnachricht zu prüfen.
Schematron-Eingangsnachrichten werden nicht validiert.
-
Bei fehlerhafter Validierung Fehlerausgang verwenden
Wenn die Validierung fehlschlägt und im Workflow ein Fehlerausgang vorhanden ist, dann wird dieser Fehlerausgang aktiviert.