Your XML Is in the Mail

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:

  1. 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.
  2. 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.
  3. 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.
  4. The Informant creates and sends a SmartMessage to a set of SmartMessage user accounts that the SmartMessage service provider hosts.
  5. 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.

Please or Register to post comments.

IT/Dev Connections

Las Vegas
September 30th - October 4th

Paul ThurottOur Experts will show you:
• Common SQL Server
Problems
• Best Practices for T-SQL
• SQL Server Integration
Services
• Database Development

Come See Mike Otey & Tim Ford in Person!

Early Registration Now Open

From the Blogs
May 9, 2013
blog

My ISO 8601-Compliant Signature 2

My family recently just "officially" announced that we're in the process of adopting a child from South Africa. We're quite excited, of course, but there's a ton of paperwork to do—along with the need for gobs of signatures....More
May 8, 2013
blog

Use SSIS for ETL from Hadoop

In this blog post, Mark Kromer walks you through using SSIS as a way to use ETL techniques using Microsoft's Hadoop on Windows (HDInsight) as a source using Hive connectors...More
Vision road sign
May 6, 2013
blog

Cheaters Never Win, Even in TPC Benchmarks

In this portion of the series on database benchmarking, I want to tell you about one of my favorite aspects of the TPC benchmarks – CHEATING....More
SQL Server Pro Forums

Get answers to questions, share tips, and engage with the SQL Server community in our Forums.