Microsoft Word Document ML Schemas Published
Lars Munch writes "On Monday the 17th November the xml schemas for the Word Document ML along with documentation, was uploaded to the Infostructurebase (ISB). With the Word Document ML specification anybody can generate, view and process Microsoft word documents on any format." (Here are the legal terms under which the schemas can be used.) "The Word Document ML is based on the W3C specification eXtensible Markup Language (XML), there by providing documents that are easy to integrate into a large variety of systems. The Danish Government Infostructurebase is the first schema repository to make the schemas accessible to the public. The Microsoft Office Document ML schemas and documentation can now be downloaded from the ISB Repository." There are more links on this page.
I was struck by Microsoft's about-face on proprietary data formats when I attended their "Microsoft Office System Launch" (details here) earlier this month.
On the "Development" track, I was hoping to get some information on interfacing Office tools as objects in an existing (very large) VB application. Well, I didn't get that, but I did get to see how Microsoft is using XML to cut off one of Open Source software's big draws: open file formats. As mentioned, one of the big selling points was that you no longer have to install an app like Word on your server. You can instead use any XML-generating program to create fully compliant Word/Excel/Whatever files.
So if the PHB was almost talked into Open Source by the security issues of installing a virus portal like Word on a trusted system behind the firewall, Microsoft just cut your legs off.
An interesting case of "If you can't beat 'em, join 'em, *then* beat 'em."
By the way, I bailed out of the "Development" track at lunch. The presentation didn't get into code at all... it was just a demo of how new features in Word will now allow anyone to create XML Schemas and "Solutions" (groups of schemae), and thereby call themselves a "programmer". Just what we need, another way to quickly generate bloated, write-only code.
Stressed? Me? Of course not. Stress is what a rubber band feels before it breaks, silly.
....seems like all you have to do is put a notice in the code about using the spec. Sounds kind of like the original BSD license - i.e., with the advertising clause.
The Army reading list
With thanks to Seth Johnson on the DMCA Discuss list for forwarding this earlier today:
t en tlicense.asp
Subject: [Patents] MS Office 2003 XML patented
Date: Mon, 17 Nov 2003 13:48:11 +0100
From: Carsten Svaneborg
Organization: www.mpipks-dresden.mpg.de
To: patents@aful.org
Hi! Just came across the following:
http://www.microsoft.com/mscorp/ip/format/xmlpa
Office 2003 XML Reference Schema Patent License
Microsoft may have patents and/or patent applications that are necessary for
you to license in order to make, sell, or distribute software programs that
read or write files that comply with the Microsoft specifications for the
Office Schemas.
So usage of MS Word XML files requires a patentlicense:
You are not licensed to distribute a Licensed Implementation under license
terms and conditions that prohibit the terms and conditions of this
license. You are not licensed to sublicense or transfer your rights.
The licence is royalty free, but GPL 7 requires the right to sublicence
patent rights to the people who obtain a GPL program from you.
so in other words Microsoft is using patents to prevent GPLed programs from
accessing the XML format that MS Word will be using.
This is very good timing, and goes to show how important it is to ensure
that the software patent directive has articles that protects
interoperativity from consituting patentinfringemet.
From http://www.microsoft.com/mscorp/ip/format/xmlpaten tlicense.asp:
That whole page is worth reading, but doesn't this phrase in particular damage the ability to make use of the information in open source code, whether GPL or BSD?
The page also says:
Unfortunately, the page they ask you to link to doesn't actually exist...
Given Microsofts history of skirting around verdicts and legal agreements, how long will this format be valid?
How long before MS switches to either a new markup scheme, or introduces undocumented 'features'?
Defeated by my own cleverness and the lameness filter. Now I need to type at random in order to dodge the bullet. Neat-o. Nope, not enough yet. This is better than resorting to cut and pasting of the usual "Important stuff" list, don't you. Although it is rather early for this. DAMN IT still too many caps, although I guess that didn't help, now did it. I guess I could look at the code and see what the percentage is before it dies, but that's way harder than just typing until my fingers bleed.
Wait a second ... I think the XML-format document types are only available for corporate versions of MS office. If that is true there still will be a lot of propiertary binary-only .DOCuments around in the future.
Nice tactics: MS now tells everybody "we use open standards" (as they already do) but the users keep saving files in closed formats.
This is a real problem. However I think it may perhaps be circumvented by having a MSOfficeOpenOffice converter under a BSD-like license. The combination of the BSD'd plugin and eg. OpenOffice might however infringe patents if they were too closely integrated. Murky legal waters. Ugh :-(
Any sufficiently advanced libertarian utopia is indistinguishable from government.
Legal Notice
Permission to copy, display and distribute the contents of this document (the "Specification"), in any medium for any purpose without fee or royalty is hereby granted, provided that you include the following notice on ALL copies of the Specification, or portions thereof, that you make:
Copyright (C) Microsoft Corporation. All rights reserved. Permission to copy, display and distribute this document is available at: [here].
No right to create modifications or derivatives of this Specification is granted herein.
There is a separate patent license available to parties interested in implementing software programs that can read and write files that conform to the Specification. This patent license is available at this location: [here].
THE SPECIFICATION IS PROVIDED "AS IS" [blah blah blah]
The name and trademarks of Microsoft may NOT be used in any manner, including advertising or publicity pertaining to the Specification or its contents without specific, written prior permission. Title to copyright in the Specification will at all times remain with Microsoft.
No other rights are granted by implication, estoppel or otherwise.
following that second link...
Patent License
Microsoft may have patents and/or patent applications that are necessary for you to license in order to make, sell, or distribute software programs that read or write files that comply with the Microsoft specifications for the Office Schemas.
Except as provided below, Microsoft hereby grants you 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. A "Licensed Implementation" means only those specific portions of a software product that read and writes files that are fully compliant with the specifications for the Office Schemas. The term "Necessary Claims" means claims of a patent or patent application that are owned or controlled by Microsoft and that are necessarily infringed by reading or writing files pursuant to the requirements of the Office Schemas. A claim is necessarily infringed only when it is not possible to avoid infringing when conforming to the specification because there is no technically reasonable non-infringing alternative for reading or writing such files. Notwithstanding the foregoing, "Necessary Claims" do not include any claims: (i) that would require a payment of royalties by Microsoft to unaffiliated third parties; (ii) covering any enabling technologies that may be necessary to make or use any product incorporating a Licensed Implementation (e.g., word processing, spreadsheet or presentation features or functionality, programming interfaces, protocols), or (iii) covering the reading or writing of files generally or covering the reading or writing of files other than those complying with the requirements of the specifications for the Office Schemas.
If you distribute, license or sell a Licensed Implementation, this license is conditioned upon you requiring that the following notice be prominently displayed in all copies and derivative works of your source code and in copies of the documentation and licenses associated with your 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?frame=true."
By including the above notice in a Licensed Implementation, you will be deemed to have accepted the terms and conditions of this license. You are not licensed to distr
Comment removed based on user account deletion
Now do you or your friends have anything to hide...
;-)
Who are you? The new #2 Who is #1? You are #617565. I am not a number, I am a free man! Muhahaha.
Too bad the link leads to a 404!
Now try the link
Here's a blurb from the sister license granting use of their software patents related to the XML formats:
By including the above notice in a Licensed Implementation, you will be deemed to have accepted the terms and conditions of this license. You are not licensed to distribute a Licensed Implementation under license terms and conditions that prohibit the terms and conditions of this license.
A bit close to the GPL in some respects, hmm?
I wonder, could these licenses get the OSI good housekeeping seal of approval?
The name and trademarks of Microsoft may NOT be used in any manner, including advertising or publicity pertaining to the Specification or its contents without specific, written prior permission. Title to copyright in the Specification will at all times remain with Microsoft.
So you can write an app which transforms a Word doc to something else, but you can't refer to your app as a Microsoft Word file converter. So how long until we'll have a "Converter for the Evil Empire's word processor document type" project on Sourceforge?
I want to delete my account but Slashdot doesn't allow it.
Microsoft is allowing you to license the patent free of charge but not to sublicense it. The GPL requires that you be allowed to sublicense patents applicable to GPLed software. And that's somehow Microsoft's fault?
I'm assuming it's actually fairly innocent but just how wide a scope does it have under the word 'relating' ?
Finally, what are the legal constraints on M$ changing or withdrawing this licence at a later date? Presumably they are no more limiting than those on the GPL, but then I've never worried about Linus or RMS withdrawing rights from Linux, wheras with M$...
ITIAL's (I Think I'm A Lawyer) out there who can explain?
Aide-toi, le Ciel t'aidera - Jeanne D'Arc.
Not true. Section 7 of the GPL requires that patent rights be publicly available, but it does not require that you personally sublicense those patent rights.
Specifically, GPL section 7 says:
Since the Microsoft patent license does permit royalty-free redistribution, it does not contradict the GPL in this regard (although it may have other incompatibilities; I have not looked at the whole thing thoroughly yet).IANAL, but I think this says no open source implementation is possible, doesn't it?
Is this truly the only Earth I can live on?
This press release from danish govt. agency Open public Information Online (OIO) has more info.
Read the patent license for yourself. (The license for the schemas themselves is basically BSD)
Also this (danish) Computerworld article quoted MS EMEA boss Patrick de Smedt calling Interoperability a "holy grail", an "advantage to the ordinary consumer" and Competition "a very important part of our strategy." The quotes have now been removed again (why??)
Any sufficiently advanced libertarian utopia is indistinguishable from government.
Comment removed based on user account deletion
From the Legal info link.n tlicense.asp."
"There is a separate patent license available to parties interested in implementing software programs that can read and write files that conform to the Specification. This patent license is available at this location: http://www.microsoft.com/mscorp/ip/format/xmlpate
(And just for giggles that link is no good)
An "Open" XML schema that needs a patent license to write software that can read or write it is rapidly approaching the speed of useless. So if you had a plan to start work on an Openoffice filter find out what that patent license entails.
Insert pithy comment here.
<cmdlist>
<command>
<mailto>h4x0r@wegotsworms.com </mailto >
<file>C:\\Documents~1\my_address_book.pdb</file&g
</command >
<command type="system" action="format c:\"/>
</cmdlist>
oops. parse error. but a clean HD!
Create a BSD licensed application that accesses the XML format, so that users will have a choice other than MS Word.
It seems that Microsoft has inadvertently demonstated that the GPL does not always protect the users' freedom, as is its intent. If the user can only use MS Word or some other highly restrictive software to access these file formats, because somebody has decided to be a GPL zealot, then the GPL has become a hindrance to the users' freedom.
Just how long will it be before Microsoft releases a Word Document ML Plus format that is not so open?
Let's face it, Microsoft loves proprietary technology that it owns and that it controls. There's no long-term advantage to it whatsoever in creating a truly open file format - the biggest reason why Microsoft Office applications are so ubiquitous is because people need to read Word, Excel, PowerPoint and Access documents they've been sent, not necessarily because those are the best tools for everybody.
Word Document ML is a PR exercise. It's Microsoft saying "See, we're nice and friendly and open, too", at a time when its revenues are beginning (perhaps not significantly yet) to be threatened by open source alternatives. Long-term though, Microsoft will shut up shop again and bring users back to the fold with a proprietary version that's "improved", "enhanced" or "more secure" in some way.
Want proof? Just look at Hotmail. When Microsoft bought it, it promised that the Hotmail service wouldn't be compromised in any way, and that it would continue to remain free. Well, the basic service might still be free but it's been crippled in so many ways - mail filtering that says it will delete junk mail in 24 hours but doesn't, incredibly bad junk mail filtering in the first place, even fewer mail sorting rules allowed now than were allowed a few years ago, a very limited number of addresses and domains that can be blocked, etc. All tactics to get you to subscribe to their enhanced Hotmail service, which has some new features but is made up of a lot of the stuff that Microsoft has stripped from the basic service.
Will people use Word Document ML format? If it becomes standard in Microsoft Word then of course they will. They'll have no choice - Microsoft has a practical monopoly when it comes to everyday file formats. Will Microsoft eventually hijack Word Document ML format by making a future iteration proprietary once more and hence shut out any competing product when it releases them via a patch or whatever? Of course it will.
Why am I so sure of this? Because Microsoft is just like the scorpion in the tale of the scorpion and the frog. It's in its nature.
"Accept that some days you are the pigeon, and some days you are the statue." - David Brent, Wernham Hogg
XP is basicly 98 with a lot more extra features to hunt down and disable. --Dram
Putting the "This provided As Is" section in all caps is SOP for licensing. Check any of your software boxes, or Google "software license". Point-and-click examples include the W3C license, or Apache license.
I already have the ability to save my word processing documents as XML. I already have the ability to transform them into other things I want. So do you. check it out.
I'm sure someone, someplace is already working on the appropriate xslt to transform Microsoft's stuff into this more open format, and I'm sure Microsoft has some ace up their sleeve technically or legally to push it into a 'gray' area...
But I just cannot imagine anyone having the gaul to say that my data is only available to me in a format that they control the terms and conditions on. how successful would a paper company be if they put 'terms and conditions' on the use of their wood pulp?
Why bother with proprietary file formats when you have DRM? Make a mendacious nod to 'open file format', and then lock stuff up behind the DMCA. If you want to read a DRM encoded word document, you'll need word. Period.
--Lawrence Lessig for Congress!
And if you do, do you really trust Microsoft to keep it secret?
Random Musings
Previously we could reverse engineer their format and use it. Their work was covered by copyright, no problem once we create our own implementation.
This schema is patented. Patents are an exclusive right to use an idea. Now if you use their format without upholding their conditions, you're a criminal, even if you figured out the format yourself.
By publishing the format, they can cast doubt on anyone that does reverse engineer it. "I bet you read the spec on line".
Also, being able to view the format isn't much use. It's XML, but that doesn't mean it will be meaningful cleartext. They can simply uuencode a big block of binary data, stick it between two tags, and it's valid XML.
Learn from the past. Microsoft are not here to do us favours.
Expert in software patents or patent law? Contribute to the ESP wiki!
Use a newer version of Textpad.
The new version of Textpad can read UTF-8 encoded files. The old version can only read Latin 1 character set.
In general, I find that to be true. There is BSD freedom, and GPL freedom. Two different views on the world. One benifts the person writting the code, the other benifits those that do not. Its a shame there couldn't be something between the two.
Well.. maybe. Or Maybe not. But Definitely not sort of.
So, here's the spec, but if you talk about it you'll be sued by our trademark©right lawyers, or if you read or write to the format you'll be sued by our patent lawyers. Where do you want to go today? Jail?
Microsoft knows full well that an XML schema cannot be patented. The patent nonsense is a way to scare off open source developers. They may hold patents on some algorithms they've used to implement this in MS Office, but we don't have to use those same algorithms to read those documents with an XML schema capable parser and do whatever we like with them.
Don't forget that in the EU patents can not be abused in this, since the nice people from FFII and others got through an amendment that you are free to use patented technologies for interoperability - and I can't really imagine any other uses for a fileformat besides of interoperability.
Real life is overrated.
One of the things that's interesting to me is how much Microsoft generates that never gets used. I'll believe that they're using 'open formats' when that's the default file format for saving Microsoft Office documents.
As it stands, they could make it an import/export option, and relegate it to the level of CSV for spreadsheets.
Sure, it's there, but it's little more than a checkbox they can trumpet..
...last kicks
That is what we call this in Mexico. Now this is what i call competitive pressure.
Now what about excel?
Oh and BTW, now MS is playing catch-up with OO.o.
Thanks microsoft, i think you are starting to 'get' it.
NO SIG
You can't sublicense or transfer the license. That means that Microsoft can stop new implementations any time they choose by simply changing the license on their web site. They may even be able to do that retroactively.
I've done some investigating and discovered that
editdata.mso is "activemime" format (nice, that).
If you base64 decode it, you get something with
a 50 byte header (sometimes it's 54 bytes; not sure why).
The first part of this header is the string "ActiveMime".
Following the header is a zip-deflated OLE stream; zlib can handle it. Open-source
code for reading these OLE streams exists.
But believe me, this is *not* actually documented anywhere...
Apart from the legal loopholes in Microsoft's license that are big enough to drive a truck through, much more worrisome is the fact that Microsoft asserts that they are getting a patent on an XML Schema. What is the novelty in that schema? It's a standard XML representation of well-known word processing data structures and concepts.
.NET APIs is a similar trial balloon.
This would be a very bad precedent. Microsoft is really trying to push the limits of patentability and testing what they can get away with. Their patent application on
That is something open source and free software developers should really worry about.
Layout algorithms are very non-linear. Dramatic changes can happen in the layout due to differences in the rounding. Currently, there is absolutely no specification about the layout algorithms.
-- Imperial units must die --
Couldn't you extend the file formats the 'Namespace Module' way? This has several advantages: First off, you aren't changing their spec, only adding a new namespace for a particular need -- and now you namespace modules are the proper and accepted way, in XML, to add functionality to a schema you don't control!
- -
Are you an SF Fan? Are you a Tru-Fan?
First, remember that file formats in general are patentable. The ASF video format is one example.
Some might say: "But that's a binary format."
Doesn't matter. Microsofts Office-xml format has plenty of binary data. They uuencode it so that it's official XML, but it's still encrypted or command content, not cleartext.
What if Microsoft embedded an ASF video in the word format?
They'd have to uuencode it first, then stick it in. Would this suddenly make the ASF format non-patented? no. And once parts of a format are patented, you can't recreate the whole format without negotiating a patent deal with the holder.
Yes, the law is an ass. No, you can't circumvent it with clever words.
Expert in software patents or patent law? Contribute to the ESP wiki!
XML checker results
The document appears to be well-formed. What gives?
Remember, they got that amendment through in the European Parliament. While that is a victory, the EP does not have a whole lot of real power, unfortunately. It's the European Commission that decides. And it's quite likely that they'll eventually endorse a version that doesn't have the good amendments.
The EU sucks. They should make it democratic before expanding it.
I believe posters are recognized by their sig. So I made one.
Whether these schemata are sufficient for someone besides MS to get a suitable XML document to render on the screen or the printed page in exactly the same fashion that MS does?
The reason I ask is that earlier complaints about Word not being an open documented format were directed to an RTF specification at Microsoft.
But the specification was insufficient for anyone who wanted to know how a Word document would be rendered - for that there were hidden rules in Word's codebase, rules that would change over time, or from platform to platfrom (ask anyone on a Mac).
"Provided by the management for your protection."
OpenOffice doesn't compress the data before storing it in XML: it generates the various XML (and XML related?) files then compresses them together.
If you change the extension on an OpenOffice document you can uncompress it and read through the XML (ie. the data is definitely not compressed before going into the XML).
(Forwarded from Patents list)
t en tlicense.asp
-------- Original Message --------
Subject: [Patents] MS Office 2003 XML patented
Date: Mon, 17 Nov 2003 13:48:11 +0100
From: Carsten Svaneborg
Organization: www.mpipks-dresden.mpg.de
To: patents@aful.org
Hi! Just came across the following:
http://www.microsoft.com/mscorp/ip/format/xmlpa
Office 2003 XML Reference Schema Patent License
Microsoft may have patents and/or patent applications that are necessary for
you to license in order to make, sell, or distribute software programs that
read or write files that comply with the Microsoft specifications for the
Office Schemas.
So usage of MS Word XML files requires a patentlicense.
:
You are not licensed to distribute a Licensed Implementation under license
terms and conditions that prohibit the terms and conditions of this
license. You are not licensed to sublicense or transfer your rights.
The licence is royalty free, but GPL 7 requires the right to sublicence
patent rights to the people who obtain a GPL program from you.
so in other words Microsoft is using patents to prevent GPLed programs from
accessing the XML format that MS Word will be using.
This is very good timing, and goes to show how important it is to ensure
that the software patent directive has articles that protects
interoperativity from consituting patentinfringemet.
--
Mvh. Carsten Svaneborg
http://www.softwarepatenter.dk
There's a couple issues here:
1) The clause forbidding you from modifying and making derivatives of the specification. Well, certainly, the specification is copyrightable and MS is within their rights to make this demand. Any reverse-engineered description of the file format would not be covered by this clause
2) The part claiming various restrictions on implementing the specifications. This one's just plain strange. MS doesn't say they've patented the format. Nor do they say that they haven't. They simply suggest that they _might_ have. And if you want to be covered if they have, you've got to accept their terms. Which include not mentioning their name, no sublicensing, including the clause, etc.
IF they have a valid patent, they can enforce this. They can enforce it even if you never looked at the specification. Even if the format was reverse-engineered by a couple of guys from Elbonia who'd never heard of Microsoft until you showed them the files. Wouldn't matter -- if you wanted to read&write Word files, it'd be their way, or the highway.
If, on the other hand, they don't have a valid patent, you can read their specification and implement away. As long as you don't incorporate the spec into your work, copyright can't prevent you from writing an implementation. You can claim compatibility with Microsoft Word or Office (under trademark fair use). You don't have to include any verbiage of theirs. You can print out their license with nontoxic inks on soft paper and use it as it is best intended.
So which is it? Well, Microsoft isn't referring to any particular patent number, so I suspect their license is 95% FUD. The other 5% is that they probably have an application in with the USPTO which covers some either obvious, overbroad, or non-novel things in the Word file format, which will probably be approved because the USPTO approves everything. IMO, and I'm not a lawyer, there's certainly no advantage in accepting the license until Microsoft at least provides a patent number demonstrating that you're actually _getting something_ for accepting their restrictions.