You can think of a message as a packet of data that is sent from one place to another. The sender and receiver of the message will have agreed the structure of the message and what each field in the message means. This is the platform and protocol independent logical structure.
The sender and receiver will have also agreed on the physical representation of the message, how the data is physically laid out on the wire. For example, if you define a message that conveys information about a debit of an individual's bank account, it can be represented in different physical forms (examples are XML, or a fixed structure such as a COBOL copy book). The meaning and data is the same in both cases: only the physical layout has changed.
The following example shows how a very simple logical message can have different physical representations.
int A;
int B;
int C;
<Msg><A><xxxxxxxx></A><B><xxxxxxxx></B><C>xxxxxxxx</C></Msg>
where xxxxxxxx is the value of the integer represented as a string (XML deals only with strings).
An alternative representation might be:<Msg> A = "xxxxxxxx" B="xxxxxxxx" C="xxxxxxxx"</Msg>
where the values of the integers are stored as XML attributes rather than XML elements. You supply the precise XML rendering for each field in the message as XML properties.
{A_tag:xxxxxxxx;B_tag:xxxxxxxx;C_tag:xxxxxxxx}
An alternative might rely on the data being ordered so only the terminating delimiter needs to be specified, as follows:
[xxxxxxxx;xxxxxxxx;xxxxxxxx]
You supply the precise identification regime as TDS properties.
This shows that the logical model is unchanged. It is constant, regardless of the physical representation that you choose to model on top of it, using the physical format support provided by the MRM domain. The MRM parser is able to transform the message from the input physical representation to any number of output representations, based on the wire format layers that you have defined.
Once you have created your message set, you can create physical formats. You do this using the Message Set Editor. When you next save the messageSet.sfmset file, any new physical formats are added to all the objects in all the message files in that message set.
The next time you edit an object in a message file, you will see the physical formats in the properties hierarchy pane of the Properties tab. If you click a physical format for an object, you will be presented with a property sheet where you can enter the information for that physical format for that object.
This is due to the different nature of each physical format, and these differences are explained in more detail in the section for each physical format.
There is no limit to the number of physical formats you can create in a given message set. However there are some recommendations that apply if you want to mix physical formats of different kinds in the same message set.
For further information, see Message sets. Physical formats can be deleted if no longer required.