In the middle part of this decade, Microsoft engaged in an extensive effort to create open standards derived from its own XML-based file formats, such as XPS and Office XML. This work was widely interpreted as an effort to forestall adoption of competing formats, such as the Open Document Format, and concerns were raised about whether the Office XML format was severely encumbered by the company's patents. Despite these fears, Microsoft ultimately saw its efforts succeed. A recently granted patent, however, reveals that the entire effort took place while Microsoft had a patent pending that covers nearly any use of XML for storing word processing documents.

The patent was filed back in late 2004 and was apparently approved only this month. It's entitled "Word-processing document stored in a single XML file that may be manipulated by applications that understand XML," but it appears to cover the use of an entire class of XML documents by any word processing program.

There are essentially two general approaches to storing rich text information in an XML file. One would involve the intermingling of the text with formatting information, which is precisely how things are handled with HTML. But HTML also nicely demonstrates the potential problems with this approach, with varying implementations of Web standards, erratic approaches to different tags and formatting instructions, and the need to maintain browser-specific versions of different Web content. It's not exactly the ideal way to handle a single file format that's intended to be read by a variety of programs.

The alternative is the approach patented by Microsoft, in which a run of text is preceded or followed by formatting information. By separating out the text, it becomes far easier to ensure compatibility across programs and among different versions of a single program. A raw text editor, for example, could simply scan the document for text blocks and discard the formatting; a program that only handles a subset of the capabilities of Word could simply use the formatting tags it recognizes and ignore the rest. That's also possible for cases where tags are intermingled with the text, but it's a much more challenging problem.

The patent examiner was clearly aware that Microsoft wasn't the only one interested in this approach, as citations appear that indicate he or she downloaded AbiWord's XML definition and looked into the use of XML in online contexts. Still, from a patent reviewer's perspective, all that matters is whether Microsoft's application either predates the other work, or is significantly distinct from it.

The patent appears to cover both the creation of the XML document and the file that's created. That would allow a certain degree of leeway in terms of interoperability, as there is nothing here that would seem to cover reading a Microsoft-generated XML document, for example. But it certainly seems that Microsoft could assert that any word processor that used this class of XML storage as a native format was violating its patents.

The key question going forward is what Microsoft chooses to do with this patent now that it has been granted. The company is under pressure in both the US and EU to increase its software's interoperability with that of its competitors, so a rigorous enforcement of this patent would seem like an express lane to further legal trouble, something the company has seemingly been anxious to avoid.

Some groups within the company also seem to be anxious to play nicely with the wider software community, raising the prospect that this patent will only be used defensively; for example, Microsoft could grant all comers a perpetual royalty-free license to this approach. Perhaps the worst thing that could possibly happen is for Redmond to not do anything for the time being, which would leave the patent hanging over potential competitors like a sword of Damocles.

UPDATE: After publication on Friday, a Microsoft spokesperson responded to our requests for comment by noting that it had included both ODF and OOXML in its Open Specification Promise, which indicates the company will not assert any claims against their use. Of this patent in particular, the spokesperson said it, "uniquely addresses a method for creating a document in an XML file format, which enables a published XSD (“XML Schema Definition”) to define rules related to the XML file format for a document and relates to elements such as a style element, a hints element, a bookmark element, a text run element, or other elements. It is not unusual to have multiple patents for similar technology areas, each specifying different innovative advancements."