Web Services Protocols Interoperability Guide

Windows Communication Foundation (WCF) implements a number of Web services protocols. Many of these protocols include a number of options and extensibility points left to the discretion of the implementer. This topic provides a list of Web services protocols WCF implements. Other topics within this section provide implementation details for each protocol supported.

Web Services Protocols Implemented by WCF

WCF provides support for Web services (WS) infrastructure protocols through channels and Web services application protocols through the contracts feature. Interoperability for application protocols is accomplished through XML Schema description language 1.0 (XSD) and Web Services Description Language (WSDL) 1.1.

Infrastructure protocols interoperability is provided by the WS-* specifications. WCF channels provide support for a number of WS-* infrastructure protocols. WCF channels are configured using binding elements. The following tables contain the full list of the WS-* infrastructure protocols implemented by various WCF binding elements.

HttpTransportBindingElement supports the specifications in the following table.

Specification/document Link
HTTP 1.1 RFC 2616
SOAP 1.1 HTTP Binding Simple Object Access Protocol (SOAP) 1.1, Section 7
SOAP 1.2 HTTP Binding SOAP Version 1.2 Part 2: Adjuncts (Second Edition), Section 7

TextMessageEncodingBindingElement and MtomMessageEncodingBindingElement support the specifications in the following table.

Specification/Document Link
XML Extensible Markup Language (XML) 1.0 (Fourth Edition)
SOAP 1.1 Simple Object Access Protocol (SOAP) 1.1
SOAP 1.2 Core SOAP Version 1.2 Part 1: Messaging Framework (Second Edition)
WS-Addressing 2004/08 Web Services Addressing (WS-Addressing)
W3C Web Services Addressing 1.0 - Core Web Services Addressing 1.0 - Core
W3C Web Services Addressing 1.0 - SOAP Binding Web Services Addressing 1.0 - SOAP Binding
W3C Web Services Addressing 1.0 - WSDL Binding* Web Services Addressing 1.0 - WSDL Binding
W3C Web Services Addressing 1.0 Metadata Web Services Addressing 1.0 - Metadata
WSDL SOAP1.1 Binding Web Services Description Language (WSDL) 1.1
WSDL SOAP1.2 Binding WSDL 1.1 Binding Extension for SOAP 1.2

MtomMessageEncodingBindingElement supports the specifications in the following table.

Specification/document Link
XOP XML-binary Optimized Packaging
MTOM + SOAP1.2 Binding SOAP Message Transmission Optimization Mechanism
MTOM SOAP 1.1 Binding SOAP 1.1 Binding for MTOM 1.0
MTOM WS-PolicyAssertions To be published.

SecurityBindingElement supports the specifications in the following table.

Specification/document Link
WSS: SOAP Message Security 1.0 Web Services Security: SOAP Message Security 1.0
WSS: Username Token Profile 1.0 Web Services Security UsernameToken Profile 1.0

require Password/@Type=PasswordText (default)
WSS: X.509 Token Profile 1.0 Web Services Security X.509 Certificate Token Profile
WSS: SAML 1.1 Token Profile 1.0 Web Services Security: SAML Token Profile
WSS: SOAP Message Security 1.1 Web Services Security: SOAP Message Security 1.1
WSS Username Token Profile 1.1 Web Services Security UsernameToken Profile 1.1

do not implement password-based key derivation;

require Password/@Type=PasswordText (default)
WSS: X509 Token Profile 1.1 Web Services Security X.509 Certificate Token Profile 1.1
WSS: Kerberos Token Profile 1.1 Web Services Security Kerberos Token Profile 1.1
WSS: SAML 1.1 Token Profile 1.1 Web Services Security SAML Token Profile 1.1
WS-Secure Conversation Web Services Secure Conversation Language
WS-Trust 1.4 Web Services Trust Language
WS-SecurityPolicy 2005/07 Web Services Secure Conversation Language

As amended by errata submitted to OASIS WS-SX Technical Committee.

ws-sx message
WS-ReliableMessaging 1.1 Reliable Messaging Protocol version 1.1

TransactionFlowBindingElement supports the specifications in the following table.

Specification/Document Link
WS-Coordination Web Services Coordination
WS-AtomicTransaction Web Services Atomic Transaction

The MetadataExporter, MetadataImporter, System.ServiceModel.Description.MetadataImporter, System.ServiceModel.Description.WSDLImporter, and MetadataResolver classes provide support for the following metadata specifications:

In addition, the following Interoperability Profiles are implemented across WCF:

See Also

Web Services Protocols Supported by System-Provided Interoperability Bindings
Messaging Protocols
Data Contract Schema Reference
WSDL and Policy
Security Protocols
Reliable Messaging Protocol version 1.0
Reliable Messaging Protocol version 1.1
Transaction Protocols
Context Exchange Protocol