Interface Specification Merge RadSuite v. 8.30.1 Merge Healthcare 900 Walnut Ridge Drive Hartland, WI 53029 877.44.MERGE
Copyright 2011 Merge Healthcare. All rights reserved. This document, the information in this document and all rights thereto are the sole and exclusive property of Merge Healthcare, are intended for use by customers and employees of Merge Healthcare, and are not to be copied, used, or disclosed to anyone else, in whole or in part, without the express prior written permission of Merge Healthcare. RAD-76 3/18/11
Table of Contents Introduction...................................................................... 2 Purpose..................................................................... 2 Related Documents............................................................ 2 Implementation................................................................... 3 Communication Profile............................................................. 4 Implementation............................................................... 5 Version...................................................................... 5 Message Delimiters............................................................ 5 Processing Rules.............................................................. 5 Original Acknowledgement Mode.................................................. 6 Rejection Messages......................................................... 7 Error Messages............................................................ 7 Messages................................................................... 8 Patient Update................................................................ 9 ADT^A08 - update patient information........................................... 9 ADT^A40 - merge patient - patient identifier list................................... 11 Procedure Scheduled.......................................................... 13 ORM^O01 - general order message........................................... 13 Procedure Update............................................................ 16 ORM ^O01 - general order message........................................... 16 Unsolicited Observation........................................................... 19 ORU^R01................................................................... 19 1 of 20
Introduction Purpose This document describes the Interface v. 1.2 based on the IHE Year 3 Technical Framework. Related Documents The following documents are related to the Interface 1.2 Specification document: NEMA 2003, The DICOM Standard: Parts 1-14. Integrated Healthcare Enterprise (IHE) Technical Framework Year 3, revision 5.5 dated November 20, 2003. This document is available at: http://www.ihe.net HL 7 Standard version 2.3.1. This document is available at: http://www.hl7.org 2 of 20
Implementation Interface 1.2 is implemented as a single application entity. Its main functionality is to facilitate HIS/ RIS/PACS integration by converting messages to DICOM Data Sets. The interface implementation is in accordance with IHE Year 3 Technical Framework. The Interface 1.2 handles Procedure Scheduled, Patient Update and Procedure Update IHE-defined transactions from HIS/RIS and updates the necessary AMICAS RadSuite products accordingly. Table 1 summarizes supported IHE transactions and their corresponding messages. Table 1: Supported IHE Transactions IHE Transactions Procedure Scheduled Patient Update Procedure Update Messages ORM^O01 (general order message) ADT^A08 (update patient information) ADT^A40 (merge patient - patient identifier list) ORM^O01 (general order message) The Interface 1.2 is administered with a remote administrative application. 3 of 20
Communication Profile v. 2.3.1 recommends Minimal Lower Layer Protocol (LLP) to provide an interface between the application and the network. Lower Layer Protocol is any protocol residing in OSI layers one to four. These protocols package, route, verify, and transmit datagrams. A prime example of one of the protocols is TCP/IP. Interface 1.2 implements TCP/IP Minimal LLP and operates in a TCP/ IP network environment. messages should conform to the Minimal LLP block format as follows: message starts with 0x0B and ends with 0x1C and 0x0D. Each segment is terminated by 0x0D. 4 of 20
Implementation Version Interface 1.2 supports version 2.3.1 as specified by IHE Year 3 Technical Framework. Message Delimiters Interface 1.2 uses the delimiter values in Table 2 as specified by IHE Year 3 Technical Framework. Table 2: Delimiter Values Delimiter Segment Terminator Value <cr> Field Separator Component Separator Subcomponent Separator ^ & Repetition Separator ~ Escape Character \ Processing Rules Interface 1.2 implements Original Acknowledge Mode. Upon receiving an message, Interface 1.2 implements original acknowledgment rules as follows: 1. Accepts the message. 2. Validates it against the following criteria, in addition to Message Delimiters: Field MSH-3-sending application MSH-4-sending facility MSH-5-receiving application MSH-6-receiving facility MSH-9-message type IHE Notes Namespace ID is the only sub component used in HD data type. This field is required. Namespace ID is the only sub component used in HD data type. This field is required. Namespace ID is the only sub component used in HD data type. This field is required. Namespace ID is the only sub component used in HD data type. This field is required. As defined by v2.3.1. This field is required. 5 of 20
Field MSH-10-message control ID IHE Notes Unique identifier used to relate the response to the initial message. This field is required. MSH-11-processing ID The value should be the literal P. MSH-12-version ID The value should be the literal 2.3.1. This field is required. If any of these fields fail, the Interface 1.2 generates a reject message with AR in MSA-1- acknowledgment code. 3. If the message passes validation, Interface 1.2 maps the message to DICOM Data Set and sends it to the necessary AMICAS RadSuite products. The next action of the Interface 1.2 is conditional based on one of the following scenarios: If mapping the message and sending a Data Set to AMICAS RadSuite products passes, Interface 1.2 generates a successful response with AA in MSA-1-acknowledgment code. If mapping the message and sending a Data Set to AMICAS RadSuite products fails due to error in the message content or format, Interface 1.2 generates a reject message with AR in MSA-1-acknowledgment code. If an unexpected error happens during this process that is not related to the message content or format (e.g., hard disk out of space), Interface 1.2 generates a reject message with AR in MSA-1-acknowledgment code. 4. Interface 1.2 sends an ACK message to the initiator. Original Acknowledgement Mode In all responses described above, Interface 1.2 implements the following acknowledgement message grammar: ACK General Acknowledgement v. 2.3.1 Chapter MSH Message Header 2 MSA Message Acknowledgement 3 With the following fields value: Table 3: MSH Segment SEQ Element Name Value 1 Field Separator 2 Encoding Characters ^~\& 3 Sending Application MSH-5 Receiving Application from received message. 4 Sending Facility MSH-6 Receiving Facility from received message. 6 of 20
Table 3: MSH Segment SEQ Element Name Value 5 Receiving Application MSH-3 Sending Application from received message. 6 Receiving Facility MSH-4 Sending Application from received message. 7 Date/Time Of Message Time stamp when the message is sent 9 Message Type Event: ACK Type: Message Type of the received message. 10 Message Control ID Same value from the received message. 11 Processing ID P 12 Version ID 2.3.1 Table 4: MSA Segment SEQ Element Name Item # 1 Acknowledgment Code Possible values: AA, AE, AR 2 Message Control ID MSH-10 Message Control ID from the received message. 3 Text Message Error description, if any Rejection Messages Rejection messages usually result from an unexpected exception, so the server logs a comprehensive message detailing the reason of rejection. Due to the nature of the exception, it is inadequate to send it in the MSA-3 Text Message. Instead, a descriptive message will be sent. The interface log should be consulted for full details. Error Messages Error messages usually result from message format or context. An MSA-3 Text Message will have a detailed description of the error. 7 of 20
Messages messages related to Interface 1.2 are mentioned in Section 4 - Implementation. This section depicts each message grammar based on IHE Year 3 Technical Framework, describes required fields and fields to DICOM data elements mapping. An ACK message is sent to the initiator upon receiving any of these messages. Since a MSH segment is common to all messages, it will not be provided in the message's semantics. Segment fields required by IHE Year 3 Technical Framework will not be provided in this document. Since the interface required fields are a subset of IHE Year 3 Technical Framework, this document only discusses fields related to the interface. messages are grouped based on IHE Transaction naming convention. In describing messages semantics, the following conventions are used: Position (sequence within the segment) - Position of the data field within the segment. In the message semantics tables this information is provided in the column labeled SEQ. Optionality - Whether the field is required, or optional, the designations are: R - Required. O - Optional. In the message semantics tables, this information is provided in the column labeled OPT. Repetition - Whether the field may repeat. The designations are: Empty - No repetition. Y - The field may repeat an indefinite (or site-determined) number of times. In the message semantics tables, this information is provided in the column labeled RP/#. Value - The value, which is mapped to DICOM data element, is one of the following: <number> - The number indicates the field SEQ. It means the entire field is mapped into DICOM data element. <number.number> - The first part indicated the fields SEQ and the second indicate the component within that SEQ. For example to refer to a patient last name within a patient name in the PID segment: 5.1. 8 of 20
Patient Update ADT^A08 - update patient information Table 5: Message Grammar ADT ADT Message v. 2.3.1 Chapter # MSH Message Header 2 EVN Event Type 3 PID Patient Identification 3 PV1 Patient Visit 3 [ {OBX} ] Observation/Result 7 [ {AL1} ] Allergy Information 3 Table 6: ADT^A08 Message Semantics Segment SEQ OPT IHE/ Archive RP/# Data Type Element Name DICOM Data Element (group, element) Name (VR) = Value EVN 2 R/O TS Recorded Date/ Time 9 of 20
Table 6: ADT^A08 Message Semantics Segment SEQ OPT IHE/ Archive RP/# Data Type Element Name DICOM Data Element (group, element) Name (VR) = Value PID 3 R/R Y CX Patient Identifier List (0010, 0020) Patient ID (LO) = 3.1 (0010, 0021) Issuer of Patient ID (LO) = 3.4 (0010, 1000) Other Patient ID (LO) = 3.1 repetition 5 R/R XPN Patient Name (0010, 0010) Patient Name (PN) = 5 6 O/O XPN Mother's Maiden Name 7 O/O TS Date/Time of Birth (0010, 1060) Mother Birth Name (PN) = 6 (0010, 0030) Patient Birth Date (DA) = 7 (date part) (0010, 0032) Patient Birth Date (TM) = 7 (time part) 8 O/O IS Sex (0010, 0040) Patient Sex (CS) = 8 10 O/O CE Race (0010, 2160) Patient Ethnic Group (SH) = 10 11 O/O XAD Patient Address (0010, 1040) Patient Address (LO) = 11 18 R/O CX Patient Account Number (0038, 0010) Admission ID (LO) = 18.1 (0038, 0011) Issuer of Admission ID (LO) = 18.4 26 O/O CE Citizenship (0010, 2152) Region of residence (LO) = 26 27 O/O CE Veterans Military Status PV1 3 O/O PL Assigned Patient Location (0010, 1080) Military Rank (LO) = 27 (0038, 0300) Current Patient Location (LO) = 3 8 O/O XCN Referring Doctor (0008, 0090) Referring Physician's Name (PN) = 8 15 O/O IS Ambulatory Status (0010, 21c0) Pregnancy Status (US) = 15, if equal to "B6" 16 O/O IS VIP Indicator (0040, 3001) Confidentiality Constrain on Patient Date (LO) = 16 OBX 3 R/O CE Observation Identifier 5 R/O CE Observation Value 3.2 = "Body Weight" or "Body Height" (0010, 1030) Patient Weight (DS) = 5; if OBX:3.2 = "Body Weight" & OBX:6.2 = "kg" (0010, 2010) Patient Size (DS) = 5; If OBX:3.2 = "Body Height" & OBX:6.2 = "m" 6 R/O CE Units 6.2 ="kg" for Body Weight or "m" for Body Height AL1 3 R/O CE Allergy Code/ Mnemonic/ Description (0010, 2110) Contrast Allergies (LO) = 3 10 of 20
ADT^A40 - merge patient - patient identifier list Table 7: Message Grammar ADT ADT Message v. 2.3.1 Chapter # MSH Message Header 2 EVN Event Type 3 PID Patient Identification 3 MRG Merge Information 3 [ PV1 ] Patient Visit 3 Table 8: ADT^A40 Message Semantics Segment SEQ OPT IHE/ Archive RP/# Data Type Element Name DICOM Data Element (group, element) Name (VR) = Value EVN 2 R/O TS Recorded Date/Time PID 3 R/R Y CX Patient Identifier List (0010, 0020) Patient ID (LO) = 3.1 (0010, 0021) Issuer of Patient ID (LO) = 3.4 (0010, 1000) Other Patient ID (LO) = 3.1 repetition 5 R/R XPN Patient Name (0010, 0010) Patient Name (PN) = 5 6 O/O XPN Mother's Maiden Name 7 O/O TS Date/Time of Birth (0010, 1060) Mother Birth Name (PN) = 6 (0010, 0030) Patient Birth Date (DA) = 7 (date part) (0010, 0032) Patient Birth Date (TM) = 7 (time part) 8 O/O IS Sex (0010, 0040) Patient Sex (CS) = 8 10 O/O CE Race (0010, 2160) Patient Ethnic Group (SH) = 10 11 O/O XAD Patient Address 18 R/O CX Patient Account Number (0010, 1040) Patient Address (LO) = 11 (0038, 0010) Admission ID (LO) = 18.1 (0038, 0011) Issuer of Admission ID (LO) = 18.4 26 O/O CE Citizenship (0010, 2152) Region of residence (LO) = 26 27 O/O CE Veterans Military Status (0010, 1080) Military Rank (LO) = 27 11 of 20
Table 8: ADT^A40 Message Semantics Segment SEQ OPT IHE/ Archive RP/# Data Type Element Name DICOM Data Element (group, element) Name (VR) = Value PV1 3 R/O PL Assigned Patient Location 8 O/O XCN Referring Doctor 15 O/O IS Ambulatory Status (0038, 0300) Current Patient Location (LO) = 3 (0008, 0090) Referring Physician's Name (PN) = 8 (0010, 21c0) Pregnancy Status (US) = 15, if equal to "B6" 16 O/O IS VIP Indicator (0040, 3001) Confidentiality Constrain on Patient Date (LO) = 16 MRG 1 R/R Y CX Prior Patient Identifier List (Internal) 4 O/R CX Prior Patient ID (External) (0010, 0020) Patient ID = 1.1 (0010, 0021) Issuer of Patient ID = 1.4 (0010, 0020) Patient ID = 3.1 (0010, 0021) Issuer if Patient ID = 3.4 12 of 20
Procedure Scheduled ORM^O01 - general order message Table 9: Message Grammar ADT ADT Message v. 2.3.1 Chapter # MSH Message Header 2 PID Patient Identification 3 PV1 Patient Visit 3 { ORC Common Order 4 OBR Order Detail 4 } 13 of 20
Table 10: ORM^O01 Message Semantics Segment SEQ OPT IHE/ Archive RP/# Data Type Element Name DICOM Data Element (group, element) Name (VR) = Value PID 3 R/R Y CX Patient Identifier List (0010, 0020) Patient ID (LO) = 3.1 (0010, 0021) Issuer of Patient ID (LO) = 3.4 (0010, 1000) Other Patient ID (LO) = 3.1 repetition 5 R/R XPN Patient Name (0010, 0010) Patient Name (PN) = 5 6 O/O XPN Mother's Maiden Name 7 R/`R TS Date/Time of Birth (0010, 1060) Mother Birth Name (PN) = 6 (0010, 0030) Patient Birth Date (DA) = 7 (date part) (0010, 0032) Patient Birth Date (TM) = 7 (time part) 8 R/R IS Sex (0010, 0040) Patient Sex (CS) = 8 10 O/O CE Race (0010, 2160) Patient Ethnic Group (SH) = 10 11 O/O XAD Patient Address 18 R/O CX Patient Account Number (0010, 1040) Patient Address (LO) = 11 (0038, 0010) Admission ID (LO) = 18.1 (0038, 0011) Issuer of Admission ID (LO) = 18.4 26 O/O CE Citizenship (0010, 2152) Region of residence (LO) = 26 27 O/O CE Veterans Military Status PV1 3 R/O PL Assigned Patient Location 8 O/O XCN Referring Doctor 15 O/O IS Ambulatory Status (0010, 1080) Military Rank (LO) = 27 (0038, 0300) Current Patient Location (LO) = 3 (0008, 0090) Referring Physician's Name (PN) = 8 (0010, 21c0) Pregnancy Status (US) = "3", if 15 equal to "B6" 16 O/O IS VIP Indicator (0040, 3001) Confidentiality Constrain on Patient Date (LO) = 16 ORC 1 R/R ID Order Control = NW 14 of 20
Table 10: ORM^O01 Message Semantics Segment SEQ OPT IHE/ Archive RP/# Data Type Element Name DICOM Data Element (group, element) Name (VR) = Value OBR 4 R/O CE Universal Service ID 15 O/O CM Specimen Source (0032, 1064) Requested Procedure Coding Sequence (SQ): >(0008, 0100) Requested Procedure Code Value (SH) = 4.1 >(0008, 0104) Requested Procedure Code Meaning (LO)= 4.2 >(0008, 0102) Requested Procedure Coding Scheme (SH)= 4.3 (0040, 0100) Scheduled Procedure Step Sequence (SQ) >(0040, 0008) Scheduled Protocol Code Sequence >>(0008, 0100) Scheduled Procedure Code value (SH)= 4.4 >>(0008, 0104) Scheduled Procedure Code Meaning (LO) = 4.5 >>(0008, 0102) Scheduled Procedure Coding Scheme (SH)= 4.6 (0040, 0007) Scheduled Procedure Description (LO)= 4.5 (0032, 1060) Requested Procedure Description (LO)= 4.2 + 15.5 18 O/O ST Placer Field 1 (0040, 0100) Scheduled Procedure Step Sequence (SQ) >(0008, 0050) Accession Number (SH) = 15 19 O/O ST Placer Field 2 (0040, 1001) Requested Procedure ID (SH) = 19 20 O/O ST Filler Field 1 + (0040, 0009) Scheduled Requested Procedure ID (SH) = 20 24 O/O ID Diagnostic Serv Sect ID 27 O/O TS Quantity/ Timing SCH 11 R/O TQ Appointment Timing Quantity (0040, 0100) Scheduled Procedure Step Sequence (SQ) >(0008, 0060) Modality (CS) = 24 (0040, 0100) Scheduled Procedure Step Sequence (SQ) >(0040, 0002) Scheduled Procedure Start Date (DA) = 27.4 (date part) >(0040, 0003) Scheduled Procedure Start Time (TM) = 27.4 (time part) (0008, 0020) Appointment Start Date (DA) = 11.4 (date part) (0008, 0030) Appointment Start Time (TM) = 11.4 (time part) 15 of 20
Table 10: ORM^O01 Message Semantics Segment SEQ OPT IHE/ Archive RP/# Data Type Element Name DICOM Data Element (group, element) Name (VR) = Value ZDS 1 R/R RP Study Instance UID (0020, 000D) Study Instance UID (UI) = 1.1 Procedure Update ORM ^O01 - general order message Table 11: Message Grammar ADT ADT Message v. 2.3.1 Chapter # MSH Message Header 2 PID Patient Identification 3 PV1 Patient Visit 3 { ORC Common Order 4 OBR Order Detail 4 } 16 of 20
Table 12: ORM^O01 Message Semantics Segment SEQ OPT IHE/ Archive RP/# Data Type Element Name DICOM Data Element (group, element) Name (VR) = Value PID 3 R/R Y CX Patient Identifier List (0010, 0020) Patient ID (LO) = 3.1 (0010, 0021) Issuer of Patient ID (LO) = 3.4 (0010, 1000) Other Patient ID (LO) = 3.1 repetition 5 R/R XPN Patient Name (0010, 0010) Patient Name (PN) = 5 6 O/O XPN Mother's Maiden Name 7 R/R TS Date/Time of Birth (0010, 1060) Mother Birth Name (PN) = 6 (0010, 0030) Patient Birth Date (DA) = 7 (date part) (0010, 0032) Patient Birth Date (TM) = 7 (time part) 8 R/R IS Sex (0010, 0040) Patient Sex (CS) = 8 10 O/O CE Race (0010, 2160) Patient Ethnic Group (SH) = 10 11 O/O XAD Patient Address (0010, 1040) Patient Address (LO) = 11 18 R/O CX Patient Account Number (0038, 0010) Admission ID (LO) = 18.1 (0038, 0011) Issuer of Admission ID (LO) = 18.4 26 O/O CE Citizenship (0010, 2152) Region of residence (LO) = 26 27 O/O CE Veterans Military Status PV1 3 R/O PL Assigned Patient Location (0010, 1080) Military Rank (LO) = 27 (0038, 0300) Current Patient Location (LO) = 3 8 O/O XCN Referring Doctor (0008, 0090) Referring Physician's Name (PN) = 8 15 O/O IS Ambulatory Status (0010, 21c0) Pregnancy Status (US) = "3", if 15 equal to "B6" 16 O/O IS VIP Indicator (0040, 3001) Confidentiality Constrain on Patient Date (LO) = 16 ORC 1 R/R ID Order Control = DC, CA, XO 17 of 20
Table 12: ORM^O01 Message Semantics Segment SEQ OPT IHE/ Archive RP/# Data Type Element Name DICOM Data Element (group, element) Name (VR) = Value OBR 4 R/O CE Universal Service ID 15 O/O CM Specimen Source (0032, 1064) Requested Procedure Coding Sequence (SQ): >(0008, 0100) Requested Procedure Code Value (SH) = 4.1 >(0008, 0104) Requested Procedure Code Meaning (LO)= 4.2 >(0008, 0102) Requested Procedure Coding Scheme (SH)= 4.3 (0040, 0100) Scheduled Procedure Step Sequence (SQ) >(0040, 0008) Scheduled Protocol Code Sequence >>(0008, 0100) Scheduled Procedure Code value (SH)= 4.4 >>(0008, 0104) Scheduled Procedure Code Meaning (LO) = 4.5 >>(0008, 0102) Scheduled Procedure Coding Scheme (SH)= 4.6 (0040, 0007) Scheduled Procedure Description (LO)= 4.5 (0032, 1060) Requested Procedure Description (LO)= 4.2 + 15.5 18 O/O ST Placer Field 1 (0040, 0100) Scheduled Procedure Step Sequence (SQ) >(0008, 0050) Accession Number (SH) = 15 19 O/O ST Placer Field 2 (0040, 1001) Requested Procedure ID (SH) = 19 20 O/O ST Filler Field 1 + (0040, 0009) Scheduled Requested Procedure ID (SH) = 20 24 O/O ID Diagnostic Serv Sect ID (0040, 0100) Scheduled Procedure Step Sequence (SQ) >(0008, 0060) Modality (CS) = 24 27 O/O TS Quantity/Timing (0040, 0100) Scheduled Procedure Step Sequence (SQ) >(0040, 0002) Scheduled Procedure Start Date (DA) = 27.4 (date part) >(0040, 0003) Scheduled Procedure Start Time (TM) = 27.4 (time part) ZDS 1 R/R RP Study Instance UID (0020, 000D) Study Instance UID (UI) = 1.1 18 of 20
Unsolicited Observation RadSuite will receive Unsolicited Observation messages and convert them to DICOM Structured Reports (SR) for storage in the archive. The mappings are customizable and the SR creation strategies can handle site-specific configurations. ORU^R01 Example Message: MSH ^~\& IDX SM PACS 20050222150005 ORU^R01 7020943 P 2.3 PID 00169853^^^CLINIC IDE^RUSSELL^E^^^ 19231229 M ORC 2264355 OBR 2264355 PCHEST1V^XR PORT CHEST 1 VIEW 20050222100000 WEAKNESS 09431^HOYER^ERIC^^^^ OBX 1 FT PCHEST1V&GDT This document is currently in Preliminary Status P OBX 2 FT PCHEST1V&GDT ONE VIEW CHEST P OBX 3 FT PCHEST1V&GDT P Segment SEQ Required Associated DICOM Name Additional Notes PID 3.1 yes (0010,0020) Patient ID MRN Number 3.4 (0010,0021) Issuer of Patient ID 4 (0010,1000) Other Patient ID 5 yes (0010,0010) Patient Name Last^First^Middle^suffix^prefix 6 (0010,0060) Mother's Birth Name Last^First^Middle^suffix^prefix 7 yes (0010,0030) Patient Birth Date YYYYMMDD 7 (0010,0032) Patient Birth Time hhmmss 8 (0010,0040) Patient Sex 10 (0010,2160) Patient Ethnic Group 11 (0010,1040) Patient Address 18.1 (0038,0010) Admission ID 18.4 (0038,0011) Issuer Of Admission ID 19 of 20
Segment SEQ Required Associated DICOM Name Additional Notes OBR 3.1 yes (0080,0050) Accession Number 4.1 yes (0040,1001) Requested Procedure ID 4.2 yes (0008,1030) Requested Procedure Description 4.3 (0008,0100) Requested Procedure Code Value 7 yes (0008,0023) Content Date YYYYMMDD 7 yes (0008,0033) Content Time hhmmss 24 yes (0008,0060) Modality 25 yes (0040,A491) Results Status Partial, Complete 27 yes (0040,0002) Scheduled Procedure Start Date YYYYMMDD 27 yes (0040,0003) Scheduled Procedure Start Time hhmmss 27.6 (0032, 000C) Requested Procedure Priority 31 (0032,1030) Reason For Study 32 (0040, A075) Principal Result Interpretator OBX 3 Observation Value 5 yes Observation Text Report Text 20 of 20