HL7
(THIS BLOG IS STILL IN PROGRESS)
Ref
- Health Level 7
- Here’s What You Should Know about HL7 Messages and its Types
- Overview of OIDs used in European HL7 artefacts
What and why
- HL7(Health Level 7) refers to a set of international standards for transfer of clinical and administrative data between software applications used by various healthcare providers.
- It focuses on application layer, which is ‘layer 7’ in OSI model.
- Healthcare softwares need to talk with each other in the same language. HL7 tries to be that language.
HL7 components
Name | Description |
---|---|
V2 | Version 2.x Messaging Standard, an interoperability specification for health and medical transactions |
V3 | Version 3 Messaging Standard, an interoperability specification for health and medical transactions |
CDA | Clinical Document Structure, an exchange model for clinical documents, based on HL7 Version 3 |
FHIR | Fast Healthcare Interoperability Resources, a standard for the exchange of resources |
Other components:
Name | Description |
---|---|
CCD | Continuity of Care Document, a US specification for the exchange of medical summaries, based on CDA |
SPL | Structured Product Labeling, the published information that accompanies a medicine, based on HL7 Version 3 |
CCOW | Clinical Context Object Workgroup, an interoperability specification for the visual integration of user applications |
Arden Syntax | A grammar for representing medical conditions and recommendations as a Medical Logic Module (MLM) |
Claims Attachments | A Standard Healthcare Attachment to augment another healthcare transaction |
Functional Specification of EHR/PHR | A standardized description of health and medical functions sought for or available in such software applications |
GELLO | A standard expression language used for clinical decision support |
HL7 V2
Intro
- Originally created in 1989, quite a few years from now. Now its got versions 2.1, 2.2, 2.3, 2.3.1, 2.4, 2.5, 2.5.1, 2.6, 2.7, 2.7.1, 2.8, 2.8.1 and 2.8.2. V2 standards are backward compatible.
- Read complete specification here(based on 2.8.2)
Message types and trigger events
Message type and trigger event are interchangable in most cases.
A trigger event is a real-world event that initiates communication and the sending of a message.
MSH-9
(9th field of the MSH
segment) contains message type and trigger event. Message type and trigger event together specifies the type of a HL7 v2 message. For example, ADT-A01
is a typical MSH-9
segment value, ADT
(ADT
means Admit, Discharge, Transfer) is the message type and A01
is the trigger event(A01
means admitted, while A02
means transferred and A03
means discharged).
See full list of message type/trigger event here(based on v2.5.1).
Message Structure
- Message
- => Segment: Each line is a segment, a carriage return
\r
separates one from another. - ===> Field/Composite: A pipe
|
separates one from another. Fields may contain sub-fields separated by caret^
.
Example:
1 | MSH|^~\&|MegaReg|XYZHospC|SuperOE|XYZImgCtr|20060529090131-0500||ADT^A01^ADT_A01|01052901|P|2.5 |
A great search table for HL7 v2 components: Caristix (Search box at top right)
For example, searchADT_A01
(trigger event),MSH
(segment),MSH.9
(Field).
OID
HL7 Version 3 artefacts use OIDs (unique Object IDentifiers, an ISO standard) to identify coding schemes and identifier namespaces.
See OID Registry table here