Standards, Patents, and the OSP

Arthur C. Clarke famously wrote that “any sufficiently advanced technology is indistinguishable from magic.”  Another characteristic of advanced technologies is that they often contain intellectual property (IP) that may be covered by patents.

When such a technology becomes standardized, though, implementers need to feel comfortable that they have access to the technology on a non discriminatory basis. This is typically dealt with in one of three ways: either the technology owner agrees to license necessary patents on a RAND basis, the technology owner’s agreement to license necessary patents on a RANDz basis or the technology owner agrees not to assert necessary patents.  The reason international standards exist is to enable and facilitate interoperability between multiple implementations, and it would surely limit adoption if implementers had to worry about whether they could obtain access to IP that was necessary to implement the standards.

Some examples of companies’ agreements not to assert necessary patents are IBM’s Interoperability Specifications Pledge, Sun’s OpenDocument Patent Statement, and Microsoft’s Open Specification Promise (OSP).

In the case of the OSP, we’ve published a list of covered specifications, and we’ve made a public commitment that we will not assert patents that we own (if any) which are needed to implement those specifications.  The list include ISO/IEC standards such as ISO/IEC 29500, standards from consortia such as Ecma and OASIS, and also documentation that Microsoft has published for various protocols and formats that we use in our products.  The list of covered specifications is constantly growing, and includes not only the Open XML spec itself (both ECMA-376 and ISO/IEC 29500), but also many closely related technologies including the Office binary formats, the Office 2010 extensions, and the published implementer notes.

It’s important to emphasize that the protection of the OSP applies to implementers regardless of whether they perform any other action.  You don’t need to file a request, provide notice, sign an agreement, or do anything else.  You can simply get to work implementing any of the covered specifications, and know that you have free global use of any Microsoft patent necessary to implement those specifications.  You also don’t need to consider the details of any specific patents, because the OSP’s protection applies to patents which Microsoft currently owns, patents that may be issued to Microsoft in the future, and patents that Microsoft may acquire in the future.

I’ve summarized the OSP here because I’ve been asked a few questions about it lately, and I thought it would be good to provide a simple explanation in layman’s terms of what the OSP is all about and how it works.  That said, I should add the obvious caveat that I am not a lawyer.  So if you’re looking to dig into the details of how IP issues are addressed in standards development, I’m no expert.  But that’s the point, really: you don’t need to be a legal expert, or do any kind of legal analysis, to know that you can freely implement Open XML (and many other standards) without worrying about whether a particular Microsoft patent applies or not.

Comments (7)

  1. Luc Bollen says:

    "the OSP’s protection applies to patents which Microsoft currently owns, patents that may be issued to Microsoft in the future, and patents that Microsoft may acquire in the future."

    What about patents that Microsoft currently owns, in the case they are sold to a third party (whether a patent troll or a bona fide company) ?  Did Microsoft commit to make sure that the new owner is bound by the OSP ?

    "you don’t need to be a legal expert, or do any kind of legal analysis, to know that you can freely implement Open XML"

    I’m not so sure…  1. The FAQ of the OSP itself states that "you may want to consult with your legal counsel to understand your particular legal environment"  2. The pending patent case with i4i suggests that Microsoft itself should have better consulted its own legal counsel before freely implementing ECMA 376… 😉

  2. Mitch 74 says:

    Thank you Doug for the summary; I guess questions must often come from people who read the initial promise: that anybody could ask Microsoft for the right to use these patents (original cover for OOXML) on limited implementations (able to read, not produce). Both limitations were removed, yay – but not everybody knows, so thanks for the clarification.

    I agree with Luc, though: what happens if MS sells a patent currently under the OSP? The OSP isn’t an irrevocable license, it’s more like a covenant not to sue; as opposed to a time-unlimited license, which once issued, can’t be negated unilaterally (there must be a license violation for it to be revoked without both parties’ consent).

    About ‘point 1’ that Luc cites, then I guess it’s because there is still no ‘international law’ (only a list of agreed onpractices), and some sentences in the OSP would be unapplicable under some legal systems; thus, legal counsel would be required to ensure that it fully applies in your country (there is a risk that it would be considered entirely invalid, in which case copyright law applies – that one has been agreed on).

    Now, I know you’re not a lawyer, and the OSP is not worse than other similar agreements/promises/covenants/etc., but what would me your take on that point?

  3. dmahugh says:

    Hi Luc and Mitch,

    Sorry for the long delay, I was traveling the last couple of weeks and am just now getting caught up on things …

    Regarding the question about selling a patent, my view is that although issues that arise when a patent that is covered by the OSP (or IBM’s ISP or Sun’s OPS) is sold or transferred are theoretically interesting, as a practical matter they don’t arise very often and are very unlikely to have any impact in future OXML implementers. Microsoft has a limited history in selling its patents and has no plans to divest its portfolio related to OXML.

    – Doug

  4. Francis says:

    Two specifications I see missing from the list you link to (i.e., for the sake of interoperability, they really ought to be included under the OSP) are:

    1. Enhanced Metafiles (EMF) — it’s nearly impossible to get vector graphics imported/exported faithfully between MS and non-MS software, even on the Windows platform; i.e., it’s very difficult to import vector images created in drawing packages into Office

    2. NTFS — reading and writing Windows volumes in a mixed-OS environment is risky, even with the latest versions of Linux; as a result, we use non-MS products with open file systems when interoperability is needed

  5. Mitch 74 says:

    Well, that would seem the best one can expect, and it’s reassuring in a way.


  6. hAl says:

    An amusing anecdote is that de SFLC have backed themselves into an impossible corner.

    Stallman has stated that the OSP is not compatible with open software licenses like GPL because the OSP is non-sublicensable.

    That effectivly means that GPL is non compatible with the W3C open standards as the W3C specifically requires a royalty free non-sublicensable patent license (like the OSP license is).


    So the SFLC’s open source GPL license is now incompatible with a lot of the most important open standards in ICT just because Stallman dislikes MS licenses (even if they are the same as open standards licenses)

  7. Mitch 74 says:

    @Francis: NTFS-3G on POSIX systems works quite well, if a bit CPU intensive. It is not part of the kernel, latest version supports both ACL and POSIX namespaces with automatic UTF-8 conversion… Works like a charm.

    @hAL: your interpretation is restrictive and badly turned; non assignable, non sublicensable is for the W3C Patent License only.

    Now, the GPL (and the MPL) allows you to ‘own’ the software: you can modify and redistribute your modifications.

    – if you don’t modify it: the implementation is still owned by the original author, it is thus not assigned to you nor do you sublicense it.

    – if you modify it: your implementation is your own, so you actually acquire a W3C license that covers the implementation you redistribute.

    The point of this text says essentially that one can’t get a license to the patent without making an implementation. Otherwise, the Mozilla Public License would also be at fault.

    I don’t think for a second that Mozilla, Nokia, Apple and Google lawyers didn’t have a look at this part.