Konfigurieren Sie ein
HL7-DFDL-Modell,
um die Version von HL7 zu prüfen,
die von den empfangenen Nachrichten verwendet wird.
Vorbereitungen:
- Importieren Sie eine der
HL7-DFDL-Bibliotheken
in Ihren Arbeitsbereich. Sie können die Bibliotheken aus dem
Healthcare: HL7 an HL7 DFDL-Muster importieren
(weitere Informationen siehe
In HL7-Anwendungen integrieren).
Es gibt drei Versionen des
HL7-DFDL-Modells,
eine für HL7 Version 2.7, eine für
HL7 Version 2.6 und eine für
HL7 Version 2.5.1 und früher. Es
wird empfohlen, das DFDL-Modell zu
verwenden, das zu der Version von
HL7 passt, die von den zu
verarbeitenden Nachrichten verwendet wird. Standardmäßig überprüfen die Modelle
jedoch nicht die HL7-Version, die
von eingehenden HL7-Nachrichten
verwendet wird.
Wenn Sie sicherstellen möchten, dass Sie Nachrichten
verarbeiten, die die erwartete Version von
HL7 verwenden, können Sie mithilfe
der folgenden Prozedur die Versionsprüfung in Ihrem Modell aktivieren.
- Suchen Sie in der Anwendungsentwicklungsperspektive die
HL7-DFDL-Bibliothek
(HL7v251DFDLLibrary,
HL7v26DFDLLibrary oder
HL7v27DFDLLibrary)
- Klicken Sie auf den Bibliotheksnamen und dann auf .
- Klicken Sie mit der rechten Maustaste auf
GenericHL7.xsd und klicken Sie dann auf
(Öffnen mit > DFDL-Editor). Das Fenster des
DFDL-Editors wird geöffnet.
- Klicken Sie im Fenster des
DFDL-Editors auf
und wählen Sie dann
MSH.12.VersionID aus. Die Registerkarte Asserts and Discriminators
wird geöffnet.
- Klicken Sie auf die Registerkarte Asserts and
Discriminators und dann auf den Link Add
assert (Assert hinzufügen). Es wird eine neue Zeile zur Asserttabelle hinzugefügt.
- Stellen Sie sicher, dass die Spalte Test Kind
(Prüfart) den Wert expression (Ausdruck) enthält.
- Klicken Sie auf die Spalte Test Condition
(Prüfbedingung) und fügen Sie den erforderlichen Ausdruck zur Prüfung der
HL7-Version hinzu. Beispiel:
- Wenn Sie überprüfen möchten, ob die von einer Nachricht verwendete
HL7-Version einer bestimmten
HL7-Version entspricht, geben Sie
Folgendes ein:
{./VID.1 eq '<Wert>'}
Dabei
steht <Wert> für die Version von
HL7, die von Nachrichten verwendet
werden soll. Beispiele: 2.7, 2.6
oder 2.5.
- Wenn Sie überprüfen möchten, ob die von einer Nachricht verwendete
HL7-Version kleiner als eine
bestimmte HL7-Version ist, geben
Sie Folgendes ein:
{./VID.1 lt '<Wert>'}
Dabei
steht <Wert> für die Version von
HL7, die von Nachrichten verwendet
werden soll. Beispiele: 2.7, 2.6
oder 2.5.
Weitere Informationen zum Erstellen gültiger Assertion-Ausdrücke finden
Sie im Abschnitt DFDL-Spezifikation.
- Klicken Sie auf die Spalte Message (Nachricht) und
fügen Sie eine geeignete Nachricht hinzu, die im Trace angezeigt werden soll,
wenn die Bedingung nicht erfüllt wird. Beispiel: Incompatible HL7 version.
- Speichern Sie anschließend das
DFDL-Schema, klicken Sie auf
(Datei > Speichern) und schließen Sie den
DFDL-Editor.
Sie haben das
DFDL-Schema
aktualisiert.
Wenn Nachrichten empfangen werden, die nicht mit der
erforderlichen HL7-Version
übereinstimmen (bei Verwendung der aktualisierten
DFDL-Schemadefinition), wird das
DFDL-Parsing bei Feld MSH.12
gestoppt und im Toolkit und im Trace wird die Fehlernachricht angezeigt, die in
der Assertion definiert ist. Beispiel:
A
DFDL assert with condition '{./VID.1 eq '2.7'}' evaluated to false
with message 'Incompatible HL7 version' during the parsing of 'MSH.12.VersionID'