HL7 ADT
To see the latest Compass V2 schema, please see Discovery Remote Subscriber Database Familiarisation#Data_Mapping
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 provides an overview the HL7 ADT message types, structure, transform process, and the ADT -> FHIR -> Compass2 mappings.
Further segment level details are described in the article Publisher API HL7 Messages where details of cardinality are also given
Message Types
Publisher | Message Type | Message Name |
---|---|---|
Barts Health
Homerton |
ADT^A01 | Admit / visit notification |
Barts Health
Homerton |
ADT^A02 | Transfer a patient |
Barts Health
Homerton |
ADT^A03 | Discharge/end visit |
Barts Health
Homerton |
ADT^A04 | Register a patient |
Homerton | ADT^A05 | Pre-admit a patient |
Homerton | ADT^A06 | Change an outpatient to an inpatient |
Homerton | ADT^A07 | Change an inpatient to an outpatient |
Barts Health
Homerton |
ADT^A08 | Update patient information |
Barts Health | ADT^A11 | Cancel admit/visit notification |
Barts Health
Homerton |
ADT^A12 | Cancel transfer |
Barts Health
Homerton |
ADT^A13 | Cancel discharge/end visit |
Homerton | ADT^A14 | Pending admit |
Homerton | ADT^A17 | Swap patients |
Barts Health
Homerton |
ADT^A23 | Delete a patient record |
Homerton | ADT^A27 | Cancel pending admit |
Barts Health
Homerton |
ADT^A28 | Add person information |
Barts Health
Homerton |
ADT^A31 | Update person information |
Barts Health
Homerton |
ADT^A34 | Merge patient information - patient ID only |
Barts Health
Homerton |
ADT^A35 | Merge patient information - account number only |
Barts Health
Homerton |
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 | Standard segments | Cerner custom segments |
---|---|---|
|
|
|
Structure B – Person level messages (without encounter information)
Applies to | Standard segments | Cerner custom segments |
---|---|---|
|
|
|
Structure C – Swap patients
Applies to | Standard segments | Cerner custom segments |
---|---|---|
|
|
|
Structure D – Merge patient information
Applies to | Standard segments |
---|---|
|
|
Structure E – Merge account number
Applies to | Standard segments |
---|---|
|
|
Transformation
The diagram below shows a simplified view of the HL7 to FHIR transform for structure A with the source HL7 segments on the left and target FHIR resources on the right.
Barts Health | Homerton |
![]() |
![]() |
As Barts Health plus NK1 and ZVI
|
The following sections show each transformation in detail, including field mappings.
Message Header
Barts Health | Homerton |
![]() |
![]() |
Message Header (MSH) | Message Header (MSH) & Even Type (EVN) |
MSH field mapping
Publisher | Field# | FieldName | FHIR Mapping | Extension |
---|---|---|---|---|
Barts Health
Homerton |
MSH.3 | Sending application | MessageHeader.source.software | |
Barts Health
Homerton |
MSH.4 | Sending facility | MessageHeader.source.name | |
Barts Health
Homerton |
MSH.5 | Receiving application | MessageHeader.destination.extension | message-header-destination-software-extension |
Barts Health
Homerton |
MSH.6 | Receiving facility | MessageHeader.destination.name & MessageHeader.responsible | |
Barts Health
Homerton |
MSH.7 | Message date/time | MessageHeader.timestamp | |
Barts Health
Homerton |
MSH.9 | Message type | MessageHeader.event.code | |
Barts Health
Homerton |
MSH.10 | Message control id | MessageHeader.extension | message-header-message-control-id-extension |
Barts Health
Homerton |
MSH.12 | Version ID | MessageHeader.event.version | |
Homerton | MSH.13 | Sequence number | MessageHeader.extension | message-header-sequence-number-extension |
EVN field mapping
Publisher | Field# | FieldName | FHIR Mapping |
---|---|---|---|
Homerton | EVN.5 | Operator ID | MessageHeader.enterer & Practitioner.identifier & Practitioner.name |
Patient
Barts Health
Patient Identification (PID), & Patient Additional Demographic (PD1) |
|
Homerton
Patient Identification (PID), Patient Additional Demographic (PD1), & Next of Kin (NK1) segments |
PID field mapping
Publisher | Field# | FieldName | FHIR Mapping | Extension | Compass Schema Table | Field |
---|---|---|---|---|---|---|
Barts Health
Homerton |
PID.2 | Patient ID | Patient.identifier | patient | nhs_number
or null | |
Barts Health
Homerton |
PID.3 | Patient Identifier List | Patient.identifier | patient | nhs_number
or null | |
Barts Health | - PID.3.1 | ID | Patient.identifier.value | patient | nhs_number
or null | |
Barts Health | - PID.3.4 | Assigning authority | Patient.identifier.system | – | – | |
Homerton | PID.4 | Alternate PatientIidentifier | Patient.identifier | patient | nhs_number
or null | |
Barts Health
Homerton |
PID.5 | Patient Name | Patient.name | patient | first_names
last_name | |
Barts Health | - PID.5.1 | Family Name | Patient.name.family | patient | last_name | |
Barts Health | - PID.5.2 | Given Name | Patient.name.given | patient | first_names | |
Barts Health | - PID.5.3 | Middle Name | Patient.name.given | patient | first_names | |
Barts Health | - PID.5.5 | Prefix | Patient.name.prefix | patient | title | |
Barts Health | - PID.5.7 | Name Type Code | Patient.name.use | – | – | |
Barts Health
Homerton |
PID.7 | Date/Time Of Birth | Patient.birthDate & Patient.extension | primarycare-contact-birth-time-extension | patient | date_of_birth |
Barts Health
Homerton |
PID.8 | Sex | Patient.gender | patient | gender_concept_id | |
Barts Health
Homerton |
PID.9 | Patient Alias | Patient.name | – | – | |
Barts Health
Homerton |
PID.11 | Patient Address | Patient.address | patient | current_address_id | |
Barts Health | - PID.11.1 | Street Address | Patient.address.line | patient_address | address_line_1 | |
Barts Health | - PID.11.2 | Other Designation | Patient.address.line | patient_address | address_line_2 | |
Barts Health | - PID.11.3 | City | Patient.address.city | patient_address | city | |
Barts Health | - PID.11.5 | Zip Or Postal Code | Patient.address.postalCode | patient_address | postcode | |
Barts Health | - PID.11.7 | Address Type | Patient.address.use | patient_address | use_concept_id | |
Barts Health | - PID.11.8 | Other Geographic Designation | Patient.address.line | patient_address | address_line_3 | |
Barts Health | - PID.11.9 | County/Parish Code | Patient.address.district | patient_address | ward_code
local_authority_code | |
Barts Health
Homerton |
PID.13 | Phone Number - Home | Patient.telecom | patient_contact | type_concept_id | |
Barts Health | - PID.13.1 | Patient Number | Patient.telecom.value | patient_contact | value | |
Barts Health | - PID.13.2 | Telecommunication Use Code | Patient.telecom.use | patient_contact | use_concept_id | |
Barts Health
Homerton |
PID.14 | Phone Number - Business | Patient.telecom | patient_contact | type_concept_id | |
Barts Health | - PID.14.1 | Patient Number | Patient.telecom.value | patient_contact | value | |
Barts Health | - PID.14.2 | Telecommunication Use Code | Patient.telecom.use | patient_contact | use_concept_id | |
Barts Health
Homerton |
PID.15 | Primary Language | Patient.communication.language | ✗ | ✗ | |
Barts Health
Homerton |
PID.16 | Marital Status | Patient.maritalStatus | ✗ | ✗ | |
Barts Health
Homerton |
PID.17 | Religion | Patient.extension | primarycare-religion-category-extension | ✗ | ✗ |
Barts Health
Homerton |
PID.18 | Patient Account Number | Patient.identifier | ✗ | ✗ | |
Barts Health
Homerton |
PID.22 | Ethnic Group | Patient.extension | primarycare-ethnic-category-extension | patient | ethnic_code_concept_id |
Barts Health
Homerton |
PID.29 | Patient Death Date and Time | Patient.deceased | patient | date_of_death | |
Barts Health
Homerton |
PID.30 | Patient Death Indicator | Patient.deceased | – | – |
✗ = Data available but not published to Compass schema
– = Not applicable
PD1 field mapping
Publisher | Field# | FieldName | FHIR Mapping | Compass Schema Table | Field |
---|---|---|---|---|---|
Barts Health
Homerton |
PD1.3 | Patient primary facility | Patient.careProvider& Organization | patient | organization_id |
Barts Health | - PD1.3.3 | ID number | Organization.identifier.value | organization | ods_code |
Barts Health
Homerton |
PD1.4 | Patient primary care provider | Patient.careProvider& Practitioner | patient | registered_practice_organization_id |
Barts Health | - PD1.4.1 | ID number | Practitioner.identifier.value | practitioner | gmc_code |
Barts Health | - PD1.4.2 | Family name | Practitioner.name.family | practitioner | name |
Barts Health | - PD1.4.3 | Given name | Practitioner.name.given | practitioner | name |
Barts Health | - PD1.4.9 | Assigning authority | Practitioner.identifier.system | practitioner | organization_id |
NK1 field mapping
Publisher | Field# | FieldName | FHIR Mapping | Extension | Compass Schema Table | Field |
---|---|---|---|---|---|---|
Homerton | NK1.2 | Name | Patient.contact.name | ✗ | ✗ | |
Homerton | NK1.3 | Relationship | Patient.contact.relationship | ✗ | ✗ | |
Homerton | NK1.4 | Address | Patient.contact.address | ✗ | ✗ | |
Homerton | NK1.5 | Phone number | Patient.contact.telecom.value | ✗ | ✗ | |
Homerton | NK1.6 | Business phone number | Patient.contact.telecom.value | ✗ | ✗ | |
Homerton | NK1.7 | Contact role | Patient.contact.extension | primarycare-contact-role-category-extension | ✗ | ✗ |
Homerton | NK1.20 | Primary language | Patient.contact.extension | primarycare-contact-main-language-category-extension | ✗ | ✗ |
✗ = Data available but not published to Compass schema
Encounter
Barts Health
Patient Visit (PV1), Patient Visit - additional (PV2), & Event Type (EVN) |
|
Homerton
Patient Visit (PV1), Patient Visit - additional (PV2), & Additional Visit Information (ZVI) segments |
Note - Each ADT message containing a PV1 segment (i.e. Structure A messages) results in a new FHIR Encounter resource being created.
The newly created FHIR Encounter is linked to an EpisodeOfCare resource based on the PV1’s Visit Number (this is carried in the Attendance Number field).
If the PV1 Visit Number is new – i.e. has not previously been seen by Discovery – this causes a new EpisodeOfCare resource to be created.
If the PV1 Attendance Number has previously been seen by Discovery, then the Encounter is linked to the existing EpisodeOfCare.
PV1 field mapping
Publisher | Field# | FieldName | FHIR Mapping | Extension | Compass Schema Table | Field |
---|---|---|---|---|---|---|
Barts Health
Homerton |
PV1.2 | Patient class | Encounter.class | encounter | core_concept_id
non_core_concept_id admission_method | |
Barts Health | PV1.3 | Assigned patient location | Encounter.location
& Location |
encounter
location |
institution_location_id
id | |
Barts Health | - PV1.3.1 | Point of Care | Encounter.location | encounter | institution_location_id | |
Barts Health | - PV1.3.2 | Room | Encounter.location | encounter | institution_location_id | |
Barts Health | - PV1.3.3 | Bed | Encounter.location | encounter | institution_location_id | |
Barts Health | - PV1.3.4 | Facility | Encounter.location
Encounter.location |
encounter | institution_location_id | |
Barts Health | - PV1.3.7 | Building | Encounter.location | encounter | institution_location_id | |
Homerton | PV1.4 | Admission type | Encounter.extension | encounter-admission-type | ✗ | ✗ |
Homerton | PV1.6 | Prior patient location | Encounter.location& Location | ✗ | ✗ | |
Barts Health
Homerton |
PV1.7 | Attending doctor | Encounter.participant & Practitioner | encounter
practitioner |
practitioner_id
id | |
Barts Health | - PV1.7.1 | ID number | Practitioner.identifier.value | practitioner | gmc_code | |
Barts Health | - PV1.7.2 | Family name | Practitioner.name.family | practitioner | name | |
Barts Health | - PV1.7.3 | Given name | Practitioner.name.given | practitioner | name | |
Barts Health | - PV1.7.9 | Assigning authority | Practitioner.identifier.system | practitioner | organization_id | |
Barts Health
Homerton |
PV1.8 | Referring doctor | Encounter.participant & Practitioner | ✗ | ✗ | |
Barts Health | - PV1.8.1 | ID number | Practitioner.identifier.value | ✗ | ✗ | |
Barts Health | - PV1.8.2 | Family name | Practitioner.name.family | ✗ | ✗ | |
Barts Health | - PV1.8.3 | Given name | Practitioner.name.given | ✗ | ✗ | |
Barts Health | - PV1.8.9 | Assigning authority | Practitioner.identifier.system | ✗ | ✗ | |
Homerton | PV1.9 | Consulting doctor | Encounter.participant& Practitioner | ✗ | ✗ | |
Barts Health
Homerton |
PV1.10 | Hospital service | Encounter.serviceProvider& Organization | encounter
organization |
organization_id
service_provider_organization_id id | |
Homerton | PV1.14 | Admit source | Encounter.hospitalization.origin | ✗ | ✗ | |
Homerton | PV1.17 | Admitting doctor | Encounter.participant & Practitioner | ✗ | ✗ | |
Barts Health
Homerton |
PV1.18 | Patient type | Encounter.type | encounter | core_concept_id
non_core_concept_id | |
Barts Health
Homerton |
PV1.19 | Visit number | EpisodeOfCare.identifier | episode_of_care | id | |
Barts Health
Homerton |
PV1.36 | Discharge disposition | Encounter.hospitalization.dischargeDisposition | ✗ | ✗ | |
Barts Health
Homerton |
PV1.37 | Discharged to location | Encounter.hospitalization.destination | ✗ | ✗ | |
Homerton | PV1.39 | Servicing facility | Encounter.managingOrganization | – | – | |
Barts Health
Homerton |
PV1.41 | Account status | Encounter.status | episode_of_care | registration_status_concept_id | |
Barts Health
Homerton |
PV1.44 | Admit date/time | Encounter.statusHistory.start | encounter
encounter_event |
clinical_effective_date
| |
Barts Health
Homerton |
PV1.45 | Discharge date/time | Encounter.statusHistory.end | encounter
encounter_event |
end_date
clinical_effective_date | |
Homerton | PV1.50 | Alternate visit ID | Encounter.identifier | ✗ | ✗ | |
Homerton | PV1.52 | Other healthcare provider | Encounter.participant& Practitioner | ✗ | ✗ |
PV2 field mapping
Publisher | Field# | FieldName | FHIR Mapping | Compass Schema Table | Field |
---|---|---|---|---|---|
Barts Health
Homerton |
PV2.3 | Admit reason | Encounter.reason | ✗ | ✗ |
Homerton | PV2.4 | Transfer reason | Encounter.reason | ✗ | ✗ |
Barts Health
Homerton |
PV2.8 | Expected admit date/time | Encounter.statusHistory.start | ✗ | ✗ |
Homerton | PV2.9 | Expected discharge date/time | Encounter.statusHistory.end | ✗ | ✗ |
EVN field mapping
Publisher | Field# | FieldName | FHIR Mapping | Extension | Compass Schema Table | Field |
---|---|---|---|---|---|---|
Barts Health | EVN.2 | Recorded date/time | Encounter.extension | primarycare-recorded-date-extension | encounter | date_recorded |
Homerton | EVN.5 | Operator ID | MessageHeader.enterer & Practitioner.identifier & Practitioner.name | ✗ | ✗ |
ZVI field mapping
Publisher | Field# | FieldName | FHIR Mapping | Compass Schema Table | Field |
---|---|---|---|---|---|
Homerton | ZVI.9 | Admit mode | Encounter.hospitalization.admitSource | ✗ | ✗ |
Homerton | ZVI.15 | Assign to location date/time | Encounter.location.period | ✗ | ✗ |
✗ = Data available but not published to Compass schema
– = Not applicable