Non-XML Messages:
XML Messages:
No additional work is required to come up with a message format.
Payload transformations can be easily supported using XSL.
XML Message Example
<message>
<header>
<status>OK</status>
<command>GET</command>
<queueName>inbound</queueName>
<processingRule>sortinvoice</processingRule>
<messageId>0000001</messageId>
</header>
<payload>
<orders>
<order>
<itemNumber>83726</itemNumber>
<quantity>2</quantity>
<price>10.00</price>
</order>
<order>
<itemNumber>83432</itemNumber>
<quantity>2</quantity>
<price>10.00</price>
</order>
</orders>
</payload>
</message>
XSL Stylesheet Example:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output omit-xml-declaration="yes"/>
<xsl:template match="*">
<xsl:copy>
<xsl:apply-templates>
<xsl:sort
order="ascending" select="itemNumber"/>
</xsl:apply-templates>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>