2004.05.28 05:17 PM

Parsing a Patent License

I recently began work on a utility to read and process Excel 2003 XML documents. I plan to license the utility to others, maybe for a small fee (or maybe not, who knows), and figured I should stop by the Microsoft site and read over the Office 2003 XML Reference Schema Patent License. If you're considering reading or writing Office 2003 XML files (Wordprocessing ML, Spreadsheet ML, and FormTemplate Schemas), I suggest you take a look too. I'm not a lawyer (I don't even play one in my head), but I thought I'd share my take on the license for anyone who cares.

Did I mention I'm not a lawyer and have no idea what I'm talking about?

In short, it seems Microsoft grants me a "royalty-free license under Microsoft's Necessary Claims to make, use, sell, offer to sell, import, and otherwise distribute Licensed Implementations solely for the purpose of reading and writing files that comply with the Microsoft specifications for the Office Schemas" as long as I "prominently" display the following notice "in all copies and derivative works of [my] source code and in copies of the documentation and licenses associated with [my] Licensed Implementation":

"This product may incorporate intellectual property owned by Microsoft Corporation. The terms and conditions upon which Microsoft is licensing such intellectual property may be found at http://msdn.microsoft.com/library/en-us/odcXMLRef/html/odcXMLRefLegalNotice.asp."

There's also some verbiage describing "Licensed Implementations" and "Necessary Claims" that's pretty straightforward and mostly seeks to limit Microsoft's claim domain. There's also this jewel of legal-not-ease:

"You are not licensed to distribute a Licensed Implementation under license terms and conditions that prohibit the terms and conditions of this license."

Did you read that twice? I did. I think it says I shouldn't encapsulate Microsoft's rules in a package that restricts Microsoft's rules. Like I would even know how to do that.

So, anyhow, I think I'm good to go.

By the way, for the record, I think software patents suck. The electronic business process patents that sprang up in the late 90s were bad enough (remember Amazon's one-click and discussion patents?), but at least they described a working thing, even if you couldn't necessarily put your 3D-hands on them, and even though they were so derivative of existing knowledge that the IT folks in those organizations should have died of embarrassment for being associated with people actually claiming to have invented them in the first place.

But for sheer insanity, the new XML schema patents, epitomized by Microsoft's Office XML patents, take the cake. The very idea that I might violate a patent by writing code in a language (C#) that is compiled to a language (MSIL) that is JIT compiled to a language (assembly) that is ultimately floated on a stream of electrons as 1's and 0's and interpreted by a computer as a set of virtual instructions to produce more 1's and 0's forming an abstract encoded pattern of bytes resembling someone's XML schema is so absurd as to defy explanation. Read that again. They didn't patent my code, the language, its structure, the tools used to type it or compile it (though I think there might be a .NET JIT patent somewhere), its execution environment or process, the 1s, the 0s, the electron channel, instruction order, or any number of real activities involved in the production of my final XML. They patented the particular pattern of 1s and 0s that resulted from all of this activity. An abstract pattern that means nothing when considered outside the context of an actual instance document and a million or more other things (programs, APIs, OS, W3C standards, etc.) that make it possible.

And, remind me again, if Microsoft is giving away royalty-free licenses to utilize their XML schemas anyway, and there's nothing in the license that precludes me writing a word processor or spreadsheet that reads and writes these formats, what's the point of having the patents? Beyond keeping their lawyers fed, I can't see where it provides Microsoft with any advantage. Clearly they aren't making money off of the patents. In fact, it seems to me the patents are costing them money, to file and defend, in order to get something they would have had without the patents anyway. I can't see where the patents are actually protecting anything, at least not anything anybody would want. I can use them for anything for nothing - what's left? I suppose Microsoft has succeeded in keeping someone from claiming they invented these particular XML schemas, but who the hell would have done that anyway? Have you seen them?! And, in any case, now that Microsoft has published them and incorporated them into an application (all well documented and witnessed), they are the prior art, so they need not have worried about someone else snatching the schemas from them and claiming they were first. It's insane.

I suppose the best we can hope for is that the entire edifice that is patents in America crashes to the ground under the weight of its own stupidity so we can just start again.


You probably wouldn't need to look very hard to find someone that claims this is so Microsoft can have the option to screw someone at their leisure. And you never know..they might be right. ;)

Jeff Key | 2004.05.29 11:50 PM

Yeah, I've heard that from some folks. And prior Microsoft actions probably make that a reasonable assumption. But to my non-lawyer eyes, the license really doesn't leave room for Microsoft to unleash a screwing on someone in the future if they accept this license now. With the exception of the notice requirement and re-licensing restriction, the license is unconditional - available to everyone, to do anything. I suppose time will tell.

ewbi.develops | 2004.05.30 08:34 PM

And now they own the double-click as well:


ewbi.develops | 2004.06.04 09:57 PM

Good news:


ewbi.develops | 2004.11.09 09:49 PM

Bad news:


ewbi.develops | 2004.11.19 01:22 PM

Microsoft can have all the BASIC patents they want. Use PHP/C/C++ and you don't have to deal with lawyer junk.


Cz.Dave | 2007.08.20 08:48 AM


TrackBack URL:  https://www.typepad.com/services/trackback/6a00d8341c7bd453ef00d83429688a53ef

Listed below are links to weblogs that reference Parsing a Patent License: