One element that keeps coming up in the comments section to my blog is the idea of the quality of the specification. This argument is tied to the length of the specification and what that means for reviewers of the documents. Both of these have been huffed-and-puffed at for quite some time on various community blogs, but there is a really important test for these two items. Can successful independent implementations be built? The answer is an unqualified yes.
As I, and a number of others, have pointed out over time, the original document was significantly expanded as the members of TC45 asked for greater and greater details. This also lead to the creation of a great deal of reference information being included in the specification. To review old facts: of the 6,000 page, 5-part spec that is Ecma 376, 5,756 pages are in Part 4, “Markup Language Reference” which, “Defines every element and attribute, the hierarchy of parent/child relationships for elements, and additional semantics as appropriate” among other things (read about it here). Why is this important? Because this data is exceedingly helpful when an implementer begins building real software for commercial-grade solutions.
As for the quality of the document, it could have been cleaner from an editorial perspective – but given the volume of implementations we are seeing this is hardly a stumbling block for those looking to build real-world solutions. Granted, the ballot resolution process is going to clean a bunch of this up which is undoubtedly a good thing as well.
So how about those independent implementations? I’m not going to go crazy and try to list them all here. I would recommend checking out the OpenXMLCommunity list of projects and if you are interested in doing some work yourself to build an implementation – check out OpenXMLDeveloper.org. Also, my colleagues in Germany have provided me with this link to more than 160 projects implementing Open XML (but I think it best if you know how to read German for that one).
Here are a few:
- Monarch from Datawatch
- XMLSpy from Altova
- iPhone from Apple
- Mindmanager from Minjet
- Gnumeric from Gnome
- Dataviz Documents To Go from Palm
- Open XML IIS Analyzer from Intergen
At some point the question needs to be raised about the desire for standards bodies to have work items that represent what is current and valuable in the marketplace. There is still hard work to be done on Open XML within the formalized context of JTC-1, and that is good. But, there is no doubt about the fact that this compelling technology is enjoying an explosion of interest in the marketplace completely separate from the sale of Microsoft Office. That is a very practical measure of the quality of this specification.