XML Misconceptions


I'm involved in a standards project that has a small BNF syntax for representing its data in a simple textual form. Recently, it was suggested that we switch to an XML based format. I could not believe the storm that hit the project's mailing list.

While there some reasonable arguments, pro and con for switching to XML, the vast majority of messages are vehement objects to XML based on many misconceptions. I heard:

"XML requires TCP ... or HTTP ... or other network protocol" -- There seems to be wide spread assumptions that because namespaces are identified with URIs that they require fetching just to interpret the document. Similar assumptions about DTDs, Schemas and external entities.

"XML will make the data bloated and big" -- People's perceptions on the bloat are way out of line with reality.

"We don't need the extensibility XML brings"

"People can't read XML documents"

"XML is only for document markup"

"It's too hard to have a programmer write an XML parser" -- This one is true, but it misses the point entirely.

"We can't use an external XML parser on technical grounds ... on legal grounds ... on not-invented-here grounds" -- One advocate of this opinion even bragged that they didn't use the DNS resolver library and wrote their own DNS code. Someone else complained about having to read the open source license.

"XML never took off"

When I hear these things I can't help but think of people who said that mice and window systems were just a fad.

Perhaps we need an XML myths web site so we can point these people to it.