XML: The Great Equalizer
If you've been in seclusion for the past couple of years, you may not be familiar with XML. However, chances are if you're following the movements of industry leaders such as Microsoft, IBM, Oracle, and Sun Microsystems, you're well aware that most of the products and platforms you work with are moving to some sort of XML-based architecture. XML's primary benefit is that it allows applications and systems to be loosely coupled, as opposed to the proprietary architecture days of the past in which most developers' choices were of the all-or-nothing variety (that is, all DCOM, all Oracle, and so on). Untold amounts of time and money were spent developing even more proprietary "bridges" between applications or systems so that disparate technologies could speak together. Like most great technologies, XML is so simple and clean that most newcomers think two thoughts simultaneously: "This is easy!" and "Why didn't I think of this?"
XML is currently being used to aid enterprise application integration (EAI) projects, simplify data storage and communications, and even act as the basis for entirely new distributed computing architectures such as XML-RPC and SOAP. If you're familiar with object-oriented programming practices, you'll recall that one of the benefits of OOP is the separation of function from implementation. XML also accomplishes this feat: Data is stored in a structured, platform-independent manner such that any application can "hook into" an XML data stream and immediately begin making use of itno matter the platform or vendor behind the stream. Web service technologies such as SOAP offer the ability for the tens of millions of publicly available HTTP servers to publish their capabilities for all to see, using a technology known as Universal Description, Discovery, and Integration or UDDI. For instance, InformIT could publish a SOAP API (which uses XML as the transport) to publish a continually updated list of articles by topic. Your personal home page could perform a query each time it's loaded to generate this fresh list, so that both parties win! The idea of Web services represents one of the components of the next-generation World Wide Web, one in which wireless devices may very well outnumber their wired counterparts by 2005.