[This local archive copy mirrored from the canonical site: http://www.microsoft.com/msdn/news/imho/012198.htm; links may not have complete integrity, so use the canonical document at this URL if possible.]
XML: A better way to move data across the Web
by John Swenson
One of the hottest topics at Microsoft's upcoming Web TechEd conference Jan. 25-28 is sure to be XML, a technology that many believe is destined to become the universal language for describing and transferring data on the Web. The last time we wrote about XML at MSDN Online in early December, we focused on how developers can tag documents with XML. Once tagged, these documents are capable of describing themselves and the data they contain to Internet Explorer 4.0 or another XML-enabled application.
It's a mistake to focus too heavily on XML's role as a document markup language, howeveryou could miss the technology's main benefit: XML's ability to describe and deliver data. "Everyone in the universe, it seems, regards XML as a way of marking up documents," explains Adam Denning, group program manager of Microsoft's XML team. "That is certainly useful … but we also believe in XML as data. In other words, as a way of moving data from one place to another."
A new data transfer mechanism
XML could become a universal technology for transferring data between applications, Denning predicts, just as HTML has become a universal technology for displaying information on the Web. "The key message we want to get across is that XML is to data what HTML is to display," he says. "XML is by no means a competitor to HTML."
Said another way, XML complements, not replaces, HTML. While HTML is all about defining how information is displayed, XML has nothing to do with display. XML is all about describing information. For example, an HTML tag might define the color or font size of a word, but it says nothing about the actual meaning of the word. An XML tag can describe the meaning of any word or termidentifying it as a person's name, a product name, date, or whatever. The descriptions can be as specific as a developer chooses to make them.
Users can even build their own XML vocabularies (hence the "eXtensible" in XML). An automotive trade group, for example, could build a specialized XML vocabulary of automotive terms, and then tag its data with those terms. Microsoft is working with various industries to help them create their own XML vocabularies, Denning says.
After a set of data has been described with XML, Internet Explorer 4.0 can parse the information and display it as HTML. An XSL (eXtensible Stylesheet Language) processor handles the translation to HTML. (Microsoft recently posted a technology preview version of the Microsoft XSL processor on the XML Web site.)
Pour on the XML
It's important to understand that XML data is handled completely apart from the user interface, says Tom Johnston, a group product manager at Microsoft. An easy way to visualize this is to think of pouring XML data into your HTML forms, he explains. The forms may change for different users, but they all access the same set of XML data, allowing users to process and display that data in many different ways.
Developers who want to create the most sophisticated and powerful Web applications should consider using XML in conjunction with Dynamic HTML, Johnston advises. Dynamic HTML provides a state-of-the-art technology to design the user interface of a Web application, while XML provides a state-of-the-art way to access data.
W3C standardizing XML
There are still technical challenges to be solved before XML is ready for everyone, Denning says, such as how to let users locate and use XML information published on the Web. Microsoft and other members of the World Wide Web Consortium (W3C) are working to develop solutions to these problems and implement them in the group's final XML specification. (The W3C issued an early proposed recommendation for XML 1.0 on Dec. 8.)
Developers who want to learn more about XML can visit Microsoft's XML home page or the W3C's XML page. Denning's team has created a downloadable demo of a Web site that uses XML to host an online auction, complete with live bids viewable by all the Web participants. There's also an extensive description of how Microsoft's developers built the XML demo.
Educate yourself on XML
Despite XML's newness, the technology is rapidly gathering momentum. "XML is big," Denning says. "Everyone's talking about it. There's so much to it, and so many ways it can be used." Because so many developers are interested in XML and yet so few really understand it yet, there's a big opportunity for XML education—books, seminars and articles—to take off the way HTML education did, he says.
He encourages developers who want to get an early start with XML to take their existing information, whether stored in documents or databases, and begin to mark it up using XML tags. If you don't want to do this all by hand, consider using some of the first XML tools, which were announced at Internet World in December.
Developers looking for some in-person training on XML can attend the Web TechEd conference in Palm Springs, Calif., where Denning will give a presentation on XML and where there will be other Microsoft XML experts to answer your questions. Bay Area residents can hear Denning speak about XML on Jan. 15, at a public meeting sponsored by the North Bay Multimedia Association. For details, see the association's Web site.
More meaningful information
Although the XML specification is still not complete and there is a need for many more XML tools, developers have enough information to get started today with this new technology. As you do, think about XML as a way to move data around the Web, between different Web-enabled applications.
The ultimate promise of XML, Denning says, is that it will allow Web publishers to provide users with information they find more meaningful. Once the technology has matured and Web publishers have created rich sets of data described by XML, users will find it easier to extract the information they want.
Comments? Send us e-mail.