Die Datensätze sind durch Zeilenvorschub-Zeichen begrenzt. In jedem Datensatz sind die Felder durch die Zeichen
~
,
*
und
:
begrenzt.
Das erste Feld eines Datensatzes identifiziert den Datensatztyp. Es gibt fünf Haupt-Datensatztypen:
ST
NM1
N1
N2
SE
In den
NM1
-Datensätzen ist das zweite Feld ein Untertyp. Es gibt zwei Untertypen:
NM1*12
NM1*13
Die Datensätze müssen in der folgenden Reihenfolge vorkommen.
Ein
ST
-Datensatz.
Ein
NM1*12
-Datensatz, gefolgt durch
N1
.
Ein
NM1*13
-Datensatz, gefolgt durch
N2
.
Ein
SE
-Datensatz.
Sie können diese Eingabe durch Konfigurieren eines
StructureDefinition
-Ankers parsen.
Die Eigenschaft
format_definition
enthält eine
RepeatingGroup
, die die Datensätze findet. Die
RepeatingGroup
führt folgende Operationen aus:
Sie sucht den Datensatz-Content, bis zum Zeilenvorschub-Delimiter.
Sie extrahiert den Datensatztyp-Bezeichner, etwa
ST
oder
NM1
und speichert ihn in der
$id
-Variablen.
Ist der Datensatztyp
NM1
, so wird der Untertyp (
12
oder
13
) extrahiert und in der
$qualifier
-Variable gespeichert.
Sie führt einen
ExtractRecord
-Anker aus, der den Datensatz an die Unterelemente weitergibt.
ExtractRecord
hängt die Bezeichner
$id
und
$qualifier
an den Datensatz.
Das Element wird so konfiguriert, dass es mit jedem Datensatz mit dem Bezeichner
ST
übereinstimmt.
Die
format_definition
findet den ersten Eingabe-Datensatz und übergibt ihn an die Unterelemente. Der erste Datensatz stimmt mit dem ersten Unterelement überein, da es den
ST
-Bezeichner hat. Das erste Unterelement enthält
Content Marker Content
-Anker, die den Datensatz parsen.
Das zweite Unterelement definiert eine Sequenz geschachtelter Unterelemente. Das erste geschachtelte Unterelement stimmt mit einem Datensatz mit den Bezeichnern
NM1
und
12
überein. Das zweite geschachtelte Unterelement stimmt mit einem Datensatz mit einem
N1
-Bezeichner überein.
Der zweite und dritte Eingabe-Datensatz sind
NM1*12
und
N1
. Diese stimmen mit der Sequenz der Unterelemente überein. Jedes geschachtelte Unterelement parst den entsprechenden Datensatz.
Nehmen wir an, der zweite und dritte Datensatz sind
NM1*12
und
N2
. Diese stimmen nicht mit der Hierarchie der Unterelemente überein, werden also nicht geparst.
Die nächsten Datensätze sind
NM1*13
und
N2
. Diese stimmen mit dem dritten Unterelement namens
Loop2000
überein.
Der letzte Datensatz ist
SE
und stimmt mit dem letzten Unterelement überein.
Alle Eingabe-Datensätze stimmen mit der Hierarchie der Unterelemente überein, sodass die