Message Sets: Message sets overview

A message set is the original container for message models used by IBM® Integration Bus.

Tip: A message set is the original container for message models used by IBM Integration Bus. In WebSphere® Message Broker Version 8.0 and later, message model schema files contained in applications and libraries are the preferred way to model messages for most data formats. Message sets continue to be supported, and are required if you use the MRM or IDOC domains. If you need to model data formats for use in the MRM or IDOC domains, you must first enable message set development in the IBM Integration Toolkit. For more information, see Enabling message set development .
A message set is a folder in a message set project that contains a logical grouping of your messages and the objects that comprise them (elements, types, groups). A message set contains the following files:
  • Exactly one message set file
  • Zero or more message definition files
  • Zero or more WSDL files
  • Zero or more message category files

The message set file provides message model information that is common to all the messages that are defined in the message set. You can create this information by using the Message Set editor.

You can base a new message set on an existing message set. In this case, all the definitions in the existing message set are copied into the new message set.

When you have created your message set, you must specify the following key properties:
Supported message domains
The message domains that are supported by the message set. The supported domains determine what is generated for deployment to an integration node, and are used when parsing and writing the messages that are defined within the message set.
Default message domain
The default domain of the message set.

When you have created your message set, you typically import application message formats described by XML DTD, XML Schema, WSDL files, C structures, COBOL structures, EIS systems, or creating and populating message definition files. Using the Message Definition editor, you can then edit the logical structure of your messages, and create and edit the physical formats that describe the precise appearance of your message bit stream during transmission. Alternatively, you can create an empty message definition file and create your messages by using only the editor.

When your message definition files are complete, you can generate the message set in a form that can be used by an integration node, parser, or application. This might be in one of the following forms:
  • A message dictionary for deployment to an integration node
  • An XML Schema file for use by an application to validate XML messages, or for deployment to an integration node
  • A Web Services Description Language (WSDL) file for a web services client, or for deployment to an integration node
  • Documentation to give to programmers or business analysts

Optionally, messages can be grouped into message categories for convenience. You can add messages to message categories by using the Message Category editor.

Each time you save a message set file, message definition file, or message category file, the content is validated to ensure that the message model that you are creating follows certain rules. There are rules for both the logical structure and the physical formats. This model validation ensures the integrity of your model, but does not necessarily prevent you from saving a message model file that is not valid.

IBM Integration Bus supplies a range of parsers to parse and write message formats. Each parser is suited to a particular class of messages (for example, fixed-length binary, delimited text, or XML) known as a message domain. When you create a message set, you specify which domains the message set supports. This property determines which parsers can be used when you parse and write messages that are defined within that message set.

This diagram shows the contents of the message set project, and the relationship between the message model components and the integration node and toolkit.