JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Oracle Java CAPS HL7 Binding Component User's Guide     Java CAPS Documentation
search filter icon
search icon

Document Information

Oracle HL7 Binding Component User's Guide

About the HL7 Binding Component

The Health Level 7 Messaging Standard

The HL7 Binding Component

HL7 Binding Component as a Consumer

HL7 Binding Component as a Provider

HL7 Acknowledgements

Sequence Numbering

HL7 Binding Component Features

Using the HL7 Binding Component Wizard

Accessing the HL7 Binding Component Wizard

To Access the Wizard by Creating a New File

To Access the Wizard by Creating a New Binding

To Access the Wizard by Creating a New WSDL Document

Configuring the HL7 Binding Component in the Wizard

To Configure the HL7 Binding Component in the Wizard

Abstract WSDL Properties

General Settings

Endpoint properties

Encoding Details

LLP Details

MLLP Version 2 Properties (Outbound Only)

HL7 Version 2 Settings

HL7 Version 2 Properties

MSH Properties

Message Properties

Communication Controls

HL7 Binding WSDL Extensibility Elements

Adding HL7 Extensibility Attributes From the WSDL Editor

To add Service Level HL7 Extensibility Attributes

Service Level HL7 Extensibility Elements

HL7 address Element

HL7 protocolproperties Element

HL7 communicationcontrols Element

Binding Level HL7 Extensibility Elements

HL7 binding Element

HL7 operation Element

HL7 message Element

Dynamically Configuring HL7 Endpoints

Application Variables

Application Configurations

Dynamic Addressing Using Normalized Message Properties

Enabling Dynamic Endpoint Configuration

Using Normalized Message Properties in a BPEL Process

Using Predefined Normalized Message Properties in a BPEL Process

To Use Predefined Normalized Message Properties in a BPEL Process

Normalized Message Properties

General Normalized Message Properties

HL7 Binding Component Normalized Message Properties for Outbound Endpoints

HL7 Binding Component Normalized Message Properties for Inbound Endpoints

HL7 Binding Component Runtime Properties

Configuring the HL7 Binding Component Runtime Properties

To Edit HL7 Binding Component Runtime Properties

Defining an HL7 Binding Component Application Configuration

To Define the HL7 Application Configuration

Defining the Application Configuration Using Other Tools

Using Application Variables to Define Name/Value Pairs

Using Application Variables for Password Protection

Creating a Password Application Variable

Runtime Properties

Statistics Properties

Logger Properties

HL7 Binding Component Loggers

Using HL7 Quality of Service (QoS) Features

Quality of Service (QoS) Properties

Using Message Throttling

To Configure Throttling for an HL7 WSDL Port

Using Redelivery

Using the HL7 Binding Component Wizard

The HL7 Binding Component is similar to other binding components in that you use a wizard that steps you through creating the binding WSDL document. Each of these processes bring you to the HL7 Binding Component Wizard.


Note -

There are two types of WSDL documents. The Concrete WSDL Document option is the only way to create an HL7 Binding Component.


The following topics provide information and instructions for accessing and using the HL7 Binding Component Wizard:

Accessing the HL7 Binding Component Wizard

You can access the HL7 Binding Component Wizard and create an HL7 binding by performing any of the following procedures.

To Access the Wizard by Creating a New File

  1. Select your project in the NetBeans IDE Projects window, then click the New File icon, or select File -> New File from the NetBeans menu.

    Ctrl+N also opens the New File Wizard.

  2. Select ESB as the Category, and select Binding as the File Type.
  3. Click Next.

    The Name and Location window appears.

  4. Enter a name for the BC, select HL7 in the Binding field, and select the type of HL7 binding in the Type field (inbound or outbound).
  5. If necessary, you can also modify the Folder and Target Namespace fields.

    The target namespace is the URL String used as the target namespace.

  6. Continue to Configuring the HL7 Binding Component in the Wizard.

To Access the Wizard by Creating a New Binding

  1. Right-click your project in the Projects tree, and select New -> Other.

    The New File Wizard appears.

  2. Select ESB as the Category, and Binding as the File Type.
  3. Click Next.

    The Name and Location window appears.

  4. Enter a name for the BC, select HL7 in the Binding field, and select the type of HL7 binding in the Type field (inbound or outbound).
  5. If necessary, you can also modify the Folder and Target Namespace fields.

    The target namespace is the URL String used as the target namespace.

  6. Continue to Configuring the HL7 Binding Component in the Wizard.

To Access the Wizard by Creating a New WSDL Document

  1. Right-click your project in the Projects tree, and select New -> WSDL Document.

    The New WSDL Document Wizard appears.

  2. Enter a File Name, and select Concrete WSDL Document as the WSDL Type.

    This adds additional options to the wizard.

  3. In the Binding field, select HL7; and in the Type field, select the type of HL7 Binding you want to create (inbound or outbound).
  4. If necessary, you can also modify the Folder and Target Namespace fields.

    The target namespace is the URL String used as the target namespace.

  5. Continue to Configuring the HL7 Binding Component in the Wizard.

Configuring the HL7 Binding Component in the Wizard

From the HL7 Binding Component Wizard you can configure an inbound or outbound HL7 Binding Component. The HL7 Binding Component supports the following types of binding:

image:The Image shows the HL7 Binding Component Wizard.

To Configure the HL7 Binding Component in the Wizard

  1. Complete one of the procedures under Accessing the HL7 Binding Component Wizard.

    You should now be on the Name and Location window of the New WSDL Document Wizard, shown above.

  2. Click Next.

    The Abstract WSDL Details window appears.


    image:Image shows the Abstract WSDL Details page of the HL7 Binding Component Wizard.
  3. Do one of the following:
    • To implement an inbound or outbound request operation, select Add One-Way Operation.
    • To implement an inbound or outbound request response operation, select Add Two-Way Operation.

    The fields to configure the type of operation you chose appear.

  4. Fill in the abstract WSDL properties as described in Abstract WSDL Properties.
  5. Click Next.

    The General Settings windows appears.


    image:Image shows the General Settings page of the HL7 Bindings Wizard for the HL7 Outbound types.

    Note - The image above shows the properties for an outbound binding type. There are fewer fields for the inbound type.


  6. Fill in the general settings properties as described in General Settings.
  7. Click Next.

    The HL7 Version 2 Settings window appears.


    image:Image shows the HL7 Binding Wizard HL7 Version 2 Settings page.
  8. Fill in the HL7 version 2 settings properties as described in HL7 Version 2 Settings.
  9. Click Next.

    The Communication Controls window appears.


    image:Image shows the Outbound Communication Controls page of the HL7 Binding Wizard.

    Note - The image above shows the properties for an outbound binding type. There are fewer properties for the inbound binding types.


  10. Fill in the communication controls properties as described in Communication Controls.
  11. Click Finish.

    The WSDL file is created and appears inn the Projects window. The WSDL Editor appears, displaying the content of the file.

Abstract WSDL Properties

The Abstract WSDL Details page of the wizard specifies the request and response messages and the message type specified as the MSH.9 field value. The options on this page vary depending on the HL7 Binding type. The Response Message Type field only appears for two-way operations.

Property
Description
Operation Name
A name for the operation in the WSDL document.
Request Message
The HL7 XSD element or type used for the request message.
Request Message Type
The HL7 message type that the operation handles. This value should be the same as the message type entered in the MSH.9 field value.
Response Message Type
The HL7 XSD element or type used for the response message.

General Settings

The General Settings page of the HL7 Binding Wizard specifies the connection protocol and encoding details. The Outbound HL7 Bindings also include configuration properties for LLP message transport protocols.

The general settings are categorized into the following property types:

Endpoint properties

The Endpoint properties specify the connectivity information to the HL7 external system, and include the following configuration properties.

Property
Description
Transport Protocol Name:
The transport protocol used to transmit the HL7 message payload. For HL7 v2.X the only current transport protocol option is TCP/IP
Location
A URL used to connect to the HL7 external system.
Encoding Details

The Encoding Details specify the concrete properties associated with receiving or sending HL7 messages from or to the HL7 external system. The Encoding Details section include the following properties.

Property
Description
Use
The use type, which affects how a message is interpreted. The options are Literal or Encoded. The Encoded option specifies that the message is encoded using a well-defined encoding style.
Encoder
The encoding type associated with the message. This also defines the encoder type used to process the encoded data.
LLP Details

The LLP Details section defines the Lower Layer Protocol (LLP) used for the HL7 messages, and includes the following properties.

Property
Description
LLP Type:
The Lower Layer Protocol (LLP) type. Select one of the following types:
  • MLLP v1.0 (Minimal Lower Layer Protocol)

  • HLLP (Hybrid Lower Layer Protocol)

  • MLLP v2.0 (Minimal Layer Protocol v2.0)

Start Block Character
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.
End Block Character
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.
End Data Character
The End Data Character value in decimal ASCII number from 1 to 127. To be strictly compliant , the value should be a carriage return, indicated by decimal 28.
HLLP Checksum
An indicator of whether the HLLP Checksum feature is enabled. This can only be enabled if the LLP Type is set to HLLP.
Persistence
An indicator of whether to store the HL7 message and ACKs into the persistence storage for recovery. Persistence can only be enabled for HLLP and MLLP v1.0; MLLP v2.0 has its own persistence.
MLLP Version 2 Properties (Outbound Only)

The MLLP Version 2 Properties are for outbound message only, and configure the Minimal Lower Layer Protocol (MLLP) version 2 property. This section includes the following properties.

Property
Description
No. of Retries on Receipt of NAK
The maximum configured number of attempts to send a message after receiving a negative acknowledgement.
Time Interval Between Retries
The duration in milliseconds to wait between each retry attempt.
Time Duration to Wait for ACK / NAK
The duration in milliseconds to wait for MLLP V2 commit positive or negative acknowledgement.

HL7 Version 2 Settings

The HL7 Version 2 Settings are divided into the following property types:

HL7 Version 2 Properties

The HL7 Version 2 Properties section includes the Acknowledgement Mode property.

Property
Description
Acknowledgement Mode

The type of acknowledgement used with HL7 transaction. Choose one of the following options:

  • Original: An acknowledgement is sent from the receiving system's application layer once the application has successfully processed the message. This is also called the Application Acknowledgement.
  • Enhanced: Both the Application Acknowledgement (Original Acknowledgement) and an Accept Acknowledgement are sent from the receiving system. The Accept Acknowledgement is sent once the message has been committed to safe storage and acknowledges that there is no need to resend the message.

MSH Properties

The MSH Properties section provides the HL7 MSH Header segment settings. It includes the following properties.

Property
Description
Validate MSH
An indicator of whether MSH segment validation is enabled.
Sequence No
An indicator of whether sequence number protocol is enabled.
Processing ID
The Processing ID value by which the MSH-11 segment in the received message is validated when validateMSH is enabled. MSH-11 is used to indicate whether a message is processed as defined in the HL7 Processing rules.

The Processing ID options include the following:

  • D - Debugging

  • T- Training

  • P- Production

Version ID
The HL7 Version ID value by which the MSH-12 segment in the received message is validated when validateMSH is enabled. The Version ID options are 2.1, 2.2, 2.3, 2.3.1, 2.4, 2.5, 2.5.1, and 2.6.
Sending Application
The sending application (MSH-03 segment) used to create the NAK for invalid HL7 messages. This is used to help identify this application from other participating applications within the network enterprise.
Sending Facility
The sending facility (MSH-04 segment) responsible for creating the NAK for invalid HL7 messages. This is used to help further identify participating facilities within the network enterprise.
Encoding Characters

The four encoding characters used to create the NAK for an invalid HL7 message. This attribute contains the four characters in the following order:

  • Component separator
  • Repetition separator

  • Escape character

  • Subcomponent separator

The recommended value is ^~\& (that is, ASCII 94, 126, 92, and 38, respectively).

Field Separator
The separator between the segment ID and the first real field. This value defines the character that is used as a separator for the rest of the message. Enter the value as a decimal ASCII number ranging from 1 to 127. The default value is 124 which is the character "|".
Message Properties

The Message Properties section contains the SFT configuration settings. HL7 versions 2.5, 2.5.1, and 2.6 add an SFT segment to every message. The binding not only sends and receives messages with the SFT segment, it can automatically create and populate the SFT configuration settings using information from the message properties for outbound mode, and from the ACK sent for inbound mode. This section includes the following properties.

Property
Description
SFT Enabled
An indicator of whether SFT segment processing is enabled.
Journaling
An indicator of whether journaling of the HL7 message and ACK is enabled.
Software Vendor Organization
The Software Vendor Organization field (SFT-1-Software Vendor Organization), which identifies the vendor who is responsible for maintaining the application. This property only applies to HL7 versions 2.5, 2.5.1, and 2.6.
Software Certified Version or Release Number
The Software Certified Version or Release Number, which is the value of the HL7 segment SFT-02. The current software version number or release number for the sending system, helps to provide a more complete profile of the application that is sending or receiving the HL7 messages. For example, if the sending system is Java CAPS 6.1, the value would be 6.1. This property only applies to HL7 versions 2.5, 2.5.1, and 2.6.
Software Product Name
The name of the software product that submitted the transaction, which is the value of the HL7 segment SFT-03. The software product name is a key component for identifying the sending application. This property only applies to HL7 versions 2.5, 2.5.1, and 2.6.
Software Product Information
The software product identification information, which is the value of the HL7 segment SFT-05. This may include a description of the software application, configuration settings, modifications made to the software, and so forth. This information is used for diagnostic purposes to help identify the application software. This property only applies to HL7 versions 2.5, 2.5.1, and 2.6.
Software Binary ID
The Software Binary ID, which is the value of HL7 segment SFT-04. This property is available starting with HL7 version 2.5. Software Binary IDs are issued by a vendor for each unique software version instance. These 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. This property only applies to HL7 versions 2.5, 2.5.1, and 2.6.
Software Install Date
The Software Install Date, which is the value of HL7 segment SFT-06. This is the date on which the submitting software was installed at the sending site. The install date can provide key information in regard to the behavior of an application. The date format is YYYYMMDDHHSS. This property only applies to HL7 versions 2.5, 2.5.1, and 2.6.

Communication Controls

The last page of the HL7 Binding Wizard, the Communication Controls page, provides configuration properties for the communication controls and recourse actions that control the sending and receiving of messages over a TCP/IP connection. These properties are defined by the Communication Control WSDL Extensibility Element, and help establish the Quality of Service (QoS) between the HL7 external system and HL7 endpoints.

The communication controls differ for inbound or outbound endpoints, therefore different pages are provided for inbound or outbound.

The recourse actions supported by the HL7 Binding Component can include the following values:

Each property in the table below allows you to enable or disable the control, select a value, and select a recourse action. If you do not enable the control, any setting you configure for that control are ignored.

Table 1 Inbound Communication Controls

Property
Description
MAX_NAK_SENT
The maximum number of NAKs, the binding component sends to the client before executing the recourse action. A negative acknowledgment is sent from the HL7 inbound endpoint when the received message from client is invalid. An invalid message, according to the HL7 specification, is one that fails MSH segment validation or has an invalid sequence number.
  • Value: An integer indicating the appropriate maximum number.

  • Recourse Actions: Suspend and Reset.

MAX_CANNED_NAK_SENT
The maximum number of canned NAKs, the binding component sends to the client before executing the configured recourse action. This communication control deals with the case where the message received from client is invalid as per the HL7 specification rules for that particular message.
  • Value: An integer indicating the appropriate maximum number.

  • Recourse Actions: Suspend and Reset.

Each property in the table below allows you to enable or disable the control, select a value, and select a recourse action. If you do not enable the control, any setting you configure for that control are ignored.

Table 2 Outbound Communication Controls

Property
Description
MAX_CONNECT_RETRIES
The maximum number of connection retires the binding component will attempt before executing the recourse action.
  • Value: The value is presented in the format: n1;n2,n1;n2,..., where n1 is the number of retry attempts to connect, and n2 is the interval (in seconds) between retry attempts. If the value of n1 is –1, it indicates that the number of retry attempts is indefinite.

  • Recourse Actions: Suspend and Error.

TIME_TO_WAIT_FOR_A_RESPONSE
The amount of time the binding component waits for a response from the external system before executing the configured recourse action.
  • Value: An integer indicating the time interval in seconds.

  • Recourse Actions: Resend, Reset, and Suspend.

MAX_NO_RESPONSE
The maximum number of timeouts the binding component allows, while waiting for the response from external HL7 system, before executing the configured recourse action. This Communication Control is used in relationship with TIME_TO_WAIT_FOR_A_RESPONSE. The binding component resends the last sent message for each timeout until the configured maximum number of timeouts is exceeded.
  • Value: An integer indicating the maximum allowable number of “no-responses” from the external HL7 system.

  • Recourse Actions: Suspend and Reset.

NAK_RECEIVED
The recourse action the binding component will implement upon receiving a NAK from external system. There is no set value for this property other than enable and the selected recourse action.
  • Recourse Action: Resend, Reset, and Skipmessage.

MAX_NAK_RECEIVED
The maximum number of NAKs (negative acknowledgments) that the binding component accepts before it executes the configured recourse action.
  • Value: An integer indicating the maximum number of NAKs allowed.

  • Recourse Actions: Suspend, Reset, and Skipmessage.