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.