How Vendor Definitions Work

PreviousNext

Discussion of how vendor definitions are used in different applications.

(c) 2007-2008 Hermetech International Ltd.

All HL7 messages are made up of HL7 Segments. HL7 Segments are made up of 1 or more HL7 Fields, and each HL7 Field has a specific HL7 Data Type which contains 1 or more (usually more) Components. The Vendor Definition contains all of these properties. Expand the example to see how this works.

 

An example of a short HL7 Segment Definition

This extract was taken directly from an EasyHL7 Vendor Definition

HL7 Segment: ACC-Accident segment

This segment has 6 HL7 Fields

 

#   Description                         Len   DataType   Table  #Comp

 

1   Accident Date/Time                   26      TS      0       2  

2   Accident Code                        60      CE      50      6  

3   Accident Location                    25      ST      0       1  

4   Auto Accident State                  60      CE      347     6  

5   Accident Job Related Indicator       1       ID      136     1  

6   Accident Death Indicator             12      ID      136     1  

 

ACC-Accident segment - Field Data Types

 

Type: CE - Coded element  (6 components)

Category: Code Values

       Component 1 [ST] identifier

       Component 2 [ST] text

       Component 3 [ST] name of coding system

       Component 4 [ST] alternate identifier

       Component 5 [ST] alternate text

       Component 6 [ST] name of alternate coding system

 

Type: ID - Coded Values (1 component)

Category: Identifier

       Component 1 [ST] Coded value for HL7 Tables

 

Type: ST - String  (1 component)

Category: Alphanumeric

       Component 1 [ST] string data

 

Type: TS - Time stamp  (2 components)

Category: Date/Time

Instructions: 2.8.44  YYYY[MM[DD[HHMM[SS[.S[S[S[S]]]]]]]][+/-ZZZZ] ^ <degree of precision>

       Component 1 [ST] Time stamp data

       Component 2 [ST] degree of precision (optional)

 

 

How are Vendor Definitions used in the different applications?

 

In the EasyHL7 Data Widgets and the Commando HL7 Workbench the vendor definitions are used when reading or writing HL7 messages as well as to provide HL7 message and structure reporting (like that shown in the example above). In Commando they are also used in the TCP/IP Listener and Router profiles to reference the TCP/IP message envelope characters (SOM and EOM).

 

In the Database Schema Engines the vendor definitions are used to create database tables to hold every component of every field of every segment defined. If a particular vendor definition is incomplete (i.e. segments are missing or fields are missing from segments) then the database tables aren't created correctly and you might not get all of the data you need stored in the database fields. IMPORTANT NOTE* With all of the database schema engines, the entire HL7 message is also stored in the database in one 'Blob' field in addition to being parsed and stored in the individual database tables/fields.