Structure des messages HL7
Un message HL7 est une structure hiérarchique associée à un événement déclencheur. La norme HL7 définit l’événement déclencheur comme « un événement dans le monde réel des soins de santé (qui) crée le besoin que les données circulent entre les systèmes ». Chaque événement déclencheur est associé à un message abstrait qui définit le type de données dont le message a besoin pour prendre en charge l’événement déclencheur. Le message abstrait est une collection de segments et inclut les règles de répétition et d’inclusion de ces segments. Le tableau suivant montre un exemple de message abstrait associé à l’événement déclencheur A04 – Inscrire le patient.
Événement déclencheur | Message abstrait |
---|---|
ADT^A04^ADT_A01 | Admissions, libération et transfert |
MSH | En-tête de message |
EVN | Type d'événement |
PID | Patient Identification |
[ PD1 ] | Données démographiques supplémentaires |
[{ ROL }] | Role |
[{ NK1 }] | Next of Kin / Associated Parties |
PV1 | Visite du patient |
[ PV2 ] | Visite du patient - Informations supplémentaires |
[{ ROL }] | Role |
[{ DB1 }] | Informations sur le handicap |
[{ OBX }] | Observation/résultat |
[{ AL1 }] | Informations sur les allergies |
[{ DG1 }] | Informations de diagnostic |
[ DRG ] | Groupe associé au diagnostic |
[{ | |
PR1 | Procédures |
[{ ROL }] | Role |
}] | |
[{ GT1 } ] | Garant |
[{ | |
IN1 | Assurance |
[ IN2 ] | Informations supplémentaires sur l’assurance |
[{ IN3 }] | Informations supplémentaires sur l’assurance - Cert. |
[{ ROL }] | Role |
}] | |
[ ACC ] | Informations sur les accidents |
[ UB1 ] | Informations sur les factures universelles |
[ UB2 ] | Informations sur la loi universelle 92 |
[ PDA ] | Décès et autopsie d’un patient |
Les crochets au-dessus de « [ », « ] » indiquent qu’un segment ou un groupe de segments est facultatif, tandis que les accolades « { », « } » indiquent que le segment ou le groupe de segments se répètent.
Un segment est un groupe de champs dont chacun est conforme à un type de données particulier. Les champs peuvent avoir une structure simple ou complexe. Ils se composent de composants selon les règles définies dans leur définition de type de données. Pour prendre en charge les types de données les plus complexes, certains composants peuvent se composer de sous-composants.
Notes
Le fait que l’encodage de messages HL7 utilise des délimiteurs spécifiés limite la capacité d’un développeur à introduire de nouvelles méthodes de sous-division des données. Il ne peut pas y avoir de sous-sous-composant, car cela nécessiterait l’invention d’un nouveau type de délimiteur.
Les premières spécifications HL7 ne définissaient pas le message abstrait. Le message abstrait est le modèle de segments associés à un événement déclencheur. De même, les messages HL7 contiennent des collections de segments qui se répètent ensemble, ou des groupes de segments. Les premières spécifications HL7 ne définissaient pas de groupes de segments. À partir de V2.3.1, puis dans les versions suivantes, cela a changé en raison de la nécessité de prendre en charge l’encodage XML. Par exemple, dans la table Événement déclencheur ci-dessus, le nom de la structure de message est « ADT_A01 ». Il s’agit du même modèle de segments utilisé pour prendre en charge A01 – Admettre le patient. Par souci de commodité, les noms des structures de messages correspondent au premier événement de déclencheur (en termes de placement dans le document HL7) qui les utilise. De même, le groupe de segments dans la table Trigger Event ci-dessus qui commence par IN1, y compris IN2, IN3 et ROL, se répète en tant que groupe. Son nom, à compter de la version 2.5, est groupe « Assurance ».
Dans la version 2, les règles de compatibilité inter-versions prennent en charge l’évolution des interfaces en exigeant que les versions ultérieures de la norme n’incluent pas de structures qui invalident les versions antérieures. Cela nécessite que vous ne supprimiez pas d’événement déclencheur et que vous n’utilisiez pas d’événement déclencheur à un autre objectif ou avec un message abstrait différent de celui prévu à l’origine. Pour les messages abstraits, cela implique que vous ne pouvez pas supprimer un segment d’un message, ni rendre un segment obligatoire facultatif ou un segment répétiteur non répétitifs. Si vous ajoutez un segment, vous devez le faire à la fin d’un message ou à la fin d’un groupe répété au sein d’un message.
Les fonctions suivantes de Microsoft BizTalk Accelerator pour HL7 (BTAHL7) prennent en charge ces exigences :
Prise en charge de tous les événements et structures de messages de déclencheur à partir de la version 2.1 et de la version 2.5.
Prise en charge de la localisation par l’ajout de segments et l’personnalisation du segment éventuellement et la répétition.
Voir aussi
Traitement des messages HL7
Traitement des messages
Utilisation des schémas HL7 2.X