HL7 ADT: Difference between revisions

From Discovery Data Service
Jump to navigation Jump to search
No edit summary
No edit summary
Line 3: Line 3:
== Message Types ==
== Message Types ==
{| class="wikitable"
{| class="wikitable"
!Publisher use
!Message Type
!Message Type
!Message Name
!Message Name
!Publisher use
|-
|-
|Barts Health
|ADT^A01
|ADT^A01
|Admit / visit notification
|Admit / visit notification
|-
|Barts Health
|Barts Health
|-
|ADT^A02
|ADT^A02
|Transfer a patient
|Transfer a patient
|-
|Barts Health
|Barts Health
|-
|ADT^A03
|ADT^A03
|Discharge/end visit
|Discharge/end visit
|-
|Barts Health
|Barts Health
|-
|ADT^A04
|ADT^A04
|Register a patient
|Register a patient
|Barts Health
|-
|-
|
|ADT^A05
|ADT^A05
|Pre-admit a patient
|Pre-admit a patient
|-
|
|
|-
|ADT^A06
|ADT^A06
|Change an outpatient to an inpatient
|Change an outpatient to an inpatient
|-
|
|
|-
|ADT^A07
|ADT^A07
|Change an inpatient to an outpatient
|Change an inpatient to an outpatient
|
|-
|-
|Barts Health
|ADT^A08
|ADT^A08
|Update patient information
|Update patient information
|-
|Barts Health
|Barts Health
|-
|ADT^A11
|ADT^A11
|Cancel admit/visit notification
|Cancel admit/visit notification
|-
|Barts Health
|Barts Health
|-
|ADT^A12
|ADT^A12
|Cancel transfer
|Cancel transfer
|-
|Barts Health
|Barts Health
|-
|ADT^A13
|ADT^A13
|Cancel discharge/end visit
|Cancel discharge/end visit
|Barts Health
|-
|-
|
|ADT^A14
|ADT^A14
|Pending admit
|Pending admit
|-
|
|
|-
|ADT^A17
|ADT^A17
|Swap patients
|Swap patients
|
|-
|-
|Barts Health
|ADT^A23
|ADT^A23
|Delete a patient record
|Delete a patient record
|Barts Health
|-
|-
|
|ADT^A27
|ADT^A27
|Cancel pending admit
|Cancel pending admit
|
|-
|-
|Barts Health
|ADT^A28
|ADT^A28
|Add person information
|Add person information
|-
|Barts Health
|Barts Health
|-
|ADT^A31
|ADT^A31
|Update person information
|Update person information
|-
|Barts Health
|Barts Health
|-
|ADT^A34
|ADT^A34
|Merge patient information - patient ID only
|Merge patient information - patient ID only
|-
|Barts Health
|Barts Health
|-
|ADT^A35
|ADT^A35
|Merge patient information - account number only
|Merge patient information - account number only
|-
|Barts Health
|Barts Health
|-
|ADT^A44
|ADT^A44
|Move account information - patient account number
|Move account information - patient account number
|Barts Health
|}
|}


Line 96: Line 96:


=== Structure A – Patient level messages ===
=== Structure A – Patient level messages ===
Applies to:
{| class="wikitable"
|Applies to:


* ADT^A01 (Admit/visit notification)
*ADT^A01 (Admit/visit notification)
* ADT^A02 (Transfer a patient)
* ADT^A02 (Transfer a patient)
* ADT^A03 (Discharge/end visit)
* ADT^A03 (Discharge/end visit)
Line 107: Line 108:
* ADT^A13 (Cancel discharge/end visit)
* ADT^A13 (Cancel discharge/end visit)
* ADT^A23 (Delete a patient record)
* ADT^A23 (Delete a patient record)
 
|Segments used:
Segments used:


* MSH [1..1] Message header
* MSH [1..1] Message header
Line 116: Line 116:
* PV1 [1..1] Patient visit information
* PV1 [1..1] Patient visit information
* PV2 [0..1] Patient visit additional
* PV2 [0..1] Patient visit additional
|}


=== Structure B – Person level messages (without encounter information) ===
=== Structure B – Person level messages (without encounter information) ===
Applies to:
{| class="wikitable"
|Applies to:


* ADT^A28 (Add person information)
*ADT^A28 (Add person information)
* ADT^A31 (Update person information)
* ADT^A31 (Update person information)
 
|Standard segments:
Standard segments:


* MSH [1..1] Message header
* MSH [1..1] Message header
Line 129: Line 130:
* PID [1..1] Patient information
* PID [1..1] Patient information
* PD1 [0..1] Additional demographics
* PD1 [0..1] Additional demographics
|}


=== Structure C – Merge patient information ===
=== Structure C – Merge patient information ===
Applies to:
{| class="wikitable"
|Applies to:


* A34 (Merge patient information)
* A34 (Merge patient information)
* A44 (Move account information)
* A44 (Move account information)


Standard segments:
 
|Standard segments:


* MSH [1..1] Message header
* MSH [1..1] Message header
Line 143: Line 147:
* PD1 [0..1] Additional demographics
* PD1 [0..1] Additional demographics
* MRG [1..1] Merge information
* MRG [1..1] Merge information
|}


=== Structure D – Merge account number ===
=== Structure D – Merge account number ===
Applies to:
{| class="wikitable"
|Applies to:


* A35 (Merge account number)
* A35 (Merge account number)


Standard segments:
 
|Standard segments:


* MSH [1..1] Message header
* MSH [1..1] Message header
Line 157: Line 164:
* PV1 [1..1] Patient visit information
* PV1 [1..1] Patient visit information
* MRG [1..1] Merge information
* MRG [1..1] Merge information
|}
== Transformation ==
The diagram below shows a simplified view of the HL7 to FHIR transform with the source HL7 segments on the left and target FHIR resources on the right.
[[File:HL7 ADT Transformation Overview.jpg|left|frameless|500x500px]]
The following sections show each transformation in detail, including field mappings.
=== MSH - Message Header Segment ===
[[File:MSH Overview.jpg|left|frameless|500x500px]]
{| class="wikitable"
|+MSH field mapping
!Publisher use
!Field#
!FieldName
!FHIR Mapping
!Extension
!Compass Schema Table
!Field
|-
|Barts Health
|MSH.3
|Sending application
|MessageHeader.source.software
|
|
|
|-
|Barts Health
|MSH.4
|Sending facility
|MessageHeader.source.name
|
|
|
|-
|Barts Health
|MSH.5
|Receiving application
|MessageHeader.destination.extension
|message-header-destination-software-extension
|
|
|-
|Barts Health
|MSH.6
|Receiving facility
|MessageHeader.destination.name  & MessageHeader.responsible
|
|
|
|-
|Barts Health
|MSH.7
|Message date/time
|MessageHeader.timestamp
|
|
|
|-
|Barts Health
|MSH.9
|Message type
|MessageHeader.event.code
|
|
|
|-
|Barts Health
|MSH.10
|Message control id
|MessageHeader.extension
|message-header-message-control-id-extension
|
|
|-
|Barts Health
|MSH.12
|Version ID
|MessageHeader.event.version
|
|
|
|-
|
|MSH.13
|Sequence number
|MessageHeader.extension
|message-header-sequence-number-extension
|
|
|}<br />
=== Patient Identification (PID) & Patient Additional Demographic (PD1) Segments ===
[[File:PID & PD1 Segments.jpg|left|frameless|500x500px]]


== Segment - PID - Patient Identification ==
{| class="wikitable"
{| class="wikitable"
|+
|+
FHIR Resource: Patient
PID field mapping
!Publisher use
!Field#
!Field#
!FieldName
!FieldName
!FHIR Mapping
!FHIR Mapping
!Extension
!Extension
!Compass Schema Table
!Field
|-
|-
|Barts Health
|PID.2
|PID.2
|Patient ID
|Patient ID
|Patient.identifier
|Patient.identifier
|
|
|
|
|-
|-
|Barts Health
|PID.3
|PID.3
|Patient Identifier List
|Patient Identifier List
|Patient.identifier
|Patient.identifier
|
|
|
|-
|Barts Health
| - PID.3.1
|ID
|Patient.identifier.value
|
|
|
|
|-
|-
|Barts Health
| - PID.3.4
|Assigning  authority
|Patient.identifier.system
|
|
|
|-
|
|PID.4
|PID.4
|Alternate PatientIidentifier
|Alternate PatientIidentifier
|Patient.identifier
|Patient.identifier
|
|
|
|
|-
|-
|Barts Health
|PID.5
|PID.5
|Patient Name
|Patient Name
|Patient.name
|Patient.name
|
|
|
|-
|Barts Health
| - PID.5.1
|Family Name
|Patient.name.family
|
|
|
|-
|Barts Health
| - PID.5.2
|Given  Name
|Patient.name.given
|
|
|
|-
|Barts Health
| - PID.5.3
|Middle  Name
|Patient.name.given
|
|
|
|-
|Barts Health
| - PID.5.5
|Prefix
|Patient.name.prefix
|
|
|
|-
|Barts Health
| - PID.5.7
|Name  Type Code
|Patient.name.use
|
|
|
|
|-
|-
|Barts Health
|PID.7
|PID.7
|Date/Time Of Birth
|Date/Time Of Birth
|Patient.birthDate & Patient.extension
|Patient.birthDate & Patient.extension
|primarycare-contact-birth-time-extension
|primarycare-contact-birth-time-extension
|
|
|-
|-
|Barts Health
|PID.8
|PID.8
|Sex
|Sex
|Patient.gender
|Patient.gender
|
|
|
|
|-
|-
|Barts Health
|PID.9
|PID.9
|Patient Alias
|Patient Alias
|Patient.name
|Patient.name
|
|
|
|
|-
|-
|Barts Health
|PID.11
|PID.11
|Patient Address
|Patient Address
|Patient.address
|Patient.address
|
|
|
|-
|Barts Health
| - PID.11.1
|Street Address
|Patient.address.line
|
|
|
|
|-
|-
|Barts Health
|<nowiki>- PID.11.2</nowiki>
|Other  Designation
|Patient.address.line
|
|
|
|-
|Barts Health
|<nowiki>- PID.11.3</nowiki>
|City
|Patient.address.city
|
|
|
|-
|Barts Health
|<nowiki>- PID.11.5</nowiki>
|Zip Or  Postal Code
|Patient.address.postalCode
|
|
|
|-
|Barts Health
|<nowiki>- PID.11.7</nowiki>
|Address  Type
|Patient.address.use
|
|
|
|-
|Barts Health
|<nowiki>- PID.11.8</nowiki>
|Other  Geographic Designation
|Patient.address.line
|
|
|
|-
|Barts Health
|<nowiki>- PID.11.9</nowiki>
|County/Parish  Code
|Patient.address.district
|
|
|
|-
|Barts Health
|PID.13
|PID.13
|Phone Number - Home
|Phone Number - Home
|Patient.telecom
|Patient.telecom
|
|
|
|
|-
|-
|Barts Health
|<nowiki>- PID.13.1</nowiki>
|Patient Number
|Patient.telecom.value
|
|
|
|-
|Barts Health
|<nowiki>- PID.13.2</nowiki>
|Telecommunication  Use Code
|Patient.telecom.use
|
|
|
|-
|Barts Health
|PID.14
|PID.14
|Phone Number - Business
|Phone Number - Business
|Patient.telecom
|Patient.telecom
|
|
|
|
|-
|-
|Barts Health
|<nowiki>- PID.14.1</nowiki>
|Patient Number
|Patient.telecom.value
|
|
|
|-
|Barts Health
|<nowiki>- PID.14.2</nowiki>
|Telecommunication  Use Code
|Patient.telecom.use
|
|
|
|-
|Barts Health
|PID.15
|PID.15
|Primary Language
|Primary Language
|Patient.communication.language
|Patient.communication.language
|
|
|
|
|-
|-
|Barts Health
|PID.16
|PID.16
|Marital Status
|Marital Status
|Patient.maritalStatus
|Patient.maritalStatus
|
|
|
|
|-
|-
|Barts Health
|PID.17
|PID.17
|Religion
|Religion
|Patient.extension
|Patient.extension
|primarycare-religion-category-extension
|primarycare-religion-category-extension
|
|
|-
|-
|Barts Health
|PID.18
|PID.18
|Patient Account Number
|Patient Account Number
|Patient.identifier
|Patient.identifier
|
|
|
|
|-
|-
|Barts Health
|PID.22
|PID.22
|Ethnic Group
|Ethnic Group
|Patient.extension
|Patient.extension
|primarycare-ethnic-category-extension
|primarycare-ethnic-category-extension
|
|
|-
|-
|Barts Health
|PID.29
|PID.29
|Patient Death Date and Time
|Patient Death Date and Time
|Patient.deceased
|Patient.deceased
|
|
|
|
|-
|-
|Barts Health
|PID.30
|PID.30
|Patient Death Indicator
|Patient Death Indicator
|Patient.deceased
|Patient.deceased
|
|
|}
|
 
|
== Segment - PD1 - Patient Additional Demographic ==
|}<br />
{| class="wikitable"
{| class="wikitable"
|+
|+
FHIR Resource: Patient
PD1 field mapping
!Publisher use
!Field#
!Field#
!FieldName
!FieldName
!FHIR Mapping
!FHIR Mapping
!Extension
!Extension
!Compass Schema Table
!Field
|-
|-
|Barts Health
|PD1.3
|PD1.3
|Patient primary  facility
|Patient primary  facility
|Patient.careProvider& Organization
|Patient.careProvider& Organization
|
|
|
|-
|Barts Health
| - PD1.3.3
|ID number
|Organization.identifier.value
|
|
|
|
|-
|-
|Barts Health
|PD1.4
|PD1.4
|Patient primary  care provider
|Patient primary  care provider
|Patient.careProvider& Practitioner
|Patient.careProvider& Practitioner
|
|
|
|-
|Barts Health
| - PD1.4.1
|ID number
|Practitioner.identifier.value
|
|
|
|-
|Barts Health
| - PD1.4.2
|Family name
|Practitioner.name.family
|
|
|
|-
|Barts Health
| - PD1.4.3
|Given name
|Practitioner.name.given
|
|
|
|-
|Barts Health
| - PD1.4.9
|Assigning authority
|Practitioner.identifier.system
|
|
|
|
|}
|}
Line 464: Line 832:


== Segment - MSH - Message Header ==
== Segment - MSH - Message Header ==
{| class="wikitable"
<br />
|+FHIR Resource:
!Field#
!FieldName
!FHIR Mapping
!Extension
|-
|MSH.3
|Sending application
|MessageHeader.source.software
|
|-
|MSH.4
|Sending facility
|MessageHeader.source.name
|
|-
|MSH.5
|Receiving application
|MessageHeader.destination.extension
|message-header-destination-software-extension
|-
|MSH.6
|Receiving facility
|MessageHeader.destination.name  & MessageHeader.responsible
|
|-
|MSH.7
|Message date/time
|MessageHeader.timestamp
|
|-
|MSH.9
|Message type
|MessageHeader.event.code
|
|-
|MSH.10
|Message control id
|MessageHeader.extension
|message-header-message-control-id-extension
|-
|MSH.12
|Version ID
|MessageHeader.event.version
|
|-
|MSH.13
|Sequence number
|MessageHeader.extension
|message-header-sequence-number-extension
|}<br />

Revision as of 11:46, 10 May 2021

The Discovery Data Service (DDS) takes HL7 ADT messages from a number of suppliers, transforms the data into FHIR, and makes this available for subscriber use. This page explains the HL7 ADT message types, structure, transform process, and the ADT -> FHIR -> Compass2 mappings.

Message Types

Publisher use Message Type Message Name
Barts Health ADT^A01 Admit / visit notification
Barts Health ADT^A02 Transfer a patient
Barts Health ADT^A03 Discharge/end visit
Barts Health ADT^A04 Register a patient
ADT^A05 Pre-admit a patient
ADT^A06 Change an outpatient to an inpatient
ADT^A07 Change an inpatient to an outpatient
Barts Health ADT^A08 Update patient information
Barts Health ADT^A11 Cancel admit/visit notification
Barts Health ADT^A12 Cancel transfer
Barts Health ADT^A13 Cancel discharge/end visit
ADT^A14 Pending admit
ADT^A17 Swap patients
Barts Health ADT^A23 Delete a patient record
ADT^A27 Cancel pending admit
Barts Health ADT^A28 Add person information
Barts Health ADT^A31 Update person information
Barts Health ADT^A34 Merge patient information - patient ID only
Barts Health ADT^A35 Merge patient information - account number only
Barts Health ADT^A44 Move account information - patient account number

Message Structures

The messages types are grouped by their structure for transformation to FHIR, since this avoids a large amount of code repetition.

When saving FHIR to the Discovery store there are variations in handling of message types within the message structure groups.

The structures are as follows:

Structure A – Patient level messages

Applies to:
  • ADT^A01 (Admit/visit notification)
  • ADT^A02 (Transfer a patient)
  • ADT^A03 (Discharge/end visit)
  • ADT^A04 (Register a patient)
  • ADT^A08 (Update patient information)
  • ADT^A11 (Cancel admit/visit notification)
  • ADT^A12 (Cancel transfer)
  • ADT^A13 (Cancel discharge/end visit)
  • ADT^A23 (Delete a patient record)
Segments used:
  • MSH [1..1] Message header
  • EVN [1..1]  Event information
  • PID [1..1] Patient information
  • PD1 [0..1] Additional demographics
  • PV1 [1..1] Patient visit information
  • PV2 [0..1] Patient visit additional

Structure B – Person level messages (without encounter information)

Applies to:
  • ADT^A28 (Add person information)
  • ADT^A31 (Update person information)
Standard segments:
  • MSH [1..1] Message header
  • EVN [1..1] Event information
  • PID [1..1] Patient information
  • PD1 [0..1] Additional demographics

Structure C – Merge patient information

Applies to:
  • A34 (Merge patient information)
  • A44 (Move account information)


Standard segments:
  • MSH [1..1] Message header
  • EVN [1..1] Event information
  • PID [1..1] Patient information
  • PD1 [0..1] Additional demographics
  • MRG [1..1] Merge information

Structure D – Merge account number

Applies to:
  • A35 (Merge account number)


Standard segments:
  • MSH [1..1] Message header
  • EVN [1..1] Event information
  • PID [1..1] Patient information
  • PD1 [0..1] Additional demographics
  • PV1 [1..1] Patient visit information
  • MRG [1..1] Merge information

Transformation

The diagram below shows a simplified view of the HL7 to FHIR transform with the source HL7 segments on the left and target FHIR resources on the right.

HL7 ADT Transformation Overview.jpg






The following sections show each transformation in detail, including field mappings.

MSH - Message Header Segment

MSH Overview.jpg




MSH field mapping
Publisher use Field# FieldName FHIR Mapping Extension Compass Schema Table Field
Barts Health MSH.3 Sending application MessageHeader.source.software
Barts Health MSH.4 Sending facility MessageHeader.source.name
Barts Health MSH.5 Receiving application MessageHeader.destination.extension message-header-destination-software-extension
Barts Health MSH.6 Receiving facility MessageHeader.destination.name & MessageHeader.responsible
Barts Health MSH.7 Message date/time MessageHeader.timestamp
Barts Health MSH.9 Message type MessageHeader.event.code
Barts Health MSH.10 Message control id MessageHeader.extension message-header-message-control-id-extension
Barts Health MSH.12 Version ID MessageHeader.event.version
MSH.13 Sequence number MessageHeader.extension message-header-sequence-number-extension


Patient Identification (PID) & Patient Additional Demographic (PD1) Segments

PID & PD1 Segments.jpg





PID field mapping
Publisher use Field# FieldName FHIR Mapping Extension Compass Schema Table Field
Barts Health PID.2 Patient ID Patient.identifier
Barts Health PID.3 Patient Identifier List Patient.identifier
Barts Health - PID.3.1 ID Patient.identifier.value
Barts Health - PID.3.4 Assigning authority Patient.identifier.system
PID.4 Alternate PatientIidentifier Patient.identifier
Barts Health PID.5 Patient Name Patient.name
Barts Health - PID.5.1 Family Name Patient.name.family
Barts Health - PID.5.2 Given Name Patient.name.given
Barts Health - PID.5.3 Middle Name Patient.name.given
Barts Health - PID.5.5 Prefix Patient.name.prefix
Barts Health - PID.5.7 Name Type Code Patient.name.use
Barts Health PID.7 Date/Time Of Birth Patient.birthDate & Patient.extension primarycare-contact-birth-time-extension
Barts Health PID.8 Sex Patient.gender
Barts Health PID.9 Patient Alias Patient.name
Barts Health PID.11 Patient Address Patient.address
Barts Health - PID.11.1 Street Address Patient.address.line
Barts Health - PID.11.2 Other Designation Patient.address.line
Barts Health - PID.11.3 City Patient.address.city
Barts Health - PID.11.5 Zip Or Postal Code Patient.address.postalCode
Barts Health - PID.11.7 Address Type Patient.address.use
Barts Health - PID.11.8 Other Geographic Designation Patient.address.line
Barts Health - PID.11.9 County/Parish Code Patient.address.district
Barts Health PID.13 Phone Number - Home Patient.telecom
Barts Health - PID.13.1 Patient Number Patient.telecom.value
Barts Health - PID.13.2 Telecommunication Use Code Patient.telecom.use
Barts Health PID.14 Phone Number - Business Patient.telecom
Barts Health - PID.14.1 Patient Number Patient.telecom.value
Barts Health - PID.14.2 Telecommunication Use Code Patient.telecom.use
Barts Health PID.15 Primary Language Patient.communication.language
Barts Health PID.16 Marital Status Patient.maritalStatus
Barts Health PID.17 Religion Patient.extension primarycare-religion-category-extension
Barts Health PID.18 Patient Account Number Patient.identifier
Barts Health PID.22 Ethnic Group Patient.extension primarycare-ethnic-category-extension
Barts Health PID.29 Patient Death Date and Time Patient.deceased
Barts Health PID.30 Patient Death Indicator Patient.deceased


PD1 field mapping
Publisher use Field# FieldName FHIR Mapping Extension Compass Schema Table Field
Barts Health PD1.3 Patient primary facility Patient.careProvider& Organization
Barts Health - PD1.3.3 ID number Organization.identifier.value
Barts Health PD1.4 Patient primary care provider Patient.careProvider& Practitioner
Barts Health - PD1.4.1 ID number Practitioner.identifier.value
Barts Health - PD1.4.2 Family name Practitioner.name.family
Barts Health - PD1.4.3 Given name Practitioner.name.given
Barts Health - PD1.4.9 Assigning authority Practitioner.identifier.system

Segment - NK1 - Next of Kin / Associated Parties

FHIR Resource: Patient
Field# FieldName FHIR Mapping Extension
NK1.2 Name Patient.contact.name
NK1.3 Relationship Patient.contact.relationship
NK1.4 Address Patient.contact.address
NK1.5 Phone number Patient.contact.telecom.value
NK1.6 Business phone number Patient.contact.telecom.value
NK1.7 Contact role Patient.contact.extension primarycare-contact-role-category-extension
NK1.20 Primary language Patient.contact.extension primarycare-contact-main-language-category-extension

Segment - PV1 - Patient Visit

FHIR Resource: Encounter
Field# FieldName FHIR Mapping Extension
PV1.2 Patient class Encounter.class
PV1.4 Admission type Encounter.extension encounter-admission-type
PV1.6 Prior patient location Encounter.location& Location
PV1.7 Attending doctor Encounter.participant & Practitioner
PV1.8 Referring doctor Encounter.participant & Practitioner
PV1.9 Consulting doctor Encounter.participant& Practitioner
PV1.10 Hospital service Encounter.serviceProvider& Organization
PV1.14 Admit source Encounter.hospitalization.origin
PV1.17 Admitting doctor Encounter.participant & Practitioner
PV1.18 Patient type Encounter.type
PV1.19 Visit number EpisodeOfCare.identifier
PV1.36 Discharge disposition Encounter.hospitalization.dischargeDisposition
PV1.37 Discharged to location Encounter.hospitalization.destination
PV1.39 Servicing facility Encounter.managingOrganization
PV1.41 Account status Encounter.status
PV1.44 Admit date/time Encounter.statusHistory.start
PV1.45 Discharge date/time Encounter.statusHistory.end
PV1.50 Alternate visit ID Encounter.identifier
PV1.52 Other healthcare provider Encounter.participant& Practitioner

Segment - PV2 - Patient Visit - Additional Information

FHIR Resource: Encounter
Field# FieldName FHIR Mapping Extension
PV2.3 Admit reason Encounter.reason
PV2.4 Transfer reason Encounter.reason
PV2.8 Expected admit date/time Encounter.statusHistory.start

Segment - EVN - Event Type

Field# FieldName FHIR Mapping Extension
EVN.2 Recorded date/time Encounter.extension primarycare-recorded-date-extension
EVN.5 Operator ID MessageHeader.enterer & Practitioner.identifier & Practitioner.name

Segment - MSH - Message Header