Professional Documents
Culture Documents
bioMérieux SA
Chemin de l’Orme
69280 Marcy-l’Etoile - France
Tél: 33 (0)4 78 87 20 00
Fax: 33 (0)4 78 87 20 90
www.biomerieux.com
Intellectual Property
BIOMERIEUX, the blue logo, BCI Link and VIDAS are used, pending and/or registered
trademarks belonging to bioMérieux, or one of its subsidiaries, or one of its companies.
Introduction
BCI Simulators
AI Simulator............................................................................................................... 16-1
Parameter Setting and Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-1
Setting Parameters for the AI Simulators. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-1
Opening and Closing a Session on an AI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-3
Updating the Configuration of the AI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-4
Receiving Analysis Requests sent by BCI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-5
Managing Results in "ASTM-XML" Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-6
Presentation of the Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-6
Step 1: Create a Result Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-7
Step 2: Complete or Modify the Message using new Results . . . . . . . . . . . . . . . . . . . 16-7
Step 3: Save the Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-7
Step 4: Send the Message. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-7
Managing Results in "text" Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-8
Presentation of the Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-8
Step 1: Create a Result Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-8
Step 2: Complete or Modify the Message with New Results . . . . . . . . . . . . . . . . . . . . 16-8
Step 3: Save the Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-8
Step 4: Send the Message. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-8
Managing Results in "bioMérieux" Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-9
Presentation of the Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-9
Step 1: Create a Result Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-10
Step 2: Complete or Modify the Message using New Results . . . . . . . . . . . . . . . . . . 16-10
Step 3: Save the Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-10
Step 4: Send the Message. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-10
Setting Parameters for the "bioMérieux" Result Editor. . . . . . . . . . . . . . . . . . . . . . . . . . . 16-11
Appendices
The content of this manual is based on the bioMérieux BCI Link version R4.0.0.
This document describes the different stages in the development of the bioMérieux AI/LIS
interface.
This guide is particularly intended for field service engineers that need to configure the AI and
the BCI Link, in order to establish a connection with the LIS or LIMS.
Note: The screens and figures shown are intended as illustrations only and must not be interpreted
as actual representations of data, results or equipment.
Screens and equipment are not shown to scale.
The user documentation uses several types of statements to alert you to important
information. Important information is labeled in text and identified using symbols.
Statement Types
The statement types are Warning, Caution, Important, and Note. The following examples
define each statement type. The general caution symbol is used in these examples, but other
symbols may be used instead.
WARNING
CAUTION: A Caution statement alerts the user to the possibility of a problem with
the device associated with its use or misuse. Such problems include device
malfunction, device failure, damage to the device, or damage to other property.
Where applicable, a Caution statement may include a precaution that should be
taken to avoid the hazard.
General Statements
This section provides important statements that apply to all products. Equipment meets the
requirements and standards stated in the certificate supplied with it.
WARNING
Even when power is removed from the instrument, the potential exists for
electricity to be generated if components, such as assemblies that are
mounted on belts, are moved too quickly. Components should be moved
slowly to prevent the buildup of electricity. Failure to comply may result in
injury to personnel or damage to the instrument.
WARNING
Electronic equipment can be the source of electrical shocks.
WARNING
All power switches should be off when connecting or disconnecting cables
to or from power outlets to reduce the risk of electrical shock.
IMPORTANT: Electrical or other connections should only be made using the accessories supplied
with the equipment.
Before undertaking electrical safety or other compliance testing on the instrument,
contact bioMérieux.
CAUTION: The computer and its operating system have been carefully configured
for optimal performance of the VIDAS® range systems. Altering the configuration
may severely hamper the usability of the instrument.
• 1 VIDAS® PC.
• 1 o 2 VIDAS® instruments connected with a serial cable to the VIDAS® PC.
• The BCI Link software installed on the VIDAS® PC.
• 1 LIS computer connected with a serial cable (RS232) directly to the VIDAS® PC com port.
• VIDAS® PC and LIS can be connected to the laboratory network with a network cable.
Note: This last connection is not necessary but useful, for example for VILINK.
• 1 VIDAS® 3 computer connected with a network cable to the instrument or directly to the local
laboratory network.
• 1 VIDAS® 3 instrument connected with a network cable to the VIDAS® 3 computer or directly
to the local area network.
• The BCI Link software installed on the VIDAS® 3 computer.
• 1 LIS computer connected with a serial cable (RS232) directly to the VIDAS® 3 computer com
port.
Note: For more detailed information about miniVIDAS®, refer to the miniVIDAS® Procedure
Manual, ref. 161150-093.
• 1 miniVIDAS® instrument
1 LIS computer connected with a serial cable (RS232) directly to the com port of the
miniVIDAS®.
The miniVIDAS® instrument is connected to the LIS computer through a communication cable
(P/N 186036-x) plugged into the COMPUTER port located at the back of the instrument.
There are many different configurations that can be set to interconnect VIDAS® systems and
LIS/LIMS inside the Laboratory Network. The communication between them is performed by
the BCI Link software.
Since every Laboratory Network is different, this section suggests and describes the ideal
bioMérieux configurations that can be realized.
Due to the firewall included in the Safe@Office router, bioMérieux ensures VIDAS® data
control and security within the sub-network defined by the router.
The above picture is an example of the ideal bioMérieux configuration. Below in details, the
components of this network:
• The Laboratory Network - This network is under the responsibility of the customer. Linked to
this network there is the LIS and the Internet access to allow the communication with the
VILINK server. Other systems will be connected to the customer network and not the VIDAS®
sub-network.
• The VIDAS® range sub-network - All the VIDAS® systems and related devices (printers,
switches, etc.) are connected to this sub-network.
• The VIDAS® systems (VIDAS® PC and VIDAS® 3) - 1 to 4 systems can be connected to the
same BCI Link and under the same sub-network.
Note: The BCI Link must be installed on the most recent computer.
• One or more optional switches (ref. 412914 - Generic GS 900 8P Switch Kit) can be used to
extend the physical connections.
In Figure “Ideal bioMérieux Configuration” on page 2-4, there are 7 network connections (2
VIDAS® PC computers, 2 VIDAS® 3 computers, 2 VIDAS® 3 instruments and a printer).
The router can only host 4 network connections, so a switch is necessary to complete the
configuration.
IMPORTANT: No router is used, so for security reasons, we recommend to apply this configuration
only if strictly required by the Laboratory policies.
As shown on Figure “Minimal Network Configuration” on page 2-5 all the VIDAS® systems
and related devices (printers, switches, etc.) are directly connected to the Laboratory Network
(WAN). Internet, the VILINK server and the LIS should also be connected to this network.
The following table describes the control characters which are available for transporting
RS232 messages.
Table 3-1: Control Characters
This is the line request character. It establishes a session between the sending and
ENQ
receiving computers.
This signals the start of a message packet. It is a single character record that
STX
expects no response from the target computer.
This record contains a checksum that determines if the packet was received
properly. Calculation of checksums begins with the first <RS> and ends with the
<GS> character.
Checksums are calculated by adding the values of appropriate characters,
GS
truncating the most significant part of the result (leaving an 8-bit number), and
converting this value to two ASCII characters representing the hexadecimal value
of the number. An <ACK> or <NAK> is always expected in response to this record
type.
This signals the end of a message packet. It is also a single character record that
ETX
expects no response from the target computer.
The sending computer sends this character to the receiver to signal the end of the
EOT
session.
Protocols
There are 2 types of protocols: bioMérieux Literal and bioMérieux Literal (Alternate).
Note: There can only be one <STX> and <ETX> character per data packet. At least one <RS>
record must be in the packet. There will always be one <GS> record per packet.
• Multiple sessions: The user opens a complete session for each analysis request (e.g. for 10
analysis requests: 10 <ENQ> to <EOT>-type sessions).
• Single session: The user opens an <ENQ> session, sends as many complete <STX> to
<ETX> blocks as there are analysis requests, and then closes the session (e.g. for 10
requests: 1 <ACK> session is opened, 10 <STX> to <ETX> blocks are sent and the <EOT>
session is closed).
The Upload mode always functions in multiple sessions, that is to say with one result after
another. A complete <ENQ> to <EOT>-type message is systematically sent for each result.
Same frame as example 1 except that the checksum <GS> is situated before the <RS>.
BCI does not reply <ACK>, then BCI does not transmit the request to the system.
Managing Messages
Reminder: each message contains control characters that are critical for LIS BCI
communication (see Control Characters table on page 3-1).
The "<CR><LF>" (Carriage Return/Line Feed) option adds two additional control characters
after each control character so that some characters can be recognized (e.g.: <ENQ>
<CR><LF>).
This is not the default option. If you want to use it, select it as follows from the BCI Link
application:
4. In the <CR><LF>, define the control characters to be followed by <CR><LF> and click OK
to validate and close the dialog box.
The checksum is a control value calculated to ensure that all characters transmitted have
been received.
This example applies to incoming and outgoing checksums. (It also shows the use of record
terminators).
Note: Checksum characters sent by the bioMérieux computer are always lower case, but both upper
and lower case characters are accepted.
Note: For more detailed information on link configuration, refer to the BCI Link User Manual, ref.
4501-2122.
IMPORTANT: The LIS and AI must have identical serial port parameter settings (parity, speed, stop
bit).
The table below gives the parameters required for the configuration.
Port Serial port used by the link Between COM1 and Com 3
COM4
Baud Transfer speed Between 110 and 9600
256000 baud
Data bits Number of bits per character Between 4 and 8 bits. 8
Parity This bit is included as a simple means None, Even, Odd, none
of error checking Forced to 1 and
Forced to 0
Stop bits These bits are always represented by 1, 1,5 and 2. 1
a negative voltage. If no further
characters are transmitted, the line
stays in the negative (MARK)
condition. The transmission of the next
character frame, if any, is heralded by
a start bit of positive (SPACE) voltage
mtmpr|pi960297|pnBrown|pb1996/12/02|psM|soLAB1|si|ci218421|qd1|
Particular Cases
For analysis requests on assays with sub-assays (such as HIV5 or DUOLIS), only the main
assay is sent in the request. If sub-assays requests are sent, they are ignored.
mtmpr|pi201309|pndupond|pb1975/10/10|psM|soLAB06|si|ci2012|rtHIV5|qd1|
mtmpr|pi201310|pndupond|pb1975/10/10|psM|soLAB05|si|ci2013|rtLDUO|qd1|
mtrsl|pi200609|pndupond|pb1975/10/10|ps-
|so|si|ci11111111111122222|rtTSH|rnTSH|tt14:53|td2013/10/23|ql|qn0.80
uUI/ml|y3uUI/ml|qd1|nccalinc|idBMXHOST0|sn|m4db2bmx|
mtrsl|<RS>pi|<RS>pn|<RS>si|<RS>ci7|<RS>rtHIV|<RS>rnHIV 1+2|
<RS>tt09:49|<RS>td07/22/98|<RS>qlNegatif|<RS>qn0.01|
Note: The presence of the <RS> character before each field is normal.
The following section is based on VIDAS® PC software version VU_06 and VIDAS® 3
software version R1.1.2. It is used to define the meaning of annotations in English language.
Transport Process
Physical Link
A serial port is needed. If there is no serial port available, use a USB/Serial converter.
Message Structure
LIS Message
This message is sent by the LIS to the VIDAS® range system and contains the analysis
request to be performed.
A complete LIS (download) message is composed of the following fields (optional fields in
blue/italic):
mt | pi | pn | pb | ps | so | si | ci | rt | qd
AI Message
This message is sent by the VIDAS® range system to the LIS to report the result.
A complete AI (upload) message is made up of the following fields (optional fields in blue/
italic):
mt | pi | pn | pb | ps | so | si | ci | rt | rn | tt | td | ql | qn | y3 | qd | nc | id | sn | m4
Formatting Rules
Messages exchanged in both directions are formatted according to well defined formatting
rules:
• All messages are composed of a set of message fields each composed of:
• A field tag (a text mnemonic) that is a unique two-character code (see Data Types on
page 4-4).
• A value (empty values are allowed for some fields)
• A vertical bar (|) terminator that ends each field.
• The decimal separator character is always “.” (dot), whatever the locale is.
• Supported sex values are language dependent (see Authorized Patient Sex Field Values in
bMx Messages on page B-7).
• Field length is variable with a maximum size (see Data Types on page 4-4).
• Case of data is “as is”. This means that values are not case sensitive.
• See Codepage on page B-1 for more details about the codepage.
Data Types
The table below lists all the possible fields with their associated characteristics. It applies to
both VIDAS® PC and VIDAS® 3 unless otherwise specified.
In this table:
Mandatory fields:
• In download (LIS to AI) that means that we expect these fields to be present.
• In upload (AI to LIS) that means that the fields will always be present.
Note: The order of the following table is not the expected order.
LIS AI to
Code Description Value Type / Format / Constraints Additional Information
to AI LIS
LIS AI to
Code Description Value Type / Format / Constraints Additional Information
to AI LIS
Optional
LIS AI to
Code Description Value Type / Format / Constraints Additional Information
to AI LIS
Result Data
tt Test completion • Type: Time
time
Format: hh:mm
Mandatory
td Test completion • Type: Date
date
Format: yyyy/mm/dd
Mandatory
LIS AI to
Code Description Value Type / Format / Constraints Additional Information
to AI LIS
ql Qualitative result • Type: StringL29 The values are determined with the
message indexes of the assay files
• Value: see Qualitative Result
Values on page B-6 for associated with the thresholds.
information about the authorized
values
Mandatory
Optional
Traceability Information
id Instrument ID • Type: StringL15 ID of the instrument on which the
result is computed.
Optional
sn Serial number • Type: StringL20 Serial number filled in the
configuration.
Optional
LIS AI to
Code Description Value Type / Format / Constraints Additional Information
to AI LIS
Restrictions:
Hardware Specificities
Communication Port
The communication port labeled COMPUTER and located at the rear side of the machine has
to be used. On miniVIDAS®, the connector is a DB9 male.
Cable
The cable is the same as the one used for the VIDAS BCI. Cross the wires 2 and 3. The
required connector for the miniVIDAS® side is a DB9 female.
Message Structure
The message format is fixed and all the available fields are transmitted.
A complete AI (upload) message for miniVIDAS® is made up of the following fields (optional
fields in blue/italic:
mt | pi | pn | si | ci | rt | rn | qd | tt | td | ql | qn
Formatting Rules
• The decimal separator character is always “.” (dot), whatever the locale is.
• Field length is variable with a maximum size ((see Data Types on page 5-3).
• Case of data is “as is”. This means that values are not case sensitive.
Data Types
The table below lists all the possible fields with their associated characteristics.
Header
mt Message type • Type: StringL3 A message is always introduced by this
• Value: rsl (result) field with the rsl value
Mandatory
Patient Data
pi Patient identifier Always empty Always empty because corresponding
information does not exist on miniVIDAS®
pn Patient name Always empty Always empty because corresponding
information does not exist on miniVIDAS®
Specimen / Sample Data
si Specimen separator • Type: N/A This field does not convey any
information and is kept for compatibility
Mandatory only.
Note: This field is always empty (no value). No error management done on this field
(no alarm).
ci Sample ID • Type: StringL12
Mandatory
Test Order Data
rt Short assay name • Type: StringL4
Mandatory
Mandatory
qd Dilution • Type: IntegerL4
Optional
Result
tt Test completion time • Type: TimeL5
• Format: hh:mm
Mandatory
td Test completion date • Type: DateL8 US format.
• Format: mm/dd/yy
Mandatory
Mandatory
Mandatory
mtmpr|pi960297|pnBrown|pb1996/12/02|psM|soLAB1|si|ci218421|qd1|
Particular Cases
For analysis requests on assays with sub-assays (such as HIV5 or DUOLIS), only the
main assay is sent in the request. If sub-assays requests are sent, they are ignored.
mtmpr|pi201309|pndupond|pb1975/10/10|psM|soLAB06|si|ci2012|rtHIV5|qd1|
mtmpr|pi201310|pndupond|pb1975/10/10|psM|soLAB05|si|ci2013|rtLDUO|qd1|
mtrsl|pi200609|pndupond|pb1975/10/10|ps-
|so|si|ci11111111111122222|rtTSH|rnTSH|tt14:53|td2013/10/23|ql|qn0.80
uUI/ml|y3uUI/ml|qd1|nccalinc|idBMXHOST0|sn|m4db2bmx|
Particular Cases
• For results consisting of multiple sub-results and global results (such as HIV5), the
global results, the antibody (AB) and antigen (AG) are uploaded to the LIS as shown below.
• For the global result:
mtrsl|pi5060|pnroger|pb1968/01/05|psM|so1|si|ci200601100|rtHIV5|rnHIV DUO
Ultra|tt10:05|td2006/04/06|qlNEGATIVE|qn|qd1|ncvalid|idVIDAS3PC01|sndasa10|m4bmx|
mtrsl|pi5060|pnroger|pb1968/01/05|psM|so1|si|ci200601100|rtAG|rnHIV DUO
Ultra|tt10:05|td2006/04/06|qlNEGATIVE|qn0.14|qd1|ncvalid|
idVIDAS3PC01|sndasa10|m4bmx|
• For results consisting of multiple sub-results without global results (such as DUOLIS),
the sub-results are uploaded to the LIS as described below.
• For the first sub-result:
mtrsl|pi|pn|pb|ps|so1|si|ci|rtDLMO|rn DUO Listeria monocytogenes |tt|td|ql|qn|y3|qd|nc|
File: result_hiv5_line1.txt
Blocks: Header, Patient, Specimen, Order, Result, Traceability.
mtrsl|pi#12345|pn|pb|ps-|so|si|ci#12345|rtHIV5|rnHIV DUO
Ultra|tt16:03|td11/03/2011|qlPOSITIVE|qn|qd1|ncconthnor|
idVIDAS3PC01|snVN1234|m4vidas|
File: result_hiv5_line2.txt
Blocks: Header, Patient, Specimen, Order, Result, Traceability.
mtrsl|pi#12345|pn|pb|ps-|so|si|ci#12345|rtAB|rnHIV DUO
Ultra|tt16:03|td11/03/2011|qlPOSITIVE|qn1.47|qd1|ncconthnor|
idVIDAS3PC01|snVN1234|m4vidas|
File: result_hiv5_line3.txt
Blocks: Header, Patient, Specimen, Order, Result, Traceability.
mtrsl|pi#12345|pn|pb|ps-|so|si|ci#12345|rtAG|rnHIV DUO
Ultra|tt16:03|td11/03/2011|qlPOSITIVE|qnND|qd1|ncconthnor|
idVIDAS3PC01|snVN1234|m4vidas|
mtrsl|pi201309|pndupond|pb1975/10/10|psM|soLAB06|si|ci2012|rtTXGA|rnToxo IgG
Avidity|tt15:11|td2013/10/23|qlINVALIDE|qnINVALIDE|qd1
|ncconthnor|idBMXHOST0|sn|m4db2bmx|
• bcinet.dummyfile.rs232.name=bmx_000000-000000_0
• bcinet.dummyfile.rs232.content=mtbis
mtrsl|<RS>pi|<RS>pn|<RS>si|<RS>ci7|<RS>rtHIV|<RS>rnHIV 1+2|
<RS>tt09:49|<RS>td07/22/98|<RS>qlNegatif|<RS>qn0.01|
Note: The presence of the <RS> character before each field is normal.
Description
ASTM-XML messages are based on a subset of ASTM attributes defined in the specification
ASTM 1394-97 and structured using XML formalism. To avoid any ambiguity in the
interpretation of messages, an XML schema is used to check the syntax and ensure that the
messages follow several semantic rules.
For further details on XML schema, refer to the Introduction to XML Schema on page 7-19.
The purpose of the XML schema is to define two main elements which are
"LisMessageType", for the definition of analysis requests, and "AIMessageType" for the
definition of results.
Each XML element derived from the ASTM specification is preceded by a comment indicating
the section in which the attribute definition can be found. For example, the definition of the
patient identifier is presented as follows:
Systems in the VIDAS® range only support this type of character encoding.
IMPORTANT: Character encoding forms such as UTF-16 or UCS-2, which use two or more fixed
bytes, are not supported by BCI Link for optimization reasons. Only variable width
encoding forms which can code the first 255 characters on a single-byte are accepted
by BCI Link (Shift-JIS, UTF-8, ISO-8859-1, etc.).
Note: The XML parser in charge of interpreting the bioMérieux result frame must manage:
Example 1: result with a value at "<0.5 ng/ml" - sent by the AI to the LIS
Example 2: result with a value at ">0.5 ng/ml" – sent by the AI to the LIS
<result>
<value>> 0.5</value>
<unit>UI/ml</unit>
<comment>
<source>I</source>
<text>The result contains a character "greater
than", it is replaced by its entity: ></text>
<type>G</type>
</comment>
</result>
Naming Rules
Analysis Request
Analysis request files sent by the LIS must be named as follows:
Where:
• FTP Account name is the name of the FTP account created in the BCI Link configuration
menu.
• YYMMDD means Year, Month, Day.
• HHMMSS means Hour, Minute, Second.
• s is the sequence between 0 and 99. This is used if the LIS sends more than one analysis
request (in the same second).
Analysis Result
Analysis result files sent by the AI must be named as follows:
AI name_YYMMDD_HHMMSS_s.xml
Where:
Messages sent by the LIS and used by BCI Link (according to the dispatcher configuration)
are described below.
• Systematic dispatching
No information required. BCI Link sends the LIS message to all the AI connected (single
connection configuration).
• Laboratory dispatching
The analysis requests sent by the LIS should contain the name of the AI
(instrumentSectionId) on which the test is to be performed. If the AI is unknown, the request
is rejected and an error is generated by BCI Link as it cannot read the test code
(shortAssayName). It is only used by the AI.
• bioMérieux dispatching
Analysis requests sent by the LIS should contain the test code shortAssayName and the type
of test ActionCode. If the type of test is not provided it is considered as a routine test
(ActionCode = ‘N’). BCI Link needs both items to send the request according to the
dispatcher configuration.
Messages are transported by TCP/IP using the standard FTP protocol. From a strictly
"communications" point of view, the BCI Link software is an FTP server and the LIS is an
FTP client. In other words, the interface driver should integrate an FTP client who is capable
of downloading files containing the analysis requests and uploading files containing the
results.
The FTP protocol requires two connections for communication, a "control connection" and a
"data connection". The control connection is used to exchange FTP commands and the data
connection to transfer data.
The transmission mode is a "Stream" mode, i.e. the file is simply transferred as a series of
bytes. There are no limitations for the data representation.
The “file type” structure is used. The EOF (End Of File) sequence is implicitly marked by the
closing of the connection. All the transmitted bytes are therefore data bytes.
There is no existing mechanism to detect lost or erroneous bits for a transferred file; this
type of error is managed at TCP level. The FTP server does not implement a recovery
procedure following an error. If transfer is interrupted, the client must resend the complete
file.
IMPORTANT: The aim of this section is to define the specificities of the FTP protocol as part of the
LIS – BCI interface. It does not provide information on the FTP protocol.
For further details on the FTP protocols, refer to the standard RFC0959.
Opening a Session
The FTP connects to the FTP client BCI server using an identifier and a password which are
recognized (i.e. defined as an active FTP account). Refer to the BCI Link User Manual, ref.
4501-2122 for more detailed information.
Note: Only valid FTP accounts are authorized to connect to BCI Link, anonymous FTP accounts do
not exist.
The following table describes the command sequence that an FTP client should use to set up
a new FTP session.
To optimize transfer time and avoid encoding problems, it is preferable to use binary transfers
rather than ASCII transfers by sending the following command to the FTP server after
connection: TYPE I.
If this is successful, the return code is 200. If an error occurs, the return code is 501. This
configuration is valid for the duration of the session or until the command TYPE A is sent to
return to ASCII mode.
The BCI allows connections in active or passive mode for the transfer of files.
Active mode
Opening of the data connection is initiated by the BCI Link server using the parameters of the
PORT command previously transmitted by the client.
This command has the following parameters: h1, h2, h3, h4, p1, p2. The first 4 parameters
represent the Internet address and the last 2 represent the port for a byte in ASCII
representation (refer to the RFC0959 standard).
Note: The server does not implement a default port for the data connection. The client has to send
the PORT command beforehand.
Passive mode
Opening of the data connection is initiated by the client for data transfer. To initiate transfer in
passive mode, the FTP client must send the following command to the FTP server: PASV. The
server will then return the IP address and the port number on which the client should establish
the connection for data transfer.
Note: By default, the server runs in active mode which may cause problems with systems which are
behind firewalls. Only use passive mode for configurations with a firewall.
The PASV command is only valid for the next data transfer; this is why it must systematically
be sent before each data transfer.
A session can be shut down by sending the QUIT command to the FTP server.
Note: Shutting down a session enables only the control connection to be shut down; transfer
connection shutdown is initiated by the server following data transfer.
To download the contents of a file to the server’s current directory, use the command FTP:
STOR <Name of file>. After the "STOR" command has been issued, the FTP server may
send one of the following return codes:
The FTP command sequence below enables the following actions to occur in succession:
Example 2:
The FTP command sequence below enables the following actions to occur in succession:
The principle of this algorithm consists in finding, in a given reference system, all the analysis
requests to be transferred. If new requests exist, an FTP session is initiated and the files are
sent following the rules for naming files. This algorithm does not take into account the possible
errors that the server may return.
To upload the contents of a file to the server’s current directory, use the command FTP : RETR
<File name>. Following a "RETR" command, the FTP server may send one of the following
return codes:
550 Requested action not This error occurs when you try to upload a file from a directory
taken, no access other than the "upload" directory, e.g. RETR/download/
monFichier.
550 Requested action not This error occurs when you try to upload a file which cannot be
taken, file not found found on the server.
451 Requested action This error occurs when you try to upload a file whose name
aborted: Illegal upload does not match the naming rules, as defined in BCI.
- should uploaded files
having the following
definition: <analysis
system
name>_yymmdd_hhmmss_<se
quence>.xml
421 Service not available, This error occurs in cases where:
closing control • connection for data transfer failed (in active or passive
connection mode). Check that the parameters defined during creation of
the connection (Internet address and port number) are
correct.
• connection for data transfer is suddenly cut off (power cut,
connection shut down by the client, etc.).
150 Opening data This message is sent to the client before transfer begins. It
connection - transfer indicates that connection has been correctly established and
mode: <Binary mode or that the transfer mode will be binary or ASCII.
Ascii mode>
226 Transfer complete The server sends this code to indicate that transfer is complete
and that the connection will soon be shut down.
The FTP command sequence below enables the following actions to occur in succession:
The FTP command sequence below enables the following actions to occur in succession:
The principle of this algorithm consists in opening a session, periodically scanning the
"upload" directory (every 10 to 30 seconds) and uploading new results.
endFtpSession();
// Opening an FTP connection
openFTPConnection(ftpHostname, portNumber);
// Opening a new session
startFTPSession(login, pwd);
// Transfer: binary mode
setBinaryMode();
LOOP {
// Scanning file names in the upload directory
// Send FTP command : NLST /upload
String[] fileNames = getResultFileNames();
// Transfer all the available files
FOR i=0 to fileNames.length() {
// transfering the file using the RETR upload/filename[i] command
getFile(fileNames[i]);
} // end FOR
// Waiting for a time period (in seconds) shorter than the time required for //
scanning the FTP account. This period depends on the BCI Link //configuration
// it is recommended to set the frequency value between 10 and 30
wait(30);
} // end LOOP
// send QUIT command
endFtpSession();
The following table lists all the FTP commands supported by the server.
FTP
Description
Command
LIST
This command causes the server to send a list. If the pathname specifies a directory or another
group of files, the server should transfer a list of files in the specified directory or group. If the
LIST pathname specifies a file, then the server should send current information on the file. A null
argument implies the user’s current working directory. The data transfer is over the data
connection in ASCII type. These data may be hard to use automatically in a program, but may
be useful to a human user.
NAME LIST
This command causes a directory listing to be sent from server to user site. The pathname
should specify a directory or other system-specific file group descriptor; a null argument implies
NLST the current directory. The server will return a stream of file names and no other information. The
data will be transferred in ASCII type over the data connection as valid pathname strings
separated by <CRLF> or <NL>. This command is intended to return information that can be
used by a program to further process the files automatically.
NO ACTION
NOOP It simply prompts the server to send an "OK" reply. This command is useful for checking that the
server is operating correctly.
PASSWORD
The argument field is a Telnet string specifying the user’s password. This command must
immediately be preceded by the USER command, and completes the user’s identification for
PASS access control. Since the password is "sensitive" information, it is preferable to "mask" it as the
user types it, and to avoid it being displayed on the screen. However, it seems that the server
has no means of preventing the password from being disclosed. It is therefore the responsibility
of FTP clients to avoid explicit storage of the password and its display.
PASSIVE
This command requests the server to "listen" on a data port and to wait for a connection rather
PASV
than initiate one upon receipt of a transfer command. The response to this command includes
the host and port address this server is listening to.
DATA PORT
The argument is a host port specification for the data port to be used in data connection. This
command and its associated responses are obligatory before transfer in active mode. The
argument is the concatenation of a fully qualified TCP/IP address, i.e. a 32-bit Internet address
PORT and a 16-bit TCP port address. This address information is divided into 8-bit fields, and the
value of each field is transmitted as a decimal number (in character string representation). The
fields are separated by commas. A PORT command is thus of the general form:
PORT h1,h2,h3,h4,p1,p2
where h1 is the high order 8 bits of the Internet host address.
LOGOUT
QUIT
This command terminates a USER session and closes the control connection.
RETRIEVE
This command causes the server to transfer a copy of the file, specified in the pathname, to the
RETR
server at the other end of the data connection. The status and contents of the file at the server
site will be unaffected.
STORE
This command causes the server to accept the data transferred via the data connection and to
STOR store the data as a file at the server site. If the file specified in the pathname exists at the server
site, then its contents will be replaced by the data being transferred. A new file is created at the
server site if the file specified in the pathname does not already exist.
SYSTEM
SYST This command is used to return the type of operating system which hosts the FTP server.
Whatever the OS, this command returns a single "UNIX" value.
TYPE
This argument specifies the type of representation for data used. This command manages a
TYPE single parameter:
I : binary transfer
A : ASCII transfer
USER NAME
This argument field is a Telnet string identifying the user. The user identifier is that which is
required by the server for access to the file system of the server host. This command will
normally be the first command transmitted by the user after the control connections are made.
USER
The password is also required by the server. The server will accept a new USER command at
any time. This cancels any reference to the user, the password and the previous account by
restarting the session opening sequence. All the transfer parameters remain unchanged and
any file transfer in progress will be completed with the old session parameters.
HELP
HELP
Returns the list of commands accepted by the server.
IMPORTANT: A connection to an FTP server for transferring data must be done with the use of a
client. The client may seemingly use a set of commands which differs from the server’s
ones; these commands are Command Aliases, a shorthand for actual commands.
Here is a list of common Command aliases contained in many Clients and their equivalents:
Below is a list of the FTP return codes with an explanation of what each means.
Code Explanation
215 Name system type. Where name is an official system name from the list in the Assigned
Numbers document.
220 Service ready for new user.
226 Closing data connection. Requested file action successful (for example, file transfer or
abort).
227 Entering Passive Mode (h1,h2,h3,h4,p1,p2).
421 Service not available, closing control connection. This may be a reply to any command if
the service knows it must shut down.
425 Can’t open data connection.
500 Syntax error, command unrecognized. This may include errors such as command line
too long.
501 Syntax error in parameters or arguments.
550 Requested action not taken. File unavailable (e.g., file not found, no access).
LOOP Describes an infinite loop, the code executed in the loop is enclosed in
brackets.
FOR var=MinValue to MaxValue Iteration on a variable var initialized at a minimum value (MinValue)
and iterated until the MaxValue (MaxValue exclusive) is reached.
The code to be executed for each iteration is enclosed in brackets.
IF condition THEN..ELSE The code enclosed in brackets which follows the THEN clause is only
executed if the condition is checked.
If the condition is not checked and an ELSE clause exists, the code
enclosed in brackets which follows the ELSE clause, is executed.
var = value Assigns a value "value" to a variable "var".
Return = function (argument1, The functions that perform operations can be defined with or without
argument2, ..) arguments and can return a value. For functions without an argument,
the syntax is MyFunction().
object.function(argument1, ..) Syntax applied to object-oriented languages. The function "function"
is applied to the object "object".
XML schema is a language used to formally describe the content of an XML message. It is
derived from the works of the W3C consortium (World Wide Web) ; all the publications
(specifications, tutorials, etc.) are available at http://www.w3.org/XML/Schema.
The following two sections describe the notation used for the declaration of XML element
types and cardinalities.
Declaration of Types
In XML schema, there is a basic difference between complex types, which allow elements in
their content and may carry attributes, and simple types which cannot have element content
and cannot carry attributes.
New complex types are defined using the complexType element and such definitions typically
contain a set of element declarations, element references, and attribute declarations. The
declarations are not themselves types, but rather an association between a name and the
constraints which govern the appearance of that name in documents governed by the
associated schema. Elements are declared using the element element and attributes are
declared using the attribute element.
For example, USAddress is defined as a complex type, and within the definition of USAddress
we see five element declarations and each element is simple type: (string or decimal):
Occurrence Constraints
An element is defined as optional by means of the value of the minOccurs attribute which is 0.
In general, an element is required to appear when the value of minOccurs is 1 or more. The
maximum number of times an element may appear is determined by the value of a maxOccurs
attribute in its declaration.
This value may be a positive integer such as 41, or the term unbounded to indicate there is no
maximum number of occurrences. The default value for both the minOccurs and maxOccurs
attributes is 1. Thus, when an element is declared without a maxOccurs attribute, the element
may not occur more than once. If both attributes are omitted, the element must appear exactly
once.
<xsd:annotation id="general">
<xsd:documentation xml:lang="en">
Definition of ASTM-XML messages beteewn LIS and bioMerieux Analysis Instruments
direction LIS -> AI: use lisMessage
direction AI -> LIS: use aiMessage
This document contains material which is confidential and proprietary of bioMerieux
SA.
</xsd:documentation>
</xsd:annotation>
<!-- *** ASTM message definition, LIS to bioMerieux Analysis System *** -->
<xsd:element name="lisMessage" type="LisMessageType"/>
<xsd:complexType name="LisMessageType">
<xsd:sequence>
<!-- ASTM chapter 7 -->
<xsd:element name="header" type="LisHeaderType"/>
<!-- ASTM chapter 8 -->
<xsd:element name="request" type="RequestRecord" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="LisHeaderType">
<xsd:sequence>
<!-- ASTM chapter 7.1.5 -->
<xsd:element name="senderName" type="StringL20" minOccurs="0"/>
<!-- ASTM chapter 7.1.12 P: Production Q: QC (for external controls), ... -->
<xsd:element name="processingIdentifier" type="processingIdentifierType"
default="P" minOccurs="0"/>
<!-- ASTM chapter 7.1.13 -->
<xsd:element name="version" type="xsd:string" fixed="1394-97"/>
<!-- ASTM chapter 7.1.14 -->
<xsd:element name="dateTime" type="AstmDateTimeType"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="RequestRecord">
<xsd:sequence>
<!-- ASTM chapter 8 -->
<xsd:element name="patientInformation" type="PatientInformationRecord"/>
<!-- ASTM chapter 9 -->
<xsd:element name="testOrder" type="LisTestOrderRecord" minOccurs="0"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PatientInformationRecord">
<xsd:all>
<!-- ASTM chapter 8.1.4 -->
<xsd:element name="patientIdentifier" type="StringL12"/>
<xsd:complexType name="LisTestOrderRecord">
<xsd:sequence>
<xsd:element name="specimen" type="SpecimenRecord"/>
<xsd:element name="test" type="TestRecord" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="SpecimenRecord">
<xsd:all>
<!-- ASTM chapter 9.4.3 -->
<xsd:element name="specimenIdentifier" type="StringL12"/>
<!-- ASTM chapter 9.4.8 -->
<xsd:element name="collectedDateTime" type="AstmDateTimeType" minOccurs="0"/>
<!-- ASTM chapter 9.4.16.1 (blood, serum, ...) -->
<xsd:element name="specimentType" type="StringL20" minOccurs="0"/>
<!-- ASTM chapter 11 -->
<xsd:element name="comment" type="commentType" minOccurs="0"/>
</xsd:all>
</xsd:complexType>
<xsd:complexType name="TestRecord">
<xsd:all>
<!-- ASTM chapter 9.4.6 Routine or Stat -->
<xsd:element name="priority" type="priorityType" minOccurs="0"/>
<!-- ASTM chapter 9.4.12 New or Re-run, if not present: N supposed to be new
request -->
<xsd:element name="actionCode" type="actionCodeType" minOccurs="0"/>
<!-- ASTM chapter 9.4.5 -->
<xsd:element name="universalIdentifier" type="universalIdentifierType"/>
<!-- ASTM chapter 9.4.25 Instrument name in case where multiple instruments are
connected with a LIS dispatching -->
<xsd:element name="instrumentSectionId" type="StringL30" minOccurs="0"/>
</xsd:all>
</xsd:complexType>
<xsd:complexType name="universalIdentifierType">
<xsd:sequence>
<!-- ASTM chapter 9.4.5 -->
<xsd:element name="testIdentifier" type="StringL4"/>
<!-- ASTM chapter 9.4.5 -->
<xsd:element name="dilution" type="IntegerFrom1To999" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="commentType">
<xsd:all>
<!-- *** ASTM message definition, bioMerieux Analysis Intrument (AI) to LIS. There is
one test per message *** -->
<xsd:element name="aiMessage" type="AIMessageType"/>
<xsd:complexType name="AIMessageType">
<xsd:sequence>
<xsd:element name="header" type="AIheaderType"/>
<xsd:element name="requestResult" type="RequestResultRecord"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="AIheaderType">
<xsd:complexContent>
<xsd:extension base="LisHeaderType">
<xsd:sequence>
<!-- ASTM chapter 7.1.5 -->
<xsd:element name="instrumentName" type="StringL30"/>
<!-- ASTM chapter 7.1.5 -->
<xsd:element name="serialNumber" type="StringL30" minOccurs="0"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="RequestResultRecord">
<xsd:sequence>
<xsd:element name="patientInformation" type="PatientInformationRecord"/>
<xsd:element name="testOrder" type="AiTestOrderRecord" minOccurs="0"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="AiTestOrderRecord">
<xsd:sequence>
<xsd:element name="specimen" type="SpecimenRecord"/>
<xsd:element name="test" type="AiTestRecord" minOccurs="0"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="AiTestRecord">
<xsd:sequence>
<!-- ASTM chapter 9.4.6 Routine or Stat -->
<xsd:element name="priority" type="priorityType" minOccurs="0"/>
<!-- ASTM chapter 9.4.12 New or Re-run, if not present: N supposed to be new
request -->
<xsd:element name="actionCode" type="actionCodeType" minOccurs="0"/>
<!-- ASTM chapter 9.4.5 -->
<xsd:element name="universalIdentifier" type="completeUniversalIdentifierType"/
>
<!-- For both qualitative and qualitative results for a test, we have two result
records -->
<xsd:element name="result" type="resultRecord" minOccurs="1"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="resultRecord">
<xsd:sequence>
<!-- ASTM chapter 10.1.4 - Used for qualitative and quantitative results
included results out of detection ranges such as < min_limit or > max_limit -->
<xsd:element name="value" type="xsd:string"/>
<!-- ASTM chapter 10.1.5 -->
<xsd:element name="unit" type="StringL30" minOccurs="0"/>
<!-- ASTM chapter 10.1.6 - Reference ranges Don't use today -->
<xsd:element name="range" type="thresholdType" minOccurs="0"/>
<!-- ASTM chapter 10.1.7 - May a list, sorted by priority, the complete list is
defined in the manual - not checked at this level -->
<xsd:element name="abnormalFlags" type="StringL8" minOccurs="0"
maxOccurs="unbounded"/>
<!-- ASTM chapter 10.1.9 -->
<xsd:element name="resultStatus" type="resultStatusType" minOccurs="0"
default="F"/>
<!-- ASTM chapter 10.1.11 -->
<xsd:element name="operatorName" type="StringL20" minOccurs="0"/>
<!-- ASTM chapter 10.1.13 -->
<xsd:element name="resultDateTime" type="AstmDateTimeType"/>
<!-- ASTM chapter 15 -->
<xsd:element name="bmxResultData" type="ManufacturerInformationRecord"
minOccurs="0"/>
<!-- ASTM chapter 11 -->
<xsd:element name="comment" type="commentType" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ManufacturerInformationRecord">
<xsd:sequence>
<!-- tube, cuvette, ... -->
<xsd:element name="containerType" type="StringL20" minOccurs="0"/>
<!-- reagent kit lot taken for the test -->
<xsd:element name="disposable" type="DisposableType" minOccurs="0"
maxOccurs="unbounded"/>
<!-- thresholds for the bMx controls -->
<xsd:element name="controlThresholdUnit" type="StringL30" minOccurs="0"/>
<xsd:element name="controlThresholdMinValue" type="StringL20" minOccurs="0"/>
<xsd:element name="controlThresholdMaxValue" type="StringL20" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="DisposableType">
<xsd:all>
<!-- disposable reference or identifier -->
<xsd:element name="reference" type="StringL20" minOccurs="0"/>
<!-- disposable lot number -->
<xsd:element name="lotNumber" type="StringL20" minOccurs="0"/>
</xsd:all>
</xsd:complexType>
<!-- ******** Simple types used in the ASTM XML schema******** -->
<xsd:enumeration value="I"/>
<xsd:enumeration value="S"/>
<xsd:enumeration value="M"/>
<xsd:enumeration value="R"/>
<xsd:enumeration value="N"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:maxLength value="2"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL4">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL5">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="5"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL8">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="8"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL12">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="12"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL20">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="20"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL29">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="29"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL30">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="30"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL40">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="40"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL100">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="100"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>
<xsd:annotation id="general">
<xsd:documentation xml:lang="en">
Definition of ASTM-XML messages beteewn LIS and bioMerieux Analysis Instruments
direction LIS -> AI: use lisMessage
direction AI -> LIS: use aiMessage
This document contains material which is confidential and proprietary of bioMerieux
SA.
</xsd:documentation>
</xsd:annotation>
<!-- *** ASTM message definition, LIS to bioMerieux Analysis System *** -->
<xsd:element name="lisMessage" type="LisMessageType"/>
<xsd:complexType name="LisMessageType">
<xsd:sequence>
<!-- ASTM chapter 7 -->
<xsd:element name="header" type="LisHeaderType"/>
<!-- ASTM chapter 8 -->
<xsd:element name="request" type="RequestRecord" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="LisHeaderType">
<xsd:sequence>
<!-- ASTM chapter 7.1.5 -->
<xsd:element name="senderName" type="StringL20" minOccurs="0"/>
<!-- ASTM chapter 7.1.12 P: Production Q: QC (for external controls), ... -->
<xsd:element name="processingIdentifier" type="processingIdentifierType"
default="P" minOccurs="0"/>
<!-- ASTM chapter 7.1.13 -->
<xsd:element name="version" type="xsd:string" fixed="1394-97"/>
<!-- ASTM chapter 7.1.14 -->
<xsd:element name="dateTime" type="AstmDateTimeType"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="RequestRecord">
<xsd:sequence>
<!-- ASTM chapter 8 -->
<xsd:element name="patientInformation" type="PatientInformationRecord"/>
<!-- ASTM chapter 9 -->
<xsd:element name="testOrder" type="LisTestOrderRecord" minOccurs="0"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PatientInformationRecord">
<xsd:all>
<xsd:complexType name="LisTestOrderRecord">
<xsd:sequence>
<xsd:element name="specimen" type="SpecimenRecord"/>
<xsd:element name="test" type="TestRecord" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="SpecimenRecord">
<xsd:all>
<!-- ASTM chapter 9.4.3 -->
<xsd:element name="specimenIdentifier" type="StringL17"/>
<!-- ASTM chapter 9.4.8 -->
<xsd:element name="collectedDateTime" type="AstmDateTimeType" minOccurs="0"/>
<!-- ASTM chapter 9.4.16.1 (blood, serum, ...) -->
<xsd:element name="specimentType" type="StringL30" minOccurs="0"/>
<!-- ASTM chapter 9.4.14 Additional information about the sample -->
<xsd:element name="relevantClinicalInformation" type="xsd:string"
minOccurs="0"/>
<!-- ASTM chapter 11 -->
<xsd:element name="comment" type="commentType" minOccurs="0"/>
</xsd:all>
</xsd:complexType>
<xsd:complexType name="TestRecord">
<xsd:all>
<!-- ASTM chapter 9.4.6 Routine or Stat -->
<xsd:element name="priority" type="priorityType" minOccurs="0"/>
<!-- ASTM chapter 9.4.12 New or Re-run, if not present: N supposed to be new
request -->
<xsd:element name="actionCode" type="actionCodeType" minOccurs="0"/>
<!-- ASTM chapter 9.4.5 -->
<xsd:element name="universalIdentifier" type="universalIdentifierType"/>
<!-- ASTM chapter 9.4.25 Instrument name in case where multiple instruments are
connected with a LIS dispatching -->
<xsd:element name="instrumentSectionId" type="StringL30" minOccurs="0"/>
</xsd:all>
</xsd:complexType>
<xsd:complexType name="universalIdentifierType">
<xsd:sequence>
<!-- ASTM chapter 9.4.5 -->
<xsd:element name="testIdentifier" type="StringL4"/>
<!-- ASTM chapter 9.4.5 -->
<xsd:element name="dilution" type="IntegerFrom1To9999" minOccurs="0"/>
</xsd:complexType>
<xsd:complexType name="commentType">
<xsd:all>
<!-- ASTM chapter 11.1.3 -->
<xsd:element name="source" type="commentSourceType"/>
<!-- ASTM chapter 11.1.4 -->
<xsd:element name="text" type="StringL280"/>
<!-- ASTM chapter 11.1.5 -->
<xsd:element name="type" type="xsd:string" fixed="G"/>
</xsd:all>
</xsd:complexType>
<!-- *** ASTM message definition, bioMerieux Analysis Intrument (AI) to LIS. There is
one test per message *** -->
<xsd:element name="aiMessage" type="AIMessageType"/>
<xsd:complexType name="AIMessageType">
<xsd:sequence>
<xsd:element name="header" type="AIheaderType"/>
<xsd:element name="requestResult" type="RequestResultRecord"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="AIheaderType">
<xsd:complexContent>
<xsd:extension base="LisHeaderType">
<xsd:sequence>
<!-- ASTM chapter 7.1.5 -->
<xsd:element name="instrumentName" type="StringL30"/>
<!-- ASTM chapter 7.1.5 -->
<xsd:element name="serialNumber" type="StringL30" minOccurs="0"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="RequestResultRecord">
<xsd:sequence>
<xsd:element name="patientInformation" type="PatientInformationRecord"/>
<xsd:element name="testOrder" type="AiTestOrderRecord" minOccurs="0"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="AiTestOrderRecord">
<xsd:sequence>
<xsd:element name="specimen" type="SpecimenRecord"/>
<xsd:element name="test" type="AiTestRecord" minOccurs="0"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="AiTestRecord">
<xsd:sequence>
<!-- ASTM chapter 9.4.6 Routine or Stat -->
<xsd:element name="priority" type="priorityType" minOccurs="0"/>
<!-- ASTM chapter 9.4.12 New or Re-run, if not present: N supposed to be new
request -->
<xsd:element name="actionCode" type="actionCodeType" minOccurs="0"/>
<!-- ASTM chapter 9.4.5 -->
<xsd:element name="universalIdentifier" type="completeUniversalIdentifierType"/
>
<!-- For both qualitative and qualitative results for a test, we have two result
records -->
<xsd:element name="result" type="resultRecord" minOccurs="1"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="resultRecord">
<xsd:sequence>
<!-- ASTM chapter 10.1.4 - Used for qualitative and quantitative results
included results out of detection ranges such as < min_limit or > max_limit -->
<xsd:element name="value" type="xsd:string"/>
<!-- ASTM chapter 10.1.5 -->
<xsd:element name="unit" type="StringL30" minOccurs="0"/>
<!-- ASTM chapter 10.1.6 - Reference ranges Don't use today -->
<xsd:element name="range" type="thresholdType" minOccurs="0"/>
<!-- ASTM chapter 10.1.7 - May a list, sorted by priority, the complete list is
defined in the manual - not checked at this level -->
<xsd:element name="abnormalFlags" type="StringL8" minOccurs="0"
maxOccurs="unbounded"/>
<!-- ASTM chapter 10.1.9 -->
<xsd:element name="resultStatus" type="resultStatusType" minOccurs="0"
default="F"/>
<!-- ASTM chapter 10.1.11 -->
<xsd:element name="operatorName" type="StringL20" minOccurs="0"/>
<!-- ASTM chapter 10.1.12 -->
<xsd:element name="startDateTime" type="AstmDateTimeType" minOccurs="0"/>
<!-- ASTM chapter 10.1.13 -->
<xsd:element name="resultDateTime" type="AstmDateTimeType"/>
<!-- ASTM chapter 15 -->
<xsd:element name="bmxResultData" type="ManufacturerInformationRecord"
minOccurs="0"/>
<!-- ASTM chapter 11 -->
<xsd:element name="comment" type="commentType" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ManufacturerInformationRecord">
<xsd:sequence>
<!-- tube, cuvette, ... -->
<xsd:element name="containerType" type="StringL20" minOccurs="0"/>
<!-- reagent kit lot taken for the test -->
<xsd:element name="disposable" type="DisposableType" minOccurs="0"
maxOccurs="unbounded"/>
<!-- Extra data about the result (eg. raw data, intermediate results,
etc.) -->
<xsd:element name="extraResultData" type="xsd:string" minOccurs="0"/>
<!-- thresholds for the bMx controls -->
<xsd:element name="controlThresholdUnit" type="StringL30" minOccurs="0"/>
<xsd:element name="controlThresholdMinValue" type="StringL20" minOccurs="0"/>
<xsd:element name="controlThresholdMaxValue" type="StringL20" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="DisposableType">
<xsd:all>
<!-- disposable reference or identifier -->
<xsd:element name="reference" type="StringL40" minOccurs="0"/>
<!-- disposable type (Card, Vial, etc) -->
<xsd:element name="disposableType" type="StringL40" minOccurs="0"/>
<!-- disposable lot number -->
<xsd:element name="lotNumber" type="StringL40" minOccurs="0"/>
<!-- dispodable expiration date -->
<xsd:element name="expirationDate" type="AstmDateType" minOccurs="0"/>
</xsd:all>
</xsd:complexType>
<!-- ******** Simple types used in the ASTM XML schema******** -->
<!-- S: STAT
R: Routine -->
<xsd:simpleType name="priorityType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="S"/>
<xsd:enumeration value="R"/>
</xsd:restriction>
</xsd:simpleType>
<!-- U: unknown
M: Male
F: Female -->
<xsd:simpleType name="sexType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="U"/>
<xsd:enumeration value="M"/>
<xsd:enumeration value="F"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL4">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL5">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="5"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL6">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="6"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL8">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="8"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL17">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="17"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL20">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="20"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL29">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="29"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL30">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="30"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL40">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="40"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL100">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="100"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="StringL280">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="280"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>
Message Structure
LIS Message
This message is sent by the LIS to the VIDAS® range system and contains one or several
analysis request(s) to be performed.
AI Message
This message is sent by the VIDAS® range system to the LIS to report one or more result(s).
Data Types
The table below lists all the possible fields with their associated characteristics. It applies to
both VIDAS® PC and VIDAS® 3 unless otherwise specified.
In this table:
Mandatory fields:
• In download (LIS to AI) that means that we expect these fields to be present.
• In upload (AI to LIS) that means that the fields will always be present.
Default value = P
Optional
Note: As it is an
optional field, no
alarm management
is done on this
field.
Optional Mandatory
InstrumentName • Type: StringL30 Name of the workstation (hostname)
on which the message has been built
Mandatory only for AI messages (typically “BMXHOST1” for
VIDAS® PC and “VIDAS3PC01” for
VIDAS® 3).
serialNumber • Type: StringL30 Serial number of the instrument used
to perform the analysis.
Optional
On VIDAS® PC, this value is filled in
the configuration.
Optional
Default value = U
Optional
Result Data
value • Type: String It corresponds to the TV or dose.
• Structure: The decimal separator is always the
dot.
<prefix> + <number> + “|” +
<interpretation>
The interpretation, if any, is always
where:
separated by a “I” character.
<prefix> may be the “<”, “>”
character or empty.
The “I” separator is mandatory.
<number> is a number
<interpretation> corresponds to
the result interpretation and is
optional.
Mandatory
unit • Type: StringL30
Optional
Optional
AbnormalFlags VIDAS® 3 ONLY Additional flags associated to the
result.
• Type: StringL8
• Value: see VIDAS® 3 Flags on Important: the VIDAS® PC system
page B-8 for detailed does NOT support this attribute.
information about possible
values
Optional
Default value = F
Optional
OperatorName • Type: StringL20 Name of the operator logged when
the result is computed.
Optional
ResultDateTime • Type: Date/Time Date/Time of the result
• Format: yyyyMMddHHmmss
Optional
Manufacturer Data
reference • Type: StringL40 Disposable ID (i.e. barcode of a strip,
spr or diluent involved in the test
Optional result).
Optional
lotNumber • Type: StringL40 Lot number of the strip, spr or diluent
involved in the test result.
Optional
A value is always returned.
Optional
IMPORTANT: By default, all messages are compatible with all the systems in the VIDAS® range,
except if specified otherwise.
Note: The result value is a code which is not translated except for Chinese.
Note: The <InstrumentSectionId> indicates the instrument ID towards which the analysis request
must be sent.
Particular Cases
Quantitative Result
Qualitative Result
File: result_qualitative.xml
<test>
<actionCode>N</actionCode>
<universalIdentifier>
<testIdentifier>RBM</testIdentifier>
<dilution>1</dilution>
<testName>RUB IgM</testName>
</universalIdentifier>
<result>
<value>15.90|POSITIVE</value>
<abnormalFlags>valid</abnormalFlags>
<resultStatus>F</resultStatus>
<operatorName>vidas</operatorName>
<resultDateTime>20110311163131</resultDateTime>
</result>
</test>
Particular Cases
Invalid Results
This message is the type of message returned by the system when a request has not been
taken in account (rejected request).
File: result_invalid_invalid_request.xml
<requestResult>
<test>
<actionCode>N</actionCode>
<universalIdentifier>
<testIdentifier>TES</testIdentifier>
<dilution>1</dilution>
</universalIdentifier>
<result>
<value>|</value>
<resultStatus>X</resultStatus>
<resultDateTime>20110311090845</resultDateTime>
</result>
</test>
</requestResult>
This message is the type of message returned by the system when a result has not been
computed (for any reason, invalid reading, no calibration, etc.)
File: result_INVALID_no_result.xml
<test>
<actionCode>N</actionCode>
<universalIdentifier>
<testIdentifier>RBM</testIdentifier>
<dilution>1</dilution>
<testName>RUB IgM</testName>
</universalIdentifier>
<result>
<value>INVALID|INVALID</value>
<abnormalFlags>conthnor</abnormalFlags>
<resultStatus>X</resultStatus>
<operatorName>vidas</operatorName>
<resultDateTime>20110312094359</resultDateTime>
</result>
</test>
<test>
<actionCode>N</actionCode>
<universalIdentifier>
<testIdentifier>TXGA</testIdentifier>
<dilution>1</dilution>
<testName>TOXO IgG Avidity</testName>
</universalIdentifier>
<result>
<value>1.003|HIGH</value>
<abnormalFlags>conthnor</abnormalFlags>
<resultStatus>F</resultStatus>
<operatorName>db2bmx</operatorName>
<resultDateTime>20131023150758</resultDateTime>
</result>
</test>
For results made of multiple sub-results and global results (such as HIV5), several results are
uploaded to the LIS.
File: result_hiv5_line1.xml
<test>
<actionCode>N</actionCode>
<universalIdentifier>
<testIdentifier>HIV5</testIdentifier>
<dilution>1</dilution>
<testName>HIV DUO Ultra</testName>
</universalIdentifier>
<result>
<value>|POSITIVE</value>
<abnormalFlags>conthnor</abnormalFlags>
<resultStatus>F</resultStatus>
<operatorName>vidas</operatorName>
<resultDateTime>20131023150758</resultDateTime>
</result>
</test>
File: result_hiv5_line2.xml
<test>
<actionCode>N</actionCode>
<universalIdentifier>
<testIdentifier>AB</testIdentifier>
<dilution>1</dilution>
<testName>HIV DUO Ultra</testName>
</universalIdentifier>
<result>
<value>1.47|POSITIVE</value>
<abnormalFlags>conthnor</abnormalFlags>
<resultStatus>F</resultStatus>
<operatorName>vidas</operatorName>
<resultDateTime>20131023150758</resultDateTime>
</result>
</test>
File: result_hiv5_line3.xml
<test>
<actionCode>N</actionCode>
<universalIdentifier>
<testIdentifier>AG</testIdentifier>
<dilution>1</dilution>
<testName>HIV DUO Ultra</testName>
</universalIdentifier>
<result>
<value>ND|POSITIVE</value>
<abnormalFlags>conthnor</abnormalFlags>
<resultStatus>F</resultStatus>
<operatorName>vidas</operatorName>
<resultDateTime>20131023150758</resultDateTime>
</result>
</test>
For results made of multiple sub-results without global results (such as DUOLIS), each sub-
results are uploaded to the LIS.
File: result_lduo_line1.xml
<test>
<actionCode>N</actionCode>
<universalIdentifier>
<testIdentifier>DLMO</testIdentifier>
<dilution>1</dilution>
<testName>DUO Listeria monocytogenes</testName>
</universalIdentifier>
<result>
<value>0.03|NEGATIVE</value>
<abnormalFlags>calinc</abnormalFlags>
<resultStatus>F</resultStatus>
<operatorName>vidas</operatorName>
<resultDateTime>20110312095408</resultDateTime>
</result>
</test>
File: result_lduo_line2.xml
<test>
<actionCode>N</actionCode>
<universalIdentifier>
<testIdentifier>DLIS</testIdentifier>
<dilution>1</dilution>
<testName>DUO Listeria spp</testName>
</universalIdentifier>
<result>
<value>0.15|POSITIVE</value>
<abnormalFlags>calinc</abnormalFlags>
<resultStatus>F</resultStatus>
<operatorName>vidas</operatorName>
<resultDateTime>20110312095408</resultDateTime>
</result>
</test>
This happens when the second abnormalFlags configuration field is checked to send more
result flags to LIS.
<test>
<actionCode>N</actionCode>
<universalIdentifier>
<testIdentifier>RBM</testIdentifier>
<dilution>1</dilution>
<testName>RUB IgM</testName>
</universalIdentifier>
<result>
<value>15.90|POSITIVE</value>
<abnormalFlags>valid</abnormalFlags>
<abnormalFlags>manpipet</abnormalFlags>
<abnormalFlags>cabspr</abnormalFlags>
<abnormalFlags>cabstrip</abnormalFlags>
<abnormalFlags>stabexp</abnormalFlags>
<resultStatus>F</resultStatus>
<operatorName>vidas</operatorName>
<resultDateTime>20110311163131</resultDateTime>
</result>
</test>
bcinet.dummyfile.ftp.name=bmx_000000_000000_0.xml
bcinet.dummyfile.ftp.content=dummy message
bcinet.dummyfile.rs232.name=bmx_000000_000000_0
bcinet.dummyfile.rs232.content=mtbis
According to the selected interface, the message content is defined by the content
parameter.
Note: For more information about test messages, refer to BCI Link User Manual, ref. 4501-2122.
In simplified demography mode, the “lastname” and “patientIdentifier” fields take the value of
the “specimenIdentifier”.
<result>
<value>23.53|</value>
<unit>ug/l</unit>
<abnormalFlags>valid</abnormalFlags>
<resultStatus>F</resultStatus>
<operatorName>vidas</operatorName>
<resultDateTime>20130513094816</resultDateTime>
<bmxResultData>
<disposable>
<reference>CPODK1</reference>
<disposableType>VIDAS_SPR</disposableType>
<lotNumber>CPO</lotNumber>
<expirationDate>20140210</expirationDate>
</disposable>
<disposable>
<reference>C6PNB1AP2</reference>
<disposableType>VIDAS_STRIP</disposableType>
<lotNumber>140210-0</lotNumber>
<expirationDate>20140210</expirationDate>
</disposable>
</bmxResultData>
</result>
<result>
<value>21.43|</value>
<unit>mUI/ml</unit>
<abnormalFlags>valid</abnormalFlags>
<resultStatus>F</resultStatus>
<operatorName>vidas</operatorName>
<resultDateTime>20130513113805</resultDateTime>
<bmxResultData>
<disposable>
<reference>CPRK9F</reference>
<disposableType>VIDAS_SPR</disposableType>
<lotNumber>CPR</lotNumber>
<expirationDate>20140204</expirationDate>
</disposable>
<disposable>
<reference>C7JZO14PG</reference>
<disposableType>VIDAS_STRIP</disposableType>
<lotNumber>140204-0</lotNumber>
<expirationDate>20140204</expirationDate>
</disposable>
<disposable>
<reference>1047940</reference>
<disposableType>VIDAS_PRETREATMENT_REAGENT</disposableType>
<lotNumber>1047940</lotNumber>
<expirationDate>20140204</expirationDate>
</disposable>
</bmxResultData>
</result>
</patientInformation>
<testOrder>
<specimen>
<specimenIdentifier>0130319</specimenIdentifier>
</specimen>
<test>
<actionCode>N</actionCode>
<universalIdentifier>
<testIdentifier>T3</testIdentifier>
<dilution>2</dilution>
<testName>T3</testName>
</universalIdentifier>
<result>
<value>5.67|</value>
<unit>nmol/l</unit>
<abnormalFlags>valid</abnormalFlags>
<resultStatus>F</resultStatus>
<operatorName>vidas</operatorName>
<resultDateTime>20130514115809</resultDateTime>
<bmxResultData>
<disposable>
<reference>CSQIUJ</reference>
<disposableType>VIDAS_SPR</disposableType>
<lotNumber>CSQ</lotNumber>
<expirationDate>20140226</expirationDate>
</disposable>
<disposable>
<reference>ANCPV1QP5</reference>
<disposableType>VIDAS_STRIP</disposableType>
<lotNumber>140226-0</lotNumber>
<expirationDate>20140226</expirationDate>
</disposable>
<disposable>
<reference>20121114-1</reference>
<disposableType>VIDAS_DILUANT</disposableType>
<lotNumber>20121114-1</lotNumber>
<expirationDate>20131114</expirationDate>
</disposable>
<disposable>
<reference>0000404165</reference>
<disposableType>VIDAS_DILUTION_CUPS</disposableType>
<lotNumber>0004</lotNumber>
</disposable>
</bmxResultData>
</result>
</test>
</testOrder>
</requestResult>
</aiMessage>
<result>
<value>INVALID|INVALID</value>
<unit>ug/l</unit>
<abnormalFlags>valid</abnormalFlags>
<resultStatus>X</resultStatus>
<operatorName>vidas</operatorName>
<resultDateTime>20130514170904</resultDateTime>
<bmxResultData>
<disposable>
<reference>?</reference>
<disposableType>VIDAS_SPR</disposableType>
<expirationDate>20140210</expirationDate>
</disposable>
<disposable>
<reference>C6PLN1AP</reference>
<disposableType>VIDAS_STRIP</disposableType>
<lotNumber>140210-0</lotNumber>
<expirationDate>20140210</expirationDate>
</disposable>
<disposable>
<reference>1046100</reference>
<disposableType>VIDAS_PRETREATMENT_REAGENT</disposableType>
<lotNumber>1046100</lotNumber>
<expirationDate>20140210</expirationDate>
</disposable>
</bmxResultData>
</result>
• Error: the error is displayed in the system user interface, that is to say that the user is
notified about the problem.
Note: The exact error code and severity level (red/orange) of each alarm are not described here.
Refer to the BCI Link User Manual, ref. 4501-2122, for more detailed information.
• Log: the error is traced in the log file for BCI but the user is NOT notified about the problem.
The tables below sum up the software behavior while receiving invalid analysis request from
the BCI.
Duplication Management
Duplication case 1:
A request comes from the LIS with a known patient ID but with a name and/or sex and/
or birth date different from those stored in the database.
• Update the demography with the information received from the LIS.
• Keep the demography as it is.
In all cases, a log is created and patient data changes are traced:
Duplication case 2:
A request comes from the LIS with a sample ID that is in the job list or has been used in
the day.
Note: A sample ID represents a unique sample if it has been created/edited either the current day or
the day before (i.e. in the last 24 hours till the end of the day) or if it is present in the job list.
In case of modification of the sample data, the data will be updated without any user
notification. No new sample will be created.
In case of modification of the patient ID associated to the sample, the request is rejected if the
sample has already been computed. If it has not been computed yet, the user is notified and
has to choose between:
• Update the patient ID with the information received from the LIS
• Keep the patient ID as it is (If a result has already been obtained, the request is refused)
In all the cases, a log is created and patient ID changes are traced:
Duplication case 3:
A request comes from the LIS with a sample ID and test and dilution that already exist.
Duplication case 4:
A request comes from the LIS with a known sample ID and update of the sample origin
data.
Duplication case 5:
A request comes from the LIS with a known sample ID and update of the patient name
data.
Duplication case 6:
Same request comes twice from the LIS.
Duplication case 7:
A request comes from the LIS with a sample ID, patient ID, patient name, test and
sample origin data that already exist BUT with different dilution value and/or different
test.
Purpose
This installation procedure describes the standalone installation for the BCI Simulators
product, version 4.0.0.
This procedure is intended for use by bioMérieux representatives and partner computer
companies who are responsible for developing connections.
• Targets:
BCI Simulator runs on Windows XP SP1 and higher.
• Restrictions:
Depending on the selected Windows display, some graphical widgets of BCI LINK may not
display properly. In this case, go back to the original Windows display:
1. Right-click on your desktop.
2. Select Properties.
3. Activate the Appearance tab.
4. From the Windows and Buttons menu, select Windows Classic.
5. Click OK.
The following table describes the content of the BCI Simulators components
(BCI SIMULATORS R2.Ø.ØX.X.X directory).
General Description
As a convention, in this document the notation “[…]” is used to designate the disk defined for
installing the software (e.g. “C:\” or “D:\”) and “M:” is used to designate the CD or DVD drive.
IMPORTANT: When installing the BCI Simulators master, all the data located in the "BCI Simulators"
directory will be erased (ex: worklist, results...).
4. Click Next.
The following Environment Variables Configuration screen is displayed.
5. Check that the Nameservice port is set to 29000 and click Next.
The Ready to install screen is displayed.
6. Click Install.
The installation starts automatically. The progress bar is displayed.
Preliminary Steps
Note: Before starting an uninstallation procedure, log in as administrator or use a login with
appropriate authorizations on the computer.
• LIS FTP simulator only: BCI LINK is connected to one or more bioMérieux systems and to
the LIS simulator. This configuration is used to test communication between BCI LINK and a
bioMérieux AI without connecting to a client LIS (a LIS FTP simulator is used).
• LIS RS232 simulator only: BCI LINK is connected to a bioMérieux system and to the LIS
simulator. This configuration is used to test communication between BCI LINK and a
bioMérieux AI without connecting to a client LIS (a LIS RS232 simulator is used).
• LIS ASTM simulator only: BCI LINK is connected to a bioMérieux system and to the LIS
simulator. This configuration is used to test communication between BCI LINK and a
bioMérieux AI without connecting to a client LIS (a LIS ASTM simulator is used).
• AI simulator only: BCI is connected to the client LIS and to one or more AI simulators
(connection of several AI is only supported by BCI LINK). This configuration is used to test
communication between a BCI product and the LIS without connecting to a bioMérieux AI (an
instrument simulator is used).
• LIS simulator (RS232 or FTP) and AI simulator: A BCI is connected to an LIS simulator and
to one or more AI simulators. This configuration enables the use of BCI LINK, outside an
operating context. The latter configuration is only used for training or support on the BCI
products.
IMPORTANT: The BCI Simulator software requires a minimum screen resolution of 800 x 600 pixels.
Note: To run the BCI Simulators, use the shortcut created by the installation program or run \BCI
Simulators\bin\run.wsf.
User Interface
4
3
5 6
1 — The navigation bar consists of four icons which respectively give access to the LIS
RS232 simulator, the LIS ASTM simulator, the LIS FTP simulator and the AI simulator
(refer to the corresponding sections for more information about the functionalities of the
different simulators).
Note:The LIS ASTM simulator is not used in the VIDAS® Range
2 — The sub-navigation bar gives access to all the functionalities linked with the simulator
selected in the navigation bar.
3 — The action bar offers possible actions for the selected functionality.
4 — The work area.
5 — The clock gives the date and time of the system.
6 — The information area displays the name and version of the software.
The LIS RS232 simulator is used to produce analysis requests in different formats,
transmit them to BCI Link, and receive results from bioMérieux analysis
instruments.
This simulator has the following functionalities:
Management of analysis requests in the "bioMérieux" format:
an editor is used to create, save, edit and transmit analysis
requests in the bioMérieux format. It includes data entry help tools,
and ensures a syntactic and semantic control of any errors
contained in the messages edited.
Management of "text" messages: an editor is used to create,
save, edit and transmit analysis requests in a free format called
“text” format.
Supervision of the communication: for real time monitoring of
data interchange between the simulator and the BCI Link.
LIS connection, which is used to configure the RS232 connection
(configuration of the serial connection and the protocol used).
The LIS ASTM simulator is used to produce analysis requests without format
constraints (free editing), transmit them to BCI Link and receive results from
bioMérieux analysis instruments.
This simulator has the following functionalities:
Management of "ASTM" messages: an editor is used to create,
save, edit and transmit analysis requests in an ASTM E1394
format.
Management of "text" messages: an editor is used to create,
save, edit and transmit analysis requests in a free format called
“text” format.
Supervision of the communication: for real time monitoring of
data interchange between the simulator and the BCI Link.
LIS connection, which is used to configure the protocol type and
the TCP/IP information.
The LIS FTP simulator is used to produce analysis requests in different formats,
transmit them to BCI Link, and receive results from bioMérieux analysis
instruments.
This simulator has the following functionalities:
Management of analysis requests in "ASTM-XML" format: an
editor is used to create, save, edit and transmit analysis requests in
the ASTM-XML format. It includes data entry help tools, and
ensures a syntactic and semantic control of any errors contained in
the messages edited.
Management of "text" messages: an editor is used to create,
save, edit and transmit analysis requests in a free format called
“text” format.
Reception of results sent by BCI Link: this is used to view the list
of results available in the "upload" directory, and to locally download
them to the LIS simulator.
LIS connection: this is used to view connection parameters and
test the corresponding connection. A window enables FTP errors to
be viewed if the connection fails.
The AI simulator is used to receive analysis requests from BCI Link, elaborate
results in different formats using analysis requests received, and transmits the
results to BCI.
This simulator has the following functionalities:
Management of analysis requests in "ASTM-XML" format: an
editor is used to create, save, edit and transmit analysis requests in
the ASTM-XML format. It includes data entry help tools, and
ensures a syntactic and semantic control of any errors contained in
the messages edited.
Management of "text" messages: an editor is used to create,
save, edit and transmit results in a free format called “text” format.
Management of results in the "bioMérieux" format: an editor is
used to create, save, edit and transmit results in the bioMérieux
format. It includes data entry help tools, and ensures a syntactic
and semantic control of any errors contained in the messages
edited.
Management of AI sessions: this enables you to close an analysis
instrument/BCI Link session.
Receipt of analysis requests from BCI: analysis requests transmitted by BCI are
automatically stored locally on the simulator.
Setting Parameters for the RS232 Connection (serial port and protocol)
To define parameters for a BCI RS232 or BCI Link connection when communication is
stopped:
2. Select the Protocol you want to use in the corresponding drop-down list.
3. Define the parameters of the Serial Port based on the selected configuration.
Note: The serial port to be set is the one used on BCI Simulators host computer.
IMPORTANT: The new configuration must be saved before communication is started since the
software takes into account the saved configuration and not the configuration
displayed on the screen.
The parameters of the LIS simulator in ASCII format are automatically exported during the
save. The export file is located in: \config\configuration.bmx.txt.
The simulator offers the 3 bMx communication protocols used for BCI RS232 or BCI Link:
The simulator has an additional option called Protocol mode which is used to define the type
of transmission. Single session mode is used to transmit the application messages in a
single session (a single ENQ..EOT sequence). Multiple session mode is used to send one
ENQ..EOT sequence per application message.
- Literal: <GS>xx<ACK><ETX><EOT>
Restrictions of the serial driver: The connection driver under Windows does not support the
following configurations:
• Off: the server has not been started. Communication with the host computer is not
possible.
• Is ready: communication has started but there is no data interchange.
• Is downloading: data are being sent by the simulator.
• Is uploading: data are being sent by the host computer.
• Out of order: an error has occurred with the server.
Note: A common error is the use of a serial port that is already being used for another application
(make sure you follow the procedure described in the Setting Parameters for the RS232
Connection (serial port and protocol) section on page 14-1.
Selecting a Protocol
To use one of the protocols in the list of bioMérieux protocols, proceed as follows:
1. From the configuration screen, select the protocol you want on the configuration screen
(refer to the Setting Parameters for the RS232 Connection (serial port and
protocol) section on page 14-1).
2. Check that the parameters for this protocol are correct. If not, modify the values as
required and save the configuration so that it is taken into account.
3. Stop the communication server if necessary, and then restart it to take into account
selection of the new protocol. This is done using the supervision screen (refer to the
Starting/Stopping the RS232 Communication Server section on page 14-4).
4. Check the status of the server on the supervision screen (Status: "Is ready").
Note: For the literal alternate and literal bioMérieux protocols, you can define the size of the <RS>
and <STX>..<ETX> blocks which, by default, are 80 and 1920 respectively.
The messages.properties file allows you to modify these values:
# record max length and application message max length
bmx_messages.max_block_size=1920
bmx_messages.max_record_size=80
Communication Supervision
1 4
2 3
Figure 14-3: Supervision Screen Display
Note: You may need to increase the delays and time out (refer to the Setting Parameters for the
RS232 Connection (serial port and protocol) section on page 14-1).
4 — Data associated with a control character. If the message is longer than the line
displayed, three suspension points are added to the end of the line and the complete
message appears in a popup window when the mouse is moved along the line.
Two other types of messages are displayed in this field:
- End communication: indicates that transmission or reception of a message is
completed.
IMPORTANT: This action does not delete tracking data contained in the log file (refer to the Archiving
Communication Tracking Data section below).
The manual protocol is used to manually send control characters and data to the system
hosting BCI RS232 or BCI Link and execute the command sequences using script files. It is
used in particular to send erroneous messages.
To access these functionalities, select the "bioMérieux manual" protocol (refer to the
Selecting a Protocol section on page 14-5).
Commands and scripts are executed using the supervision screen. When the communication
server is started using the "bioMérieux manual" protocol, the supervision screen offers:
• A virtual on-screen keyboard which is used to send the commands available in the
bioMérieux protocols (literal or literal alternate protocol),
• Two active action icons: one for loading a script file and the other for executing the loaded
script.
2
4
5
3
1 — Script name.
2 — Communication tracking data window.
3 — Virtual on-screen keyboard.
4 — Load script icon.
5 — Run script icon.
• Click on the character to be transmitted which will then be displayed in the communication
tracking data window.
The computer hosting BCI Link can now respond, and the response will be displayed in the
tracking data window.
Checksum management
Checksum management is automatic. Checksum calculation starts when the first <RS> is sent
and ends when the <GS> is sent. The calculated value is automatically transmitted when you
click the GS button.
• Activate the Faulty checksum option. This option transmits the value "00" after the <GS>
control is sent.
To do so:
Note: If there is no file or if the file does not contain any data, the <RS> command is sent without
data.
Creating Scripts
A script is a series of tasks which are used to send commands and manage the BCI RS232 or
BCI Link host responses.
The simulator does not have a script editor. Statements are defined using a text editor such as
Notepad. You are informed of any syntactic or semantic errors when the script is executed.
name: myCommandName, This command is used to check that control NAME: command name. It
receive: Control, goto: character and indicate the task to be must be defined and unique
commandName. performed if the control received is not the for the complete script.
expected control. RECEIVE: control expected
For example, the following command: by the LIS host, Simulators
name: cmd2 receive: ACK goto: host or BCI Link host.
cmd1
indicates that reception of an "ACK" control
is expected. If the simulator receives an
ACK, it moves on to the next task, otherwise
it executes the task whose name is
indicated by the statement "goto:" and
continues performing the task from this line.
Executing Scripts
To execute a script, proceed as follows:
1. Click to load the text file containing the script you want to execute.
The Loaded script file name is displayed in the message bar above the communication
tracking data window.
Note: During the execution of the script, errors may occur. In this case, execution is stopped and an
error message is displayed. Click OK to close it.
• The loaded script file does not exist or does not contain any tasks:
The simulator tries to execute the script; the trace "End communication" is displayed in the
tracking data window. It indicates that no tasks were performed.
• Incorrect value for a waiting period or the number of retries (a numerical value is
expected in both cases):
The following error message is displayed: Invalid sleeping period and/or retries count - line:
{line number}.
• Incorrect value for a waiting period (a numerical value is expected, indicating the
number of seconds):
The following error message is displayed: Invalid sleeping period - line: {line number}.
• Invalid control – command for "Send": the control is not managed by the selected
protocol.
The following error message is displayed: Invalid control for "send:" field -line: {line number}.
• Invalid control – command for "Receive": the control is not managed by the selected
protocol.
The following error message is displayed: Invalid control for "receive:" field -line: {line number}.
• General error:
If a reader error occurs, the following error message is displayed: Error while reading script
file.
The file does not need to be loaded after each modification. The simulator automatically
rereads the script as saved before executing it.
The following sections present the graphic editor used to produce analysis requests in the
"bioMérieux" format and describe the different stages in the production of an analysis request
and its transmission to BCI RS232 or BCI Link.
3
2
2 — Clear button.
Used to delete the error messages.
Note: The shortcut for this command is double-click on the line to be modified.
These actions are used to open a test order editor. In the case of an update, the editor already
contains the data for the selected test order.
The test order editor can be configured to have the fields for a specific bioMérieux system
(refer to the Setting Parameters for the "bioMérieux" Test Order Editor section on page 14-17
for more details about the configuration of the editor).
• Click YES to confirm that the analysis request is recorded with the error included,
OR
Errors are displayed in chronological order in the error display field. Each line includes an error
and its corresponding information:
1 2
3
Figure 14-9: Error Display Field
The duplicated test order is added to the end of the test order list. It can then be printed and its
values modified.
The selected test order is definitively deleted from the analysis request after confirmation of
deletion.
Note: Refer to the Communication Supervision section on page 14-6 for more detailed information
about communication.
The editor dedicated to the display and entry of test orders is fully user-definable through
properties files. Parameters are taken into account when the application is started.
In the following, “theSystem” refer to a folder that contains the pattern data of one system.
The list of system will be automatically displayed while the simulator starts.
The attributes.worklist property enables you to declare the list of attributes that are to
be managed in the editor and is located in the properties file:
<simu>\simuRoot\patterns\theSystem\rs232\bmx_editors_labels.properties
Separator:
The properties file contains a property which indicates the attribute separator:
bmxMessage.separator. The upright slash "|" is the default separator. This property is
declared in the property file:
\lib_server\properties\simulator\messages.properties.
• Separator: there are record separators such as the sample separator for VIDAS® named
"si". This attribute type is defined by a character string with a length of 0.
Example: si=STRING:0. This type is represented in the editor by a check box.
• Enumeration: ENUM: val1, val2, val3.
This is used to declare a set of defined values for a given attribute. For example, the "mt"
attribute which determines the direction of the message has the value "mpr" for an analysis
request and "rsl" for results. This attribute can be declared as follows: mt=ENUM: mpr,
rsl. This type is represented as a drop down list showing all the values defined for this type.
• Numeric values: INTEGER: min: val1 max: val2.
This is used to declare a whole numeric value. You can define a minimum and/or maximum
(optional) value. For example, an unbounded numeric sample identifier is declared as follows:
ci=INTEGER: (the character ":" is mandatory). To declare a dilution attribute named "qd" from
0 to 1000, the declaration is qd=INTEGER: min:0 max:1000.
• Date and time: DATETIME: <format>, the format is described using ASCII symbols with the
following signification:
For example:
The file:
<simu>\simuRoot\patterns\theSystem\rs232\bMx_editor_mandatory_fields_for_
worklists.properties
The following sections present the graphic editor used to produce analysis requests in text
format and describe the different stages in the production of an analysis request and its
transmission to BCI.
This editor can be used to send messages in a format other than the bioMérieux format. It can
also be used in "expert mode" as a bioMérieux format analysis request editor, to enter
messages more rapidly using the Copy/Paste command on existing messages (with no
control).
Prerequisite: Prior to using the LIS-FTP simulator, check the proper setting of the properties in the
message.properties file (refer to the Defining Parameters for the Simulator Text
Editors section on page 13-7).
1. Edit the file using a text editor (NotePad.exe or WordPad.exe) as shown in the description
below.
2. Enter the new parameters between "<" and ">".
Note: New properties must be saved in the text editor before testing the FTP connection.
The following sections present the graphic editor used to produce analysis requests in ASTM-
XML format and describe the different stages in the production of an analysis request and its
transmission to BCI Link.
1
2
1 — Display field for the XML message generated from data entered in the editor in tree
structure mode. The areas in red indicate the parts of the XML message which contain
errors compared to the XML schema.
2 — Editor for producing an XML message in tree structure mode. Each time a tree node is
entered or modified, the display field is updated to show the XML source. Any error that
may occur is displayed in the error display field.
3 — Error display field for errors entered.
• Root node: the root node is the top node in the structure. It has no parent. All other nodes are
children or descendants of the root node.
• Child node: the child node is the immediate descendant of a node. For example "dateTime"
is the child node of "header" which itself is the child node of the "lisMessage" root node.
• Node value: Numerical value associated with an immediate descendant node. For example,
the value of node "dateTime" is "2002010100000099".
• Parent node: The parent node is the immediate ancestor of a node (except the root node).
For example "request" is the parent node of the "PatientInformation", and
"testOrder" nodes.
Add a node:
The following example describes how to add a "patient name" field to a request.
Note: All the possible nodes are displayed, even those which are already defined in the message.
Mandatory nodes (in red) are always preselected.
Insert a node:
This is used to insert a node at the same level as the selected node. To do so:
The following example describes how to insert a "patient name" field immediately after the
patient identifier.
Note: All the possible nodes are displayed, even those which are already defined in the message.
Mandatory nodes (in red) are always preselected.
Note: An alphanumeric string not conform to the XLM schema may be entered. In this case, the
value is in red.
The two examples below respectively describe the procedure to follow in the two above
mentioned cases.
Note: Note: The question marks "???" indicate that the value has not yet been assigned and that
data entry is free.
Note: The dots "…" indicate that the value entered is from an enumerated type.
4. Click OK.
Remove a node:
Note: In case of incorrect parameter settings or incorrect file name, an error message is displayed.
The following sections present the graphic editor used to produce analysis requests in text
format and describe the different stages in the production of an analysis request and its
transmission to BCI Link.
This editor can be used to send messages in a format other than the ASTM-XML format. It can
also be used in "expert mode" as an XML editor, to enter XML messages more rapidly using
the Copy/Paste command on existing messages (with no control), or to simulate error in the
XML schema as the "Sex" value (other than F,M,U).
Receiving Results
This function is used to download results stored in BCI Link upload directory.
1
2
Note: This editor does not manage the different encoding forms.
The messages are displayed in the ISO-8859-1 encoding form.
Downloading a Result
The results are displayed in the BCI results area.
To download a result:
2. In the BCI results area, select the result you want to download.
1
2
1 — The message is displayed in the list of local messages. Select the message if you want
to view its contents.
2 — A new empty file, called confirmation file, is created on BCI Link upload directory. This
empty file indicates that the LIS (laboratory) has downloaded the file. The results file and
the confirmation file are then automatically deleted by BCI Link.
The AI simulator is mainly used to simulate the sending of results from an AI to the LIS.
Edit this file using a text editor (Notepad or Wordpad) to modify the standard configuration.
The following example describes the characteristics for the system called SYSTEM1:
SYSTEM1.properties=TEST1,TEST2,TEST3
SYSTEM1.type=vidas
SYSTEM1.format=ASTM-XML
SYSTEM1.link=lis
SYSTEM1.serialNumber=12
In case of communication with BCI Link without the routing option, the list of tests and the
presentation format can be omitted as shown in the following example:
SYSTEM1.properties=
SYSTEM1.format=
IMPORTANT: If the simulator.instruments property is modified, the simulator must be shut down
and restarted to allow the new values to be taken into account. On the other hand, the
other properties are automatically taken into account before a new connection.
Remember to save the new properties using the text editor before testing the AI
connection.
It is essential not to modify the configuration of the LIS systems so that you can detect
problems with a bioMérieux system which no longer receives analysis requests or to simulate
the sending of results to the LIS during the installation.
• An AI simulator substitutes for the bioMérieux system. In this particular case, the
instruments.properties file must be completed by inserting the properties of the
substituted system.
OR
• An AI simulator does not substitute for the bioMérieux system but is declared with the type
"bmx_simulator": Therefore, it does not appear in the BCI Link dispatching table at the time
of connection and does not disrupt the laboratory configuration.
This type of simulation allows for the following two scenarios:
- The simulator is managed by BCI Link as long as it is connected. After
disconnection, BCI no longer manages the analysis request, pending a
hypothetical reconnection of the simulator. The simulator is in fact erased from the
BCI Link memory when the session is closed.
- If BCI Link has the dispatch option, all the tests are sent to the simulator.
BCI Link does not take into account the AI configuration table.
The interface displays the list of systems defined in the properties file. The identifier and
the type of link are indicated for each system.
To close a session:
To do so:
3. Select the system with a valid session and a list of tests that has been modified.
Note: This function is only used for a BCI Link connection with the dispatch option.
There is no graphic interface for this functionality. The analysis requests sent by BCI are
stored in the directory: "\instr_worklist\<default directory defined by
simulator.defaultSubDirectory property and contained in
messages.properties>".
To distinguish the recipients of the analysis request, the simulator applies the following
naming rule when recording the request from the LIS:
<Analysis system name>_yymmdd_hhmmss_<index>.xml
Consequently, if a request is intended for several systems, the simulator creates as many files
as there are connected systems.
To simulate connection problems, define a value other than Success for the Return code
parameter in the XML result simulator.
As soon as BCI tries to send a message (whichever AI is the recipient), an error is sent back to
BCI, and transmission of the analysis request fails.
The following sections present the graphic editor used to produce results in ASTM-XML format
and describe the different stages in the production of results and their transmission to
BCI Link.
1 3
1 — Display field for the XML message generated from data entered in the editor in tree
structure mode. The areas in red indicate the parts of the XML message which contain
errors.
2 — Selection of the AI responsible for sending results.
3 — Editor for producing an XML message in tree structure mode. Each time a tree node is
entered or modified, the display field is updated to show the XML source. Any error that
may occur is displayed in the error display field.
4 — Error display field for errors entered in the tree structure editor.
OR
The file name to be used is described in section about Receiving Analysis Requests sent by
BCI on page 16-5.
Note: Only the default directory used to save the results is different. It is called "\instr_results".
Note: The AI defined as the sender must have an open and valid session.
IMPORTANT: Before sending a message, check the name of the file appearing at the top of the
screen.
The following sections present the graphic editor used to produce a results message in text
format and describe the different stages in the production of a results message and its
transmission to BCI.
The following sections present the graphic editor used to produce results in the "bioMérieux"
format and describe the different stages in the production of results and their transmission
using BCI RS232 or BCI Link.
1
4
4 — Clear button.
Allows to delete the error messages.
OR
The message must be saved as a text file, using any file name.
Note: Only the default directory used to save results is different; it is called
"\instr_results\bioMerieux".
Note: The AI defined as the sender must have an open and valid session.
IMPORTANT: Before sending a message, check the name of the file appearing at the top of the
screen.
The editor dedicated to the display and entry of results is fully user-definable using the same
property files as for Setting Parameters for the "bioMérieux" Test Order Editor (page 14-17).
However, declaration of the results editor’s specific attributes and declaration of the optional
and mandatory attributes differ.
The list of attributes to be managed for a result is declared in the properties file
<simu>\simuRoot\patterns\theSystem\rs232\bMx_editors_labels.properties by
means of the attributes.result property.
Note: While VIDAS® 3 can be configured to be compatible with a given VIDAS® PC existing LIS, the
default VIDAS® 3 configuration may be different from the default VIDAS® PC configuration.
General Information
Stop Bits 1 or 2 1 or 2 1
Behavior in The message sent to BCI Link to The message sent to BCI Link
CORBA establish the communication to establish the communication
Communication uses the ISO-8859-1 encoding uses the UTF-8 encoding
format. format.
bMx Control bMx control (C1, C2, etc.) are bMx control (C1, C2, etc.) are bMx control (C1, C2, etc.)
Management sent sent are not sent by miniVIDAS®
HIV5 HIV5 AB and AG are sent HIV5 AB and AG are sent HIV5 AB and AG are not
Management sent by miniVIDAS®
Display Modes Results sent from VIDAS® PC Display modes do not exist. Display modes do not exist.
change depending on the
chosen display mode:
• Industry mode
• Simplified demography mode
• Complete demography mode
Message Format
<RS> Character <RS> character at the <RS> character at the <RS> character before
Position beginning of the message beginning of the message each field of the message.
(after <STX>) and every 80 (after <STX>) and every 80
characters if message length characters if message length
exceeds 80 characters. exceeds 80 characters.
Dilution Possible dilution value from 0 Possible dilution value from 0 Possible dilution value from
to 999 to 9999 0 to 999
Separators Does not allow configuration of: Does not allow configuration of: Possible values:
• the date separator: “/” is • the date separator: “/” is • date separator: . : / ,
used used • time separator: . : / ,
• the time separator: “:” is • the time separator: “:” is • field terminator: ! @ # $
used used
%^&*()-=+<>/?
• the field separator: “|” is • the field separator: “|” is []\|{}
used used
Error Management
Optional Field When an optional field is too When an optional field is too
Error long in an analysis request, it is long in an analysis request, it
truncated but no warning is is truncated and a warning is
raised. systematically raised.
Codepage
The two codepages used by the VIDAS® PC and the VIDAS® 3 computers are:
• ISO-8859-1 for English, French, German, Italian, Spanish, Portuguese, Polish and Turkish.
• UTF-8 for Chinese.
The messages coming from or going to the VIDAS® PC systems must be encoded/decoded
according to the selected communication protocol.
Note: To decode ASTM/XML messages, VIDAS® 3 uses the encoding specified in the XML
message.
Limitations: In the VIDAS® 3 user interface, the user can type any characters. If the LIS is
configured in ISO-8859-1, some characters cannot be encoded, they will be replaced by a “?”
character and the message will be sent to the LIS.
For example “< 16” can be encoded as “<![CDATA[< 16]]>” or as “< 16”. It would be
better that the LIS supports both configurations.
In the VIDAS® PC system, the localization of these messages depends on the OS language
and cannot be configured.
The authorized qualitative values for both VIDAS® PC and VIDAS® 3 systems are the same in
all languages except Chinese, as described in the table below.
VIDAS® LIS Code sent to BCI Link LIS Code sent to BCI Link
(all languages except Chinese) in Chinese
Code Label
0 Positive POSITIVE 阳性
1 Equivocal EQUIVOCAL 灰区
2 Negative NEGATIVE 阴性
3 Reactive REACTIVE 反应的
4 Non-Reactive NONREACTIVE 不反应的
5 Low Positive LOWPOSITIVE 弱阳性
6 POSITIVE POSITIVE 阳性
7 NEGATIVE NEGATIVE 阴性
8 positive POSITIVE 阳性
9 equivocal EQUIVOCAL 灰区
10 negative NEGATIVE 阴性
11 Border. R BORDERR 灰区阳性边界
12 LOW LOW 低
13 INTERMED. INTERMEDIATE 中等
14 HIGH HIGH 高
15 OK OK 可以
16 Invalid INVALID 无效
17 Border. R BORDERR 灰区阳性边界
18 Nondetectable NONDETECTABLE 不能检测
19 VALID VALID 有效
20 IND. ZONE INDZONE 不确定区域
101 Standard STANDARD 标准
103 VALID RECAL VALIDRECAL 有效重定标
104 INVALID RECAL INVALIDRECAL 无效重定标
6005 VALID A VALIDA 有效 A
6006 VALID B VALIDB 有效 B
6007 VALID A/B VALIDAB 有效 A/B
9001 INVALID INVALID 无效
9002 ND ND 未定义
9003 N/A NA 不适用
The authorized sex values for both VIDAS® PC and VIDAS® 3 systems depend on the
configured language as described in the table below.
VIDAS® PC / VIDAS® 3
English M F -
French M F -
Italian M F -
German M W -
Spanish H M -
Portuguese M F -
Polish M K -
Turkish E K -
Chinese 男 女 -
VIDAS® 3 only
Russian M Ж -
Greek A Γ -
Japanese M F -
Korean M F -
Two different sets of flags can be sent to LIS: VIDAS® flags and VIDAS® 3 flags.
VIDAS® Flags
The first group of flags is used for both VIDAS® PC and VIDAS® 3 unless otherwise specified.
Note: The previous table indicates the priority, lotexp has the highest priority.
VIDAS® 3 Flags
The second group of flags is ONLY available for VIDAS® 3 and XML messages.
stabexp expired on-board stability If sample stays for too long on board
manpipet manual pipetting mode If analysis has been done with a manual pipetting
cabstrip CAB strip not read If the strip barcode could not be read by the
instrument
cabspr CAB spr not read If the spr barcode could not be read by the
instrument
nodecalc P24N result validity is subject to the If the single assay test P24 screening result is not
calculation of the titer decrease retrieved by the VIDAS® 3 system, the titer
because not done by the VIDAS® 3 decrease value cannot be calculated automatically
system and the P24N % result is sent to the LIS subject to
the calculation manually done by the customer to
validate or invalidate the result
AI
Analysis request
A message produced by the LIS containing one or more analysis requests. An analysis
request consists of one or more tests for a specific type of analysis. These analysis requests
can be attributed to one or more AIs.
Applications message
The bioMérieux computer will never send more than one applications message per session,
but it can receive more than one per session.
An applications message contains patient, specimen, and exam demographics and results. It
must always be complete so that the receiving applications layer can process the message
correctly. The applications message starts with mt and ends with either the next mt (if there
are multiple applications messages per session) or with an <EOT> or <GS>.
ASCII
ASTM
ASTM E1394
Standard specification for transferring information between clinical instruments and computer
systems, published in the early 90’s by the E31 committee and the American Society for
Testing and Materials.
ASTM_XML representation
Specifications of messages relating to the transfer of data between the bioMérieux analyzers
and the LIS. This specification, elaborated by bioMérieux, is based on the ASTM 1394
attributes with an XML message structure.
Attribute
Characteristic element.
BCI
bioMérieux format
Proprietary format, for the presentation of analysis requests and results, used in the
BCI RS232 or BCI Link messages.
bioMérieux protocol
BMX
CLSI
Represents a bi-directional interface between two applications on the same machine or on two
separate machines (inter-process communication).
Communication message
A communications message always has an <STX> indicating the start of the message and an
<ETX> indicating the end. Each block is further subdivided by the <RS> character into records
from one to eighty characters long. The <GS> character marks the beginning of transmission
error control information. In order to handle transmission errors effectively, there is always one
<GS> character in a communications message.
A data management tool is a software that will only receive information from MYLA® in order
to compute statistics and reports.
It must be able to receive results and can optionally receive request (forwarded by MYLA®).
Data representation
Type of description used to structure messages for data transfer between analysis instruments
and the laboratory information systems.
Field
A field is a discrete unit of information such as a patient name, sex, primary physician, etc.
Each field is preceded by a code that describes the type of field and also implies its length. All
fields end with one to three user-defined terminating characters (chosen from a subset of
ASCII characters). Each field has a maximum length in characters. BCI Link will accept data
that are less than or equal to the maximum number of allowable characters. Most fields that
are longer than the number of significant characters are truncated and the text is left-justified.
Note: The only exception is the exam ID (ci), which is truncated and right justified.
FTP
The FTP service is based on a client / server, architecture and is used to transfer files between
heterogeneous machines. It is based on the TCP/IP network protocols.
HIS
IIOP protocol
IT
Information Technology
LIMS
LIS
Laboratory Information Systems. A LIS will send analysis request to MYLA® and will expect to
receive results from MYLA®
MYLA®
N/A
Not Applicable
Packet
All records associated with a <GS> record are called a packet. At the end of a packet, the
sending computer waits for the receiver to send an acknowledgment that it received the
packet.
Properties file
Similar to a configuration file, a properties file contains the values for some of the
characteristics of the software. These values are read and used by the software itself.
Declaration of a property is defined as follows: property name=valu.
To declare a comment in a properties file, place the ‘#’ character at the beginning of the line.
# This property defines the access path for the temporary directory
tempDirectory=c:\\temp\\
Record
Note: The new line sequence is optional and not included in the size of the record.
Results message
RS232
Session
A session consists of a connection between the host and a bioMérieux computer. Data
transfer in a single session can only go in one direction at a time. The initiator of the session is
the sender and the other computer is the receiver. The ASCII line request character <ENQ>
starts the session. <EOT> signals the end of the message and session.
Socket
Communication connection.
Specimen ID
TBD
To Be Defined.
TCP/IP
Test order
A series of tests to be performed for a sample. An analysis request consists of a series of test orders.
Type of test
Type of analysis that an AI is capable of performing on a sample using a reagent kit and an
analysis procedure.
XLS
XML
XML schema
A method for describing XML document, mainly including a description of all the data types
(XML element and attribute) and the document structure. Tools are used to validate an XML
source with an XML schema.
This section contains a summary of changes made to each released revision of this manual starting with
version A.
Note: Minor typographical, grammar, and formatting changes are not included in the revision history.