Microsoft Community Promise
   HOME

TheInfoList



OR:

The Microsoft Open Specification Promise (or OSP) is a
promise A promise is a commitment by someone to do or not do something. As a noun ''promise'' means a declaration assuring that one will or will not do something. As a verb it means to commit oneself by a promise to do or give. It can also mean a capacity ...
by
Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
, published in September 2006, to not assert its patents, in certain conditions, against implementations of a certain list of specifications. The OSP is not a licence, but rather a covenant not to sue. It promises protection but does not grant any rights. The OSP is limited to implementations to the extent that they conform to those specifications. This allows for conformance to be partial. So if an implementation follows the specification for some aspects, and deviates in other aspects, then the Covenant Not to Sue applies only to the implementation's aspects which follow the specification.


Relations with free software and open source projects

The protections granted by the OSP are independent to the licence of implementations. There is disagreement as to whether the conditions of the OSP can be fulfilled by free software and open source projects, and whether they thus gain any protection from the OSP. 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."
Linux vendor Red Hat's stance, as communicated by lawyer Mark Webbink in 2006, is:
"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."
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."
However, the
Software Freedom Law Center The Software Freedom Law Center (SFLC) is an organization that provides ''pro bono'' legal representation and related services to not-for-profit developers of free software/open source software. It was launched in February 2005 with Eben Moglen ...
, a law firm for free software and open source software, has warned of problems with the OSP for use in
free software Free software, libre software, libreware sometimes known as freedom-respecting software is computer software distributed open-source license, under terms that allow users to run the software for any purpose as well as to study, change, distribut ...
and
open source software Open-source software (OSS) is Software, computer software that is released under a Open-source license, license in which the copyright holder grants users the rights to use, study, change, and Software distribution, distribute the software an ...
projects. In a published analysis of the promise it states that
"...it permits implementation under free software licenses so long as the resulting code isn't used freely."
Their analysis warned of a possible inconsistency with GPL. 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 patent rights downline to all re-users of that code. When the code is reused, the OSP only applies as long as the reuse of that code is limited to implementing the covered specifications. Other patent promises with similar limitations include 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. 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."
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. 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" and it specifically does not mention which version of the GPL is addressed, leading some commentators to conclude that the current GPLv3 may be excluded.
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.


Licensed technologies

Technologies on which the Open Specification Promise applies are:


Web Services

* Devices Profile for Web Services (DPWS) * Identity Selector Interoperability Profile v1.0 *Identity Selector Interoperability Profile v1.5 *
Open Data Protocol In computing, Open Data Protocol (OData) is an open Protocol (computing) , protocol that allows the creation and consumption of queryable and interoperable Web service Application programming interface , APIs in a standard way. Microsoft initiate ...
(OData) * Remote Shell Web Services Protocol *
SOAP Soap is a salt (chemistry), salt of a fatty acid (sometimes other carboxylic acids) used for cleaning and lubricating products as well as other applications. In a domestic setting, soaps, specifically "toilet soaps", are surfactants usually u ...
*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-Coordination is a Web Services specification developed by BEA Systems, IBM, and Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. ...
* WS-Discovery *
WSDL The Web Services Description Language (WSDL ) is an XML-based interface description language that is used for describing the functionality offered by a web service. The acronym is also used for any specific WSDL description of a web service (also ...
*WSDL 1.1 Binding Extension for SOAP 1.2 * WS-Enumeration * WS-Eventing *
WS-Federation WS-Federation (Web Services Federation) is an Identity Federation specification, developed by a group of companies: BEA Systems, BMC Software, CA Inc. (along with Layer 7 Technologies now a part of CA Inc.), IBM, Microsoft, Novell, Hewlett Packar ...
* WS-Federation Active Requestor Profile * WS-Federation Passive Requestor Profile *
WS-I Basic Profile {{Short description, Interoperability guidance for core web services specifications The WS-I Basic Profile (official abbreviation is BP), a specification from the Web Services Interoperability industry consortium (WS-I), provides interoperability g ...
* WS-Management * WS-Management Catalog *
WS-MetadataExchange WS-MetaDataExchange is a web services protocol specification, published by BEA Systems, IBM, Microsoft, and SAP. WS-MetaDataExchange is part of the WS-Federation roadmap; and is designed to work in conjunction with WS-Addressing, WSDL and WS-P ...
* WS-Policy * WS-PolicyAttachment *
WS-ReliableMessaging WS-ReliableMessaging describes a protocol that allows SOAP messages to be reliable messaging, reliably delivered between distributed applications in the presence of software component, system, or network failures. The original specification was w ...
* WS-RM Policy * WS-SecureConversation *
WS-Security Web Services Security (WS-Security, WSS) is an extension to SOAP to apply security to Web services. It is a member of the Web service specifications and was published by OASIS. The protocol specifies how integrity and confidentiality can be enf ...
: Kerberos Binding *WS-Security: Kerberos Token Profile *WS-Security: Rights Expression Language (REL) Token Profile *WS-Security:
SAML Security Assertion Markup Language (SAML, pronounced ''SAM-el'', ) is an open standard for exchanging authentication and authorization data between parties, in particular, between an identity provider (SAML), identity provider and a service provid ...
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

*OpenService Format Specification (a.o. Accelerator) *
Web Slice Web Slices are a web feed technology based on the hAtom Microformat that allows users to subscribe to portions of a web page. Microsoft developed the Web Slice format, and published a specification under their Microsoft Open Specification Promise, ...
Format Specification introduced with
Internet Explorer 8 Windows Internet Explorer 8 (IE8) is a web browser for Windows. It was released by Microsoft on March 19, 2009, and was the default browser on Windows 7 and Windows Server 2008 R2. It is the first version of IE to pass the Acid2 test, the last ...
*XML Search Suggestions Format Specification


Virtualization Specifications

* Virtual Hard Disk (VHD) Image Format Specification *
Microsoft Application Virtualization Microsoft Application Virtualization (also known as App-V; formerly Softricity SoftGrid) is an application virtualization and application streaming solution from Microsoft. It was originally developed by Softricity, a company based in Boston, Mass ...
File Format Specification v1 *
Hyper-V Hyper-V is a native hypervisor developed by Microsoft; it can create virtual machines on x86-64 systems running Windows. It is included in Pro and Enterprise editions of Windows (since Windows 8) as an optional feature to be manually enabled. A ...
Functional Specification


Security

*RFC 4406 – Sender ID: Authenticating E-Mail *RFC 4408 –
Sender Policy Framework Sender Policy Framework (SPF) is an email authentication method that ensures the sending mail server is authorized to originate mail from the email sender's domain. This authentication only applies to the email sender listed in the "envelope from ...
: 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 *RFC 7208 – Sender Policy Framework (SPF) for Authorizing Use of Domains in Email * 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 Office Open XML (also informally known as OOXML) is a zipped, XML-based file format developed by Microsoft for representing spreadsheets, charts, presentations and word processing documents. Ecma International standardized the initial version ...
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

= * S-DOC Word Binary File Format (.doc) Structure Specification * S-PPT PowerPoint Binary File Format (.ppt) Structure Specification * S-XLS Excel Binary File Format (.xls) Structure Specification * S-XLSB Excel Binary File Format (.xlsb) Structure Specification * S-ODRAW Office Drawing Binary File Format Structure Specification * S-CTDOC Word Custom Toolbar Binary File Format Structure Specification * S-CTXLS Excel Custom Toolbar Binary File Format Structure Specification * S-OFORMS Office Forms Binary File Format Structure Specification * S-OGRAPH Office Graph Binary File Format Structure Specification * S-OSHARED Office Common Data Types and Objects Structure Specification * S-OVBA Office VBA File Format Structure Specification * S-OFFCRYPTO Office Document Cryptography Structure Specification


Windows compound formats

* S-CFBWindows Compound Binary File Format Specification


Graphics formats

*
Windows Metafile Windows Metafile (WMF) is an image file format originally designed for Microsoft Windows in the 1990s. The original Windows Metafile format was not device-independent (though could be made more so with placement headers) and may contain both vector ...
Format (.wmf) Specification * Ink Serialized Format (ISF) Specification *
JPEG XR JPEG XR (JPEG extended range) is an image compression standard for continuous tone photographic images, based on the HD Photo (formerly Windows Media Photo) specifications that Microsoft originally developed and patented. It supports both los ...
(.jxr) Format


Microsoft computer languages

* S-XAML
XAML Extensible Application Markup Language (XAML ) is a declarative XML-based language developed by Microsoft for initializing structured values and objects. It is available under Microsoft's Open Specification Promise. XAML is used extensively i ...
Object Mapping Specification 2006 (Draft v0.1) * S-XAML XAML Object Mapping Specification 2006 (v1.0) * S-WPFXV WPF XAML Vocabulary Specification 2006 (Draft v0.1) * S-WPFXV WPF XAML Vocabulary Specification 2006 (v1.0) * S-SLXV
Silverlight Microsoft Silverlight is a discontinued application framework designed for writing and running rich internet applications, similar to Adobe's runtime, Adobe Flash. While early versions of Silverlight focused on streaming media, later version ...
XAML Vocabulary Specification 2008 (Draft v0.9)


Robotics

*Decentralized Software Services Protocol – DSSP/1.0


Synchronization

*
FeedSync FeedSync for Atom and RSS, previously Simple Sharing Extensions, are extensions to RSS (file format), RSS and Atom (feed), Atom feed formats designed to enable the bi-directional synchronization of information by using a variety of data sources. In ...
v1.0, v1.0.1


Windows Rally Technologies

* Windows Connect NowUFD and Windows Vista *Windows Connect Now – UFD for Windows XP


Published protocols

In Microsoft's list of covered protocols there are many third-party protocols which Microsoft did not create but for which they imply they have patents which are necessary for implementation: *
AppleTalk AppleTalk is a discontinued proprietary suite of networking protocols developed by Apple Computer for their Macintosh computers. AppleTalk includes a number of features that allow local area networks to be connected with no prior setup or the ...
* C-BUP
Background Intelligent Transfer Service Background Intelligent Transfer Service (BITS) is a component of Microsoft Windows XP and later iterations of the operating systems, which facilitates asynchronous, prioritized, and throttled transfer of files between machines using idle network ...
(BITS) Upload Protocol Specification * C-CCFG Server Cluster: Configuration (ClusCfg) Protocol Specification * C-COMQC Component Object Model Plus (COM+) Queued Components Protocol Specification * C-FPSEWM FrontPage Server Extensions: Website Management Specification * C-SMP Session Multiplex Protocol Specification * C-SQLR SQL Server Resolution Protocol Specification * 1394 Serial Bus Protocol 2 * IBM NetBIOS Extended User Interface (NetBEUI) v 3.0 * IEC 61883-1 * IEEE 1284 – Interface - Parallel * IEEE 802.1x - 2004 * Infrared Data Association (IrDA) Published Standards * Intel Preboot Execution Environment (PXE) * Novell Internetwork Packet Exchange (IPX) * Novell Sequenced Packet Exchange (SPX) * Novell Service Advertising Protocol (SAP) * and – NetBIOS over TCP (NETBT) *
Serial Line Internet Protocol The Serial Line Internet Protocol (SLIP) is an encapsulation of the Internet Protocol designed to work over serial ports and router connections. It is documented in . On personal computers, SLIP has largely been replaced by the Point-to-Point P ...
(SLIP, ) * , , and –
Routing Information Protocol The Routing Information Protocol (RIP) is one of the oldest distance-vector routing protocols which employs the hop count as a routing metric. RIP prevents routing loops by implementing a limit on the number of hops allowed in a path from so ...
1.0, 2.0 (RIP) * , , and –
Internet Group Management Protocol The Internet Group Management Protocol (IGMP) is a communications protocol used by hosts and adjacent routers on IPv4 networks to establish multicast group memberships. IGMP is an integral part of IP multicast and allows the network to direct ...
(IGMP) v1, v2, and v3 * , , , , , , , , , , , and :
Simple Network Management Protocol Simple Network Management Protocol (SNMP) is an Internet Standard protocol for collecting and organizing information about managed devices on IP networks and for modifying that information to change device behavior. Devices that typically su ...
v2 (SNMP) * – Line Printer Daemon (LPD) * , , , and – TCP/IP Extensions * – ICMP Router Discovery Messages * and – Remote LOGIN (
rlogin The Berkeley r-commands are a suite of computer programs designed to enable users of one Unix system to log in or issue commands to another Unix computer via TCP/IP computer network. The r-commands were developed in 1982 by the Computer System ...
) * and – Internet Protocol Control Protocol (IPCP) * –
Password Authentication Protocol Password Authentication Protocol (PAP) is a password-based authentication protocol used by Point-to-Point Protocol (PPP) to validate users. PAP is specified in . Almost all network operating systems support PPP with PAP, as do most network access s ...
(PAP) * –
Traceroute In computing, traceroute and tracert are diagnostic command-line interface commands for displaying possible routes (paths) and transit delays of packets across an Internet Protocol (IP) network. The command reports the round-trip times of ...
* – Internet Gopher * , , and – Internet Protocol over Asynchronous Transfer Mode (IP over ATM) * and – Kerberos Network Authentication Service (v5) * – PPP Internetwork Packet Exchange Control Protocol (IPXCP) * –
Point-to-Point Protocol In computer networking, Point-to-Point Protocol (PPP) is a data link layer (layer 2) communication protocol between two routers directly without any host or any other networking in between. It can provide loop detection, authentication, transmissio ...
(PPP) * Section 2.2 – Packet Internet Groper (ping) * and –
Real-Time Transport Protocol The Real-time Transport Protocol (RTP) is a network protocol for delivering audio and video over IP networks. RTP is used in communication and entertainment systems that involve streaming media, such as telephony, video teleconference applic ...
(RTP) * and –
Post Office Protocol In computing, the Post Office Protocol (POP) is an application-layer Internet standard protocol used by e-mail clients to retrieve e-mail from a mail server. Today, POP version 3 (POP3) is the most commonly used version. Together with IMAP, ...
, v3 (POP3) * – Compression Control Protocol (CCP) * – Multilink Protocol (MP) * –
MD5 The MD5 message-digest algorithm is a widely used hash function producing a 128-bit hash value. MD5 was designed by Ronald Rivest in 1991 to replace an earlier hash function MD4, and was specified in 1992 as Request for Comments, RFC 1321. MD5 ...
Challenge Handshake Authentication Protocol (MD5-CHAP) * –
NetBIOS NetBIOS () is an acronym for Network Basic Input/Output System. It provides services related to the session layer of the OSI model allowing applications on separate computers to communicate over a local area network. As strictly an API, Net ...
Frames Control Protocol (NBFCP) * – Microsoft Point-to-Point Compression (MPPC) * – Bandwidth Allocation Protocol (BAP) * , , and –
Dynamic Host Configuration Protocol The Dynamic Host Configuration Protocol (DHCP) is a network protocol, network management protocol used on Internet Protocol (IP) networks for automatically assigning IP addresses and other communication parameters to devices connected to the netw ...
(DHCP) * , , and – Resource Reservation Setup (RSVP) * –
Simple Authentication and Security Layer Simple Authentication and Security Layer (SASL) is a framework for authentication and data security in Internet protocols. It decouples authentication mechanisms from application protocols, in theory allowing any authentication mechanism support ...
(SASL) * –
Asynchronous Transfer Mode Asynchronous Transfer Mode (ATM) is a telecommunications standard defined by the American National Standards Institute and International Telecommunication Union Telecommunication Standardization Sector (ITU-T, formerly CCITT) for digital trans ...
*
Server Message Block Server Message Block (SMB) is a communication protocol used to share files, printers, serial ports, and miscellaneous communications between nodes on a network. On Microsoft Windows, the SMB implementation consists of two vaguely named Windows ...
* Sun Microsystems Remote Procedure Call (SunRPC) * T.120 * Tabular Data Stream (TDS) v7.1, 7.2, 7.3 *
Universal Plug and Play Universal Plug and Play (UPnP) is a set of networking protocols on the Internet Protocol (IP) that permits networked devices, such as personal computers, printers, Internet gateways, Wi-Fi access points and mobile devices, to seamlessly discover ...
(UPnP) *
Universal Serial Bus Universal Serial Bus (USB) is an industry standard, developed by USB Implementers Forum (USB-IF), for digital data transmission and power delivery between many types of electronics. It specifies the architecture, in particular the physical ...
(USB) Revision 2.0


See also

*
Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
*
Glossary of patent law terms This is a list of legal terms relating to patents and patent law. A patent is not a right to practice or use the invention claimed therein, but a territorial right to exclude others from commercially exploiting the invention, granted to an inven ...


References


External links


Open Specification Promise
— Microsoft page describing the OSP and listing the specifications covered by it.
Analysis of OSP
by standards lawyer Andy Updegrove

by
Software Freedom Law Center The Software Freedom Law Center (SFLC) is an organization that provides ''pro bono'' legal representation and related services to not-for-profit developers of free software/open source software. It was launched in February 2005 with Eben Moglen ...
.
Rebuttal
by Gray Knowlton, group product manager for Microsoft Office.
Open Specifications
— Documentation for the covered specifications. {{FOSS Microsoft initiatives Patent law