W3C

XML, a decade…

Depending on how you count, you might consider that XML is 10 years old. Round years are not necessary meaningful but they are like milestones on a road helping us to look back and to summarize what has been achieved. With this spirit, Uche Ogbuji has written an excellent article The XML Decade. The author is going through XML development history as well as tensions between technological choices in XML communities. One of the fundamental choices of creating XML was to remove the data jail created by some application or programming languages.

… it is extremely valuable to develop data so that it outlives the applications that presently operate on it. …

Generic coding is the foundation of XML and related technologies. One of the most important principles you should adopt in using XML is “If any aspect of the XML design is too closely tied to the application, consider that a bug.”

The author remind us that standards building is hard work. It’s a perpetual stress, balance between local interests and global interests. People pushing their own vision, their own agenda, their own culture. It is part of the process.

XML’s success is rooted in the convergence of a huge diversity of backgrounds and interests, and this same strength is the source of many conflicts. The world of XML has always had battling factions; more so, in my observation than you find within other technologies of similar breadth. There is no aspect of XML that has not been exhaustively debated, and that does not lead to deep divisions in practical application. In many cases of technological factionalism the struggle is really over a prize in business competition. Usually one vendor wants to enshrine their approach to the standard so as to improve their penetration of the marketplace. Certainly a good deal of that does go on in XML but many basic philosophical differences constantly threaten to tear the XML community into sub-groups.

The article is a MUST read, I would also recommend that you read and keep handy the reference article New to XML.