You've probably heard of Simple Object Access Protocol (SOAP). Now, we also have XML-based messaging and envelopes. The MessageML Forum, an industry standards body, is working on MessageML, an open standard for sending XML messages. Somewhere around a billion emails go out every day, some of which contain important information that the recipient would take action on, given the opportunity. For example, companies send email to customers for trading alerts, flight delays, and bid confirmations. At the same time, customers have an ever-increasing number of endpoints: multiple email addresses, pagers, mobile phones, fax numbers. Ideally, companies should be able to send mail to a single address and let the recipient determine the disposition and priority of different kinds of messages.
The MessageML standard defines a "SmartMessage" as an electronic message that provides a single, standard envelope to deliver its content to a host of communications devices and applications. These endpoints include mobile phones with messaging capability, wireless Personal Digital Assistants (PDAs), pagers, fax machines, PC email inboxes, instant messaging (IM) applications, and standard telephones. Thus, a SmartMessage sent to a pager looks the same as a SmartMessage sent as an email in HTML format. The MessageML architecture separates the content from the presentation and lets the sender define how the message content appears on these various endpoints.
A SmartMessage also contains a robust set of self-descriptive attributes, or metadata, about its content. A process or recipient can examine this metadata and determine how to process, prioritize, and deliver the message.
The MessageML standard also incorporates message stylesheets that are applied to the message content to create communications device-specific message formats. Again, by separating the content from the presentation, a SmartMessage can transform its content to any other presentation format, letting MessageML interoperate with and leverage other proprietary and XML-based communications formats. For example, you could send a SmartMessage to a Wireless Application Protocol (WAP)-enabled phone by transforming its contents to Wireless Markup Language (WML), or you could initiate a speech-recognition dialog over a telephone by transforming a SmartMessage into a VoiceXML document.
The following process flow describes a simple SmartMessage life cycle:
- An Informant creates an Informant Stylesheet that defines metadata about the Informant and its valid sources or locations from which its associated SmartMessages can originate. The Informant stores this document on its Web server.
- The Informant creates a SmartMessage Stylesheet for each type of activity it wants to deliver to its recipients (e.g., a stylesheet for a Travel Itinerary activity). Within this activity is a collection of event classes associated with that activity (e.g., a Flight Cancellation event, an Itinerary Change event). The Informant defines XML schemas, which are embedded in the SmartMessage Stylesheet, to describe what the message content, or payload, looks like for each event class. The Informant also creates Extensible Style Language (XSL) documents and embeds them in the SmartMessage Stylesheet to define how each event's payload should display on the various endpoints. The Informant also stores this document on its Web server.
- A SmartMessage service provider hosts SmartMessage users who sign up to receive SmartMessages from the Informant. Each user decides where the service provider should deliver the Informant's various SmartMessage event classes, specifically to which endpoints.
- The Informant creates and sends a SmartMessage to a set of SmartMessage user accounts that the SmartMessage service provider hosts.
- The SmartMessage service provider receives, processes, and delivers the SmartMessage to each addressed user's specified endpoint(s).
As the MessageML standard becomes more solid, you can expect to see platforms such as Microsoft Exchange, AOL, and Hotmail adopt it. United Airlines, for instance, is experimenting with this technology today. Visit the MessageML Web site for more information about MessageML.