Using the HL7 Binding Component

HL7 protocolproperties Element

The HL7 protocolproperties extensibility element specifies the protocol specific information for connecting to the HL7 external system.

Table 4 HL7 protocolproperties Element Attributes

Name and Description 

Required or Optional 

Applies to Provider or Consumer 

Example 

acknowledgeMode: Indicates the acknowledge mode type: Original Mode or Enhanced Mode.

Optional 

Common (both) 

original 

llpType: Indicates the Lower Layer Protocol Type. MLLPv1, MLLPv2, or HLLP.

Optional 

Common (both) 

MLLPv1 

startBlockCharacter: Indicates the Start Block Character Value in a decimal ASCII number from 1 to 127. Unless there is a conflict, the value should be ASCII VT, which is decimal 11.

Optional 

Common (both) 

11 

endDataCharacter: Indicates the End Data Character Value in decimal ASCII number from 1 to 127. Unless there is a conflict, the value should be ASCII VT, which is decimal 28.

Optional 

Common (both) 

28 

endBlockCharacter: Indicates the End Block Character Value in decimal ASCII number from 1 to 127. To be strictly comply with the HL7 standard, this parameter must be set to a carriage Return, which is decimal 13.

Optional 

Common (both) 

13 

hllpChecksumenabled: Specifies if HLLP CheckSum is enabled. “true” indicates enabled.

Optional 

Common (both) 

false 

seqNumberEnabled: Specifies if sequence number protocol is enabled. “true” indicates enabled.

Optional 

Common (both) 

false 

validateMSH: Specifies if the MSH segment in the HL7 message is validated against initiation rules. “true” indicates enabled.

Optional 

Common (both) 

false 

processingID: Specifies the ProcessingID value against which the MSH-11-ProcessingID field in the received message is validated when validateMSH is set to “true”. Valid values are P (production), D (debugging), or T (training).

Optional 

Common (both) 

versionID: Specifies the versionID value against which MSH-12-VersionID field in the received message is validated when validateMSH is set to true. Valid values are 2.1, 2.2, 2.3, 2.3.1, 2.4, 2.5, 2.5.1 or 2.6.

Required 

Common (both) 

2.3.1 

fieldSeparator: Defines the Field Separator character value in a decimal ASCII number. This represents the separator between the segment ID and the first field, MSH-2-encoding characters. As such, it server as the separator and defines the character to be used as a separator for the rest of the message. The default setting is 124 which is the character "|". The allowed range is 1 to 127. This attribute value is used in creating the NAK for invalid HL7 messages.

Optional 

Common (both) 

124 

encodingCharacters: Specifies the encoding characters to be used in creating the NAK for invalid HL7 messages. This attribute contains the four characters in the following order: the component separator, repetition separator, escape character, and subcomponent separator. Recommended values are ^~\& (that is, ASCII 94, 126, 92, and 38, respectively).

Optional 

Common (both) 

^~\& 

sendingApplication: Specifies the MSH-03 Sending Application to be used in creating the NAK for invalid HL7 messages.

Optional 

Common (both) 

GlassFish ESB HL7 BC 

sendingFacility: Specifies the MSH-04 Sending Facility to be used in creating the NAK for invalid HL7 messages.

Optional 

Common (both) 

GlassFish ESB HL7 BC 

enabledSFT: Enables or disables SFT segment processing. “true” indicates enabled.

Optional 

Common (both) 

true 

softwareVendorOrganization: Specifies HL7 segment SFT-01, the software vendor organization field. This identifies the vendor who is responsible for maintaining the application.

Optional 

Common (both) 

Sun Microsystems, Inc. 

softwareCertifiedVersionOr ReleaseNumber: Specifies HL7 segment SFT-02, the software certified version or release number. This is the current version or release number of the sending application.

Optional 

Common (both) 

2.0 

softwareProductName: Specifies HL7 segment SFT-03, the name of the software product that submitted the transaction. The product name is a key component in identifying the sending application.

Optional 

Common (both) 

GlassFish ESB HL7 Binding Component 

softwareBinaryID: Specifies HL7 segment SFT-04, the software binary ID. This property is available for HL7 version 2.5 and above. Software binary IDs are issued by a vendor for each unique software version instance. Binary IDs are used to differentiate between differing versions of the same software. Identical primary IDs indicate that the software is identical at the binary level, but configuration settings may differ.

Optional 

Common (both) 

2.0 

softwareProductInformation: Specifies HL7 segment SFT-05, software product identification information. This can include a description of the software application, configuration settings, and software modifications.

Optional 

Common (both) 

Binding Component for HL7 over TCP/IP connection 

softwareInstallDate: Specifies HL7 segment SFT-06, the software install date. This is the date on which the submitting software was installed at the sending site. Format as follows: YYYYMMDDHHSS.

Optional 

Common (both) 

200909141020 

journalingEnabled: Enables or disables journaling. If enabled, it stores the HL7 messages and respective ACK in the flat file database. “true” indicates enabled.

Optional 

Common (both) 

true 

The following example illustrates the use of the HL7 protocolproperties element.


  <hl7:protocolproperties acknowledgmentMode="original"
  llpType="MLLPv1"
  startBlockCharacter="11"
  endDataCharacter="28"
  endBlockCharacter="13"
  hllpChecksumEnabled="false"
  seqNumEnabled="false"
  processingID="P"
  versionID="2.3.1"
  validateMSH="false"
  sendingApplication="Sun Open ESB HL7 BC"
  sendingFacility="Sun Open ESB HL7 BC"
  enabledSFT="false"
  softwareVendorOrganization="Sun Microsystems, Inc"
  softwareCertifiedVersionOrReleaseNumber="2.0"
  softwareProductName="Sun Open ESB HL7 Binding Component"
  softwareBinaryID="2.0"
  softwareProductInformation="It is a binding component for HL7 over TCP/IP connection"
  journallingEnabled="false"
  mllpv2RetriesCountOnNak="0"
  mllpv2RetryInterval="0"
  mllpv2TimeToWaitForAckNak="0"
  encodingCharacters="^~&amp;"
  softwareInstallDate=""
  fieldSeparator="124"/>