OOXML is REALLY BAD (But then we already knew that didn’t we?)

I know there has been a great deal of written commentary about why OOXML should or should not become an ISO standard. Just look back though this blog for many of them 😉

Recently however, Rob Weir has documented an incredibly simple, telling and fascinatingly descriptive demonstration of exactly why OOXML is such utter crap and should never become a standard in its current format. He shows how a simple formatting rule looks when saved using OOXML or ODF* based applications. See Rob’s table and comments below:

* ODF is the ISO approved standard for document formats and is used by many platform independent applications such as OpenOffice.org and KOffice.

… let’s take a look at how OOXML and ODF represent a staple of document formats: text color and alignment. I created six documents: word processor, spreadsheet and presentation graphics, in OOXML and ODF formats. In each case I entered one simple string “This is red text”. In each case I made the word “red” red, and right aligned the entire string. The following table shows the representation of this formatting instruction in OOXML and ODF, for each of the three application types:

Format Text Color Text Alignment
OOXML Text <w:color w:val=”FF0000″/> <w:jc w:val=”right”/>
OOXML Sheet <color rgb=”FFFF0000″/> <alignment horizontal=”right”/>
OOXML Presentation <a:srgbClr val=”FF0000″/> <a:pPr algn=”r”/>
ODF Text <style:text-properties fo:color=”#FF0000″/> <style:paragraph-properties fo:text-align=”end” />
ODF Sheet <style:text-properties fo:color=”#FF0000″/> <style:paragraph-properties fo:text-align=”end”/>
ODF Presentation <style:text-properties fo:color=”#FF0000″/> <style:paragraph-properties fo:text-align=”end”/>

The results speak for themselves.

What is the engineering justification for this horror? I have no doubt that this accurately reflects the internals of Microsoft Office, and shows how these three applications have been developed by three different, isolated teams. But is this a suitable foundation for an International Standard? Does this represent a reasonable engineering judgment? ODF uses the W3C’s XSL-FO vocabulary for text styling, and uses this vocabulary consistently. OOXML’s representation, on the other hand, appear incompatible with any deliberate design methodology.

I fear that before we can tackle harmonization of ODF and OOXML, we will first need to harmonize OOXML with itself!

I love how convoluted and completely indecipherable the OOXML representations are; and they are all different depending on which application you use! It’s laughable really.

Honestly, how on earth can the US NB, for example, have just announced their decision to vote yes to OOXML unless they have been thoroughly corrupted – as have so many other of the ISO National bodies and sub-committees involved in this whole sorry saga.

To my mind there will be two losers if OOXML becomes IS-29500:

  • Us – That’s all of us as consumers and users of electronic documents
  • ISO – They have already lost a great deal of respect and credibility. If OOXML passes they will have none left. They will become an irrelevance in technology standards at least.

I can see the IETF (The body responsible for much of what has made the Internet work) becoming a far more important standards setter going forward…

Tags: , , ,


  • Kim says:

    If OOXML doesn’t pass, Microsoft will bad mouth ISO so badly that they will lose all credibility anyway. Like they did to some of the people in the Massachusetts government.

    It’s a case of frying pan and fire already. I don’t think there’s much hope left for ISO credibility.

  • Juergen says:

    ISO worked well for a long time and didn’t need any structure to prevent fraud as companies participating had a common goal to generate a standard useful for everybody. Sure, they made some mistakes but they were able to correct them.
    With a convicted criminal company trying to hijack it they had no tools in place to prevent it from happening.
    The best would be to shut down ISO and start a new group which has provisions in place to prevent such things.

    What I don’t understand is why people get so excited by all the flaws in MSOOXML. Isn’t that just their normal programming style just in published form and not hidden behind an EULA? (specifications? what are specifications?)


  • tz says:

    It’s only engineering. And I have a bridge over I-35W in Minneapolis which is going cheap.

    Nero forced the senate to vote honors on his horse. The horse was more honorable than the senate.

    Apparently ISO wants to become equally respected. The US NB seems to be in that condition.

  • Robin says:

    OOXML is a document schema specification.

    Have you considered how long the concept of the document has been with us and how much many of the facilities of WEB 2.0 are erroding the value of a single document?

    Consider the rise of content management systems and wikis. Instead of an individual authour making a mammoth effort to create a monolithic voloume, we are moving to a world where disperate individuals make a small contribution of specific expertise in bite size chunks presented through in a content management system. Be this a Wiki or any other technology.

    Pragmatically, Microsofts OOXML has to be as it is to preserve historical bagage. It will become increasinly irrelvant as people discard document creation for content creation. This is why microsoft fears google apps.

    Don’t get steamed up about it OOXML. Simply make sure that standards for CMS don’t enforce vendor lock in.

  • […] first one speaks about the degree of manipulation. Honestly, how on earth can the US NB, for example, have just announced their decision to vote yes […]

  • Ok, can somebody please explain me the color-code for OOXML-sheet? That one is really f*cked. Usually you would just use the color style rrggbb (replace with hexadecimal values), but why the extra two? What do they do? And how could they possibly be part of a rgb value?

  • Simon says:

    The ISO people are probably just dyslexic….. they didn’t notice that they were approving “Office Open XML”…. they thought that they were approving “OpenOffice XML”

  • Helge W. Larsen says:

    I’d guess that the first two digits are for opacity, or it’s just a typo.

    PS: Hej Rohde! 😀

  • Well I don’t think a typo is likely (though it is Microsoft). But well opacity is a possibility, but then I have to ask: what does an opacity value do in an rgb-value?

    Ps. Jamen hej Helge 🙂

  • Helge W. Larsen says:

    Why not? It’s ugly anyway 😛
    Anyway, when I said “typo” I meant the blogger.

Leave a Reply

XHTML: You can use these tags:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>