Der XMLNSC-Parser bietet eine leistungsfähige, auf Standards basierende XML-Schema-Auswertung an einem beliebigen Punkt im Nachrichtenfluss.
Die Auswertung der XML-Eingabenachricht bzw. der Nachrichtenbaumstruktur erfolgt anhand der implementierten XML-Schemas.
Auswertung ist nicht dasselbe wie Syntaxanalyse. Bei der Syntaxanalyse prüft der XMLNSC-Parser immer, ob das Eingabedokument korrekt formatiert ist und der XML-Spezifikation entspricht. Wenn die Auswertung aktiviert ist, prüft der XMLNSC-Parser auch, ob das XML-Dokument den Regeln im XML-Schema entspricht.
Die folgenden Aufgaben müssen ausgeführt werden, um einen Nachrichtenfluss zu erstellen, der ein XML-Dokument anhand eines XML-Schemas auswertet:
XML-Schemas können in einer Anwendung, in einer Bibliothek, auf die in einer Anwendung verwiesen wird, oder in einer Nachrichtengruppe implementiert werden.
Wenn die Schemas als Teil der Anwendung implementiert werden, müssen sie in eines der Projekte eingefügt werden, auf die in der Anwendung verwiesen wird.
Wenn die Schemas in einer Bibliothek implementiert werden, muss in der Anwendung auf diese Bibliothek verwiesen werden, selbst wenn sie als Teil einer anderen Anwendung implementiert wird.
Wenn die Schemas in einer Nachrichtengruppe implementiert werden, müssen folgende Schritte ausgeführt werden.
Alle XML-Schemas, die von WebSphere Message Broker verwendet werden, müssen als Nachrichtendefinitionsdateien innerhalb einer Nachrichtengruppe erstellt werden.
Gehen Sie wie folgt vor, um einen Nachrichtensatz für die XML-Schemaauswertung zu erstellen und bereitzustellen:
Die XMLNSC-Auswertung ist voll kompatibel mit dem XML-Schema V1.0, so wie in den Spezifikationen, die unter http://www.w3.org/TR/xmlschema-1/ und http://www.w3.org/TR/xmlschema-2/ verfügbar sind, definiert, mit folgenden geringfügigen Ausnahmen:
Sie können Dokumente in Übereinstimmung mit der Spezifikaton für XML V1.1 auswerten, jedoch ist die Unterstützung dadurch beschränkt, dass die XML-Schema V1.0-Dokumente XML V1.0 entsprechen müssen.
Beispielsweise können Sie nicht immer einen Tagnamen von XML V1.1 im XML-Schema V1.0 zu deklarieren. Diese Einschränkung ist keine Folge der XMLNSC-Parser-Implementierung, sondern eine Einschränkung des XML-Schemas V1.0.
Ein Gültigkeitsfehler ist ein Fehler, der sich ergibt, wenn das XML-Dokument den im XML-Schema definierten Regeln nicht entspricht. Im XML-Schemastandard sind diese Regeln und deren Anwendung genau definiert. Gültigkeitsfehler, die vom XMLNSC-Parser ausgegeben werden, enthalten Informationen, mit denen der Fehler der XML-Schemaregel, die verletzt wurde, zugeordnet werden kann.
XML-Schemagültigkeitsfehler'[cvc-Fehlerschlüssel: Fehlerbeschreibung]'
'cvc-minInclusive-valid: Der Wert "2" ist nicht gültig in Bezug auf
die Facette 'minInclusive' mit Wert "3" für Typ "po:itemCountType".'
'cvc-complex-type.2.4.a: Es wurde ein Element mit dem lokalen Namen
"numItems" erwartet, tatsächlicher Wert war jedoch "totalValue".'
Sie können die
XML-Schemaregel, die verletzt wurde, lokalisieren, indem Sie die XML-Schemaspezifikation öffnen und
nach dem Fehlerschlüssel suchen.Beispiel 1: Öffnen Sie http://www.w3.org/TR/xmlschema-1/ und suchen Sie nach 'cvc-minInclusive-valid'. Folgen Sie dem Link zu den XML-Schemaregeln für die Facette 'minInclusive'.
Beispiel 2: Öffnen Sie http://www.w3.org/TR/xmlschema-1/ und suchen Sie nach 'cvc-complex-type'. Folgen Sie dem Link zu den XML-Schemaregeln für die Auswertung des Inhalts eines komplexen Typs. In diesem Fall enthält der Fehlerschlüssel Zusatzinformationen. '2.4.a' bezieht sich auf die untergeordnete Regel, die verletzt wurde und sollte nicht in die Suche nach der Regel einbezogen werden.
Wenn die Informationen in der XML-Schemaspezifikation nicht ausreichen, finden Sie weitere Informationen mithilfe einer Suchmaschine. Der XML-Schemastandard ist weit verbreitet, so dass viele Onlinelernprogramme und andere Ressourcen verfügbar sind.