We
focus a lot on creating, editing, validating, and displaying XML documents,
but one thing you don't hear much about is transporting those documents. Much
of the usefulness (and hype) around XML relates to its ability to express business
data in a self-describing, platform-independent manner. That is all well and
good, but for most enterprise business models you need an efficient way to automatically
move your XML to the various applications that process it. Add to that the likelihood
of these applications existing on different platforms, on different networks,
in different geographic locations, and... well, you might have a problem.
The simplicity of XML lends well to transport by any number of existing protocols,
but I recommend you consider HTTP. HTTP has found fame in transporting HTML
documents between Web servers and browsers, but at its core, HTTP is a simple
protocol that doesn't care what kind of data it's transferring from the server.
That information can just as readily be XML as HTML. Combine this with the plethora
of server-side technologies (ASP, Servlets, etc.) that process HTTP requests,
and you've got a great solution for transporting XML.