X

Putting XML in the fast lane

Data exchange format is just too slow, some say. But there's debate over the best way to make Extensible Markup Language fly.

Martin LaMonica Former Staff writer, CNET News
Martin LaMonica is a senior writer covering green tech and cutting-edge technologies. He joined CNET in 2002 to cover enterprise IT and Web development and was previously executive editor of IT publication InfoWorld.
Martin LaMonica
4 min read
The technology known as Extensible Markup Language has become a nearly universal way to share information online. But there's a growing recognition that XML's benefits sometimes come with a price tag: sluggish performance.

That problem is now spawning efforts to speed up XML traffic. Proponents say a skinnier XML will boost the speed of everything from Internet commerce to data exchange between cell phones. But so far, there's no agreement on the technology to make that happen.

Here's the problem: Right now, the XML standard calls for information to be stored as text. That means that an XML document, such as a purchase order or a Web page, can be easily viewed by a person or "read" by a machine, either through widely available text editors or XML parsers.

News.context

What's new:
Concerns over Extensible Markup Language's performance has spawned efforts to speed up traffic with a binary format.

Bottom line:
Although there's a growing recognition that XML speed is a potential problem, there's no agreement on how to fix the problem. Critics are wary of making XML proprietary and spoiling its success.

More stories on this topic

But performance problems result from XML's tendency to create very large files. That's in part because XML formatting calls for each element within a document to be tagged with labels written out as text. What's more, XML-based protocols, called Web services, also generate a great deal of XML traffic.

"Not only is XML verbose, but it's extremely wasteful in how much space it needs to use for the amount of true data that it is sending," said Jeff Lamb, chief technology officer of Leader Technologies, which uses XML extensively in teleconferencing applications and believes that a change is needed.

The leading candidate to help alleviate XML's performance woes is a technology called binary XML, which calls for a new format that compresses XML transmissions.

Sun Microsystems has started an open-source Fast Infoset Project based on binary XML, and the standards body responsible for XML, the World Wide Web Consortium (WC3), has formed the Binary Characterization Working Group to consider putting XML in binary format.

On the face of it, compressing XML documents by using a different file format may seem like a reasonable way to address sluggish performance. But the very idea has many people--including an XML pioneer within Sun--worried that incompatible versions of XML will result.

"If I were world dictator, I'd put a kibosh on binary XML, and I'm quite confident that the people who are pushing for it would find another solution," said Tim Bray, who's both co-inventor of XML and an executive in Sun's software group.

"But as it is, these people think they're right and they're not stupid, so maybe they are right. Thus, let's hope that they play nice with standards bodies and provide that free open-source software--all of which the Sun Fast-Infoset people are doing, to their credit," Bray said.

Putting the squeeze on XML
The Fast Infoset plan, which represents more than a year of work, proposes that XML documents get shrunk down into a binary format in order to speed up transmission of files over the Internet. Sun has chosen a compression method that's already a standard used in the telecommunications industry.

The Sun engineers behind Fast Infoset argue that binary

encoding is necessary because it can greatly improve performance, which is necessary in certain situations.

In initial tests, they found that applications perform two or three times faster when using the software. The goal of the Fast Infoset project is to generate interest among developers and eventually create a standardized binary format.

Manufacturers of consumer devices such as Canon, as well as mobile-phone companies such as Nokia, have argued for a binary XML format. Without it, large files such as images will take too long to download to devices such as cell phones, they argue.

The primary concern is interoperability. Potentially, several different binary formats for specific purposes could emerge, which are not universally understood. For example, there may be a method for encoding images sent to consumer electronics, which may differ substantially from others.

Bray is skeptical of the entire notion of converting XML to any format other than text.

"The fact that XML is ordinary plain text that you can pull into Notepad...has turned out to be a boon, in practice," he said. "Any time you depart from that straight-and-narrow path, you risk loss of interoperability. Experience with interoperability via XML as it is, has been excellent. Why take chances?"

Bray noted that there are methods for speeding up XML traffic other than creating a binary format. Advances in networking and processing power go a long way in addressing performance concerns, though perhaps not on battery-constrained mobile phones, he said.

Janet Perna, the general manager of IBM's information management group, said one alternative to binary XML is to handle the mushrooming in XML traffic with faster networking. Five or six years ago, people thought that the Internet would be too slow for doing online commerce, but the industry eventually overcame those barriers, she said.

"I don't see (growing XML traffic) as a limitation here. I think we'll keep up with it," she said.

ZapThink, a research firm specializing in XML and Web services, echoed concerns over binary XML, notably the possibility of proprietary implementations. ZapThink analysts also noted that an XML message can touch several different pieces of software and hardware, such as security systems, all of which would support any binary XML standard.

ZapThink's Ron Schmelzer said binary XML may be limited to niche uses such as high-volume applications, which demand the best performance.

Leader Technologies' Lamb supports the idea of binary XML but with one important caveat--that it be standardized.

"The amount of transactions that contain XML continues to exponentially expand, so we don't want to get caught behind the problem," he said. "But if we can't achieve a standard (binary XML), then my support would go way down."