I see that Microsoft lost an appeal in the “Custom XML” litigation, and may be forced to disable that functionality in Microsoft Office. This is a short backgrounder explaining what “Custom XML” is about, and why nobody should care.
The “X” in XML stands for “Extensible” and that’s because anybody can
invent an XML language. You could post a chunk of text on the Internet
And you wouldn’t have to ask anyone’s permission to use the terms “tool”, “tier”, or “frobnosticate”, because of the extensibility.
Of course, doing that isn’t very useful. Most people who use XML work with handy pre-cooked sets of tags like RSS or Atom or XHTML or ODF or OOXML, and leave the extensibility to the people who do the pre-cooking for us. Most times, you never actually see the XML.
History · But back the era of XML’s predecessor SGML, and even somewhat into the XML era, there was this vision that everyone should go out and invent new XML languages to meet their own particular business requirements. I think that these days, most people have come around to the view that you shouldn’t do that.
Back in the day, the dream was that you’d create your new language, and then you’d empower people to generate new documents in that language, using a specialized SGML or XML editor. These things were general-purpose parser/editor frameworks that could be customized to meet the needs of any particular tag set; the idea being that they could then be used by non-technical subject-matter experts. The first wave were made by now-forgotten companies named “SoftQuad”, “Arbortext” and some others.
Unfortunately, it turned out that doing the customization was hard, and the market wasn’t that big, and nobody ever really made serious money. I see that the products (XMetaL, Arbortext) still exist, and are being used. Last time I checked, XMetaL was being used in the US House of Representatives to draft legislation, for example. But was never that big a product category.
Microsoft’s Variation · This brings us to Microsoft’s Custom XML. The idea is a hybrid; you can take the OOXML used for Office documents, extend it with some of your own private tags and attributes, and then customize Office to support authoring and processing.
At the time of the huge OOXML dogfight, one of the reasons Microsoft claimed that the world needed OOXML, even though there was already a perfectly-good ISO-standard XML office-document format, was that it enabled this wonderful customization feature.
People like me, who had experience with the extreme difficulty of doing this kind of customization, the extremely limited number of places where it made sense, and the high proportion of failure among people who tried to do it, shouted “That’s a bug!” Given that the number of organizations that deploy Office is huge, I bet Microsoft can trot out a few customers who’ve got good results with Custom XML. But I also bet that, first of all, the proportion who try is tiny and, second, that among those who do, few succeed in getting much business value.
So if Microsoft is forced to drop this particular feature, I’m pretty sure the customer pain will be strictly limited. Consider the nasty ratio between software complexity and market size; While Microsoft will never admit it, I wouldn’t be surprised if certain product managers in Redmond are doing high-fives right about now.