Mit der MRM-Domäne können Sie eine große Bandbreite von Nachrichtenformaten analysieren und schreiben.
Die MRM-Domäne kann zum Analysieren und Schreiben einer großen Bandbreite von Nachrichtenformaten verwendet werden. Sie ist in erster Linie für Nicht-XML-Nachrichten vorgesehen, kann aber auch XML analysieren und schreiben. In welchen Fällen sich der MRM-Parser statt eines XML-Parsers zur Analyse von XML empfiehlt, erfahren Sie im Abschnitt Auswahl des geeigneten XML-Parsers.
Die Schlüsselfunktionen der MRM-Domäne sind:
- Unterstützung für Nachrichten aus Anwendungen, die unter Verwendung des physischen CWF-Formats (Custom Wire Format) in C, COBOL, PL/I und anderen Programmiersprachen geschrieben wurden. Diese Unterstützung beinhaltet die Möglichkeit, ein Nachrichtenmodell direkt von einer C-Headerdatei oder einem COBOL-Copy Book zu erstellen.
- Unterstützung für Textnachrichten, unter Umständen mit Feldinhalten, die unter Verwendung des physischen TDS-Formats (Tagged Delimited String) über Tags (Kennungen) gekennzeichnet und/oder durch bestimmte Begrenzer getrennt sind. Dies schließt Industriestandards wie CSV,
HL7, SWIFT, EDIFACT und X12 ein.
- Unterstützung für XML-Nachrichten (einschließlich Nachrichten, die XML-Namespaces enthalten) unter Verwendung des physischen XML-Formats.
WebSphere Message
Broker nutzt den MRM-Parser zum Lesen und Schreiben von Nachrichten, die der MRM-Domäne angehören. Beim Lesen einer Nachricht erstellt der MRM-Parser eine Nachrichtenbaumstruktur auf Basis eines Bitstroms.
Beim Schreiben einer Nachricht erstellt der
MRM-Parser einen Bitstrom auf Basis einer Nachrichtenbaumstruktur. Beim MRM-Parser handelt es sich um einen modellgesteuerten Parser, der über ein Nachrichtenverzeichnis gesteuert wird, in dem die Form der Nachrichtenbaumstruktur (logisches Modell) sowie das physische Layout der Bytes oder Zeichen im Bitstrom (physisches Format) beschrieben ist. Sobald eine Nachrichtengruppe der Brokerarchivdatei (BAR-Datei) hinzugefügt wird, wird auf Basis ihres Inhalts automatisch ein Nachrichtenverzeichnis erstellt. Wenn Sie eine Nachrichtengruppe für die MRM-Domäne erstellen, müssen Sie daher sowohl das logische Modell als auch das physische Format definieren.
Die Verarbeitung des Parsers hängt von dem physischen Format ab, das Sie der Ein- oder Ausgabenachricht zugeordnet haben:
- Bei einer binären Nachricht liest der Parser nach den Angaben im physischen CWF-Format eine bestimmte Reihe von Bytefolgen ein und setzt diese in die Felder und Werte der Nachrichtenbaumstruktur um.
- Bei einer Textnachricht verwendet der Parser zur Entscheidung, wie die einzelnen Teile des Nachrichten-Bitstroms analysiert werden sollen, die Festlegung der Trennzeichen für Datenelemente des physischen Formats TDS. Anhand dieser Formatangabe erkennt der Parser, ob die Nachricht Begrenzer, Tags, Elemente fester Länge, Muster oder dergleichen enthält. Der Parser liest die Daten dann nach den Angaben im physischen TDS-Format ein und setzt diese in die Felder und Werte der Nachrichtenbaumstruktur um.
- Bei einer XML-Nachricht liest der Parser die XML-Markup-Sprache (Element-Tags und Attribute) nach den Angaben im physischen XML-Format ein und setzt diese in die Felder und Werte der Nachrichtenbaumstruktur um.
Da der MRM-Parser modellgesteuert ist, kann er die Nachrichten anhand des Modells, das im implementierten Verzeichnis definiert ist, überprüfen.
Die Validierungsstufe des MRM-Parsers ist vergleichbar, allerdings nicht völlig identisch, mit der in XML Schema 1.0 definierten Validierungsstufe. Wenn Sie Ihre XML-Nachrichten exakt nach der XML Schema 1.0-Validierung überprüfen lassen möchten, müssen Sie die XMLNSC-Domäne verwenden.
Der MRM-Parser ist ein bedarfsgerechter Parser. Weitere Informationen hierzu finden Sie unter Bedarfsgerechte Syntaxanalyse.
Wenn Sie eine bestimmte Nachricht durch die MRM-Domäne analysieren lassen wollen, führen Sie die folgenden Schritte aus:
- Erstellen Sie eine neue Nachrichtengruppe mit dem physischen Format CWF, TDS bzw. XML oder wählen Sie eine vorhandene Nachrichtengruppe mit einem dieser Formate aus.
- Setzen Sie die Standardmäßige Nachrichtendomäne der Nachrichtengruppe auf MRM, oder aktivieren Sie unter Unterstützte Nachrichtendomänen das Kontrollkästchen MRM. Dadurch stellen Sie sicher, dass die Nachrichtengruppe die MRM-Domäne unterstützt.
- Erstellen Sie in der Nachrichtengruppe eine Nachrichtendefinitionsdatei für die gewünschte Nachricht. Geben Sie dabei sowohl die Informationen zum logischen, als auch zum physischen Format an. Wenn Ihnen eine Beschreibung Ihrer Nachricht in C, COBOL, XML Schema oder DTD vorliegt, können Sie diese über einen Assistenten importieren.
- Fügen Sie die Nachrichtengruppe einer Brokerarchivdatei (BAR-Datei) hinzu, durch die ein Nachrichtenverzeichnis für den MRM-Parser generiert wird, und implementieren Sie die BAR-Datei im Broker.
- Wählen Sie auf dem entsprechenden Knoten Ihres Nachrichtenflusses MRM als Nachrichtendomäne aus.
- Legen Sie auf dem Knoten außerdem die Werte für Nachrichtengruppe, Nachrichtentyp und Nachrichtenformat fest. Nachrichtentyp ist der Name der Nachricht in der Nachrichtendefinitionsdatei.
In allen folgenden Beispielen werden Nachrichten mit dem MRM-Parser verarbeitet:
Informationen zu Beispielen können nur bei Verwendung des in das WebSphere Message
Broker Toolkit integrierten bzw. online verfügbaren Information Center angezeigt werden. Muster können nur ausgeführt werden, wenn das im
WebSphere Message
Broker Toolkit integrierte Information Center verwendet wird.
Das WebSphere Message
Broker Toolkit stellt einige vordefinierte Nachrichtenmodelle bereit, die mit dem Assistenten für die Erstellung neuer Nachrichtendefinitionsdateien aus IBM® eigenen Nachrichten importiert werden können. Die CSV-, ALE IDoc- und File IDoc-Modelle sind speziell für die MRM-Domäne vorgesehen. Weitere Informationen hierzu finden Sie unter Nachrichtengruppen: IBM eigene Nachrichten, die importiert werden können.
IBM stellt darüber hinaus vordefinierte Nachrichtengruppen für die Industriestandardformate SWIFT,
X12, EDIFACT und FIX bereit. Wenden Sie sich für weitere Informationen an Dublin Adapters unter
dubadapt@ie.ibm.com.