Komputer Sains    
   
Daftar Isi
(Sebelumnya) Microsoft OneNoteMicrosoft Outlook (Berikutnya)

Microsoft Open Specification Promise

The Microsoft Open Specification Promise (or OSP), is a promise by Microsoft, published in September 2006, to not assert legal rights over certain Microsoft patents on implementations of an included list of technologies.[1]

The OSP is a Covenant Not to Sue and an example of Fair, Reasonable and Non Discriminatory terms for the patents in question.[citation needed]

The OSP licensing covers any use and any implementations of an appended list of covered specifications. It is limited for implementations to the extent that they conform to those specifications. This allows for conformance to be partial and does not require the conformance to be perfect.[2]

Contents

Compatibility with open source licensing

The OSP is effectively a patent sublicense to everyone limited to use with certain formats and required technology to implement OSP licensed formats.

Open source licenses, in general, deal with licensing of copyrights of contributors to the software. GPLv2 is an example of such copyright licensing. GPLv2 does not grant you 3rd party (patent) rights.

The open source software (OSS) licensing deals with copyrights on the source code created by the contributors. Source code based on an OSP licenced format specification has its own copyrights and is therefore sublicensable by the contributors themselves. The OSP is only about patent rights. It grants additional rights to implementers and users to the OSS licensing.

Because Microsoft through the OSP grants patent rights to anybody that implements or uses technology required for OOXML there is no need for sublicensing of patent rights through the GPL. OSS users and implementers get the same rights automatically.

An OSS implementer that uses GPL software which implements an OSP licensed format, is granted certain copyrights on the software through his GPL license, which are granted by the prior software contributors. In addition to that he is allowed to use Microsoft patents for required format related technology through the OSP license.

Several standards and OSS licensing experts have expressed support of the OSP in 2006. An article in Cover Pages quotes Lawrence Rosen, an attorney and lecturer at Stanford Law School, as saying,

"I'm pleased that this OSP is compatible with free and open source licenses."[3]

In 2006 Mark Webbink; a lawyer and member of the board of the Software Freedom Law Center, and former employee of Linux vendor Red Hat; said,

"Red Hat believes that the text of the OSP gives sufficient flexibility to implement the listed specifications in software licensed under free and open source licenses. We commend Microsoft’s efforts to reach out to representatives from the open source community and solicit their feedback on this text, and Microsoft's willingness to make modifications in response to our comments."[4][5]

Standards lawyer Andy Updegrove said in 2006 the Open Specification Promise was

"what I consider to be a highly desirable tool for facilitating the implementation of open standards, in particular where those standards are of interest to the open source community."[6]

Scope limitation

The Software Freedom Law Center, which provides services to protect and advance free software and open source software, has warned of problems with the Open Specification Promise for use in free software / open source software projects. In a published analysis of the promise it states that[7]

"...it permits implementation under free software licenses so long as the resulting code isn't used freely."[8]

On March 12, 2008 the Software Freedom Law Center warned over a possible inconsistency with GPL[8] and in specific the limited scope of the OSP. This applies specifically to the patent promise scope being limited to conforming implementations of covered specifications only.

Effectively when an implementer owns a patent and builds that patent technology in GPL3 licensed code, the implementer grants those first party rights patent rights downline to all re-users of that code.[9] If you use third party OSP protected patents in GPL3 code, you cannot sublicense those, and the OSP scope is limited to required (normative) parts of the covered specification. This means that when the code is reused, the OSP only applies as long as the reuse of that code is limited to implementing the covered specifications. If the OSP was not limited in that way, you could implement all patented technology in a GPL3 code implementation after which the code patented technology could be reused freely for all other possible implementations. The limitations of a one-sided patent promise only applying to covered specifications is also present in the IBM Interoperability Specifications Pledge (ISP) and Sun Microsystems' OpenDocument Patent Statement.

This means, for example, that use of the required Sun patented StarOffice-related technology for OpenDocument should be protected by the Sun Covenant, but reuse of the code with the patented technology for non-OpenDocument implementations is no longer protected by the related Sun covenant.

The OSP similarly can be used to freely implement any of the covered specifications in OSS but its scope is limited to the covered specifications and cannot be used to transfer Microsoft patent rights to other implementations of non covered specifications for instance by using the technology in code that has a patent transferring software license.

For this reason the SFLC has stated:

"The OSP cannot be relied upon by GPL developers for their implementations not because its provisions conflict with GPL, but because it does not provide the freedom that the GPL requires."[8]

The SFLC specifically point out:

  • new versions of listed specifications could be issued at any time by Microsoft, and be excluded from the OSP.
  • any code resulting from an implementation of one of the covered specifications could not safely be used outside the very limited field of use defined by Microsoft in the OSP.[8]

The Microsoft OSP itself mentions the GPL in two of its FAQs. In one it says,

"we can’t give anyone a legal opinion about how our language relates to the GPL or other OSS licenses"

In another, it specifically only mentions the "developers, distributors, and users of Covered Implementations", so excluding downstream developers, distributors, and users of code later derived from these "Covered Implementations"[8] and it specifically does not mention which version of the GPL is addressed, leading some commentators to conclude that the current GPL 3 may be excluded.[10]

Q: I am a developer/distributor/user of software that is licensed under the GPL, does the Open Specification Promise apply to me?
A: Absolutely, yes. The OSP applies to developers, distributors, and users of Covered Implementations without regard to the development model that created such implementations, or the type of copyright licenses under which they are distributed, or the business model of distributors/implementers. The OSP provides the assurance that Microsoft will not assert its Necessary Claims against anyone who make, use, sell, offer for sale, import, or distribute any Covered Implementation under any type of development or distribution model, including the GPL.[11]

Licensed technologies

Technologies on which the Open Specification Promise applies are:[1][12]

Web Services

  • Devices Profile for Web Services (DPWS)
  • Identity Selector Interoperability Profile v1.0
  • Identity Selector Interoperability Profile v1.5
  • Remote Shell Web Services Protocol
  • SOAP
  • SOAP 1.1 Binding for MTOM 1.0
  • SOAP MTOM / XOP
  • SOAP-over-UDP
  • Web Single Sign-On Interoperability Profile
  • Web Single Sign-On Metadata Exchange Protocol
  • WS-Addressing
  • WS-Addressing End Point References and Identity
  • WS-AtomicTransaction
  • WS-BusinessActivity
  • WS-Coordination
  • WS-Discovery
  • WSDL
  • WSDL 1.1 Binding Extension for SOAP 1.2
  • WS-Enumeration
  • WS-Eventing
  • WS-Federation
  • WS-Federation Active Requestor Profile
  • WS-Federation Passive Requestor Profile
  • WS-I Basic Profile
  • WS-Management
  • WS-Management Catalog
  • WS-MetadataExchange
  • WS-Policy
  • WS-PolicyAttachment
  • WS-ReliableMessaging
  • WS-RM Policy
  • WS-SecureConversation
  • WS-Security: Kerberos Binding
  • WS-Security: Kerberos Token Profile
  • WS-Security: Rights Expression Language (REL) Token Profile
  • WS-Security: SAML Token profile
  • WS-Security: SOAP Message Security
  • WS-Security: UsernameToken Profile
  • WS-Security: X.509 Certificate Token Profile
  • WS-SecurityPolicy
  • WS-Transfer
  • WS-Trust

Web

Virtualization Specifications

  • Virtual Hard Disk (VHD) Image Format Specification
  • Microsoft Application Virtualization File Format Specification v1
  • Hyper-V Functional Specification[13]

Security

  • RFC 4406 – Sender ID: Authenticating E-Mail
  • RFC 4408 – Sender Policy Framework: Authorizing Use of Domains in “Mail From”
  • RFC 4407 – Purported Responsible Address in E-Mail Messages
  • RFC 4405 – SMTP Service Extension for Indicating the Responsible Submitter of an E-Mail Message
  • U-Prove Cryptographic Specification V1.0
  • U-Prove Technology Integration into the Identity Metasystem V1.0

Office file formats

XML file formats

  • Office 2003 XML Reference Schemas
  • Office Open XML 1.0 – Ecma-376
  • Office Open XML ISO/IEC 29500:2008
  • OpenDocument Format for Office Applications v1.0 OASIS
  • OpenDocument Format for Office Applications v1.0 ISO/IEC 26300:2006
  • OpenDocument Format for Office Applications v1.1 OASIS

Binary file formats

  • Word 97-2007 Binary File Format (.doc) Specification
  • PowerPoint 97-2007 Binary File Format (.ppt) Specification
  • Excel 97-2007 Binary File Format (.xls) Specification
  • Excel 2007 Binary File Format (.xlsb) Specification
  • Office Drawing 97-2007 Binary Format Specification
Structure specifications
  • [MS-DOC]: Word Binary File Format (.doc) Structure Specification
  • [MS-PPT]: PowerPoint Binary File Format (.ppt) Structure Specification
  • [MS-XLS]: Excel Binary File Format (.xls) Structure Specification
  • [MS-XLSB]: Excel Binary File Format (.xlsb) Structure Specification
  • [MS-ODRAW]: Office Drawing Binary File Format Structure Specification
  • [MS-CTDOC]: Word Custom Toolbar Binary File Format Structure Specification
  • [MS-CTXLS]: Excel Custom Toolbar Binary File Format Structure Specification
  • [MS-OFORMS]: Office Forms Binary File Format Structure Specification
  • [MS-OGRAPH]: Office Graph Binary File Format Structure Specification
  • [MS-OSHARED]: Office Common Data Types and Objects Structure Specification
  • [MS-OVBA]: Office VBA File Format Structure Specification
  • [MS-OFFCRYPTO]: Office Document Cryptography Structure Specification

Windows compound formats

  • [MS-CFB] Windows Compound Binary File Format Specification

Graphics formats

  • Windows Metafile Format (.wmf) Specification
  • Ink Serialized Format (ISF) Specification

Microsoft computer languages

  • [MS-XAML]: XAML Object Mapping Specification 2006 (Draft v0.1)
  • [MS-XAML]: XAML Object Mapping Specification 2006 (v1.0)
  • [MS-WPFXV]: WPF XAML Vocabulary Specification 2006 (Draft v0.1)
  • [MS-WPFXV]: WPF XAML Vocabulary Specification 2006 (v1.0)
  • [MS-SLXV]: Silverlight XAML Vocabulary Specification 2008 (Draft v0.9)

Robotics

  • Decentralized Software Services Protocol – DSSP/1.0

Synchronization

Windows Rally Technologies

Published protocols

Microsoft claims the Open Specification Promise applies to a long list of communication and internet protocols including the following. Most of these are in fact open standards which Microsoft may have implented in one or more pieces of software rather than intellectual property belonging to Microsoft:

  • RFC 1258 and RFC 1282 – Remote LOGIN (rlogin)
  • RFC 1332 and RFC 1877 – Internet Protocol Control Protocol (IPCP)
  • RFC 1334 – Password Authentication Protocol (PAP)
  • RFC 1393 – Traceroute
  • RFC 1436 – Internet Gopher
  • RFC 1483, RFC 1755, and RFC 2225 – Internet Protocol over Asynchronous Transfer Mode (IP over ATM)
  • RFC 1510 and RFC 1964 – Kerberos Network Authentication Service (v5)
  • RFC 1552 – PPP Internetwork Packet Exchange Control Protocol (IPXCP)
  • RFC 1661 – Point-to-Point Protocol (PPP)
  • RFC 1739 Section 2.2 – Packet Internet Groper (ping)
  • RFC 1889 and RFC 3550 – Real-Time Transport Protocol (RTP)
  • RFC 1939 and RFC 1734 – Post Office Protocol, v3(POP3)
  • RFC 1962 – Compression Control Protocol (CCP)
  • RFC 1990 – Multilink Protocol (MP)
  • RFC 1994 – MD5 Challenge Handshake Authentication Protocol (MD5-CHAP)
  • RFC 2097 – NetBIOS Frames Control Protocol (NBFCP)
  • RFC 2118 – Microsoft Point-to-Point Compression (MPPC)
  • RFC 2125 – Bandwidth Allocation Protocol (BAP)
  • RFC 2131, RFC 2132, and RFC 3361 – Dynamic Host Configuration Protocol (DHCP)
  • RFC 2205, RFC 2209, and RFC 2210 – Resource Reservation Setup (RSVP)
  • RFC 2222 – Simple Authentication and Security Layer (SASL)
  • RFC 2225 – Asynchronous Transfer Mode
  • Sun Microsystems Remote Procedure Call (SunRPC)
  • T.120
  • Tabular Data Stream (TDS) v7.1, 7.2, 7.3
  • Universal Plug and Play (UPnP)
  • Universal Serial Bus (USB) Revision 2.0

See also

References

  1. ^ a b "Microsoft Open Specification Promise". http://www.microsoft.com/interop/osp/. Retrieved 2007-11-02.
  2. ^ Richard Wilder (Associate General Counsel for Intellectual Property Policy at Microsoft) (2008-07-25). "The OSP and You". Port 25 (Microsoft's open source portal). http://port25.technet.com/archive/200 8/07/25/osp.aspx. Retrieved 2008-07-25.
  3. ^ "Microsoft's Open Specification Promise Eases Web Services Patent Concerns.". xml.coverpages.org. 2006-09-12. http://xml.coverpages.org/ni2006-09-1 2-a.html.
  4. ^ "Microsoft Open Specification Promise". http://www.microsoft.com/interop/osp/ default.mspx#EOHAC.
  5. ^ "Microsoft promises to hang patent fire over web services". 2006-09-12. http://www.computerbuyer.co.uk/buyer/ news/93789/microsoft-promises-to-hang -patent-fire-over-web-services.html.
  6. ^ Peter Galli (2006-09-12). "Microsoft Promises Not to Sue over Web Services Specs". http://www.devsource.com/c/a/Architec ture/Microsoft-Promises-Not-to-Sue-ov er-Web-Services-Specs/.
  7. ^ "Software Freedom Law Center Publishes Analysis of Microsoft's Open Specification Promise". Software Freedom Law Center. March 12, 2008. http://www.softwarefreedom.org/news/2 008/mar/12/osp-gpl/.
  8. ^ a b c d e "Microsoft's Open Specification Promise: No Assurance for GPL". Software Freedom Law Center. 2008-03-12. http://www.softwarefreedom.org/resour ces/2008/osp-gpl.html. Retrieved 2008-03-30.
  9. ^ "GNU General Public License (Version 3, 29 June 2007)". Free Software Foundation. 2008-02-12. http://www.fsf.org/licensing/licenses /gpl.html. See section 11 for patents.
  10. ^ Bilodeau, J-F (March 19, 2008). "Three Things Microsoft Should Do". http://farstarnet.com/jfbilodeau/labe ls/fud.html. Retrieved 2009-09-16. "Use the GNU GPL 3: Most free software is released under the GNU GPL 2 or 3, which is incompatible with Microsoft's OSP (Open Specification Promise) and the Ms-PL (Microsoft Public License). This is not an accident. Microsoft does not want software written using their technology to spread to other platform. Again, it's vendor lock-in. If Microsoft truly wanted to work with the Open Source community, they should abandon the OSP and the Ms-PL for the GPL, or another OSI certified license."[dead link]
  11. ^ Microsoft Open Specification Promise - Frequently Asked Questions
  12. ^ Microsoft Office Binary (doc, xls, ppt) File Formats
  13. ^ Hypervisor Functional Specification

External links

(Sebelumnya) Microsoft OneNoteMicrosoft Outlook (Berikutnya)