This is a reply to David Nielsen’s “OOXML and Microsoft” post. Since comments are closed there, I am writing here.
David, there is nothing wrong in Microsoft opening such an important spec. We should welcome this step. But there are several things that we should take care here:
- There is already an approved, open, internationally standardized spec for office documents: ODF. So OOXML can be another spec, but can’t be another standard spec for the same purpose. The standardization push is not welcome. It is simply too late, amongst other issues.
- Microsoft opened their spec not because they wanted, but because they needed to, after ODF acceptance as the ISO standard. If Microsoft will be successful in its anti-ODF campaign, they won’t need this openness status any more and I bet OOXML v2 will be closed.
- Microsoft does not own the spec. OOXML is Ecma’s document. What MS Office implements is a something that is today compatible with Ecma’s OOXML. But Microsoft already announced they can’t wait for ECMA to add new releases. In fact, there is no guarantee that something like MS Office 14 file format will be open or integrated into ECMA’s OOXML spec. This is an excerpt from Microsoft’s Brian Jones blog and shows how Microsoft does not own OOXML:
To your last point, it’s hard for Microsoft to commit to what comes out of Ecma in the coming years, because we don’t know what direction they will take the formats. We’ll of course stay active and propose changes based on where we want to go with Office 14. At the end of the day though, the other Ecma members could decide to take the spec in a completely different direction.
- Microsoft is trying to fool everybody saying that OOXML is different from ODF. ODF is “a standard for office documents” while OOXML claims to be “a standard for office documents and compatibility with legacy office file formats”, just to not have a 100% overlap. But the “compatibility” part makes no sense because OOXML is textual XML and the legacy formats are binary. OOXML and legacy .doc, .xls, .ppt may have similar organization or structure but is impossible to be “compatible”. But even if OOXML wants to have a relation with legacy, the spec is incomplete and does not provide a mapping like “this OOXML tag is related to that stream of binary bytes in the legacy format”. In the National Bodies meetings to discuss OOXML standardization we proposed to include this mapping (then legacy .doc would become a truly open spec), or remove the compatibility statement from the spec title. If removed, OOXML would still be a beautiful spec, but could not be accepted as an ISO standards because of its full overlapping with ODF.
- OOXML reinvents the wheel and has many obscure parts. As a specification, currently OOXML doesn’t have a quality grade to be a standard.
I don’t like Microsoft either, but your argument doesn’t hold water. There are ISO standards for many computer languages, but all of them are Turing-equivalent, so by your argument the ISO should have stopped after they approved only one. Once a general-purpose programming language has an ISO standard, we should reject a proposal to standardize a competing language. Right?
We can’t wish Microsoft away, and a standards effort for their document format could improve free software implementations, so we can flawlessly convert their documents into ODF.
Dear Joe Buck: you can’t flawlessly convert OOXML to ODF.
Yes Joe, you will be able to convert if somebody reads and implements the 6000+ pages spec. Actually you won’t be fully able because I recall that the OOXML spec lets you include binary blocks from legacy undocumented formats.
And you actually don’t need a standard, only the specification of the format. To turn OOXML into an international standard is a political and marketing step desirable for widespread.
And specs use to change and evolve. Since OOXML is not tied to Microsoft but to Ecma, evolutions to the MS implementation may not be transferred to the documented OOXML spec in the future. And I bet they won’t be.
So the point is to welcome Microsoft for opening the spec, but due to the circumstances they decided to open (read post), it is not desirable to have this spec to become a standard or widespread.