The Mapper filter uses the Java Mapping engine to map one or more input messages to an output message.

The Mapper filter performs transformation of structured messages from one format to another. To use the this filter, you must create a Mapper Definition File (MDF) that specifies how the message is transformed. Mapping definitions are created using the Map Designer application. Refer to Using the Mapper Filter for details.

Configuration Properties

Property

Description

Maximum Concurrency

The maximum level of concurrency for this filter. A setting of 0 (zero) means unlimited. Limiting the level of concurrency limits memory usage. Refer to Maximum Concurrency for details.

Mapper Definition File

Specifies the Mapper Definition File (.mdf) that describes the transformation to be performed on incoming messages.

Output Encoding Scheme

Specifies the string encoding to use for the output message:

  • ASCII.
  • Default (default).
  • Other - sets the output encoding scheme as per the Output Encoding Scheme Name property.
  • SameAsInput.
  • Unicode.
  • UTF-8.

Output Encoding Scheme Name

Specifies the string encoding name used when the Output Encoding Scheme property is set to Other.

Output Byte Order Mark

Specifies whether to include a byte order mark which may be required for some Unicode string encodings (disabled default).

Fail On Errors

Specifies whether the original message should be sent to the error destination if any parsing or mapping errors occur (disabled default).

Log Errors

Specifies whether parsing and mapping errors should be logged to the Rhapsody log file (disabled by default):

Property Copy Index

Specifies which input message has its properties copied to the output message.

Indexes start at 0, which is also the default as in most cases the mapping is from one input message to one output message. This field is used when using an Input Collation message collector on the filter.

Validate Input Messages

Determines whether input messages are validated by the Mapper filter before they are transformed. If this is left as default, then input EDI messages will be validated, but XML messages will not be validated. This is normally turned off if messages have previously been validated on the route before being sent to the Mapper filter.

  • Validate.
  • Do Not Validate.

Validate Output Messages

Determines whether output messages are validated by the Mapper filter after they are transformed:

  • Validate.
  • Do Not Validate.
Call Submaps With Missing Parameters

Whether to call submaps when a segment parameter is missing:

  • Disabled (default) - when a segment parameter is missing, then the submap is not called. 
  • Enabled - when a segment parameter is missing, then the submap is called with a null parameter.
Skip Calls To Submaps With Empty Parameters

Whether to skip calls to submaps with empty field parameters:

  • Disabled (default) - the filter will not skip calls to submaps with empty field parameters.
  • Enabled - the filter might skip some calls to submaps with empty field parameters. Additionally, function calls will not be able to retrieve empty field parameters.

This property is not available when you are connecting to engines older than Rhapsody 6.2.2.


Global Variables

Message properties are meta-information associated with a message as it flows through Rhapsody. They may contain values extracted from the message content itself, or may contain other arbitrary data that has been associated with them. In some cases, these values may be needed within a mapping so the property values can be included in the output message.

Message properties can be used with the mapping code using Global Variables. The Mapper allows global variables to be declared within the mapping code which can then be used within the code to modify how it works.

Before running a mapping, the Mapper filter compares the list of message properties on the message to be mapped with the list of global variables defined in the mapping code. If there is a global variable with the same name as a message property, the global variable is set to the current value of the message property.

After a mapping has completed, the Mapper filter retrieves the final values of all the global variables used in the mapping. These global variables are then copied to message properties of the same name on the output message.

Refer to the Map Designer documentation for details on creating mapping definitions and global variables.