Microsoft has been accused of publishing "incomplete" specifications for its Office file format binaries.
The Word, Excel and PowerPoint file format specifications, which were previously only available from Microsoft by request, were published on Friday, together with details of an open-source Office binary-to-Office Open XML (OOXML) translator project.
The binaries were published in response to concerns among national bodies voting whether or not to ratify OOXML as an International Organization for Standardization (ISO) standard, according to Microsoft Office program manager Brian Jones. The national bodies were concerned that third-party developers may have had difficulties converting Office binary formats to OOXML, referred to in the ISO ratification process as "DIS 29500".
"To make it even easier for third-party conversion of binary format to DIS 29500, Microsoft agreed to... make it even easier to get access to the binary formats documentation by posting it and making it available for a direct download on the Microsoft Web site no later than 15 February, 2008," Jones wrote in his blog on Friday.
However, the file format specifications were criticised as being incomplete by third-party OOXML developer Stephane Rodriguez.
In a comment posted on Jones's blog post on Saturday, Rodriguez said that Excel's internal format table, known as BIFF, had missing records and a "reserved" specification, while Office Drawing also had unspecified records.
"I first gave a cursory look at BIFF. 1) Missing records: examples are 0x00EF and 0x01BA, just off the top of my head. 2) No specification: example is the OBJ record for a Forms Combobox," Rodriguez wrote. "Then I gave a cursory look at the Office Drawing specs. And, again, just a cursory look at it showed unspecified records."
With the specs criticised as incomplete, Microsoft's Jones announced that the binaries were available under the company's Open Specification Promise (OSP), a more formal version of the "covenant not to sue".
"The binary formats have been under a covenant not to sue and Microsoft will also make them available under its OSP by the time they are posted," wrote Jones.
Microsoft's OSP is a form of licence agreement designed to give software developers peace of mind that Microsoft will not pursue them for patent infringement should they use the binaries, or the OOXML specification, to develop code.
However, the OSP has been criticised by intellectual-property law experts as legally inexact and untested. According to Ronald Yu, a US patent agent and academic, the covenant has never been tested in court, and it includes no mention of any court or tribunal in which to resolve a dispute. Patent coverage is also not explicitly defined, according to Yu, who stressed that the OSP is neither a release nor a contract, and, therefore, needs to be treated with some caution.
Microsoft responded to Yu's criticism by insisting that the FAQs on Microsoft's OSP web page clarify the OSP sufficiently. Steve Mutkoski, regional director of interoperability at Microsoft and one of the lawyers on the team that drafted the licensing terms, described the OSP as an "innovation" that enables a company like Microsoft to gain a quick and broad adoption of a technology without needing to negotiate 20- and 30-page agreements with every party that wants to use it.
Brett Winterford contributed to this article.