More on the Interoperability of the Microsoft Office Open XML Formats
Wow, there were a ton of great comments on my last post. While there were a large number of them, there were two primary themes I saw repeated. The first was that there are still a number of concerns around the true "openness" of the MS Office Open XML Formats, based around licensing issues. The second theme was that there was some skepticism on why we don't use the OpenDocument format in Office. I'll try to talk as best I can to both of these issues. I'll cover the first issue in this post, and then I'll write a separate post to address the second issue (that way the comments can be more focused). I already touched a bit on the licensing issue in this post back in June, and I talked about the OpenDocument format in this post. I'll drill into it a bit deeper though as it looks like there are still a number of unanswered questions.
Some folks seemed to think that the licenses for our formats were crafted to block out our competitors, but that couldn't be further from the truth. If you look out at the market place, there are a number of similar products, and the main ones (WordPerfect; Lotus; OpenOffice; etc.) should all be able to use our licenses and documentation to build in support for the Office XML formats. There have been several postings asking about whether our license for the Office XML schemas is compatible with the GPL. I’m not a lawyer and I don’t pretend to understand all the intricate details in these licenses, but people seem to be interested in my opinion, so I’ll share it. OpenOffice is covered by something called the Lesser General Public License or LGPL, not the GPL (more on OpenOffice license here). Here is some text from the LGPL that should help clarify the compatibility concern:
Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs.
When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library.
We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances.
For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License.
In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system.
Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library.
To me, this language says that it would be totally possible for someone to develop a “library” that can handle transformations between Office and OpenOffice documents. It also says to me that it doesn’t matter whether that library is covered by the GPL or the LGPL. The LGPL language seems to encourage free software developers to link in these libraries to give them “an advantage over competing non-free programs.”
I assume that Sun or whoever else chose the LGPL for OpenOffice instead of the GPL was aware of this distinction relating to libraries. It definitely looks like they wanted to allow these kinds of extensions to be covered by other types of licenses to give people flexibility to go with other approaches.
Of course, any library that you would build to interface with the LGPL program, such as OO, would be covered by the Microsoft Office XML license, which is here: https://www.microsoft.com/office/xml/licenseoverview.mspx. There has been some FUD and trash talk in some blogs about this license and the whole issue of IP in schemas. I think some people are going overboard on this whole issue. This Microsoft license isn’t the GPL or the LGPL, but there are dozens of licenses listed at www.opensource.org that seem to be ok with them. From my perspective, we’re just trying to provide our IP in an open and royalty-free way so developers can do something useful with it, like build transforms. Some of the legal mumbo jumbo around the licensing can get confusing, but hey, Rome wasn’t built in a day and I find some of the stuff written in the GPL to be pretty confusing too. At least the Microsoft license is short (one page).
Again, I’m not expert, but the Microsoft license seems to say that you can use the Office XML specs to develop programs that can read and write Office XML files. That seems pretty straightforward to me. I don’t see any barriers here to using this license to develop a transform that can interface with OO. This shouldn't come as a surprise to anyone given the OpenOffice already has built in support for the Microsoft Office XML formats that we shipped with Office 2003. I would expect they will do the same when the new default XML formats come out in Office 12. That's to be expected because I can image for OpenOffice, a significant demand they get from their customers is to support the Microsoft Office Document formats. Support for our formats is something that they put pretty high up in their marketing so that's why I'm making that assumption.
Hope this helps a bit. I really want to make it clear that it was a huge goal of ours to make these formats open and interoperable. That's why the license was crafted the way it was. Opening up the formats creates a whole new world of potential scenarios and solutions that can be built on top of Office documents.
-Brian
Comments
Anonymous
September 05, 2005
The comment has been removedAnonymous
September 05, 2005
Brian, either you do not get it, or you are purposely avoiding the issue. First you still haven't answered whether the license is compatible with THE most used free software license out there, the GPL. Second, as you say you are not a lawyer, but Microsoft employs plenty of lawyers who's job it is to determine this type of thing. So how about you get one of them to spend an hour reading over both licenses (yours and the GPL) and say whether a program can read and write your files AND be licensed under the GPL. If Microsoft gives the nod that they're compatible, then people won't have an issue. If any other entity says so, Microsoft can still litigate it later, thus everyone will still be afraid and confused. So if you're as serious as you say you are about open standards, you will spend a tad more money to get one of your lawyers to OK the GPL.Anonymous
September 05, 2005
Jim!
1. He already said. He said they need to protec their IP
2. Why should he or MS guarantee? No one can guarantee the future. You dont believe him, dont buy their product, why do you jelots him
3. Why should they allow community input? I dont want community input because many of them are like you, dont want to help, but want to stabotage. So Brian, pls only listen to your customer and partner.
-------------
1) Why is there a need for your format to be licensed at all? Why not just "here is our format"?
2) What about patents, and future openness? Can you guarantee that all future file formats will remain at least as 'open' as current formats? 3) What about community input into the specs? IAnonymous
September 05, 2005
A simple reading of the of the patent license shows at least 2 clauses that make it incompatible with the GPL and possibly other FOSS licenses.
Conflicting clause 1 - Attribution Clause
"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."
Conflicting clause 2 - Inability to Sublicense
"You are not licensed to sublicense or transfer your rights."Anonymous
September 05, 2005
Thanks for taking the time to address this.
I'm not sure I understand your reasoning with regards to the LGPL, to be honest. I think you're quite right in that LGPL compatiblity would be fine, but I'm not at all convinced that these terms meet it. Some key issues are left unaddressed. Mark mentioned what they are, but didn't cover why they're important:
- You can't sublicense and the license doesn't appear to be perpetually available. In other words, the terms can be changed at any time and apply to existing implementations. When software can be redistributed by end users and other companies, this is unlikely to work. Both the GPL and LGPL require that software can be redistributed by any end user.
- IP/patents. The license its self looks otherwise reasonable, but has a giant loophole by not disclosing what other MS IP/patents may be required and offering to license them under the same terms. An open license to the formats is useless if the terms of the patent license required to make use of it are unsuitable.
Ideally the license would state that:
(a) The rights to use any Microsoft patents and "other IP" required to use the "licensed technology" are included automatically in the rights granted by the license. That inclusion would ideally be under the same terms as the license its self, though I imagine it'd be fine to restrict the patent grant so it only applied to use covered by the format license.
(b) that the license to the specification and the specification text was transferable and redistributable along with any software implementing the specification, in source or binary form.
Now, given the license as it currently stands I can see that it'd probably be possible to make an importer/exporter plug-in that the end user had to download from the maker's website. Probably after some sort of questionably effective click-through EULA, and most likely not under a license that permits redistribution by the end user. I'm not convinced anything more flexible would be possible, however.
If Microsoft wants real industry adoption of this format, however, surely it's desirable to let other programs support it natively rather than as an intentionally-difficult-to-use plug-in that most users won't even know about? The current license, in my view, does not inspire confidence in the future accessability of the format to third parties. Additionally, I can't see the license answering the government archival issue while the terms of the license can still be changed at any time.
I would be curious to know if you had any luck speaking to Microsoft Legal (and of course to Marketing) about this. I'm afraid your response here doesn't really help address the core issues with the license as I explained in my last post and as described above. The time you've taken on the issue is appreciated - hopefully we'll get somewhere on this. Right now, I think a lot of people are looking for specifics about a few points (as above), and it'd be very interesting if you were able to help communicate these issues to somebody in a position to make those specific explanations.
Now, a response to a few other commenters:
Jack, I wish to note at this point that I am a Microsoft customer. I actually use both OO.o and MS Office at work for different users, as they're good at different things and suit users with different needs. I'm able to do this in no small part because of OO.o's reverse engineering of the Word 97/2000 format. I would prefer to remain a Microsoft customer at least so long as their products are superior to the alternatives where we need them to be. However, if Microsoft throws up intentional interoperability barriers then I am more likely to accept a loss in functionality than be locked in again. We've been down the vendor lock-in path and didn't enjoy it. My point is that this issue does matter for customers. For this customer, embedded video and sound clips are not a problem, but having a compatible format across all apps used in the company is. How that interoperability happens doesn't bother me as much as ensuring that it does.
The need for a guarantee is because it's not just a matter of buying the product. It's a matter of relying on that product for documents you may need to keep for some time. Also, as a vendor, you're building your products with support for that format. Would you license a technology that let the vendor prevent you from distributing apps built on it later by changing the terms? I wouldn't... and that's what the current license appears to permit. In your experience, do companies go to great lengths (as it appears here) to ensure they can change the terms at any time because they don't intend to change those terms?
As for community input on the specification its self, to an extent I'm with Jack. This is very clearly a Microsoft format for Microsoft's purposes. They'll care about their developers' and partners' needs most, and that's only right. On the other hand, if they do want wider adoption (including approval for government archival, etc), accepting reasonable feedback from the wider world may well be a good idea.
Jim, with regards to point (1), it seems you're essentially suggesting putting the format specification into the public domain. I don't see why that's any more attractive than a truly open license, and there can be good reasons (such as maintaining a single authorative and correct version of the spec) to license the spec instead.
The issue is the terms of the license, and the patent grant loophole.
Again, Brian, thanks for the time on this, and I hope you can convey these comments to someone who's able to talk to MS Legal and get some specific information on the points that've been bought up here.Anonymous
September 05, 2005
The comment has been removedAnonymous
September 05, 2005
The comment has been removedAnonymous
September 05, 2005
The comment has been removedAnonymous
September 05, 2005
The comment has been removedAnonymous
September 06, 2005
Why does Microsoft waste their, and everyone else's time by participating in developing standards that Microsoft has no intention of implementing? Microsoft is a member of OASIS, the standards body that developed the OpenDocument standard.
If OpenOffice were to add support for Microsoft's Office schema, how long before Microsoft sues? I'm not talking about adding a binary only library which loads via a LGPL library, or whatever nonsense you're tallking. I'm talking about real open source code here.
You can't honestly say that they would be ok if they did this. So, Microsoft's license DOES exclude open source. Open Office is not the only example of this strategy by Microsoft. Sender Policy Framework also has patents which Microsoft owns that are licensed in such a way as to lock out Open Source implementations.
The consumer looses here. You all could be helping us with interoperability but instead seem to be choosing to do the opposite.Anonymous
September 06, 2005
Brian...
GO and see the $ms layers oops lawyers before u post something that might get you in trouble.
Pick up the phone and Dial MS 911Anonymous
September 06, 2005
"Some folks seemed to think that the licenses for our formats were crafted to block out our competitors, but that couldn't be further from the truth."
I disagree. IMHO, the Microsoft XML license is not crafted to block compeditors from using the Office formats, it's to lure them into a trap where Microsoft can exact tribute from them in the future.Anonymous
September 06, 2005
The comment has been removedAnonymous
September 06, 2005
Brian,
You're a program manager for Office and you're not aware that the sub-licensing conditions for the XML schemas you're working on deliberately prevent open sub-licensing for third-party editors? You amaze me.
I wouldn't trust my documents to such insane licensing conditions. Mass. is taking a careful, long-term view. Good on them.Anonymous
September 06, 2005
One of the big problems with the license is that it's riddled with loopholes. Now, these are convenient for lawyers later, but whose lawyers...
For instance, does the phrase "by way of clarification of the foregoing" mean "the entire preceding text should be read as only allowing" (reading government documents)? Probably not, but it certainly doesn't inspire confidence that such an ambiguous phrase should be in the license.
Groklaw had a more detailed analysis back in March:
http://www.groklaw.net/article.php?story=20050330133833843#A4
"The license is, in effect, little more a veiled threat to sue any implementing developer for patent and copyright infringement."Anonymous
September 06, 2005
"Some folks seemed to think that the licenses for our formats were crafted to block out our competitors, but that couldn't be further from the truth."
Well, I suppose if you pick a select group of 'competitors' you are correct, but it would be better if you stated the issue more clearly: the licenses are designed to only block open-source competitors.
Of course M$ will allow other proprietary competitors under thier license, after all, they've already bought or beaten them into submission. It's open-source that M$ fears here, specifically because being a community rather than one company or product, open-source is far more difficult to buy or beat, and M$ is finally facing real competition after all these years. Competition that they are also finding tough to compete with qualitatively, since they've become so complacent in the market with their monopoly that they can no longer produce a quality product.
And nice job of misdirection with the LGPL by the way, you're obviously at the top of your FUD class. But please explain what that has to do with the M$ license, which IS the issue, and which does not permit open distribution and requires sublicensing directly in conflict with the GPL.
Also please explain why you are so stunned. This whole licensing issue has been discussed previouly, and these shortcomings specifically pointed out, and M$ very pointedly rewrote their licenses to make those requirements.
Sorry, I'm not believing that M$ has any interest whatsover in open formats or interoperability with open formats. Everything they have said and done here simply reinforces my perception that when M$ talks about interoperability they mean it only in regards to 'interoperable with M$', and their solution to any interoperability problems is 'buy more Microsoft".
No matter how many feathers you paste on the leopard, it still doesn't make it a bird, and it won't fly.Anonymous
September 06, 2005
Folks, this is not Slashdot. Personal accusations aren't helpful. Neither is anti-Microsoft invective. Constructive discussion seems more useful to me. Let's get on with it. I don't particularly want to offend our host in this discussion - do you?Anonymous
September 06, 2005
>> I don't particularly want to offend our host in this discussion - do you?
<<
Our host is insulting us with its greed. At least here we may be listened to !!!!Anonymous
September 06, 2005
What is all the talk about the LGPL/GPL etc? I thought people were asking if you implement import/export of the open document format?
According to OASIS the licence terms for the format are here www.oasis-open.org/committees/office/ipr.php
(I seem to remember that SUN & Microsoft were friends these days and were cross-licencing so I can't see them stopping you?!?)
and the details to implement the format are here
www.oasis-open.org/committees/tc_home.php?wg_abbrev=office
so again what is all the talk about the GPL/LGPL? It's an open standard so why can't you allow Office to use it? I am starting to think that maybe you don't want to offer a possible way of allowing people to defect easier to OpenOffice? If as you hopefully believe Office 12 is to be the next big thing then why worry?
just my $0.1
MarkAnonymous
September 06, 2005
Perhaps Microsoft's problems with Sun Microsystem's grant of license might well lie in these words:
http://www.oasis-open.org/committees/office/ipr.php
"One precondition of any such license granted to a party ("licensee") shall be the licensee's agreement to grant reciprocal Royalty-Free Licenses under its Essential Claims to Sun and other implementers of such specification."
What this does is throw a monkey-wrench in Microsoft's Standard Operating Procedure of Embrace, Extend, Extinguish. If Microsoft were to (SOP) Embrace and Extend the OASIS Standard - through "patenting" some feeping creaturitis - it would be legally impelled to dedicate the aforesaid patent any time an implementor of the OASIS Standard chose to challenge Microsoft.
And that's not how Microsoft operates - I am talking about a world-wide attested Standard Operating Procedure, a company culture that is most assiduously promulgated. I am talking about a company culture where the CEO, Steve Ballmer (Embalmer), can get uptight about facing competition in a field (search) where Microsoft hasn't even begun to compete, can talk about burying the competition for the hideous crime of employing the same tactic Microsoft used with great success to kick-start NT off the backs of DEC's VMS.
And this statement by Sun is an Essential Claim. It's foundational to its entire license grant.Anonymous
September 06, 2005
David Berlind thinks Microsoft is going to lose on this one:
http://blogs.zdnet.com/BTL/?p=1812#more-1812Anonymous
September 06, 2005
Brian,
This is really very simple. All anybody is asking Microsoft for is a RF license agreement and patent grant that is compatible with the GPL so that the it is possible to write GPL software that is compatible with Microsoft Office XML formats. Is Microsoft's patent grant and license agreement compatible with the GPL? That is a yes/no question, and they don't get any simplier than that. If the answer is no, it is not an acceptable format.
Failing that, they would like Microsoft to implement import/export for the OASIS standard which is available under terms which are compatible with the GPL.
These requests are no more unreasonable than requesting that your network stack support TCP/IP.Anonymous
September 07, 2005
To sum up:
Step 1. Lock customers into proprietary format.
Step 2. Lock out competing formats.
Step 3. "Upgrade" on cyclic basis, requiring customers to follow along or lose compatibility.
Step 4. Count money.
Step 5. Repeat as often as necessary to insure Steps 1 and 2.Anonymous
September 07, 2005
The comment has been removedAnonymous
September 07, 2005
I wanted to test the ability of Open Office to open up powerpoint files recently. The only powerpoint files I had on my drive were the ones that came with PP written by Microsoft in order to highlight the features of PP.
I was unable to open them due to DRM restrictions. The files simply said I was not allowed to open them up with any software other then MS office products.
MS is comitted to DRM. MS is comitted to closed formats and preventing interoperability. Any MS employee who says otherwise is simply lying.Anonymous
September 08, 2005
The comment has been removedAnonymous
September 08, 2005
Hey, Brian, here"s a question for you.
Suppose a significant portion of Microsoft's customer base indicated they would like Office to include OpenDoc import/export as an option. Would Microsoft do this?
Don't answer "We don't expect our customers will ever want that." Microsoft has been wrong in its predictions lots of times before. The question is, if they did want it, what would Microsoft do?Anonymous
September 08, 2005
David Coursey is highly critical of Massachusetts, but he still thinks Microsoft should make its formats open, and also thinks that Office should include the ability to import/export OpenDoc files.
http://www.eweek.com/article2/0,1895,1856854,00.asp
Almost everyone in the world thinks you are wrong on this issue.Anonymous
September 09, 2005
I like reading your XML related blog. Please check out my
<a href="http://www.nforms.net/xml_xhtml_news/index.html">XML, XHTML & XForms blog</a>. Thanks!Anonymous
September 10, 2005
Adam Barr weighs in:
http://www.proudlyserving.com/archives/2005/09/an_open_letter.html#commentsAnonymous
September 12, 2005
Tim Bray, who I understand knows a thing or two about XML, offers his opinion:
http://www.tbray.org/ongoing/When/200x/2005/09/10/Mass-OppositionAnonymous
September 12, 2005
David Wheeler on why OpenDoc won:
http://www.dwheeler.com/essays/why-opendocument-won.htmlAnonymous
September 12, 2005
Why can't the MS Office suite offer the option of SAVE AS-> OpenDocument just as it does for plain text? Is giving the user, your customer, a choice that threating?Anonymous
September 13, 2005
Yes, Sergio, it is that threatening to Microsoft. If they did it, then people could use OpenOffice and other programs to read and write Office documents, and if that is the case, they wouldn't need Windows either but could switch to Linux. ISV's would produce versions of their software for Linux, Office and Windows sales would deline, they would have to lower the price to compete, profits would drop drastically, which in turn would mean they wouldn't have all those billions to spend on software development. It would be the beginning of the end of Microsoft's monopoly.
So yes, they are smart to resist adding OpenDoc support, but they will be forced to in the end, anyway.Anonymous
September 16, 2005
Stephen Walli did a post on the controversy. Killer quote:
"Microsoft is still confused about why customers buy things. Customers don't buy innovation. They buy solutions to problems. The government has a problem, and determined a solution, and Microsoft could support that solution, but would rather try to tell the customer that they don't understand their own problem space, and should keep giving Microsoft money for innovations, regardless of the problems the customer wants to solve. It's the "we know best what's right for you" defense, and Microsoft still doesn't appreciate how arrogant it sounds."
"http://stephesblog.blogs.com/my_weblog/2005/09/massachusetts_m.htmlAnonymous
September 17, 2005
It'd be really good to get some help in the form of straight answers.
You're a developer. You know how painful it is to try to play lawyer when you need to implement something. You don't want to do that, and you especially don't want to have to give others your opinion.
Well, I'm a developer. I want to use the MS formats, but to do so I need to be - or have - a lawyer. There are too many open questions. You can't answer them, but Microsoft has lawyers who can.
As a courtesy to developers, who are your employer's biggest asset, surely this should be possible?
I'm beginning to wonder if MS, as an organisation (I don't make any claims about any individuals) has any real desire to work with the world outside MS on this. Perhaps there's a strategy in place to just satisfying minimum on-paper requirements and appearances, while actually doing as little as possible. Remember POSIX in NT?. Please prove me wrong - I really do want to be able to develop more comfortably on win32 and UNIX, and I want to be able to better integrate my win32 and UNIX networks. My business (in Microsoft's terms) may be meagre and my software insignificant, but I'm not the only one.Anonymous
September 20, 2005
Allen Carr, who wrote the book Does IT Matter?
http://www.roughtype.com/archives/
2005/09/massachusetts_a.php
Killer argument from him:
"Indeed, when Microsoft points out the difficulties inherent in translating existing documents in a variety of incompatible, proprietary formats into a single open format, it is inadvertantly backing up the state's argument. The only way to guarantee that the state's document archive will be accessible in the future is to move to a common standard today. If translating all those documents will be hard now, as it no doubt will be, imagine how much harder it would be if the state put the job off for another decade or two. The status quo is the problem the state has to solve; it is not a solution to the problem."
David Berlind comments:
http://blogs.zdnet.com/BTL/?p=1876Anonymous
September 20, 2005
Bob Sutor of IBM says that vendors should be aware that governments are going to adopt OpenDoc:
http://www.cio.com.au/index.php/id;555613343;fp;4;fpid;21Anonymous
September 20, 2005
IBM Workplace, to be out at the end of the year, will be Open Doccument Format compliant.
http://blogs.zdnet.com/BTL/?p=1887
Brian, did it ever occur to you that you are swiming against the tide?Anonymous
September 21, 2005
Thanks for all the links Eduardo. I'd already seen most of those, but there were some blogs I hand't yet reas so thanks for pointing them out.
The overwhelming majority of customers I've talked to over the past few years have been extremely enthusiastic about the XML file formats in Office 2003 and the upcoming formats for Office "12". They opened up a whole new world of solution developement, and when combined with the support for customer defined schemas made Office 2003 a really powerful platform. I definitely don't feel like I'm swimming against the tide :-)
Craig, I'll try to pull together a better writeup that addresses your concerns, but at the end of the day almost all formats have some sort of license associated with them. For example, here's some information on the IP and licensing that is behind the OpenDocument format: http://www.oasis-open.org/committees/office/ipr.php
For MS Office, we've tried to help out by keeping the license short, and also providing a fairly detailed FAQ: http://www.microsoft.com/Office/xml/faq.mspx
As folks send me questions, I work to get those added to the FAQ.
-BrianAnonymous
September 21, 2005
More Stephen Walli
http://stephesblog.blogs.com/my_weblog/2005/09/microsoft_massa.htmlAnonymous
September 22, 2005
For folks who are more interesting in the licensing details, I just posted more on that topic here: http://blogs.msdn.com/brian_jones/archive/2005/09/22/472826.aspx
-BrianAnonymous
May 29, 2009
PingBack from http://paidsurveyshub.info/story.php?title=brian-jones-office-extensibility-more-on-the-interoperability-of-theAnonymous
May 31, 2009
PingBack from http://woodtvstand.info/story.php?id=703Anonymous
June 02, 2009
PingBack from http://hammockstandsite.info/story.php?id=17945Anonymous
June 08, 2009
PingBack from http://quickdietsite.info/story.php?id=2780Anonymous
June 09, 2009
PingBack from http://greenteafatburner.info/story.php?id=1305Anonymous
June 16, 2009
PingBack from http://workfromhomecareer.info/story.php?id=3749Anonymous
June 18, 2009
PingBack from http://cutebirdbaths.info/story.php?id=628Anonymous
June 19, 2009
PingBack from http://debtsolutionsnow.info/story.php?id=281