Defining input message characteristics

When a message is received by an input node in a message flow, the node detects how to interpret that message by determining the domain in which the message is defined and starting the appropriate parser.

Before you begin

Read the following concept topic:

About this task

You can provide message domain information to the input node in one of two ways:

  • You can configure the built-in input nodes to indicate the message domain, and therefore the parser to be started, for each message that is received.
  • You can set values in the input message itself that specify this information. Include an MQRFH2 header, which contains a folder that defines the message characteristics. This approach is more flexible because it means that the input node can start the appropriate parser based on the content of each message.

If the input message is defined in the MRM domain, and is therefore interpreted by the MRM parser, you must specify the following additional properties:

  • The Message model, which is the message model in which the message is defined
  • The Message type, which is defined by the message model
  • The Message format, which defines the physical characteristics of the message
The way that these properties are set depends upon the type of message, or node, that you want to use:
  • If the message is a WebSphere┬« MQ message, these properties can be set either in the input node or in the MQRFH2 header of the incoming message. If the properties are set in both, the properties of the MQRFH2 header take precedence. If the properties are not found in either the node or the MQRFH2 header, the default value is empty and the BLOB parser is used.
  • If the message is a JMS message, the property that is set on the node takes precedence. If the Message domain is empty, the Message domain is, by default, derived according to certain criteria following a predetermined order of precedence; see JMS message payload and appropriate parser.
  • If the input message belongs to a Message domain other than those for which a parser is supplied, you must provide a user-defined parser to handle it, and a user-defined input node to accept it for processing in the message flow. Check the documentation provided with the user-defined parser and node for further information.
  • If the Message domain is in a TimeoutControl node, an empty Message domain has either of the following results:
    • If the Stored message location property is also empty, the full message is stored. When the message comes back at TimeoutNotification, it is parsed in the same way as the original message.
    • If the Stored message location property is not empty, a partial message is stored and no parser is associated, therefore, by default, it is treated as BLOB.
  • If the Message domain is in a ResetContentDescriptor node, an empty Message domain has either of the following results:
    • If Reset message domain is cleared, the domain is not reset.
    • If Reset message domain is selected, the default is BLOB.
  • If the input node cannot determine the message characteristics, the default value is empty and the message is considered to be in the BLOB domain, and the BLOB parser is started.