This specification is currently a work in progress.
Events Processed
ADT^A01 - Admit Patient
An A01 event is intended to be used for "Admitted" patients only. An A01 event is sent as a result of a patient undergoing the admission process which assigns the patient to a bed. It signals the beginning of a patient’s stay in a healthcare facility.
Cortex will update both patient demographic information from the PID segment, as well as visit information when processing this message.
Updates to admit information are sent as a subsequent ADT^A01 message.
Structure:
Segment | Opt |
MSH | R |
EVN | R |
PID | R |
NK1 | {O} |
PV1 | R |
PV2 | O |
ADT^A02 - Transfer Patient
An A02 event is issued as a result of the patient changing his or her assigned physical location.
Cortex will update both patient demographic information from the PID segment, as well as visit information when processing this message.
To cancel a transfer, a new ADT^A02 message should be sent, reversing the locations.
Structure:
Segment | Opt |
MSH | R |
EVN | R |
PID | R |
PV1 | R |
PV2 | O |
ADT^A03 - Discharge Patient
An A03 event signals the end of a patient’s stay in a healthcare facility. It signals that the patient’s status has changed to "discharged" and that a discharge date has been recorded. The patient is no longer in the facility.
For non-admitted patients, an A03 event signals the end of a patient’s visit to a healthcare facility. It could be used to signal the end of a visit for a one-time or recurring outpatient who is not assigned to a bed. It could also be used to signal the end of a visit to the Emergency Department.
Cortex will update both patient demographic information from the PID segment, as well as visit information when processing this message.
Updates to patient discharge information are sent as a subsequent ADT^A04 message.
Structure:
Segment | Opt |
MSH | R |
EVN | R |
PID | R |
PV1 | R |
PV2 | O |
ADT^A04 - Register Patient
This event signals that the patient has arrived or checked in as a one-time, or recurring outpatient, and is not assigned to a bed. Typically Emergency Department visits.
Cortex will update both patient demographic information from the PID segment, as well as visit information when processing this message.
Updates to patient registration information are sent as a subsequent ADT^A04 message.
Structure:
Segment | Opt |
MSH | R |
EVN | R |
PID | R |
PV1 | R |
PV2 | O |
ADT^A11 - Cancel Patient Admit
For "admitted" patients, the A11 event is sent when an A01 (admit/visit notification) event is cancelled, either because of an erroneous entry of the A01 event, or because of a decision not to admit the patient after all.
For "non-admitted" patients, the A11 event is sent when an A04 (register a patient) event is cancelled, either because of an erroneous entry of the A04 event, or because of a decision not to check the patient in for the visit after all.
Structure:
Segment | Opt |
MSH | R |
EVN | R |
PID | R |
PV1 | R |
PV2 | O |
ADT^A13 - Cancel Discharge
The A13 event is sent when an A03 (discharge/end visit) event is cancelled, either because of erroneous entry of the A03 event or because of a decision not to discharge or end the visit of the patient after all.
Structure:
Segment | Opt |
MSH | R |
EVN | R |
PID | R |
PV1 | R |
PV2 | O |
ADT^A28 - Create New Patient
This event allows the creation of a patient record in Cortex before any admission or visit events take place.
HL7 2.4 defines the PV1 segment as required to maintain backward compatibility with previous releases. However, a "pseudo-optional" PV1 can be achieved by valuing PV1-2 - patient class to N - not applicable. Cortex does not require the presence of the PV1 segment at all for this event.
Structure:
Segment | Opt |
MSH | R |
EVN | R |
PID | R |
PV1 | O |
PV2 | O |
ADT^A31 - Update Person Information
This event allows for the updating of patient demographic information outside of the context of a visit. Many systems can be quite noisy with theses messages, so Cortex will selectively process these messages only for patient who have a current visit in progress. This event is ignored for those patients who do not have a visit in progress.
HL7 2.4 defines the PV1 segment as required to maintain backward compatibility with previous releases. However, a "pseudo-optional" PV1 can be achieved by valuing PV1-2 - patient class to N - not applicable. Cortex does not require the presence of the PV1 segment at all for this event.
Structure:
Segment | Opt |
MSH | R |
EVN | R |
PID | R |
PV1 | O |
PV2 | O |
ADT^A40 - Merge Patient
An A40 event is used to signal a merge of records for a patient that was incorrectly filed under two different identifiers. The "incorrect source identifier" identified in the MRG segment (MRG-1 - prior patient identifier list) is to be merged with the required "correct target identifier" of the same "identifier type code" component identified in the PID segment (PID-3 - patient identifier list). The "incorrect source identifier" would then logically never be referenced in future transactions.
Structure:
Segment | Opt |
MSH | R |
EVN | R |
PID | R |
MRG | R |
PV1 | O |
Segment Definitions
MSH - Message Header Segment
Seq | Name | Len | Type | Opt | Rpt | Nullable | Description |
1 | Field Separator | 1 | ST | R | Standard HL7 field separator. Fixed value of '|'. | ||
2 | Encoding Characters | 4 | ST | R | Standard HL7 encoding characters. Fixed value of '^~\&'. | ||
3 | Sending Application | 180 | HD | O | Application that originally sent the message. | ||
4 | Sending Facility | 180 | HD | O | Facility that originally sent the message. | ||
5 | Receiving Application | 180 | HD | O | Application the message is intended for. | ||
6 | Receiving Facility | 180 | HD | O | Facility the message is intended for. | ||
7 | Date / Time of Message | 26 | TS | R | The value of this field must be to a precision of fractions of a second to 3 decimal places. If the fractions of a second are not available, then these must be set to '000'. The value of this field must contain the time zone component. The time zone of this date time will be treated as the default time zone for all other time stamps in a message instance (i.e. this time zone will be used if one is not supplied with other time stamps). | ||
8 | Security | ST | O | Unused | |||
9 | Message Type | MSG | R | See elsewhere for message types supported by Cortex. | |||
10 | Message Control ID | 22 | ST | R | Unique message control ID. | ||
11 | Processing ID | 3 | PT | R | Processing ID. Message will only be processed if the value of this is 'P'. Message will be ignored for any other value. | ||
12 | Version ID | 8 | ID | R | HL7 Version ID. Fixed value of '2.4'. |
Example:
MSH|^~\\&|||||20190527223546||ADT^A01|18234123946123|P|2.4||||
EVN - Event Segment
Seq | Name | Len | Type | Opt | Rpt | Nullable | Description |
2 | Recorded Date Time | 26 | TS | R | |||
6 | Occurred Date Time | 26 | TS | O | Optional, will fall back to EVN.2 date time for event. |
Example:
EVN|A01|20190527223546||||20190527223400|
PID - Patient Identifier Segment
Seq | Name | Len | Type | Opt | Rpt | Nullable | Description |
2 | Patient ID | 20 | CX | B | Backwards Compatibility only. Cortex may be configured to use this identifier as the primary identifier for creating and matching patient records. | ||
3 | Patient Identifier List | 250 | CX | R | Y | List of identifiers used to uniquely identify a patient. Cortex may be configured to filter this patient identifier list to match a "primary identifier" type it uses to create and match patient records. For New Zealand, this patient identifier list must contain a NHI number. It should be identified by setting the Universal ID (3.4.2) to '2.16.840.1.113883.2.18.2' - the Ministry of Health NHI OID. Identifiers in this list not matching the filter defined by the organisation will be ignored. If multiple identifiers match the filter defined by the organisation, the first in the list will be used. | |
5 | Patient Name | 250 | XPN | R | Y | The first name in this repeating field is considered the primary legal name of the patient which will show in Cortex. Multiple names may exist here, and future versions of Cortex may allow a 'Preferred Name' in addition to legal name. | |
7 | Date Time of Birth | 26 | TS | R | The minimum precision requirement for this field is days (YYYYMMDD). If the time of birth is not known then it should be defaulted to ‘000000’, as per the TS type definition. | ||
8 | Administrative Sex | 1 | IS | R | Administrative sex of the patient based on biological and physical characteristics. Note that this is different to gender which is self- identified. Valid values are: A (Ambiguous) F (Female) M (Male) N (Not Applicable) O (Other) U (Unknown) | ||
29 | Patient Death Date Time | 26 | TS | O | Date and time when patient death occurred. Mandatory if PID.30 <Patient Death Indicator> is set to 'Y'. | ||
30 | Patient Death Indicator | 1 | ID | O | Y | Indicates if the patient is deceased. <blank> defaults to not deceased. Valid values are: N (No) Y (Yes) <blank> |
Examples:
PID|1||81231314^^^&2.16.840.1.113883.2.18.66.3.1.1~ZZZ0016^^^&2.16.840.1.113883.2.18.2~TEM1234^^^&2.16.840.1.113883.2.18.2||Bloggs^Joe^John^^Mr^^D||19391009|M||99^Not Stated||||||||||||99^Not Stated^NZHIS||||||||N
PV1 - Patient Visit Segment
Seq | Name | Len | Type | Opt | Rpt | Nullable | Description |
2 | Patient Class | 1 | IS | R | Category of patient stay. Valid values are: E (Emergency) I (Inpatient admissions) N (Not applicable) | ||
3 | Assigned Patient Location | 80 | PL | R | The patient's current assigned location. For transfer events, this is the destination location. For discharge events, this is the patient's location prior to discharge. | ||
7 | Attending Doctor | 250 | XCN | O | Y | Y | The attending doctor for this visit. Multiple names and identifiers for the same physician may be sent. In New Zealand it is recommended to use the person's CPN from the Health Practitioner Index as the ID number. With the Universal ID of the assigning authority set to '2.16.840.1.113883.2.18.3.1' |
8 | Referring Doctor | 250 | XCN | O | Y | ||
19 | Visit Number | 250 | CX | R | Unique visit number. | ||
38 | Diet Type | 250 | CE | O | |||
44 | Admit Date Time | 26 | TS | O | Required for all ADT events where a visit presentation has occurred; i.e. the patient has either been registered or admitted. | ||
45 | Discharge Date Time | 26 | TS | O | Required for all patient discharge (A03) events. |
MRG - Merge Patient Information Segment
Seq | Name | Len | Type | Opt | Rpt | Nullable | Description |
1 | Prior Patient Identifier | 250 | CX | R | The patient identifier that is to be merged into another [existing] patient record (as defined by the PID segment within the same message). |
Data Types
CX - Extended Composite ID with Check Digit
Seq | Component Name | Len | Type | Opt | Description |
1 | ID | ST | R | The value of the identifier itself. | |
2 | Check Digit | ST | O | Should be null | |
3 | Check Digit Scheme | ID | O | Should be null | |
4 | Assigning Authority | HD | R | Assigning authority for the identifier. For NHI identifiers in New Zealand, it is recommended the Universal ID (CX.4.2) component should be set to the Ministry of Health's NHI OID: '2.16.840.1.113883.2.18.2' |
Example:
ZZZ0016^^^&2.16.840.1.113883.2.18.2 (Usage as New Zealand NHI patient identifier)
PL - Patient Location
Seq | Component Name | Len | Type | Opt | Description |
1 | Point of Care | IS | R | Ward / Unit / Department / Clinic within the Facility | |
2 | Room | IS | O | Patient room | |
3 | Bed | IS | O | Patient bed | |
4 | Facility | HD | R | Facility where the patient is located. The Universal ID (PL.4.2) component is required to be set. In New Zealand it is highly recommended that the Universal ID component be set to the Facility Code from the Ministry of Health's HPI. Optional the Universal ID type may be set to 'FAC' | |
9 | Location Description | ST | Text description of the patient location. If Cortex is configured to auto-create locations, this description will be used to name the newly created location. The Cortex location name may be updated after creation. |
Example:
WD 16^01^04^&FZZ999-B&FAC^^^^Ward 16 (Usage as New Zealand location within a MoH defined facility)
XPN - Extended Person Name
Seq | Component Name | Len | Type | Opt | Description |
1 | Family Name | 100 | ST | R | Note this should be a string, not a FN type. |
2 | Given Name | 100 | ST | R |
Example:
Bloggs^Joe^