A common pattern is to send XML messages embedded inside Text messages. This pattern should be more directly supported. There are many objects that can serialize/deserialize themselves to/from XML. Many objects are generated from XSD files via the XSDObjectGen tool. These objects have built-in serialization code support. Generating objects from XSD allows for cross-platform interoperability (e.g., Java <=> C#) .