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.