Which parser should you use?

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.
Related concepts
MRM parser and domain
XML parsers and domains
JMS parser and domains
IDoc parser and domain
MIME parser and domain
BLOB parser and domain
Message modeling
XML messages in the MRM and XML domains
Related tasks
Developing message flows
Developing ESQL
Developing Java
Related reference
Built-in nodes