Lis CXL Pro
Lis CXL Pro
01
1. Interface Overview
HL7 is standardized health information transmitting protocol which is used for electronic transmission among
different applications in medical field. HL7 collects standard formats used by different manufactures to design
interfaces among different application software and allows data communication among different systems. It is
defined firstly by American and is widely used by many countries until now.
The transmission format in this interface is created according to HL7 version 2.3.1.
1.1 HL7 Message Structure
In HL7 communication protocol, message is basic unit of data transmitted among systems. Each message has its
own message type, which is used for defining message purpose and contains trigger events. One message is
composed of many segments. Each segment has its own name, which is used for defining its content or function.
One segment is composed of many Data Field. The first segment of a message is always message head segment,it
indicates sending and receiving program name, message type, and the only message ID, etc. the following segments
are decided by message type. E.g. PID segment (Patient Identification Data) includes name, address, social insurance
No. etc. One data segment can be composed of many parts and some messages may subdivided by event code.
This interface is defined upon HL7 v2.3.1, refer to HL7 Interface Standards Version 2.3.1 for detail.
1.2 HL7 Underlying Protocol
TCP/IP is a byte stream protocol, and it does not provide message boundaries. As upper layer protocol, HL7 is based
upon message, but it does not provide message end facility. In order to confirm message boundary, we adopts the
minimum underlying protocol(it is also described in HL7 Interface Standards Version 2.3.1.).The beginning of a
message is single byte, the ending of a message is double byte.
Message will be transmitted in the following formats:
<SB> data <EB><CR>,
<SB> = Start Block character (1 wide char), ASCII <VT>,which is 0x0B.
data = Data (variable number of wide chars), data is HL7 message, only includes ISO 8859-1 character (hex
decimal value 20 - FF) and <CR>, excludes other control and can not be printed characters.
<EB> = End Block character (1 wide char), ASCII <FS>, which is 0x1C.
<CR> = Carriage Return (1 wide char), ASCII Carriage Return, which is 0x0D.
Remark: This protocol adopts Unicode code, all send, received character strings are Unicode.
2. Communication Format
This communication interface includes test result transmission and sample information application. Test result
transmission is to transmit sample information, test result and QC result of analyzer to outer system, such as LIS.
The transmission method includes real time transmission during test and history result batch transmission. Sample
information application is to obtain the required sample information from LIS.
2.1 Support HL7 Message
All HL7 messages used in this interface are ORU, ACK, QRY and DSR.
The general view of test result transmission is as follow:
ACK^R01: Message is used for responding ORU message. The specific structure is as follow:
ORU Observational Results (Unsolicited) Description
MSH Message head
MSA Message acknowledge
QRY/QCK: Query observe result /response. QRY^Q02 message query current data, used for query required sample
information from LIS system. The specific structure is as follow:
QRY Query Description
MSH Message head
QRD Query definition
QRF Query screen
DSR/ACK: Response to QRY message, display/response of observe result. One function of DSR^Q03 message is
to respond QRY message, the other function is send display of query result, which is sending sample information
of LIS to analyzer. The specific structure is as follow:
DSR Display Response Description
MSH Message head
MSA Message acknowledge
{DSP} Display data
ACK^Q03 message is used for responding DSR message. The specific structure is as follow:
ACK Acknowledgment Description
MSH Message head
MSA Message acknowledge
Remark: This message segment may present in ACK^R01, DSR^Q03, ACK^Q03. The 4th, 6th segment use
integer, and other segments use character string type.
3. PID Patient Identification
PID mainly used for structure patient information. PID of this interface adopts the following fields:
No. Segment Length Explanation
1 Set ID – PID 10 Acknowledge different patient message segment.
2 Patient ID 20 Empty, keep. Patient No. in hospital.
3# Patient Identifier List 16 Case No.
4 Alternate Patient ID – PID 10 Bed No.
5# Patient Name 30 Patient Name
Inpatient Area and Ward. Area and ward are separated
6 Mother’s Maiden Name 61 by ^.The inpatient area length is 30, ward length is 30.
7 Date/Time of Birth 26 Empty, keep. Patient date of birth.
8 Sex 1 Send M for male; F for female; O for other.
9 Patient Alias 48 Empty, keep. Blood type.
10 Race 80 Empty, keep. Empty, keep. Race
11 Patient Address 106 Empty, keep. Patient Address
12 County Code 4 Empty, keep. County Code
13 Phone Number -Home 40 Empty, keep. Phone Number
14 Phone Number -Business 40 Empty, keep. Empty, keep. Phone Number -Business
15 Primary Language 60 Empty, keep. Empty, keep. Primary Language
16 Marital Status 80 Empty, keep. Empty, keep. Marital Status
17 Religion 80 Empty, keep. Empty, keep. Religion
18 Patient Account Number 30 Patient type
19 SSN Number -Patient 16 Empty, keep. SSN Number -Patient
Driver's License Number –
20 Patient 25 Empty, keep. Charge type.
Remark: This message segment is only used in ORU^R01. The age segment of 1st ,25th ,31st segment use
integer data type. Other segment use character string data type.
4. OBR Observation Request
OBR segment is used for transmitting doctor’s advice related to test report. When transmitting test results of
patient’s sample,
(MSH-16 take 0), OBR of this interface uses the following fields:
No. Segment Length Explanation
1 Set ID – OBR 10 Confirm different OBR segment.
2 Placer Order Number 22 Placer Order Number, used for sample barcode.
3 Filler Order Number 5 Filler Order Number, used for sample No.
4# Universal Service ID 200 Universal Service identifier.
5 Priority 2 Priority or not ? Y indicates yes, N indicates No.
6 Requested Date/time 26 Empty, keep. Requested Date/time
7 Observation Date/Time 26 Observation Date/Time, used for test Date/Time.
8 Observation End Date/Time 26 Empty, keep. Observation End Date/Time
9 Collection Volume 3 Used for repeat test times, take 1.
Collector Identifier. Used for sample and position.
Sample rack and position shall be separated by ^.
10 Collector Identifier 8 Sample rack length is 4, position length is 3.If the
analyzer is CXL PRO1300 or CXL PRO1600, then
this segment indicates sample disk No. and sample
position.
11 Specimen Action Code 1 Empty, keep. Specimen Action Code
Danger Code. Used for dilute or not. Y indicates yes, N
12 Danger Code 1 indicates No.
Related clinical information, used for patient clinical
13 Relevant Clinical Info. 100 diagnosis information.
Specimen Received
14 Date/Time 26 Send date/time.
Specimen Source, used for sample type, such as serum,
15 Specimen Source 1 plasma, urine, etc. 0-Serum, 1-Urine, 2-Plasma, 3- CSF,
4- Gastric juice, 5-Ascites, 6-Other.
16 Ordering Provider 30 Ordering Provider, used for send doctor.
Order Callback Phone
17 Number 30 Used for send dept.
Empty, keep. Sample character(jaundice, hemolysis,
18 Placer Field 1 60 lipohemia).
19 Placer Field 2 60 Empty, keep. Blood bag No.
20 Filler Field 1 30 Physician-in-charge, used for test doctor.
21 Filler Field 2 60 Empty, keep. Treatment dept.
Result Rpt/Status Change –
22 Date/Time 26 Result report date/time.
Remark: This message is only used in ORU^R01. Sample position segment of the 1st, 3rd, 9th, 10th segment. 15th,
37th segment use integer data type. Other segments use character string data type.
When transmitting QC results(MSH-16 is 2). Its segment definition is as follow:
No. Segment Length Explanation
1 Set ID – OBR 10 Confirm different OBR segment.
2 Placer Order Number 22 Placer Order Number, used for sample barcode.
3 Filler Order Number 5 Filler Order Number, used for sample No.
4# Universal Service ID 200 Universal Service ID
5 Priority 2 Priority or not, Y indicates yes, N indicates No.
6 Requested Date/time 26 Empty, keep. Requested Date/time
7 Observation Date/Time 26 Observation Date/Time, used for QC date/time.
8 Observation End Date/Time 26 Empty, keep. Observation End Date/Time
9 Collection Volume 20 Empty, keep.
Collector Identifier. Used for sample rack and position.
Sample rack and position shall be separated by ^.
10 Collector Identifier 8 Sample rack length is 4, position length is 3.If the
analyzer is CXL PRO1300 or CXL PRO1600, then
this segment indicates sample disk No. and sample
position.
11 Specimen Action Code 5 Used for QC times.
Used for module and inner&outer circle mark. Module
and inner&outer circle are separated by ^. 1 indicates
12 Danger Code 3
outer circle. 2 indicates inner circle. 3 indicates inner &
outer circle.
13 Relevant Clinical Info. 20 Used for QC name.
Specimen Received
14 Date/Time 26 Empty, keep.
No. Segment Length Explanation
Specimen Source, used for sample type, such as serum,
15 Specimen Source 1 plasma, urine, etc. 0-Serum, 1-Urine, 2-Plasma, 3- CSF,
4- Gastric juice, 5-Ascites, 6-Other.
16 Ordering Provider 15 Used for QC lot No.
Order Callback Phone
17 Number 10 Used for mean.
Remark: This message is only used in ORU^R01. Sample position segment of the 1st, 10th segment. Module
segment and inner&outer circle mark segment of 11st, 12th segment. The 15th segment uses integer data type. 17
th
,18 th,19 th segment use floating number. Other segments use character string data type.
5. OBX Observation
OBX mainly used for transmitting observed information in report message. If the transmitted data are sample
information(MSH-16 is 0), one patient may with many OBX. The OBX segment of this interface use the following
field:
No. Segment Length Explanation
1 Set ID – OBX 10 Confirm different OBX segment.
Value Type, used for mark test result type. NM
(numeric) indicates numeric value, used for quantify
2 Value Type 3
item ST (string) indicates character string value, used for
qualitative item.
3# Observation Identifier 5 Observe identifier, used for item ID number.
Observe, Sub-ID, used for item name and repeat test
4 Observation Sub-ID 16 times. Item name and repeat test times will be separated
by ^, item name length 12, repeat test times length 3.
Observe value, used for test result value(result
5 Observation Value 16 concentration or negative, positive, etc.)
6 Units 12 Unit, used as the unit of test result.
7 References Range 30 Reference range, test result normal range.
Abnormal mark, whether test result is
8 Abnormal Flags 5 normal(description)L-low H-high N-normal.
9 Probability 5 Empty, keep. Possibility
Empty, keep. Used as result mark. F-test result,
10 Nature of Abnormal Test 5 C-recheck result.
11# Observe Result Status 1 Empty, keep. Observe result status.
Date Last Observe Normal
12 Values 26 Empty, keep. Observe normal value date at last.
User Defined Access
13 Checks 16 User-define access check, used for original result.
Date/Time of the
14 Observation 28 Observe date/time, used for test date/time.
Remark: This message segment presents only in ORU^R01 message. The repeat test segment of 1st, 3rd, 4th
segments use integer data type. The 5th, 13rd segment use floating point data type. Other segments use character
string data type.
6. QRD - query definition segment
The ORD segment of this interface use the following fields:
No. Segment Length Explanation
1# Query Date/Time 26 Time of this query, the system time.
No. Segment Length Explanation
Query format code, query method, take SN(indicates
2# Query Format Code 2 sample No. method)and BC(indicates sample barcode
method)
3# Query Priority 1 Query priority, take D(deferred),.
Query ID, represents different queries, it increase 1 as
4# Query ID 10 the query number increases.
5 Deferred Response Type 1 Empty, keep. Delay response type.
Deferred Response
6 Date/Time 26 Empty, keep. Delay response date/time.
Remark: This message segment presents in QRY^Q02. The 4th segment is integer data type. Other segments use
character string data type.
7. QRF - query filter segment
QRF segment and QRD segment shall be used together to further refine original query content. The QRF segment
of this interface uses the following fields:
5 Other QRY Subject Filter 60 Empty, keep. Other QRF receive filter.
Remark: This message segment presents in QRY^Q02. The 3rd and 4th segments are query zero point of the day
and query occurance time, which are used for querying time interval condition. All segments use character string
type.
8. DSP - display data segment
DSP segment used for displaying the queried sample information and test item, which can be duplicated. DSP shall
repeat 3 times, the 1st DSP segment is patient information, DSP uses the following fields at this time.
No. Segment Length Explanation
1 Set ID - DSP 4 Confirm different DSP segments.
The specific items are same as PID-2 to
2 - 31 PID-31 of PID segment Refer to PID explanation.
Remark: This segment only presents in DSR^Q03. The first segment uses integer data type. Other fields refer to
PID-2 to PID-31 explanation.
The second DSP segment is doctor’s advice information. DSP will use the following fields at this time:
No. Segment Length Explanation
1 Set ID - DSP 4 Confirm different DSP segments
The specific items are same as OBR-2and
2 - 47 OBR-47of OBR segment Refer to OBR explanation.
Remark: This segment only presents in DSR^Q03. The first segment uses integer data type. Other segments refer
to OBR-2 to OBR-47 explanation.
The third DSP is item information, refer to the following table for items and sequence:
No. Segment Length Explanation
1 Set ID - DSP 4 Confirm different DSP segment.
2 Item Count 4 Test item No.
Test item name. The items are separated by ^, such as
3 Items 1000 ALT^ALB^BUN, character string type.
Remark: This message segment presents in DSR^Q03. The 1st, 2nd segments use integer data type. Other
segments’ type are character string.
3. Communication Demonstration
3.1 Test Data Sending Procedure
Auto-chemistry analyzer transmits sample information and test results to LIS server in the unit of sample, namely
one sample information and its test results are transmitted together as one message. LIS server will give
corresponding response upon this message.
ORU message contains MSH, PID, OBR, OBX(There are many OBX segments if one sample contains many
items.).MSH is message head, which presents in all messages.
e.g. The following information of one patient:
Meaning Value
Patient Name Jack
Case No. 002
Gender Male
Send Date March 21st, 2011
Send Time 10:11:12(H/M/S)
Sample Barcode 12345
Sample Type Serum
Sample No. 10
Meaning Value
Emergency or not Yes
Sample Rack No., Position E002, 3
Age 2
Item No. 1,2,3
Item Name ALT,AST,BUN
Repeat Test Times 1,1,1
Test Result 2.3,35 ,2.1
Result Unit U/L,U/L,mol/L
Reference Range 0-40,0-34,2.82-8.2
LIS server will judge the validity and type and give corresponding response upon receiving the message. The
following is normal response:
If ORU message received by LIS server is incorrect, set corresponding code in MSA to back, analyzer software will
conduct corresponding processing. Such as, LIS server found 206 refuse error, its response ACK message is as
follow:
Auto-chemistry analyzer transmits QC results to LIS server in the unit of one QC test. LIS server will give
corresponding response upon this message.
ORU message includes MSH, OBR.
The following information is of one QC test:
Meaning Value
Item No. 1
Item Name ALT
QC Name Randox Low Level
QC Lot No. 123
QC Times 1
Module No. 1
Sample Type Serum
Sample Rack, Position C001, 2
QC Mean 40
QC Standard Deviation 1
Tested Result(concentration) 123.232
Test Date/Time 2011.03.21 16:46:43
LIS server will return DSR^Q03 as response upon receiving this message. If there is corresponding sample, the
message is as follow:
If the QRY message received by LIS server is wrong, such as 206 refuse error presents, the return message is as
follow:
Analyzer will send ACK^Q03 as response upon receiving DSR message, the return message is as follow:
Such as, download a sample with No.5 from LIS, sample rack N003, position 4, no dilution, the
QRY^Q02 message is as follow:
LIS return DSR^Q03 message as response upon receiving this message, the message for response is as
follow:
Analyzer will send ACK^Q03 as response upon receiving DSR, the return message is as follow:
Remark: During query request sending, analyzer send sample rack, sample position, dilution information
at QRD of QRY^Q02 to LIS server. LIS server shall return the three segments according to original value
from DSP of DSR^Q03.