Novell’s Miguel de Icaza has an important and unusual perspective on Microsoft technology. Unlike many open source advocates, he is deeply familiar with the Microsoft platform because of his work on Mono, the open source implementation of the .NET Framework. I therefore read with interest his comments on the war against Microsoft Open Office XML now being waged by the sponsors of the rival Open Document Format.
As de Icaza observes, it is “hard to articulate” the difference between OOXML and ODF. They are XML schemas, inpenetrable to non-technical folk. Both appear to do the same thing, yet in detail they have little in common. Here’s a key comment:
The high-level comparisons so far have focused on tiny details (encoding, model used for the XML). There is nothing fundamentally better or worse in those standards like there is between XML Schema and Relax NG. ODF grew out of OpenOffice.org and is influenced by its internal design. OOXML grew out of Microsoft Office and it is influenced by its internal design. No real surprises there.
I agree. But isn’t the OOXML specification too bulky and verbose, as its opposition claims?
If Microsoft had produced 760 pages (the size of ODF) as the documentation for the “.doc”, “.xls” and “.ppt” that lacked for example the formula specification, wouldn’t people justly complain that the specification was incomplete and was useless?
Quite possibly. And I am unimpressed by the efforts of Rob Weir and others at IBM in taking pot shots at flaws in OOXML rather than being constructive in helping Microsoft transition from proprietary binary document formats to XML formats with a standardised specification.
That said, OOXML and ODF do have different aims, something which Weir does not recognize. He writes in his response to de Icaza:
OOXML, on the other hand, matches to an inane degree the internals of a single vendor’s legacy application, with no concessions to platform-neutrality.
The point Weir misses is that (as I understand it) the rationale behind OOXML is to be able to represent all the world’s immense archive of Microsoft Office documents in an XML format with a published specification and without loss of information. In that sense, its goals are less lofty than those of ODF, which wants to be the one true office document specification for the world.
That means OOXML has a huge legacy burden to carry. It also implies that much of the cruft in OOXML is not there to be used by new applications, but rather to document what has to be done to support old stuff in Office.
My background is in software development, and I’ve explored the intricacies of RTF (Rich Text Format), the non-XML specification for Word documents and pretty much what you had to use prior to OOXML. I found the documentation inadequate, too closely tied to versions of Word, and difficult to work with. OOXML is delightful in comparison. The ability to generate and consume Office documents in XML substantially benefits developer productivity.
Another benefit is in working with Office documents on the server. Ugly solutions like automating Office applications on a server in order to create or process documents are no longer necessary.
I therefore disagree that OOXML has no value.
A single Office XML format for the world would have been nice. If the ODF folk had got Microsoft on board in the early days of the specification that might have been possible, though the scenario was politically implausible. What we have instead is two formats; but at least they are both XML and therefore amenable to programmatic manipulation and conversion. I think that’s progress, though it falls short of the ideal. Furthermore, it likely would not have happened without the existence of Open Office and ODF. They have won the argument for open document formats; no need to spoil it by obstructing the standardisation process for which they fought.