Apologies to my Business Intelligence readers, this post is pretty esoteric and refers to some strange goings on in the document standards world.

Apologies also to Rick Jelliffe, any resemblance to Schematron is entirely unintended.

After the drama of the initial Office 2007 SP2 ODF support was initiated by Rob Weir, related arguments spilled out all over the place.  I got involved in a few places, but then left it alone whilst I got on with some productive work.  There’s only so many ways you can say “it’s does not exist in the standard – admit it, fix it and move on”.

Needing something to accompany a coffee yesterday, I found that the argument was still raging on Alex Brown’s blog, so I settled down for some light entertainment.

Once again, Rob Weir was arguing with Alex about some interpretation of the ODF specification and calling Alex names.  Then ‘Marbux’  weighed in with possibly the two longest comments in internet history.

This highly esoteric, intellectual argument between Dr. Alex Brown (the Convenor of ISO/IEC JTC1 SC34 Working Group 1), Mr. Robert Weir (the Chair of the ODF Technical Committee at OASIS) and Mr. Paul E. Merrell J.D. AKA ‘Marbux’ (a Juris Doctor) essentially (and I simplify enormously) about whether something specified in the schema as required for a document instance to be valid/conformant, was not actually required, because Rob said it wasn’t and Alex and Marbux said it was.  Rob had his reasons for this, but they were completely lost on me.  I mostly understood Alex’s reasoning, but all this came at the cost of a Red Bull chaser after the coffee.

Note: I was always under the impression that it was good practice for something that was invalid against the schema to be deemed non-conformant.  Rob shows just what a absolute noob I am to assume that.

Here’s the selected highlights (I know it looks unexpurgated, but take my word for it)

Rob:

“Alex, where do you read that validity of manifest.xml is required for conformance? That is news to me. Section 1.5 defines document conformance and says that conformance requires validity with respect to the OpenDocument schema. Section 1.4 defines that schema to be that described in chapters 1-16. This is confirmed in Appendix A. The optional packing format, including manifest.xml, is described in chapter 17, which the astute reader will observe is not between 1 and 16. Therefor it is not part of the OpenDocument schema to which validity is required for conformance.”

Alex:

“Err, you’re reading the wrong version of the spec. The manifest invalidity problem only occurs for the two apps (OOo/Sun plugin) which claim to be using so-called "ODF 1.2"; so for the results here, the conformance section 1.5 of ODF 1.1, that you quote, is not relevant.”

Rob:

“You misread the standard. But rather than admit and accept that, you are now trying to redeem your post by a back-up argument, which tries to apply your interpretation and prediction of what Part 3 of ODF 1.2 will say when it is eventually approved. But this text has not even reached Committee Draft stage in OASIS. It is merely an Editor’s Draft at this point. Are you really going to persist in making bold claims like this based on an Editor’s Draft, which has not been approved, or in fact even reviewed by the ODF TC, especially when contradicted by the actually approved ODF 1.0 (in ISO and OASIS versions) and ODF 1.1?”

Alex:

“No, Rob – you are the one misrepresenting ODF.
The ODF 1.1 standard states: "[t]he normative XML Schema for OpenDocument Manifest files is embedded within this specification." (s17.7.1)
How is it anything other than non-conformant, for an XML document to be invalid to a normative schema?”

Rob:

“Alex, as you know, normative clauses include those that state recommendations as well as requirements. So ‘shall’ is normative, but so is ‘should’ and so is ‘may’. Normative refers to all provisions, not merely requirements. Please refer to ISO Directives Part 2, definitions 3.8 and 3.12. So normative does not imply "required for conformance". The conformance clause defines conformance and that clause clearly defines it in terms of the schema excluding chapter 17.”

Alex:

“I’m sorry, but you have veered off into the surreal now.
If you’re maintaining that "the normative XML Schema for OpenDocument Manifest files" is in fact NOT REALLY "the normative XML Schema for OpenDocument Manifest files", then we’re going to have to disagree.”

Rob:

“Alex, read more carefully. I never said that schema was not normative. What I said is that "normative" is not the same as "required for conformance", as you had been asserting. But now I think you may be confused on this as well.”

Joe Sixpack Developer Trying To Implement ODF:

WTF!!! This is completely crazy – it would be easier and quicker to send someone round to every user’s desk and type it out in the app of their choice instead”

This reveals a real practical problem, should I wish to implement ODF.  I would need to consult the Oracle of Westford (Rob Weir) about every detail of the entire implementation, in order to be on fully safe ground.

Now if Alex Brown and various other highly qualified commenters can misread the ODF specification so heinously, needing the expert advice from the ODF Technical Committee Chair himself to put them right, what chance do lowly developers have?

It appears from this there is no chance that any developer will be able to interpret the specification properly, since only Rob Weir (and perhaps the folks working on OpenOffice) has the intellectual capacity to navigate this ball of semantic string. 

Having to cross-reference this file format equivalent of the newest, most advanced physics paper on the planet every time you write a line of code is going to lead to madness.

This leads to a huge scalability problem, with developers worldwide having to get an opinion from Rob Weir on every implementation detail – although he could save a few hours a day by giving up the blog posts and comments, it would not be anywhere near enough to cope with the deluge of requests.

So, the solution to this is clear – we need to implement Rob Weir as a web service, a Weirotron if you like. That way, everyone can query the Weirotron and get back the definitive answer to any ODF question, without having to deal with the obviously labyrinthine spec that has bamboozled so many leading XML experts.

In addition, the Weirotron could help solve those pesky interoperability issues that stem from some areas that ODF relies on the OpenOffice source code for, like Formulas, and areas where the spec is a bit light, so to speak, like Change Tracking etc.  I’m sure that this would really assist Microsoft and many other struggling developers in implementing support for ODF (or rather the Weir-approved cod-ODF) correctly, with the inherent blessing of the ODF TC Chair.

It seems like the rancour around the Open XML / ODF soap opera still simmers away.

Even though the volcano has erupted and the ash has cooled, it won’t be forgotten.

For those who don’t know the tale and want a recap:

Sun buy the commercial product StarOffice, then give it away for free. When that still doesn’t arouse too much interest, they decide to open source it instead in a move to reduce MSOffice dominance.  It is called OpenOffice.org, or OpenOffice ->

IBM and Sun dream up strategy of beating MS Office with government mandate stick via standardisation route.  Open Source folk find it an intoxicating bandwagon too->

OpenOffice file format is morphed into a standard and hurried through standardisation->

IBM put coin and feet on the street into strategy and start to make progress with some government bodies.  An IBM services bonanza beckons.  Sun wonders (as usual) how are THEY going to make money->

Microsoft, either reacting to this strategy, or in parallel, being forced by European Union, also morph their Office suite into a standard and hurry it through standardisation->

(note – slightly more fuss/interest around this than the ODF process)

IBM/Sun/Open Source folks call foul and IBM throws its toys out of the pram regarding ISO’s value.

During this debate, there are numerous mentions of corruption.  Some of it is well documented and looks like the usual lobbying that one might expect.  IBM + friends went at it hammer and tongs, so did Microsoft.

However, these nebulous claims still remain. I am reminded of Tim Bray every day I look out of my window, since the UK office of OpenText is visible from my home, a company which Tim co-founded.

One would have thought even a plain speaker like Tim would be able to voice his concerns, which should naturally have been weighed up in the context of the ‘theatre’ (in the war sense, and others) and must therefore be so heinous that he fears legal action (from Microsoft, one assumes) and has decided that discretion is the better part of valour.

I have an idea.  Anyone with any of these obviously very juicy stories can put them up on WikiLeaks.  I suppose you could always use Groklaw, but I can’t figure out if it’s one of those ‘ironic’ parody-style sites or not. It smacks of those religious site parodies, which are pretty much indistinguishable from the real thing.

I took a quick look on WikiLeaks and the only things I could find were all from Stefan Krempl, just links to published articles on heise.de.  Not very juicy.

So if anyone has any top notch dirt, I encourage them to use WikiLeaks.  I would welcome some new material to read, as the flywheel still seems to keep spinning on the same old energy.  Maybe we’ve found the perpetual motion machine.

Come on people, it’s catharsis time.  You’ll feel better. 

In a more positive vein, it looks like everyone is going to play nicely in the new ISO maintenance structures. I only said it looks like.

In the spirit of full disclosure, the company I work for are Microsoft partners (as we are IBM partners) and have implemented Open XML spreadsheet reading and writing in our products.  We are Excel-centric, so most of our customers have never heard of ODF.  Still, maybe once they get hold of Office 2007 SP2 and the ODF support, they’ll start clamouring for it.