OOXML: the end of the beginning.

6 April 2008

So ISO rubberstamped Microsoft's OOXML, a lame excuse for an 'open' format.

The promise of ODF was that we could free the information inside office documents, making it available to new innovative programs and web services. Sadly, the real aim of OOXML was to maintain Microsoft's Office Monopoly. This created a massive conflict of interest in a large number of the committees. I wonder if society will look back at this as the moment that general progress of the information revolution was put back a generation?

Dirty tricks at ISO

One of the main problems was that ISO itself is not standardised. Having every country do its own thing has made it much easier for a single large vendor with a lot of money to subvert the process. The voice of technical reason lost out to Microsoft's cold hard dollars, and in the process ISO has lost a lot of credibility.

The national standards bodies are supposed to represent the interest of their populations, instead we had Microsoft's own employees, or employees of Microsoft's Business Partners, voting for Microsoft's standard. This is a massive conflict of interest, and it is the general public that have been shafted.

The OOXML website has made a list:

> Presence of Microsoft Business Partners has been reported in the following countries: Belgium, Brazil, Colombia, Denmark, Egypt, Italy, Ivory Coast, Kenya, Mexico, Nigeria, Portugal, Slovenia, Sweden, Switzerland and the United States of America. Furthermore, it has been reported in several countries, such as France and Malaysia, that Microsoft has lobbied the government and the responsible ministers to override the decisions of the technical committees, which spoke out against an approval of the format.

I was particularly unimpressed with BSI, the UK standards body. Did nobody tell them that Easter is over already, that we no longer need a Judas? There was over a month between the Ballot Resolution Meeting in Geneva and the vote deadline. However, the BSI publicly opposed OOXML, and in the last day or two secretly changed their vote, avoiding the British public whom they are supposed to represent. BTW, the head of the British commitee was ... you guessed it ... a Microsoft Business Partner.

Microsoft's own planet

By approving OOXML, ISO has made one hell of a mess. Not least because the so-called "standardisation process" did not involve much standardisation. OOXML is still rather un-standard in that it conflicts with a number of other standards. Here are some of the easy to understand problems:

We already have an open standard for mathematical formulae and notation, it is called MathML and is published by the W3C math working group.

  • OOXML ignores this and uses its own Microsoft-specific Maths language.

We already have an open standard for vector graphics called Scalable Vector Graphics. This was produced to replace vendor specific formats such as Adobe's PGML and Microsoft's VML.

  • OOXML ignores this and uses Microsoft-specific VML.

We have a specification (RFC 3987) for UTF-8 capable Internet addresses. This allows URLs to be written in any language.

  • OOXML ignores this and can only use Latin characters in URLs, so speakers of Chinese, Japanese, Korean and many other languages are plain out of luck.

Other standards, including OpenDocument, support any type of weekend. This is because in Israel and dozens of Muslim countries, the weekend is not Saturday and Sunday.

  • OOXML ignores this and forces you to use the Christian week. If you are a Muslim or a Jew, well tough luck.

The Gregorian calendar has been an open standard since 1582. For example, the whole world agrees that according to the Gregorian calender, the first of January 1900 was a Monday.

  • OOXML ignores this and uses Microsoft's own strange view of time. For example, according to OOXML which includes the bugs from Excel, the first of January 1900 is a Sunday, despite it being a Monday in the Gregorian calender. Indeed, no historical date can be relied on. Talking of 1900, according to the Gregorian calender, 1900 was not a leap year, but guess what, according to OOXML, it is!

We could go on and on. There are also lots of important features, macros for example, that are referred to in passing but are not defined in the specification, how they are supposed to work is still a big secret.

The biggest problem of all is that we also have ODF, a technically far superior standard. ODF is also supposed to be the standard for office documents.

Where do we go from here?

> Now this is not the end. It is not even the beginning of the end. But it is, perhaps, the end of the beginning. Sir Winston Churchill, November 1942

How does one deal with two incompatible standards? Microsoft always trots out this concept of "competing standards", but this is doublespeak; by definition if there are more than one specification then there is no standard.

Well another option is that one of the standards is ditched. That is not going to happen in the short term, it seems that positions are far too entrenched for that.

The only option left is a process of harmonisation between OOXML and all the standards mentioned above, including ODF. This was already suggested by France and others, but ISO ignored this. Well, even if ISO will not be the venue for this, the harmonisation will happen anyway, outside ISO.

You can stand under my umbrella

To start with we are going to need a 'meta-standard', an agreed mapping between ODF elements and OOXML elements. Microsoft probably won't participate in this, but that does not matter if all the producers of ODF-compliant software are on board.

The key is that when someone opens an OOXML document and saves it as ODF, that the same ODF document is produced (and vice-versa). This way, the free world can carry on with ODF regardless, and let OOXML fail on its own lack of merit.

Is OOXML an ISO standard or a Microsoft standard?

An interesting question is who controls the evolution of the 'standard'? The OOOXML specification was originally written by Microsoft staff. It was then rubber-stamped by ECMA and handed on to ISO, who made a few tiny changes and stampted it again.

However, the standard is now controlled by an ISO committee called JTC1/SC34 who are tasked with improving and stabilising it.

Microsoft may like to think that every time it produces a new version of its "Microsoft Office" product, it can just fax the changes back to ISO, but that is not how it is supposed to work, it is up to the SC34 committee and anyone should, at least in theory, be able to submit suggested amendments to the standard.

A lot of work was done in the previous stage that the Ballot Resolution Meeting in Geneva did not have time for. National standards bodies and independent experts wrote reports and draft fixes for many of OOXML's technical defects; which mostly were ignored. These should be brought back to SC34 as amendments.

Discuss this post - Leave a comment

1 Alex Willmer says...

Succinct summary Zeth, one minor correction. NOOXML made the list, I wish they were the OOXML, but that's sowehere on microsoft.com. Alex

Posted at 12:09 a.m. on April 7, 2008


2 Andy Loughran says...

It's a really nasty situation to be caught up in at the moment - as it's one of those rare breeds of topic that have so much impact on the future of information - but which fail to ignite the passion of anyone other than geeks. Us geeks can see the massive difference adopting this standard will make - however, because of the brilliant way geeks in the past have reverse engineered stuff - most people think they'll just do the same to OOXML. (that's assuming other people think, which is doubtful).

What does ISO mean?

Without government and public support, ISO means nothing. It's become a private members club. Where were the British Government when ISO was ratified. - "It's great to see that OOXML has become an ISO standard as we believe it's good for our country." It's only good for one country - America.

Forget the minnows who are going to benefit from getting Windows Software at a massive discount. Sure - it's a nice perk to be a start-up business and say you run the same software as Goldman Sachs (just an out-of-my-hat example) - but the software market is going under such a massive change with this ongoing revolution we call the 'internet' that having the 'current best' is like having the white stuff on top of a wave. It's great and that.. but it's gone too fast to be useful. Unless you were out there at the start - the white stuff is pointless.

You need paddles!

Paddles are what can get you out there in the first place. With the white stuff, you just keep coming back to the shore, often prematurely. With the paddles you can come and go as you wish..

I've only just started playing with XML and XSLT - and it's really profoundly impacted on what I believe can be acheived. Publshed XML standardization means so much for the future of Information. It's a bit like playing with LaTEX.

Some people know HTML.. imagine on this blog, the titles were all in the <head><title> XML element. You could print a list of blog titles just by pulling that information.

Now imagine a more complex document, but with publish standards that you could pull information out from.. a pie chart on sheet 7 could be integrated into a document simply by cross-referencing it's XML.

XML can be document based API for the average user.

Microsoft have broken this.

Posted at 12:15 a.m. on April 7, 2008


3 Dan says...

ISO - I Sold Out

Posted at 11:28 p.m. on April 9, 2008


What do you have to say?

Show Editing Help


About

Hello, my name is Zeth, I'll be your host here.

Command Line Warriors is about taking control of your own technology, it looks at our experiences of computing; especially using GNU/Linux, the Python programming language, the command-line and issues such as techno-ethics, best practices and whatever is cool now. If you take control of your technology then you are a Warrior too!

This site is your site too which means that you can contribute and get involved. You can leave comments using the facility provided. For me, the comments and discussions are by far the best part of the site. So please do have your say!

Latest Discussions

Kurushiyama

June 30, 2008
XML is no replacement for SGML, it's a subset.
An Introduction to ReStructuredText

Peter

June 27, 2008
This is pretty nice, maybe if an mget or mput could be added it would really improve its use. not sure how to do that couldn't figure it out using ...
SFTP in Python: Really Simple SSH

Bryce

June 25, 2008
Sorry to comment on an older post, but I wanted to point out that you misunderstand the purpose of at least two of the extensions you mentioned: Foxmarks and Greasemonkey. ...
Will Epiphany be able to compete with Firefox's extensions?

The Dude

June 24, 2008
1. Green Eggs 2. Ham 3. *things* .. _Here: http://google.com/
An Introduction to ReStructuredText

S.

June 20, 2008
A space is .25 of a level??? Instead of tabs or spaces, or tabs being so many spaces, there should be a "level" character, where one character equals one level ...
Twelve commandments for Beautiful Python code

jk

June 20, 2008
First, excuse my english. I was using firefox like every body else, until one day i look on Top command utility (system monitor) that firefox was using 190Mb of my ...
Epiphany and Webkit 2008

Tom

June 17, 2008
find -exec is nice, but escaping can become complicated if you want to execute, say, awk using a weird pattern. My preferred way is not elegant at all but very ...
Five Tips for Easter

Casual reader...

June 16, 2008
"Firstly, sending your friend a 6 MB file over the network, is nothing like murder. " It is true that sending your friend a file over the network is nothing ...
Filesharing is the democratic choice

Adam Bielinski

June 15, 2008
I like using epiphany because it's fast and lightweight, and is more intuitive in a GNOME environment. I don't think extensions are everything.
Will Epiphany be able to compete with Firefox's extensions?

Kewlmyst

June 12, 2008
Hmmm ... I have been rsync for a long time just to do back ups, but be aware that if you put the --delete option, and have a nice cron ...
Backing up my laptop

yegle

June 12, 2008
@Zeth Hello Zeth,can you share your script you mentioned about the Six degrees of separation?I'm so intrested about it~ And, this is really an excellent work !Thank you for shareing ...
Twitter and GNOME integration

Orlandus

June 9, 2008
Well, if they offer only an object-code-only license.and no object code, then I suppose nobody is legally entitled to have the software at all.
Are your Firefox extensions proprietary software?

Swashbuckler

June 5, 2008
"object code is a C term." Uh no. It's any compiled language.
Are your Firefox extensions proprietary software?

Craig

June 4, 2008
Here's a thought: I don't recall ever being asked to agree to a EULA before downloading a Firefox add-on. Maybe I just haven't downloaded any proprietary ones, but I think ...
Are your Firefox extensions proprietary software?