Informationen zum XMLNSC-Validierungsmustercode
Das XMLNSC-Validierungsmustercode veranschaulicht, wie der XMLNSC-Parser von WebSphere Message Broker XML-Nachrichten anhand eines Schemas validieren kann.
Nachrichtenfluss
In diesem Mustercode wird die Verarbeitung in einem Nachrichtenfluss namens XMLNSCVALIDATIONMF1 ausgeführt. In der folgenden Abbildung ist der Nachrichtenfluss XMLNSCVALIDATIONMF1 dargestellt:

Der Nachrichtenfluss XMLNSCVALIDATIONMF1 befindet sich im Nachrichtenbrokerprojekt
XMLNSCVALIDATIONMF. Der Nachrichtenfluss führt Folgendes aus:
- Nimmt eine XML-Nachricht über einen 'MQInput'-Knoten aus der WebSphere MQ-Warteschlange XMLNSCVALIDATIONMF1.IN auf.
- Für den 'MQInput'-Knoten sind an folgenden Stellen folgende Eigenschaften definiert:
Registerkarte Syntaxanalyse der Eingabenachricht:
- Nachrichtendomäne steht auf XMLNSC.
- Nachrichtensatz steht auf XMLNSCVALIDATIONMS.
Registerkarte Parser-Optionen:
- Zeitpunkt für Syntaxanalyse steht auf Vollständig.
- Baumstruktur unter Verwendung von XML-Schemadatentypen ist ausgewählt.
Registerkarte Auswertung:
- Auswertung steht auf Inhalt und Wert.
- Aktion bei Fehler steht auf Ausnahme.
- Das Ausgangsterminal des 'MQInput'-Knotens ist mit einem Rechenknoten namens 'ProcessValidMessage' verbunden. Der Rechenknoten ist einer ESQL zugeordnet, die 'InputRoot' in 'OutputRoot' kopiert.
- Das Ausgangsterminal des Rechenknotens ist mit 'MQOutput'-Knoten namens 'OutputOK' verbunden. Der 'MQOutput'-Knoten stellt Nachrichten in die Warteschlange XMLNSCVALIDATIONMF1.OUT ein.
- Die Terminals Catch und Failure des 'MQInput'-Knotens sind mit einem zweiten Rechenknoten namens 'ProcessExceptionList' verbunden. Dieser Rechenknoten kopiert die wichtigen Teile aus der Ausnahmeliste 'ExceptionList' in 'OutputRoot'.
- Das Ausgangsterminal dieses Rechenknotens ist mit einem 'MQOutput'-Knoten namens 'OutputFailure' verbunden. Dieser 'MQOutput'-Knoten stellt Nachrichten in die Warteschlange XMLNSCVALIDATIONMF1.FAIL ein.
Nachrichtensatz
Der Nachrichtensatz XMLNSCVALIDATIONMS gibt die Laufzeitdomäne XMLNSC an und enthält ein XML-Schema namens SampleMessageValidation.xsd. Anhand dieses Schemas wurde eine Nachrichtendefinitionsdatei erstellt. Der Nachrichtensatz enthält Folgendes:
- Eine Nachricht namens 'SaleListMessage'. Die 'SaleListMessage'-Nachricht basiert auf der Nachricht, die in vielen weiteren Mustercodes verwendet wird.
- Dem XML-Schema für diese Nachricht wurden verschiedene Vorgaben hinzugefügt, um die unterschiedlichen Fehlerarten bei der Gültigkeitsprüfung zu veranschaulichen. Es handelt sich um folgende Vorgaben:
- Wertvorgaben:
- Die maximale Länge des Nachnamens wurde auf 20 gesetzt.
- Gültige Währungswerte sind 'GBP', 'Sterling', 'USD', 'EUR',
'Euros' und 'JPY'.
- Die Menge hat den 'minInclusive'-Wert 1 und den 'maxInclusive'-Wert 100.
- Der Code hat ein Muster mit alphanumerischen Zeichen.
- Geänderte Elemente und Attribute:
- Optionales Attribut 'Title' für Header.
- Obligatorisches Attribut 'occurrence' für 'SaleList'.
- Optionales Attribut 'guaranteed' für 'SaleList'.
- Obligatorisches Attribut 'isLast' für 'Trailer'.
Brokerarchivdatei
Das Nachrichtenbrokerprojekt XMLNSCVALIDATIONMF enthält die Brokerarchivdatei
XMLNSCVALIATION.BAR für den Mustercode. Das Nachrichtenbrokerprojekt
enthält außerdem die im Mustercode verwendeten Testnachrichten.
Testnachrichten
In diesem Mustercode werden folgende Testnachrichten verwendet:
- ValidMessage.xml
- MissingElement.xml
- NamespacedMessage.xml
- NumericOutOfRange.xml
- PatternMismatch.xml
- StringInNumeric.xml
- StringTooLong.xml
- ValueNotInList.xml
Weitere ausführliche Informationen zu den Nachrichten und den erwarteten Ergebnissen des Mustercodes finden Sie im Abschnitt XMLNSC-Validierungsmustercode ausführen.
Zurück zum Beginn des
Mustercodes