Image Vault 4.2 HL7 Interface White Paper: Revision History
Image Vault 4.2 HL7 Interface White Paper: Revision History
Revision History
Each page of the document has the document part number and revision letter at the bottom of the
page. The revision letter changes each time the document is updated.
Revision Date Comment
1 January 2007 Initial release of document.
Introduction
This document describes the HL7 interface, as it relates to the Image Vault 4.2 application.
The Image Vault (IV) HL7 interface communicates with a Hospital Information System (HIS) or
other third-party transcription system via HL7 formatted messages that import and export
relevant clinical information. This interface is designed to send and receive messages, real-time,
using the TCP/IP protocol (via a socket connection) and minimal layer protocol messaging
(MLP). The interface communication is part of the Image Vault application and is able to export
measurement information coming from a Vivid scanner. Successful implementation requires the
assistance of an Image Vault Interface Specialist, who can provide training and technical/project
management information.
Assumptions
It is assumed that the reader of this document is familiar with the HL7 standard. This
document is not intended as a standalone document, but should be used in conjunction with
the HL7 Specification, version 2.4*.
The HL7 interface can only be processed in real-time mode using the TCP/IP protocol.
The Image Vault customer is responsible for ensuring that the receiving HIS or transcription
system is capable and ready to receive HL7 messages from the Image Vault for processing.
* HL7 standards committee members can acquire a free copy of the current HL7 specification via
the http://www.HL7.org web page. Non-members can order a copy from the same location or by
contacting the representatives at the following location:
Health Level Seven
3300 Washtenaw Avenue, Suite 227
Ann Arbor, MI 48104-4250
Phone: (313) 677-7777; Fax: (313) 677-6622
Successfully processed messages are acknowledged. Messages, which for any reason were not
processed, are rejected with a non-acknowledge ACK HL7 message (as defined in HL7
Specification 2.4).
This file is then processed by the HL7 interface and an ORU^R01 HL7 message is sent to the HIS
system, containing the patient information and measurements from the file. These measurements
are wrapped in HL7 OBX segments.
Image Vault expects, for each message sent, that it will receive an acknowledgement message.
Image Vault will wait for period of time (user configured) for that message (60 to 120 seconds).
If no acknowledgement is received during the configured time frame, Image Vault re-sends the
message. No other messages are sent by Image Vault unless an acknowledgement is received (or
the message is manually removed from the Image Vault outbound queue).
Escape characters are supported in our results that are sent outbound.
Field Description Symbol Replaced By
Field Separator | \F\
Component Separator ^ S\
Repetition Separator ~ \R\
Escape Characters \ \E\
Subcomponent Separator & \T\
For further details, see “HL7 Segments & Fields Definition for Outbound Workflow” on page 21 and
“Structure of an ORU^R01 event” on page 12.
The following illustration shows the message workflow between the HIS, the Image Vault and
the scanners. The essential steps in the workflow are as follows:
1. The HIS sends the order information to the HISComServer within the Image Vault, through
the HL7 Import function.
2. The acquisition devices retrieve the worklist from the Image Vault through the DICOM
Worklist function. The scanner generates a worklist query and the Image Vault uses the
information stored in the HISComServer to populate the worklist.
4. The exam images and measurement and analysis data are saved and sent to the Image Vault
database.
8. The HISComServer sends the measurement and analysis and report data back to the HIS
through the HL7 Export function..
The HISComServer runs as a service, without a user interface. All messages are saved
immediately; however, acknowledge messages are only sent after the data is successfully stored.
(Discrete)
The following illustration shows the message processing within the HISComServer service.
The Image Vault HL7 interface uses a socket connection (one for each direction). For the import,
the HL7 interface is a server on a configurable port; for the export, it is the client. The message
itself has a HL7 MLLP frame (i.e. a leading 0x0B and trailing \x1C\x0D). Acknowledge
messages can be returned after a message is received. For an export, an acknowledgement is
expected after a message is written to the socket.
Delimiter Definition
Encoding
Delimiter Value Character Usage
Position
Segment Terminator <cr> - Terminates a segment record. This value cannot be changed by implementors.
hex 0D
Field Separator | - Separates two adjacent data fields within a segment. It also separates the segment
ID from the first data field in each segment.
Component Separator ^ 1 Separates adjacent components of data fields, where allowed.
Subcomponent Separator & 4 Separates adjacent subcomponents of data fields, where allowed. If there are no
subcomponents, this character may be omitted.
Repetition Separator - 2 Separates multiple occurrences of a field, where allowed.
Escape Character \ 3 Escape character for use with any field represented by an ST, TX or FT data type,
or for use with the data (fourth) component of the ED data type. If no escape
characters are used in a message, this character may be omitted. However, it must
be present if subcomponents are used in the message.
Data Types
NOTE
For data types which contain multiple components or subcomponents, the examples given in
this section do not specify the optionality of the component or subcomponents. This must be
specified in the field definitions that follow the formal segment attribute tables (maximum
length of 64K).
Except for the TS data type, and the maximum or minimum lengths for several other data types
(CE, PN, TX, FT), the field length of HL7 attributes is specified in the segment attribute tables.
Any specific length of the components or subcomponents of those attributes must be specified in
the field definitions that follow the formal segment attribute tables. In general, HL7 does not
specify the lengths of components and/or subcomponents.
The data type examples are given using the standard HL7 encoding rules. Although only one set
of encoding rules is defined as a standard in HL7, version 2.4, other encoding rules are possible.
However, since they are non-standard, they may only be used by a site-specific agreement. In
certain data type definitions, square brackets ([ ]) are used to specify optional parts of a data type
(or a data type component or subcomponent).
Data Type
Category / Data Type Name Notes/Format
Data Type
Alphanumeric
ST String
TX Text Data
FT Formatted Text
Numeric
CQ Composite quantity with units <quantity (NM)> ^ <units (CE)>
MO Money <quantity (NM)> ^ <denomination (ID)>
NM Numeric
SI Sequence ID
SN Structured Numeric <comparator> ^ <num1 (NM)> ^ <separator/suffix> ^ <num2 (NM)>
Identifier
ID Coded values for HL7 tables
IS Coded value for user-defined
tables
HD Hierarchic designator <namespace ID (IS)> ^ <universal ID (ST)> ^ <universal ID type (ID)>
Used only as part of EI and other data types.
EI Entity Identifier <entity identifier (ST)> ^ <namespace ID (IS)> ^ <universal ID (ST)> ^ <universal ID
type (ID)>
RP Reference Pointer <pointer (ST)> ^ <application ID (HD)> ^ <type of data (ID)> ^ <subtype (ID)>
PL Person Location <point of care (IS)> ^ <room (IS)> ^ <bed (IS)> ^ <facility (HD)> ^ <location status (IS)>
^ <person location type (IS)> ^ <building (IS)> ^ <floor (IS)> ^ <location description
(ST)>
PT Processing Type <processing ID (ID)> ^ <processing mode (ID)>
Date/Time
DT Date YYYY[MM[DD]]
TM time HH[MM[SS[.S[S[S[S]]]]]][+/-ZZZZ]
TS Time Stamp YYY[MM[DD[HHMM[SS[.S[S[S[S]]]]]][+/-ZZZZ] ^ <degree of precision>
Code Values
CE Coded Element <identifier (ST)> ^ <text (ST)> ^ <name of coding system (ST)> ^ <alternate identifier
(ST)> ^ <alternate text (ST)> ^ <name of alternate coding system (ST)>
CF Coded Element with <identifier (ID)> ^ <formatted text (FT)> ^ <name of coding system (ST)> ^ <alternate
Formatted Values identifier (ID)> ^ <alternate formatted text (FT)> ^ <name of alternate coding system>
CK Composite ID with Check <ID number (NM)> ^ <check digit (NM)> ^ <code identifying the check digit scheme
Digit employed (ID)> ^ <assigning authority (HD)>
CN Composite ID Number and <ID number (ST)> ^ <family name (ST)> ^ <given name (ST)> ^ <middle initial or name
Name (ST)> ^ <suffix (ST)> ^ <prefix (ST)> ^ <degree (ST)> ^ <source table (IS)> ^ <assigning
authority (HD)>
ACK^A(*) Acknowledgment
MSH Message header
MSA Message acknowledgment
(*): The message structure is identical for the following ADT events:
ACK^A40 Acknowledgment
MSH Message header
MSA Message acknowledgment
ACK^O19 Acknowledgment
MSH Message header
MSA Message acknowledgment
ACK^RO1 Acknowledgment
MSH Message header
MSA Message acknowledgment
ACK^R01 Acknowledgment
MSH Message header
MSA Message acknowledgment
MSH|^~\&|VPHISCOMSERVER||facility1||||ORU^R01|7|P|2.4||||AL
PID|||23|21|WHITE^DAVID||19451201|MALE|||
ADDRESS^^CITY^STATE^9888||9888233|98882387||||||||TYPE
PV1|||bed1||||||||||||||||133
OBR||||^description|||||||||alert1|||||||234
OBX|1|NM|^pname1|id1|value1|units1|||||F
OBX|2|NM|^pname2|id2|value2|units2|||||F
OBX|3|NM|^pname3|id3|value3|units3|||||F
AL1||DA|^allergy type
ZDS|1.2.34665.347653.88.547.2
The PID segment is used by the Image Vault HL7 interface for receiving patient identification
information. This segment contains permanent patient identification and demographic
information that, for the most part, is not likely to change frequently.
A sample PID segment:
PID||1234567890111111|000011|123456789011| ULTRASOUND^P1^APPLE||19700101|M
Seq Len DT Opt RP# HL7 Field Name Description
1 4 SI O Set ID - Patient ID NOT USED
2 20 CX R Patient ID (External ID) Patient ID
3 20 CX O Y Patient ID (Internal ID) NOT USED
4 20 CX O Y Alternate Patient ID - PID NOT USED
5 48 XPN R Y Patient Name Patient Name
6 48 XPN O Mother’s Maiden Name Maiden name
7 26 TS R Date/Time of Birth DOB
8 1 IS R Sex Patient sex
9 48 XPN O Y Patient Alias NOT USED
10 1 IS O Race Ethnic origin
11 106 XAD O Y Patient Address Address
12 4 IS B County Code NOT USED
13 40 XTN O Y Phone Number: Home Private phone
14 40 XTN O Y Phone Number: Business Work phone
15 60 CE O Primary Language Language
16 1 IS O Marital Status Marital Status
17 3 IS O Religion Patient religion
18 20 CX R Patient Account Number Patient Account Number
19 16 ST O SSN Number - Patient NOT USED
20 25 DLN O Driver’s License Number - Patient NOT USED
21 20 CX O Y Mother’s Identifier NOT USED
22 3 IS O Ethnic Group Patient ethnic group
23 60 ST O Birth Place NOT USED
24 2 ID O Multiple Birth Indicator NOT USED
25 2 NM O Birth Order NOT USED
26 4 IS O Y Citizenship NOT USED
27 60 CE O Veteran’s Military Status NOT USED
28 80 CE O Nationality NOT USED
29 26 TS O Patient Death Date and Time NOT USED
30 1 ID O Patient Death Indicator NOT USED
The Common Order segment (ORC) is used to transmit fields that are common to all orders.
ORC||DMS_10074|||||^1^INDEF^20040330142522^||20040330142522||||||||||
Seq Len DT Opt RP# HL7 Field Name Description
1 2 ID O Order Control NOT USED
2 22 EI R Placer Order Number Order Number
3 22 EI O Sequence ID NOT USED
4 22 EI O Placer Group Number NOT USED
5 2 ID O Order Status NOT USED
6 1 ID O Response Flag NOT USED
7 200 TQ O Quantity/Timing Priority^quantity^frequency^timing of an atomic device.
8 200 CM O Parent NOT USED
9 26 TS O Date/Time of Transaction Date/Time of Transaction
10 120 XCN O Entered By NOT USED
11 120 XCN O Verified By NOT USED
12 120 XCN O Ordering Provider Identify of the person who is responsible for creating the request.
13 80 PL O Enterer’s Location NOT USED
14 40 XTN O Y/2 Callback Phone Number Telephone number to call for clarification of a request or other
information regarding the order. ORC-14 callback number is the
same as OBR-17 order callback phone number
15 26 TS O Order Effective Date/Time NOT USED
16 200 CE O Order Control Code Reason NOT USED
17 60 CE O Entering Organization NOT USED
18 60 CE O Entering Device NOT USED
19 120 XCN O Action By NOT USED
20 - - - NOT USED (Reserved) NOT USED (Reserved for future use)
21 60 CE O Ordering Facility Ordering Facility
The Observation Request segment is use to transmit information specific to an order for a
diagnostic study or observation, physical exam, or assessment.
MSH|^~\&|VIEWPOINT|ORDERS|||200503071251||ORM^O01|CHPFADMT|P|2.4|||AL|NE
EVN|O01|200503071251|||TLACOR
PID|1|111114|111112|672024^^^MXV^PI|Ordertest^Hannah^A^^MS||19761212|F||17|123 ELM
STREET^SUITE 678^NORTHRIDGE^CA^91324^USA||(800)555-2222|(888)666-
3333|GERMAN|100000|AOG|11111|123456789
ORC|NW|DMS_10074|10094||SC||^1^INDEF^20040330142522^||20040330142522||||^^^WCC^
^^^^||||||
The MSH segment defines the intent, source, destination and some specifics of the syntax of a
message.
MSH|^~\&|VPHISCOMSERVER||facility1||||ORU^R01|7|P|2.3.1||||AL|
The PID segment is used by the Image Vault HL7 interface for receiving patient identification
information. This segment contains permanent patient identification and demographic
information that, for the most part, is not likely to change frequently.
A sample PID segment:
PID|||measurements||all^cardiac||1981-06-04 00:00:00|FEMALE||||||||||||||
Seq Len DT Opt RP# HL7 Field Name Vivid Column Name
1 4 SI O Set ID - Patient ID NOT USED
2 20 CX R Patient ID (External ID) Patient ID
3 20 CX O Y Patient ID (Internal ID) NOT USED
4 20 CX O Y Alternate Patient ID - PID Other patient ID
5 48 XPN R Y Patient Name LastName^FirstName
6 48 XPN O Mother’s Maiden Name NOT USED
7 26 TS R Date/Time of Birth Birthdate
8 1 IS R Sex Sex
9 48 XPN O Y Patient Alias NOT USED
10 1 IS O Race NOT USED
11 106 XAD O Y Patient Address Address
12 4 IS B County Code NOT USED
13 40 XTN O Y Phone Number - Home Home Phone
14 40 XTN O Y Phone Number - Business NOT USED
15 60 CE O Primary Language NOT USED
16 1 IS O Marital Status NOT USED
17 3 IS O Religion NOT USED
18 20 CX R Patient Account Number Admission ID
19 16 ST O SSN Number - Patient NOT USED
20 25 DLN O Driver’s License Number - Patient NOT USED
21 20 CX O Y Mother’s Identifier NOT USED
22 3 IS O Ethnic Group NOT USED
23 60 ST O Birth Place NOT USED
24 2 ID O Multiple Birth Indicator NOT USED
25 2 NM O Birth Order NOT USED
26 4 IS O Y Citizenship NOT USED
27 60 CE O Veteran’s Military Status NOT USED
28 80 CE O Nationality NOT USED
29 26 TS O Patient Death Date and Time NOT USED
30 1 ID O Patient Death Indicator NOT USED
PV1|||bed1||||||||||||||||133
Seq Len DT Opt RP# HL7 Field Name Vivid Column Name
1 4 SI O Set ID - PV1 NOT USED
2 1 IS O Patient Class NOT USED
3 80 PL O Assigned Patient Location Current Patient Location
The Observation Request segment is use to transmit information specific to an order for a
diagnostic study or observation, physical exam, or assessment. This segment is non-repeating.
OBR||||^description|||||||||alert1|||||||234|
Seq Len DT Opt RP# HL7 Field Name Vivid Column Name
1 4 SI O Set ID - OBR NOT USED
2 75 EI R Placer Order Number Accession Number
3 75 EI O Filler Order Number NOT USED
4 200 CE O Universal Service ID Requested procedure description
5 2 ID O Priority NOT USED
6 26 TS O Requested Date/Time NOT USED
7 26 TS R Observation Date/Time # Study Date/Time
8 26 TS O Observation End Date/Time # NOT USED
9 20 CQ O Collection Volume * NOT USED
10 60 XCN O Y Collector Identifier * NOT USED
11 1 ID O Specimen Action Code * NOT USED
12 60 CE O Danger Code NOT USED
13 300 ST O Relevant Clinical Info. Medical alerts
14 26 TS C Specimen Received Date/Time * NOT USED
15 300 CM O Specimen Source * NOT USED
16 80 XCN O Y Ordering Provider NOT USED
17 40 XTN O Y/2 Order Callback Phone Number NOT USED
18 60 ST O Placer Field 1 NOT USED
19 60 ST O Placer Field 2 NOT USED
20 60 ST O Filler Field 1 + SPSID
21 60 ST O Filler Field 2 + NOT USED
22 26 TS R Rpt/Status Chng - Data/Time Report URL/Report Verification Date
23 40 CM O Charge to Practice + NOT USED
24 10 ID O Diagnostic Serv Sect ID NOT USED
25 1 ID C Result Status + NOT USED
26 400 CM O Parent Result + NOT USED
27 200 TQ O Y Quantity/Timing NOT USEd
28 150 XCN O Y/5 Result Copies to NOT USED
29 150 CM O Parent NOT USED
30 20 ID O Transportation Mode NOT USED
31 300 CE O Y Reason for Study NOT USED
The OBX segment is used to transmit an entire observation result, for a specific examination (one
examination only) This segment is repeating.
A spreadsheet containing the Vivid 7 (BT05) parameters for the Result Values is available
on the Ultrasound Support Central site, in the Image Vault section.
OBX|1|NM|^pname1|id1|value1|units1|||||F
Seq Len DT Opt RP# HL7 Field Name Vivid Column Name
1 10 SI O Set ID - OBX ID
2 2 ID R Value Type Value Type
3 590 CE R Observation Identifier ResultIdentifier^parameter name
4 20 ST O Observation Sub-ID NOT USED
5 65536 ST R Observation Value Result Value
6 60 CE O Units Display Units
7 10 ST O References Range NOT USEd
8 5 ID O Y/5 Abnormal Flags NOT USED
9 5 NM O Probability NOT USED
10 2 ID O Y Nature of Abnormal Test NOT USED
11 1 ID R Observation Result Status Results status
12 26 TS O Data Last Obs Normal Values NOT USED
13 20 ST O User Defined Access Checks NOT USED
14 26 TS C Date/Time of the Observation NOT USED
15 60 CE O Producer’s ID NOT USED
16 80 XCN O Responsible Observer NOT USEd
17 60 CE O Y Observation Method NOT USED
A patient may be uniquely identified the following sequence: “PatientId”, “LastName” and
“Birthdate” fields.
An examination may be uniquely identifed by the following field value “StudyInstanceUID”.
Measured values are uniquely defined by the “ParameterStudy”, “ParameterMeasure” and
ParameterId” field. Each value is specified by the “ResultIdentifier” and “Qualifier”
attributes.
"The value of the "ResultString" field is only used if there is no value in the "ResultValue"
field (and vice versa). The value of the "ResultValue" field is always stored in MKSA units
and, therefore, should be converted to display values (using the value in the "Units" field and
the conversion table shown later in this section).
Wall motion scorings are stored as a measured parameter in the “Value String” attribute in the
following format: “Segment Name=value: Segment Name=value:...”
Available segment names are the abbreviations shown in the “Lists of Stress Echo Attributes” on
page 35 section (wall motion segment list). Up to 18 segments follow the 18-wall motion
segment model. Order is not important in the string, since values are tagged with the Segment
ID. The value is a floating-point number; values are listed in the Scoring Value list in the
“Lists of Stress Echo Attributes” on page 35 section.
Example:
“BAS=x.y:BA=x.y:BL=x.y:BP=x.y:BL=x.y:MAS=x.y:MA=x.y:ML=x.y:MI=x.y:MS=x.y:A
S=x.y:AA=x.y:AL=x.y:AI=x.y:AAS=x.y:AP=x.y (where x.y indicates a floating-point
value, with one decimal).
“ BAS=1.5:BA=1:BL=1:BP=1:BI=1:BS-
1:MAS=1:MA=1:ML=1:MP=1:MI=1:MS=1:AS=1:AA=1:AL=1:AI=1:AAS=-1:AP=-1”
ParameterId = “WallSegmentScoring”
Contrast scoring -- ParameterId = “ContrastWallSegmentScoring”
Normal scoring -- ParameterId = “NormalWallSegmentScoring”
ParameterId = “WallMotionScoringIndex”
This is calculated as an average of scored segments (valid values between 1 through 5 only)
Normal muscle percent is stored as a parameter also (NORM).
ParameterId = “NormalMusclePercent”
Update of Format
All units are assumed to be case-insenstive and, therefore, should always be converted to lower
case by the receiving party.
s = 1.0:0.0
ms = 1000.0:0.0
Time Units
min - 0.0167.0:0.0
h = 0.00027778:0.0
ratio = 1.0:0.0
Ratio Units
% = 100.0:0.0
Hz - 1.0:0.0
Frequency Units
kHz = 0.001:0.0
rad - 1.0:0.0
Angle Units deg - 57.2958:0.0
grad = 63.6620:0.0
cm - 100..0:0.0
m - 1.0:0.0
dm - 10.0:0.0
cm = 100.0:0.0
Distance Units
mm = 1000.0:0.0
inch = 39.37:0.0
feet = 3.281:0.0
pixels = 1.0:0.0
m/s = 1.0:0.0
dm/s = 10.0:0.0
Velocity Units cm/s = 100.0:0.0
mm/s = 1000.0:0.0
inch/s = 39.37:0.0
m/s2 = 1.0:0.0
dm/s2 = 10.0:0.0
Acceleration Units cm/s2 = 100.0:0.0
mm/s2 = 1000.0:0.0
inch/s2 = 39.37:0.0
m2 = 1.0:0.0
dm2 = 100.0:0.0
Area Units cm2 = 10000.0:0.0
mm2 = 1000000.0:0.0
inch2 = 1550.0:0.0
m3 = 1.0:0.0
dm3 = 1000.0:0.0
cm3 = 1000000.0:0.0
L - 1000.0:0.0
Volume Units dl = 10000.0:0.0
cl = 100000.0:0.0
ml = 1000000.0:0.0
gallon = 264.178:0.0
quart = 1056.71:0.0
AL1||DA|^allergy description
Seq Len DT Opt RP# HL7 Field Name Vivid Column Name
1 250 CE O Set ID - AL1 NOT USED
2 250 CE O Allergen Type Code NOT USED
3 250 CE O Allergen Code / Mnemonic / Description Description
4 250 CE O Allergy Severity Code NOT USED
5 15 ST O Y Allergy Reaction Code NOT USED
6 8 DT O Identification Date NOT USED
The HL7 non-standard ZDS segment contains the study DICOM UID, delivered from the Vivid
scanners. This segment is non-repeating.
ZDS|1.2.34665.347653.88.547.2
Seq Len DT Opt RP# HL7 Field Name Vivid Column Name
1 250 ST R Study Instance UID Study Instance UID