0% found this document useful (0 votes)
1K views

Detailed LIS Communication Protocol: // A Query Record

The document describes the detailed LIS communication protocol between an SF-8000 device and a HOST-LIS server. It outlines the message types, record types, frame structure, error handling and exceptions that can occur during data exchange.

Uploaded by

Matrix
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1K views

Detailed LIS Communication Protocol: // A Query Record

The document describes the detailed LIS communication protocol between an SF-8000 device and a HOST-LIS server. It outlines the message types, record types, frame structure, error handling and exceptions that can occur during data exchange.

Uploaded by

Matrix
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

Detailed LIS Communication Protocol

According to astm Protocols, Application layers virtually exchange messages (e.g. test
results), and a message is divided into multiple records at Presentation Layer, finally each
record is further divided into one or more frame at data link layer. One frame consists of
max. 240 record letters (bytes) and 7 bytes of delimiter and checksum data, so if a record
contains more than 240 letters, it has to be put into multiple frames.

There are several kinds of records, such as:


 Header(H)
 Terminator(L)
 Query(Q)
 Patient(P)
 Order(O)
 Result(R)

The letters inside the brackets are record identifier. One record contains multiple fields
separated by separators(Generally the letter of ‘|’).
Each message should contain Header record and Terminator record, marking the
beginning and the end of the message, respectively.
Every kind of record starts with corresponding record identifier, and ends with [CR], as
described below:

// A Query record
Each Frame has a form as described below:

The meanings of the letters are listed below:


 [STX]: ASCII character 2 (Frame start)
 1: Frame number
 [DATA1]: is the data content of a frame (max. 240 characters).
 [ETX]:ASCII character 3 (Frame end)
 [C1][C2]: Check sum
 [CR]: Carriage Return
 [LF]: Line Feed

Here are the descriptions of how each kind of message is divided into multiple
records and the details of the dialogue between SF8000 and the server when exchanging
data.

1) Query (SF-8000  HOST-LIS)


It is implemented to download test request and sample information from LIS.
This message contains 3 records:
 Header
 Query
 Terminator
Dialogue details:
SF8000 [ENQ] //Asks if the partner can exchange data
Server [ACK] //The reply is “I can”

SF8000 [STX]1H|\^&[CR][ETX][C1][C2][CR][LF] //Send the first frame, i.e., the


header record
Server [ACK]//successfully received

SF8000 [STX]2Q|1|^------000143254[CR][ETX][C1][C2][CR][LF] // Send the


second frame, i.e., the Query record
Server [ACK]// successfully received

SF8000 [STX]3 L|1[CR][ETX][C1][C2][CR][LF] // Send the third frame, i.e., the


Terminator record
Server [ACK]// successfully received

SF8000 [EOT] // Notifies the partner that the communication is finished.

2) Order (HOST-LIS  SF-8000 )


It is implemented to answer Query

This message contains 4 records:


 Header
 Patient
 Order
 Terminator
Dialogue details:

Server [ENQ] //Asks if the partner can exchange data


SF8000 [ACK] // The reply is “I can”

Server [STX]1H|\^&[CR][ETX][C1][C2][CR][LF] // Send the first frame, i.e., the


header record

SF8000 [ACK]// successfully received

Server [STX]2P|1||^------000143254[CR] [ETX] [C1][C2][CR][LF] // Send the


second frame, i.e., the Patient record
SF8000 [ACK]// successfully received
Server [STX]3O|1|^------000143254||^^^APTT\^^^PT--\^^^PT%-\^^^INR-
[CR][ETX][C1][C2][CR][LF] // Send the third frame, i.e., the Order record
SF8000 [ACK]// successfully received

Server [STX]4 L| 1[CR][ETX][C1][C2][CR][LF] // Send the 4th frame, i.e., the


Terminator record
SF8000 [ACK]// successfully received

Server [EOT] // Notifies the partner that the communication is finished.

3) Result (SF-8000  HOST-LIS )


It is implemented to send results.
This message contains the following kinds of records:
 Header
 Patient
 Order
 Result
 Terminator
Dialogue details:
SF8000 [ENQ] // Asks if the partner can exchange data
Server [ACK] // The reply is “I can”

SF8000 [STX]1H|\^&[CR][ETX][C1][C2][CR][LF] // Send the first frame, i.e.,


the header record

Server [ACK]// successfully received

SF8000 [STX]2P|1||^------000143254[CR][ETX] [C1][C2][CR][LF] // Send the


second frame, i.e., the Patient record
Server [ACK]// successfully received

SF8000 [STX]3O|1|^------000143254||^^^APTT\^^^PT--\^^^PT%-\^^^INR-
[CR][ETX][C1][C2][CR][LF] // Send the third frame, i.e., the Order record
Server [ACK]// successfully received

SF8000 [STX]4 R| 1|^^^APTT|---32.8 |S [CR][ETX][C1][C2][CR][LF] // Send the 4th


frame, i.e., the APTT result
Server [ACK]// successfully received

SF8000 [STX]5 R|2|^^^ PT--|--15.23|S||H[CR][ETX][C1][C2][CR][LF] // Send the 5th


frame, i.e., the PT-- result
Server [ACK]// successfully received
SF8000 [STX]6 R|3|^^^PT%-|-----70 |%[CR][ETX][C1][C2][CR][LF] // Send the 6th
frame, i.e., the PT%- result
Server [ACK]// successfully received

SF8000 [STX]7 R| 4|^^^INR-|---1.42|INR||H[CR][ETX][C1][C2][CR][LF] // Send


th
the 7 frame, i.e., the INR- result
Server [ACK]// successfully received

SF8000 [STX]0 L| 1[CR][ETX][C1][C2][CR][LF] // Send the 8th frame, i.e., the


Terminator record
Server [ACK]// successfully received

SF8000 [EOT] // Notifies the partner that the communication is finished.

Exception descriptions:
The communication situations listed above are normal situations. Exceptions are listed
below:
When SF8000 is sending:
After SF8000 has sent one Frame, it waits for the reply from the server. If the server replies
[NAK], SF8000 will re-send current Frame. This cycle is repeated until a "Number of On
Error Retries" of six is reached. At this point SF8000 will send an [EOT] notifying the
server that the communication is aborted and displays an error message of
communication failure meaning that the communication circuit should be checked and
possibly needs to be repaired. After the communication circuit repaired, the action of
sending message may be re-started.
After SF8000 has sent one Frame, it waits for the reply from the server. If there is no reply
within 15 seconds, SF8000 will send an [EOT] notifying the server that the communication
is aborted and displays an error message of communication failure meaning that the
communication circuit should be checked and possibly needs to be repaired. After the
communication circuit repaired, the action of sending message may be re-started.
When SF8000 is Receiving:
If a complete frame is received it is checked for the right frame number and a correct
checksum. If a valid frame is received SF8000 will answer an [ACK], waiting for the arrival
of the next frame. If an Invalid frame is received SF8000 will answer a [NAK], waiting for
the arrival of current frame.
After SF8000 responded with an [ACK] or a [NAK], it waits for the arrival of the
next frame or the current frame, respectively. If, within 30s, neither Reception of a frame is
completed nor an [EOT] is received, SF8000 will generate an alarm notifying the operator
that the communication circuit should be checked and possibly needs to be repaired. After
the communication circuit repaired, SF8000 will be in the state of waiting for the arrival of
messages from the server.
If a [EOT] is received before the arrival of the Terminator record ,SF8000 will
generate an alarm notifying the operator that the server might have encountered a
technical failure, and discards the incomplete message, finally it enters a state of waiting
for the arrival of messages from the server.

You might also like