Encoding: Unterschied zwischen den Versionen

Aus Hl7wiki
Wechseln zu: Navigation, Suche
(Die Seite wurde neu angelegt: „{{Underconstruction}} =Encoding= Unter Encoding wird eine syntaktische Umwandlung der Daten in ein bestimmtes Datenformat verstanden, so dass diese Daten dan…“)
 
Zeile 4: Zeile 4:
  
 
Unter Encoding wird eine syntaktische Umwandlung der Daten in ein bestimmtes Datenformat verstanden, so dass diese Daten dann (über eine Leitung) übertragen werden können. Bei dieser Umwandlung muss auf die Besonderheiten des Datenformats eingegangen werden.
 
Unter Encoding wird eine syntaktische Umwandlung der Daten in ein bestimmtes Datenformat verstanden, so dass diese Daten dann (über eine Leitung) übertragen werden können. Bei dieser Umwandlung muss auf die Besonderheiten des Datenformats eingegangen werden.
 +
 +
Als gängig werden Encoding in [[v3dtr1:Allgemeine_Erläuterungen|XML]] und HTML verstanden. Hierbei müssen dann spezielle Zeichen wie bspw. "<" und ">" durch "$lt;" oder "&gt;" ersetzt werden.
 +
 +
==ER7==
 +
 +
Ein anderes (bekanntes) und häufig verwendetes Encoding ist das "Vertical Bar Encoding" oder auch "Encoding Rules Level 7" (kurz ER7) von HL7 Version 2.x. Hierbei muss ebenfalls Rücksicht auf spezielle Zeichen genommen werden. Dumm ist hier nur, dass die meisten dieses Zeichen nicht fix festgelegt worden sind, sondern erst in der jeweiligen Nachricht definiert werden.
 +
 +
Das einzige Zeichen, das fest zum Encoding verwendet wird, ist das '''Carriage Return'''. Dieses wird zur Kennzeichnung des Segment-Endes genutzt. Daher '''muss''' ein Carriage Return '''immer''' durch eine spezielle Sequenz ersetzt werden.
 +
 +
Alle anderen Spezialzeichen, die zum Trennen der einzelnen Elemente in einer Nachricht verwendet werden, werden dynamisch festgelegt. (Fast alle Entwickler gehen allerdings davon aus, dass diese Zeichen fest definiert sind, was so nicht stimmt. Diese Zeichen werden fast nie geändert, so dass dies nicht zum Tragen kommt.)
 +
 +
{| class="hl7table"
 +
|-
 +
!Delimiter !! Zweck !! Position !! Beispiel
 +
|-
 +
|Feld || Abtrennung der Datenelemente im Segment || MSH-1 ||
 +
|-
 +
|Komponente || Teile eines Feldes || MSH-2.1 ||
 +
|-
 +
|Subkomponente || Teile einer Komponente || MSH-2.
 +
|-
 +
|Escape || womit werden die "entwerteten" Zeichen gekennzeichnet? Dieses Zeichen wird dann davor '''und''' danach eingesetzt. || MSH-2. ||
 +
|-
 +
|Repetition || kennzeichnet die Wiederholung ganzer Felder || MSH-2. ||
 +
|-
 +
|Truncation|| wie wird am Ende eines Feldes/Komponente/Subkomponente kenntlich gemacht, dass Daten abgeschnitten wurden? (erst ab v2.8) || MSH-2.5 ||
 +
|}
 +
  
 
[[Kategorie:Enzyklopädie]]
 
[[Kategorie:Enzyklopädie]]

Version vom 28. November 2013, 07:57 Uhr


Encoding

Unter Encoding wird eine syntaktische Umwandlung der Daten in ein bestimmtes Datenformat verstanden, so dass diese Daten dann (über eine Leitung) übertragen werden können. Bei dieser Umwandlung muss auf die Besonderheiten des Datenformats eingegangen werden.

Als gängig werden Encoding in XML und HTML verstanden. Hierbei müssen dann spezielle Zeichen wie bspw. "<" und ">" durch "$lt;" oder ">" ersetzt werden.

ER7

Ein anderes (bekanntes) und häufig verwendetes Encoding ist das "Vertical Bar Encoding" oder auch "Encoding Rules Level 7" (kurz ER7) von HL7 Version 2.x. Hierbei muss ebenfalls Rücksicht auf spezielle Zeichen genommen werden. Dumm ist hier nur, dass die meisten dieses Zeichen nicht fix festgelegt worden sind, sondern erst in der jeweiligen Nachricht definiert werden.

Das einzige Zeichen, das fest zum Encoding verwendet wird, ist das Carriage Return. Dieses wird zur Kennzeichnung des Segment-Endes genutzt. Daher muss ein Carriage Return immer durch eine spezielle Sequenz ersetzt werden.

Alle anderen Spezialzeichen, die zum Trennen der einzelnen Elemente in einer Nachricht verwendet werden, werden dynamisch festgelegt. (Fast alle Entwickler gehen allerdings davon aus, dass diese Zeichen fest definiert sind, was so nicht stimmt. Diese Zeichen werden fast nie geändert, so dass dies nicht zum Tragen kommt.)

Delimiter Zweck Position Beispiel
Feld Abtrennung der Datenelemente im Segment MSH-1
Komponente Teile eines Feldes MSH-2.1
Subkomponente Teile einer Komponente MSH-2.
Escape womit werden die "entwerteten" Zeichen gekennzeichnet? Dieses Zeichen wird dann davor und danach eingesetzt. MSH-2.
Repetition kennzeichnet die Wiederholung ganzer Felder MSH-2.
Truncation wie wird am Ende eines Feldes/Komponente/Subkomponente kenntlich gemacht, dass Daten abgeschnitten wurden? (erst ab v2.8) MSH-2.5