RIS_PD151_PAS_CRIS Interface Specification


Contents

1 Introduction 4

1.1 Purpose 4

1.2 Audience 4

2 Implementation Model 5

2.1 Overview 5

2.2 Application Data Flow 5

3 HL7 version 6

4 Message & Activity Mapping – PAS to CRIS 7

4.1 Register a new patient 7

4.2 Update existing patient 7

4.3 Deceased Patient 7

4.4 Merging Patients 7

4.5 Delete a Patient 7

4.6 Patient Admission 7

4.7 Patient Transfer 7

4.8 Patient Discharge 8

4.9 Patient Pre Admit 8

4.10 Schedule Patient 8

4.11 Patient Alarms 8

4.12 PAS Unlink Message (ADT^A37) 8

5 Message & Activity Mapping – CRIS to PAS 9

5.1 Register a new patient 9

5.2 Update existing patient 9

5.3 Merge patients 10

6 Message Transport 11

6.1 Connections 11

6.2 Transport level Acknowledgements 11

6.3 Application level Acknowledgements 11

6.4 Framing Characters 11

7 Error Handling 12

8 Data Mappings – Inbound messages 13

8.1 Patient Identifiers 13

8.2 Null values 14

8.3 Segment mappings 14

8.4 MSH 14

8.5 EVN 14

8.6 PID 14

8.7 AL1 16

8.8 IAM 16

8.9 PV1 17

8.10 PD1 17

8.11 SCH 17

8.12 ACK 18

8.13 MRG 18

8.14 NK1 18

9 Data Mappings – Outbound messages 20

9.1 MSH 20

9.2 MSA 21

9.3 EVN 21

9.4 PID 21

9.5 PD1 22

9.6 OBX 22

10 Initial PMI Data Upload 24

11 Standard Coding Tables 26

11.1 Patient Title 26

1  Introduction

1.1  Purpose

This document intends to define the transport protocols, message mappings and definitions for integration of CRIS with a local Patient Administration System (PAS).

This version of the specification applies to CRIS interface release 2.09.10t1b.

1.2  Audience

This document is intended for system integrators, third party suppliers and potential customers. The reader is assumed to be familiar with the HL7 standard.

2  Implementation Model

2.1  Overview

CRIS maintains a mirror view of the PAS patient data base which is used to serve search requests of the PAS from within radiology. This view is kept up to date with the data received in HL7 ADT type messages.

2.2  Application Data Flow

CRIS receives HL7 messages over TCP/IP via the HL7 Minimal Lower Layer Protocol. Updates are applied to the PAS mirror database and where appropriate to matching records in the CRIS database.

CRIS may optionally be configured to send application level acknowledgements as incoming messages are processed, in which case these will be sent over TCP/IP again via HL7 MLLP to the PAS system.

CRIS may also be configured to send patient updates to PAS in response to changes made by CRIS users and also patient registrations.

Many sites may wish to make use of an integration engine, in which case as far as CRIS is concerned the integration engine is the PAS.

3  HL7 version

All messages referenced in this document conform to the 2.4 version of the HL7 standard. Message transport is HL7 MLLP over TCP/IP.

4  Message & Activity Mapping – PAS to CRIS

4.1  Register a new patient

When the details of a new patient are added to PAS it should send either an ADT^A04 or an ADT^A28 message.

4.2  Update existing patient

When an existing patient’s demographic details are updated on PAS it should send either an ADT^A31 or ADT^A08 message.

4.3  Deceased Patient

When a patient is identified as being deceased on PAS it should send either an ADT^A31 or ADT^A08 message with the date of death field populated in the PID segment. In case of patients mistakenly recorded as deceased CRIS supports the practice of subsequent ADT^A31/A08 messages being sent with the date of death set to null.

4.4  Merging Patients

When the details of two patient records are found to refer to the same patient the records are merged on PAS, PAS should send an ADT^A40 message. In cases where the demographic details of the destination record have been changed this should be communicated in a separate ADT_A08 or ADT_A31 message.

It is not possible to either register or update a patient’s demographics details with an ADT^A40 message.

4.5  Delete a Patient

When a patient is deleted (usually for administrative reasons) PAS should send an ADT^A29 message.

4.6  Patient Admission

When a patient is admitted, PAS should send an ADT^A01 message. CRIS uses this message to maintain a record of the last known ward and consultant for a patient. There is no episodic history held on CRIS and cancel admission is not supported.

The ward, consultant and date fields need to be present.

It is not possible to either register or update a patient’s demographics details with an ADT^A01 message.

4.7  Patient Transfer

When a patient is transferred between ward and/or consultant PAS should send an ADT^A02 message. CRIS uses this message to maintain a record of the last known ward and consultant for a patient. There is no episodic history held on CRIS and cancel transfer is not supported.

The ward, consultant and date fields need to be present.

It is not possible to either register or update a patient’s demographics details with an ADT^A02 message.

4.8  Patient Discharge

When a patient is discharged PAS should send an ADT^A03 message. CRIS uses this message to maintain a record of the last known ward and consultant for a patient. There is no episodic history held on CRIS and cancel discharge is not supported.

It is not possible to either register or update a patient’s demographics details with an ADT^A03 message.

4.9  Patient Pre Admit

When a patient is pre-admitted PAS should send an ADT^A05 message. This message will then be forwarded on to PACS for use by the pre fetching system.

It is not possible to either register or update a patient’s demographics details with an ADT^A05 message.

4.10  Schedule Patient

When a patient has an appointment booked PAS may send an SIU^S12 or SIU^S13 (schedule) message. This message will then be forwarded on to PACS for use by the pre fetching system. This message triggers the same functionality on CRIS and PACS as the patient pre admit message.

4.11  Patient Alarms

To update alarms for a patient, PAS should send an ADT^A60 message. CRIS uses this message to maintain a record of alarms added to a patient externally from within CRIS.

It is not possible to either register or update a patient’s demographic details with an ADT^A60 message.

4.12  PAS Unlink Message (ADT^A37)

Some PAS’ can send unlink messages. (A37)

HSS would not consider automatic unmerges to be a safe thing to do in a shared RIS/PAS environment. However, to give the RIS administrators visibility of unmerges performed on PAS the A37 message will flag in the logs when an unmerge has been received.

This way the RIS administrators will know that they have some remedial work to do. It is important to know that CRIS will not make any changes, only log the receipt of the message.

5  Message & Activity Mapping – CRIS to PAS

5.1  Register a new patient

When either the details of a new patient are added to CRIS or a patient is updated that does not currently exist within the CRIS PAS mirror, CRIS will send an ADT^A04 message. In addition to NHS number and any known hospital numbers the PID:3 field will contain the following identifiers.

Assigning authority / Identifier Type Code / Description
CRIS / PI / Uniquely identifies the patient on CRIS
CRISPASLINK / PI / Uniquely identifies the message being sent from CRIS. This field is populated with the message control ID from MSH:10 encoded in base 64 in order to reduce the width of the field required for external systems to process it.

In the case of an unsuccessful registration PAS should send either:

a)  An A04 with the original “CRISPASLINK” value in PID:3 but without a PAS primary ID, and with an error message in EVN:4

b)  An ACK with MSA:1 containing the value “AE”, MSA:2 containing the message control ID of the registration message sent by CRIS and MSA:6^2 containing an error message

In the case of a successful registration PAS may send either:

a)  An A04 with PID:3 containing the original “CRISPASLINK” value supplied by CRIS along with the newly registered patients PAS primary ID. Warning messages indicating some problem with the demographics details may be passed in EVN:4. If other demographic information is supplied CRIS will update its database to match.

b)  An ACK with MSA:1 containing the value “AA” and MSA:2 containing the message control ID from the original A04 sent by CRIS. MSA:3 should contain the newly allocated patient identifier. Note that this message is NOT suitable if the patient identifier is a hospital number.

5.2  Update existing patient

When an existing patient’s demographic details are updated on CRIS and the record already exists in within the CRIS PAS mirror, CRIS will send an ADT^A08 message. The update message will contain the CRIS and CRISPASLINK identifiers as described for the ADT^A04 message.

In the case of an error situation PAS may send one of:

a)  An A08 with the original “CRISPASLINK” value in PID:3 and an error message in EVN:4. If the PAS primary ID is also supplied and the message contains demographic details CRIS will update it’s database to match.

b)  An ACK with MSA:1 containing the value “AE”, MSA:2 containing the message control ID from the original A08 sent by CRIS and MSA:6^2 containing an error message.

In the case of a successful update PAS may send either:

a)  An A08 with the original “CRISPASLINK” value in PID:3. If the PAS primary ID is also supplied and the message contains demographic details CRIS will update its database to match.

b)  An ACK with MSA:1 containing the value “AA” and MSA:2 containing the message control ID from the original A08 sent by CRIS. If a message is present in MSA:6^2 it will be logged against the original transmitted event.

5.3  Merge patients

Merges of patients performed on CRIS will not be propagated to PAS.

6  Message Transport

All Messages are transmitted over TCP/IP using MLLP.

6.1  Connections

One socket connection is used for messages originating from each system. The port numbers to be used will be decided by mutual agreement. For messages from PAS, CRIS will act as a server listening for connections and PAS will initiate the connection as a client. For messages from CRIS, PAS will act as server listening for connections and CRIS will initiate the connection as client.

6.2  Transport level Acknowledgements

CRIS will acknowledge each message before expecting delivery of the next one. Messages that are NAK’d should be logged.

6.3  Application level Acknowledgements

CRIS may be configured to send application level acknowledgements. If enabled these are generated as the inbound messages are processed. If an order communications interface is present the acknowledgements will be sent down the same channel as outbound order status/result messages, otherwise a dedicated connection will need to be configured.

If outbound patient registrations and/or updates from CRIS are enabled PAS will send application level acknowledgements.

6.4  Framing Characters

Standard HL7 MLLP framing characters will be used, these are

<0B> start of message

<1C> end of message

In addition MLLP requires that each message be followed by carriage return <0D>.

7  Error Handling

CRIS logs errors that are encountered processing messages. It is expected that the PAS system will also maintain its own logs.

If application level acknowledgements are enabled, errors whilst processing incoming messages will be communicated to the PAS in the acknowledgement message.

8  Data Mappings – Inbound messages

8.1  Patient Identifiers

All patient identifiers should be passed in PID:3. Components 1, 4 & 5 are required by CRIS, Component 2 is optional and is only for the NHS number, and all other components are ignored. One of the passed identifiers should be the primary key used on PAS, the Assigning authority/Identifier Type Code for this identifier will be pre-determined during system configuration.

Sequence / Name / Usage
1 / ID Number / Patient Identifier
2 / Check Digit / Optional, only used for NHS number if provided/requested by the Trust. Standard codes are in CRISNHSV table, namely, 01 = Number present and verified, 02 = Present but not traced, 03 = Trace required, 04 = Trace attempted, no or multiple matches found, 05 = Trace needs to be resolved (NHS number or patient detail conflict), 06 = Trace in progress, 07 = Number not present and trace not required, 08 = Trace postponed (baby under 6 weeks old)
4 / Assigning Authority / “NHS” for NHS number
“CHI” for CHI number
“CRIS” for CRIS patient identifier
“CRISPASLINK” for CRIS registration reference
Otherwise the code identifying a hospital for hospital numbers.
5 / Identifier Type Code / “NH” for NHS number/ CHI number
“MR” for hospital numbers
“PI” for system generated primary keys

CRIS will store the patient record against whichever identifier has been specified as primary key, in addition any patient identifier’s of type “MR” will be stored as hospital numbers and searchable within CRIS.

As an example, supposing the PAS uses a system generated ID that you would like to use as the primary key and you have a patient with an NHS number of 7863113687, a hospital number of A786345 for hospital RNZ03, a hospital number of B893722 for hospital RNZ04 and also an internally allocated system id of 8739123, you would send PID:3 populated as follows:

A786345^^^RNZ03^MR~B893722^^^RNZ04^MR~7863113687^^^NHS^NH~8739123^^^PAS^PI

In this example CRIS will store the patient record using a primary key value of 8739123, this value will not be immediately available to users. The NHS number and both hospital numbers will be stored against the patient and searchable on CRIS.

Another example, PAS uses the hospital number as primary and you have a patient with an NHS number of 8724334278, and a hospital number of A787231 for hospital RNZ01, you would send PID:3 populated as follows:

A787231^^^RNZ01^MR~8724334278^^^NHS^NH

In this case CRIS stores the patient with a primary key of A787231 and also adds that value as a searchable visible hospital number. NHS number is also stored.