The characteristics of the messages that your applications exchange indicate
which parser you must use.
WebSphere Message Broker provides a range of message
parsers. Each parser processes message body data for messages in a particular
message domain (for example, XML), or a particular message header (for example,
the MQMD).
Review the messages that your applications send to the broker, and determine
which message domain the message body data belongs to, so that you can either
set up the correct headers in the message, or configure the input node of
the message flow appropriately.
- If your application data is in XML format
- Use
either the XML format in the MRM domain, or the XML, XMLNS or XMLNSC domain.
Usually,
you will find that the MRM domain offers greater facilities:
- When a message is parsed, the logical message tree uses the types taken
from the message model. This allows ESQL expressions to operate on the data
directly, without having to cast it to the correct data type. Data encoded
in CData sections is supported, as well as binary data in hexadecimal and
base64 encoding.
- When you create ESQL to configure a Compute, Database, or Filter node,
the ESQL editor can provide assistance based on the message model information.
- When you create mappings to configure a DataDelete, DataInsert, DataUpdate,
Extract, Mapping, or Warehouse node, the mapping editors can provide assistance
based on the message model information.
- If your application data comes from a legacy C or COBOL application, or
consists of fixed-format binary data (possibly including null-terminated strings)
- Use the Custom Wire Format in the MRM domain.
- If your application data consists of formatted text, or contains variable
length fields other than null-terminated strings
- Use the Tagged Delimited String format in the MRM domain.
- If your application data is created using the JMS API
- Use either the XML domain, or one of the JMS domains (JMSMap and JMSStream).
- If your application data is in SAP IDoc format
- Use the IDOC domain.
- If your application data is in MIME format, for example SOAP with attachments
or RosettaNet
- Use the MIME domain. You might need to parse specific parts of the message
with other parsers. For example, you might parse the root of a SOAP with attachments
message using the MRM XML parser.
- If you do not know, or need to know, the content of your application data
- Use the BLOB domain.