Friday, January 8, 2010

Shaving off standard XML for proprietary stuff

Stéphane Rodriguez, Jan 2010

Previous articles :
- Office 2010, "operation Barbarossa" edition
- Microsoft's latest aggression on ODF, codenamed "cast lead"
- Beating a dead horse
- Follow up on Microsoft latest bullshit announcement
- Microsoft latest bullshit : native support of ODF in Office 2007
- Custom XML? What Custom XML?
- Backwards compatible? One more lie by omission
- Bad surprise in Microsoft Office binary documents : interoperability remains impossible
- Typical B.S. in technical articles about OOXML
- The truth about Microsoft Office compatibility
- OOXML is defective by design

To get a feel of what happened when Microsoft shaved Word 2003 and 2007 off the XML feature which is, as we are being told, infringing one of I4I's patents, all you have to do is start Word 2003 and show the help menus.

Unfold the XML section, and depending if you are online or not, you'll see a different thing. First start with the offline Word 2003 as shown below :

Word 2003's offline help uncovers the XML features

And then to go online, only to see the entire XML section shaved off :

Word 2003's online help disclosing shaved off XML features

Ironically enough is the fact that all XML features before the cut off were regular, shall we say interoperable features, such as XML documents, XML schemas (standard XSD), document binding (standard XSLT), validation and so on. Pretty much your perfect XML toolkit.

It's now shaved off. And Microsoft has made it mandatory by pushing updates of their Office suite touching present and previous Word releases.

(as a side note, only Word is touched because neither Excel or Powerpoint ever implemented a standard XML toolkit. All their built-in or canada dry XML was already proprietary crap à la Microsoft).

Since those features are shaved off, one would expect XML to be entirely off of Word. Nope.

In fact XML is still implemented there, since in fact the Word team (the horse behind it being Mr Brian Jones, whose name appears in a gazillion patents related to Office Open XML formats, the ISO file format bought by and for Microsoft) tried many times to come up with some kind of XML stuff. They never got there on the first try, but the feature remained there when they came up with another attempt. And the second try remained there when they came up with the third try and so on. Long story short, there is XML crap all over the place in Word, resulting from previous failed attempts.

At the time of writing they still have smart tags, smart documents, content controls. And more.

Now what is of interest is Microsoft is touting as the alternative XML features made available for customers and that does not infringe, at least they tell us so, with the I4I's patents.

The stuff in question is called content controls. It used to be called Custom XML. See a previous article I wrote in which I have excerpts from a few Microsoft Office guys telling us what this thing is, including Brian Jones.

Of course Custom XML is now called "content controls" since Custom XML is too close to I4I's patents. It's obvious that it touches the patents and therefore should be removed from the product as well.

So what are content controls you ask? The Office Word team tells us in a couple articles they wrote. You can look here for the definition, and here for a few tutorials for developers. Those articles were written with much innocence back in 2006.

Microsoft's response to the infringing XML : more infringing XML...

Content controls are an extension of ActiveX controls, itself based on the 2-decade old OLE technology. See the kind of water we are treading here...

Content controls are for instance rich text controls, date controls and so on. It's 100% proprietary. To render, activate, bind a content control at run-time is Microsoft proprietary, undocumented and therefore subject to implementation restrictions. Again, for more, take a look at Brian Jones's and al. patents on the subject here.

Running content controls requires a license of Word.

Let me repeat. $Running$ $content$ $controls$ $requires$ $a$ $license$ $of$ $Word$.

To summarize, Microsoft shaved off interoperable and regular XML technologies (XSD schemas, XSLT transforms) in favor a proprietary alternative, content controls.

Who really benefits? That is left as an exercise to the reader.