The HL7 Transformer Module lets you send and receive HL7 messages. Received messages are parsed and converted to map structures, while sent messages are generated from matching map structures.

Additional Info

Requires Mule Enterprise License

Yes  

Requires Entitlement

Yes  

Mule Version

3.5.0 or higher

Configs


Configuration

<hl7-edi:config>

Configuration

Attributes

Name Java Type Description Default Value Required

name

String

The name of this configuration. With this name can be later referenced.

x 

appNamespaceIdSelf

String

Application Namespace ID for Mule in message header (MSH segment). If this value is set, it effects both send and receive message handling. On the receive side, the MSH Receiving Application identification Namespace ID must match this value. On the send side, this value is used as the MSH Sending Application identification Namespace ID unless overridden in either the send configuration or the message parameters.

 

appUniversalIdSelf

String

Application Universal ID for Mule in message header (MSH segment). If this value is set, it effects both send and receive message handling. On the receive side, the MSH Receiving Application identification Universal ID must match this value. On the send side, this value is used as the MSH Sending Application identification Universal ID unless overridden in either the send configuration or the message parameters.

 

appUniversalIdTypeSelf

String

Application Universal ID Type for Mule in message header (MSH segment). If this value is set, it effects both send and receive message handling. On the receive side, the MSH Receiving Application identification Universal ID Type must match this value. On the send side, this value is used as the MSH Sending Application identification Universal ID Type unless overridden in either the send configuration or the message parameters.

 

appNamespaceIdPartner

String

Application Namespace ID for Partner in message header (MSH segment). If this value is set, it effects both send and receive message handling. On the receive side, the MSH Sending Application identification Namespace ID must match this value. On the send side, this value is used as the MSH Receiving Application identification Namespace ID unless overridden in either the send configuration or the message parameters.

 

appUniversalIdPartner

String

Application Universal ID for Partner in message header (MSH segment). If this value is set, it effects both send and receive message handling. On the receive side, the MSH Sending Application identification Universal ID must match this value. On the send side, this value is used as the MSH Receiving Application identification Universal ID unless overridden in either the send configuration or the message parameters.

 

appUniversalIdTypePartner

String

Application Universal ID Type for Partner in message header (MSH segment). If this value is set, it effects both send and receive message handling. On the receive side, the MSH Sending Application identification Universal ID Type must match this value. On the send side, this value is used as the MSH Receiving Application identification Universal ID Type unless overridden in either the send configuration or the message parameters.

 

validateHL7Version

boolean

If true, the HL7 message version in HL7 message is validated against the version configured in the global element and the message is rejected if configured version is different from the version of the message received.

false

 

eventMessageMap

String

Path to a YAML file defining the mapping from event code to message code to message structure identifier. If working with multiple message structures this mapping definition supports using MSH-9-1 and MSH-9-2 to determine the message structure when MSH-9-3 is not present in a message. If only a single message structure is present in the schema(s) that message structure is used for parsing all messages, and if MSH-9-3 is present in a message the MSH-9-1 and MSH-9-2 values are ignored.

 

processingId

HL7ProcessingId

Value to match for MSH-11-1 processing ID. If set, only messages with the specified processing ID will be accepted for processing; messages with other processing ID values, or with no processing ID specified, will be rejected with an exception.

 

genericExtensionPattern

String

Java regular pattern for segment names to be treated as generic extension segments. If specified, segment names matching this pattern are allowed anywhere in the message and are converted to maps of string values for elements and composites.

 

missingRequiredValueFail

boolean

Fail when a required value is missing flag. If true, a message with this error is rejected; if false, the value is ignored and the message is not rejected. In either case the error is logged and reported in an ERR segment.

false

 

valueLengthErrorFail

boolean

Fail when receive value length outside allowed range flag. If true, a message with this error is rejected; if false, the value is used anyway and the message is not rejected. In either case the error is logged and reported in an ERR segment.

false

 

invalidCharacterInValueFail

boolean

Fail when receive value contains invalid characters flag. If true, a message with this error is rejected; if false, the character is either passed through or substituted and the message is not rejected. In either case the error is reported in an ERR segment.

false

 

wrongValuesRepeatsFail

boolean

Fail when receive value is repeated too many times. If true, a message with this error is rejected; if false, the value is accepted and the message is not rejected. In either case the error is reported in an ERR segment.

false

 

unknownSegmentFail

boolean

Fail when an unknown segment is present in a message. If true, a message with this error is rejected; if false, the segment is ignored and the message is not rejected. In either case the error is reported in an ERR segment.

false

 

segmentOutOfOrderFail

boolean

Fail when a segment is out of order in a message set. If true, a message with this error is rejected; if false and the segment can be reordered the message is not rejected. In either case the error is reported in an ERR segment.

false

 

unusedSegmentPresentFail

boolean

Fail when a segment marked as Unused is included in a message set. If true, a message with this error is rejected; if false, the message is not rejected and the unused segment is ignored. In either case the error is reported in an ERR segment.

false

 

wrongSegmentsRepeatsFail

boolean

Fail when a segment occurs too many times in a message set. If true, a message with this error is rejected; if false, the message is not rejected. In either case the error is reported in an ERR segment.

false

 

fieldSeparator

Character

Default data element separator character. The configured value is used by default for all output messages, but can be overridden at the message level.

 

componentSeparator

Character

Default component separator character. The configured value is used by default for all output messages, but can be overridden at the message level.

^

 

subcompSeparator

Character

Default sub component separator character. The configured value is used by default for all output messages, but can be overridden at the message level.

'

 

repetitionSeparator

Character

Default repetition separator character. The configured value is used by default for all output messages, but can be overridden at the message level.

~

 

escapeCharacter

Character

Default escape character. The configured value is used by default for all output messages, but can be overridden at the message level.

\

 

characterEncoding

HL7CharacterEncoding

Character encoding for HL7 messages.

ASCII

 

identKeys

boolean

Use segment and group identifiers directly as keys in data, rather than prefixing with position values.

false

 

schemas

List<String>

List of paths for schemas to be used by module. The paths may be either for file system or classpath.

Processors


Read

<hl7-edi:read>

Transforms a ER7 encoded HL7 message into a Map

Attributes

Name Java Type Description Default Value Required

config-ref

String

Specify which config to use

x 

ediContent

InputStream

Native EDI content

#[payload]

 

Returns

Return Java Type Description

Map<String,Object>

the Map


Write

<hl7-edi:write>

  DataSense enabled

Transform a Map into ER7 encoded HL7 message.

Attributes

Name Java Type Description Default Value Required

config-ref

String

Specify which config to use

x 

messageStructure

String

HL7 Message and Event Type

x 

message

Map<String,Object>

Map containing the HL7 message

#[payload]

 

Returns

Return Java Type Description

String

Map String containing the HL7 Message