<img width="72" height="48" alt= "W3C" src="http://www.w3.org/Icons/w3c_home" /> W3C

2004-08-03 diff-marked version: Web Services Description Language (WSDL) Version 1.2 2.0 Part 3: Bindings

W3C Working Draft 11 June 2003 3 August 2004

This version:
<a href= "http://www.w3.org/TR/2003/WD-wsdl12-bindings-20030611"> http://www.w3.org/TR/2003/WD-wsdl12-bindings-20030611 http://www.w3.org/TR/2004/WD-wsdl20-bindings-20040803
Latest version:
<a href= "http://www.w3.org/TR/wsdl12-bindings"> http://www.w3.org/TR/wsdl12-bindings http://www.w3.org/TR/wsdl20-bindings
Previous versions:
<a href= "http://www.w3.org/TR/2003/WD-wsdl12-bindings-20030124"> http://www.w3.org/TR/2003/WD-wsdl12-bindings-20030124 http://www.w3.org/TR/2003/WD-wsdl12-bindings-20030611
Editors:
Hugo Haas, W3C
Philippe Le Hégaret, W3C
Jean-Jacques Moreau, Canon
David Orchard, BEA Systems
Jeffrey Schlimmer, Microsoft
Sanjiva Weerawarana, IBM Research

This document is also available in these non-normative formats: <a href= "http://www.w3.org/TR/2003/WD-wsdl12-bindings-20030611/wsdl12-bindings.ps"> postscript , <a href= "http://www.w3.org/TR/2003/WD-wsdl12-bindings-20030611/wsdl12-bindings.pdf"> PDF , <a href= "http://www.w3.org/TR/2003/WD-wsdl12-bindings-20030611/wsdl12-bindings.xml"> XML , and  <a href= "http://www.w3.org/TR/2003/WD-wsdl12-bindings-20030611/wsdl12-bindings.txt"> plain text .


Abstract

WSDL is an XML format for describing network services as a set of endpoints operating on messages containing either document-oriented or procedure-oriented information. WSDL Version 1.2 2.0 Bindings describes how to use WSDL in conjunction with SOAP 1.2 [ SOAP 1.2 Part 1: Messaging Framework ], ] and HTTP/1.1 deleted text: GET/POST [ <a href= "#RFC2616"> IETF RFC 2616 ], and MIME [ <cite> <a href= "#RFC2045"> IETF RFC 2045 </a> </cite> ]. ] (as well as other versions of HTTP). This specification depends on WSDL Version 1.2 2.0 [ <a href="#WSDL-PART1"> WSDL 1.2 2.0 Core Language ].

Status of this Document

This section describes the status of this document at the time of its publication. Other documents may supersede this document. The A list of current W3C publications and the latest status revision of this document series is maintained at technical report can be found in the W3C. W3C technical reports index at http://www.w3.org/TR/.

This is a <a href= "http://www.w3.org/Consortium/Process-20010719/tr.html#RecsWD"> W3C Last Call Working Draft </a> of .If the WSDL Version 1.2 Bindings feedback is positive, the Working Group plans to submit this specification for review by consideration as a W3C members Candidate Recommendation. Comments on this document are invited and other interested parties. are to be sent to the public public-ws-desc-comments@w3.org mailing list ( public archive ). Comments can be sent until 4 October 2004 .

Three formal objections from Working Group participants have been received against portions of the WSDL 2.0 specification. Feedback is specifically encouraged on these topics:

A diff-marked version against the previous version of this document is available. For a detailed list of changes since the last publication of this document, please refer to appendix B. Part 3 Change Log .Issues about this document are documented in the last call issues list maintained by the Working Group.

This document has been produced as part of the W3C Web Services Activity . The authors of this document are the Web Services Description Working Group members.

Publication as a Working Draft does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to deleted text: use W3C Working Drafts as reference material or to cite them this document as other than deleted text: "work in progress". This is work in progress and does not imply endorsement by, or the consensus of, either W3C or members of the Web Services Description Working Group. </p> <p> For a detailed list of changes since the last publication of this document, refer to appendix <a href="#changelog"> <b> B. Part 2 Change Log </b> </a>. progress.

Comments on this document are invited and are to be sent to <a href= "mailto:public-ws-desc-comments@w3.org"> public-ws-desc-comments@w3.org </a> ( <a href= "http://lists.w3.org/Archives/Public/public-ws-desc-comments/"> public archive </a> ). It is inappropriate to send discussion emails to this address. Discussion of this This document takes place on has been produced under the public <a href="mailto:www-ws-desc@w3.org"> www-ws-desc@w3.org </a> mailing list ( <a href= "http://lists.w3.org/Archives/Public/www-ws-desc/"> public archive 24 January 2002 Current Patent Practice ). </p> <p> as amended by the W3C Patent Policy Transition Procedure . Patent disclosures relevant to this specification may be found on the Working Group's patent disclosure page . </p> <p> A list An individual who has actual knowledge of <a href="http://www.w3.org/TR/"> current a patent which the individual believes contains Essential Claim(s) with respect to this specification should disclose the information in accordance with section 6 of the W3C Recommendations and other technical documents </a> can be found at http://www.w3.org/TR. Patent Policy .


Short Table of Contents

1. Introduction
2. <a href="#_soap-b"> WSDL SOAP Binding
3. <a href="#_http"> WSDL HTTP Binding
4. deleted text: <a href="#_mime"> MIME Binding </a> <br /> 5. References
A. Acknowledgements (Non-Normative)
B. Part 2 3 Change Log (Non-Normative)


Table of Contents

1. Introduction
    1.1 Notational Conventions
2. <a href="#_soap-b"> WSDL SOAP Binding
    2.1 <a href="#_soap_binding"> binding Element with binding [parent] </a> <br />         2.1.1 <a href= "#_soap_binding_transport"> protocol Attribute with binding [owner] </a> <br />         2.1.2 <a href= "#_soap_binding_style"> styleDefault Attribute with binding [owner] </a> <br />         2.1.3 <a href= "#_soap_binding_name"> namespaceDefault Attribute with binding [owner] </a> <br />         2.1.4 <a href= "#_soap_binding_encoding"> encodingStyleDefault Attribute with binding [owner] XML Syntax Summary (Non-Normative)
    2.2 <a href="#_soap_module"> module Element with binding [parent] </a> <br />         2.2.1 <a href= "#_soap_module_uri"> uri Attribute with module [owner] </a> <br />         2.2.2 <a href= "#_soap_module_required"> required Attribute with binding [owner] Identifying a SOAP Binding
    2.3 <a href= "#_soap_property"> propertyConstraint Element with module [parent] Default Binding Rules
        2.3.1 <a href= "#_soap_property_uri"> uri Attribute with propertyConstraint [owner]     2.4 Specifying the SOAP Underlying Protocol
        2.3.2 <a href= "#_soap_property_type"> type Attribute with propertyConstraint [owner]         2.4.1 Description
    2.4 <a href="#_soap_operation"> operation Element with operation [parent]         2.4.2 Relationship to WSDL Component Model
        2.4.1 <a href= "#_soap_operation_style"> style Attribute with operation [owner]         2.4.3 XML Representation
        2.4.2 <a href= "#_soap_operation_action"> soapAction Attribute with operation [owner]         2.4.4 Mapping Between Component Properties and XML Representation
    2.5 <a href="#_soap_body"> body Element with input or output [parent] Specifying the Default SOAP MEP
        2.5.1 <a href= "#_soap_body_name"> namespace Attribute with body [owner] Description
        2.5.2 <a href= "#_soap_body_encoding"> encodingStyle Attribute with body [owner] Relationship to WSDL Component Model
        2.5.3 XML Representation
    2.6 <a href="#_soap_header"> header Element with input or output [parent] Declaring SOAP Modules
        2.6.1 <a href= "#_soap_header_element"> element Attribute with header [owner] Description
        2.6.2 <a href= "#_soap_header_type"> type Attribute with header [owner] Relationship to WSDL Component Model
        2.6.3 <a href= "#_soap_header_localname"> localname Attribute with header [owner] SOAP Module Component
        2.6.4 <a href= "#_soap_header_namespace"> namespace Attribute with header [owner] XML Representation
        2.6.5 <a href= "#_soap_header_encoding"> encodingStyle Attribute with header [owner] </a> <br />         2.6.6 <a href= "#_soap_header_role"> role Attribute with header [owner] Mapping Between Component Properties and XML Representation
    2.7 <a href= "#_soap_headerfault"> headerfault Element with input or output [parent] Binding Faults
        2.7.1 <a href= "#_soap_headerfault_message"> message Attribute with headerfault [owner] Description
        2.7.2 <a href= "#_soap_headerfault_part"> part Attribute with headerfault [owner] Relationship to WSDL Component Model
        2.7.3 <a href= "#_soap_headerfault_namespace"> namespace Attribute with headerfault [owner] XML Representation
        2.7.4 <a href= "#_soap_headerfault_encoding"> encodingStyle Attribute with headerfault [owner] Mapping Between Component Properties and XML Representation
    2.8 <a href="#_soap_fault"> fault Element with fault [parent] Binding Operations
        2.8.1 <a href= "#_soap_fault_message"> message Attribute with fault [owner] Description
        2.8.2 <a href= "#_soap_fault_namespace"> namespace Attribute with fault [owner] Relationship to WSDL Component Model
        2.8.3 <a href= "#_soap_fault_encoding"> encodingStyle Attribute with fault [owner] </a> <br />     2.9 <a href="#_soap_address"> address Element with endpoint [parent] XML Representation
        2.9.1 <a href= "#_soap_location"> location Attribute with address [owner]         2.8.4 Mapping Between Component Properties and XML Representation
3. <a href="#_http"> WSDL HTTP Binding
    3.1 <a href="#_http_binding"> binding Element with binding [parent] Identifying an HTTP Binding
        3.1.1 <a href= "#_http_binding_verbDefault"> verbDefault Attribute with binding [owner]     3.2 HTTP Syntax Summary (Non-Normative)
    3.2 <a href="#_http_operation"> operation Element with operation [parent]     3.3 Default Binding Rules
        3.2.1 <a href= "#_http_operation_verb"> verb Attribute with operation [owner]     3.4 Specifying the HTTP Version
        3.2.2 <a href= "#_http_operation_location"> location Attribute with operation [owner]         3.4.1 Description
    3.3 <a href="#_http_get_binding"> Method is GET         3.4.2 Relationship to WSDL Component Model
        3.3.1 <a href= "#_http_operation_location_cited_get"> Case of Input Parts Cited in location Attribute         3.4.3 XML Representation
        3.3.2 <a href= "#_http_operation_location_notcited_get"> Case of Input Parts NOT Cited in location attribute         3.4.4 Mapping Between Component Properties and XML Representation
            3.3.2.1 <a href="#_http_operation_request_get_body_request"> Serializing Parts into     3.5 Specifying the Default HTTP Body request Method
        3.3.3 <a href= "#_http_operation_response_get"> Case         3.5.1 Description
        3.5.2 Relationship to WSDL Component Model
        3.5.3 XML Representation
    3.6 Binding Operations
        3.6.1 Description
        3.6.2 Relationship to WSDL Component Model
        3.6.3 XML Representation of Output Parts HTTP Operation Component
            3.3.3.1 <a href="#_http_operation_response_get_body_response"> Serializing parts into         3.6.4 Mapping Between HTTP Body response Operation's XML Representation to Component Properties
    3.4 <a href="#_http_post_binding"> Method is POST     3.7 Specifying HTTP Error Codes for Faults
        3.4.1 <a href= "#_http_operation_xml_encoding">         3.7.1 Description
        3.7.2 Relationship to WSDL Component Model
        3.7.3 XML Encoding Mechanism Representation
            3.4.1.1 <a href="#_http_operation_location_cited_post_xml">         3.7.4 Mapping Between Component Properties and XML Representation
    3.8 Serialization format of instance data
        3.8.1 Serialization as application/x-www-form-urlencoded
            3.8.1.1 Case of Input Parts Cited elements cited in location Attribute whttp:location attribute
            3.4.1.2 <a href="#_http_operation_location_notcited_post_xml">             3.8.1.2 Case of Input Parts elements NOT Cited cited in location whttp:location attribute
            3.4.1.3 <a href="#_http_operation_response_post_xml"> Case of Output Parts                 3.8.1.2.1 Serialization in the request URI
        3.4.2                 3.8.1.2.2 Serialization in the message body
        3.8.2 Serialization as application/xml
        3.8.3 Serialization as multipart/form-data
    3.9 Operation Styles
        3.9.1 URI Style
        3.9.2 Multipart Encoding Mechanism style
            3.4.2.1 <a href="#_http_operation_location_cited_post_multipart"> Case of Input Parts Cited in location Attribute     3.10 Specifying the transfer coding
            3.4.2.2 <a href="#_http_operation_location_notcited_post_multipart"> Case of Input Parts NOT Cited in location Attribute         3.10.1 Description
            3.4.2.3 <a href="#_http_operation_response_post_multipart"> Case of Output Parts         3.10.2 Relationship to WSDL Component Model
        3.4.3 <a href= "#_http_operation_form_encoding"> application/x-www-form-urlencoded Encoding Mechanism         3.10.3 XML Representation
            3.4.3.1 <a href="#_http_operation_location_cited_post_form"> Case of Input Parts Cited in location Attribute         3.10.4 Mapping Between Component Properties and XML Representation
            3.4.3.2 <a href="#_http_operation_location_notcited_post_form"> Case     3.11 Specifying the Use of Input Parts NOT Cited in location Attribute HTTP Cookies
            3.4.3.3 <a href="#_http_operation_response_post_form"> Case of Output Parts         3.11.1 Description
    3.5 <a href="#_http_address"> address Element with endpoint [parent]         3.11.2 Relationship to WSDL Component Model
        3.5.1 <a href= "#_http_location"> location Attribute with address [owner]         3.11.3 XML Representation
4. <a href="#_mime"> MIME Binding         3.11.4 Mapping Between Component Properties and XML Representation
    4.1 <a href="#_how_mime_extends"> How the MIME Binding extends WSDL     3.12 Specifying HTTP Access Authentication
    4.2 <a href= "#_mime_content"> mime:content         3.12.1 Description
    4.3 <a href= "#_mime_multipartRelated"> mime:multipartRelated         3.12.2 Relationship to WSDL Component Model
    4.4 <a href= "#_mime_soap_body"> soap:body         3.12.3 XML Representation
    4.5 <a href= "#_mime_mimeXml"> mime:mimeXml         3.12.4 Mapping Between Component Properties and XML Representation
5. 4. References
    5.1     4.1 Normative References
    5.2     4.2 Informative References

<a id="appendix" name="appendix"> Appendices

A. Acknowledgements (Non-Normative)
B. Part 2 3 Change Log (Non-Normative)
deleted text:     B.1 <a href="#wsdl-spec-changelog"> WSDL Specification Changes </a> <br />     B.2 <a href="#xml-schema-changes"> XML Schema Changes </a>


1. Introduction

The Web Services Description Language WSDL Version 1.2 2.0 (WSDL) [ WSDL 1.2 2.0 Core Language ] defines an XML grammar [ <cite> <a href="#XML"> XML 1.0 </a> </cite> ] language for describing network services as collections of communication endpoints capable of exchanging messages. WSDL service definitions provide documentation for distributed systems and serve as a recipe for automating the details involved in applications communication. WSDL 1.2 2.0 Bindings (this document) defines binding extensions for the following protocols and message formats:

WSDL 1.2 2.0 Primer [ WSDL 1.2 2.0 Primer ] is a non-normative document intended to provide an easily understandable tutorial on the features of the WSDL Version 1.2 2.0 specifications.

The Core Language [ WSDL 1.2 2.0 Core Language ] of the WSDL 1.2 2.0 specification describes the core elements of the WSDL language.

1.1 Notational Conventions

The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC2119 [ IETF RFC 2119 ].

This specification uses a number of namespace prefixes throughout; they are listed in Table 1-1 . Note that the choice of any namespace prefix is arbitrary and not semantically significant (see [ XML Information Set ]).


Table 1-1. Prefixes and Namespaces used in this specification
Prefix Namespace Notes
wsdl "http://www.w3.org/2003/06/wsdl" "http://www.w3.org/2004/08/wsdl" A normative XML Schema [ XML Schema Structures ], [ XML Schema Datatypes ] document for the "http://www.w3.org/2003/06/wsdl" "http://www.w3.org/2004/08/wsdl" namespace can be found at <a href= "http://www.w3.org/2003/06/wsdl"> http://www.w3.org/2003/06/wsdl http://www.w3.org/2004/08/wsdl .
soap wsoap "http://www.w3.org/2003/06/wsdl/soap12" "http://www.w3.org/2004/08/wsdl/soap12" A normative XML Schema [ XML Schema Structures ], [ XML Schema Datatypes ] document for the "http://www.w3.org/2003/06/wsdl/soap12" "http://www.w3.org/2004/08/wsdl/soap12" namespace can be found at <a href= "http://www.w3.org/2003/06/wsdl/soap12"> http://www.w3.org/2003/06/wsdl/soap12 http://www.w3.org/2004/08/wsdl/soap12 .
http whttp "http://www.w3.org/2003/06/wsdl/http" "http://www.w3.org/2004/08/wsdl/http" A normative XML Schema [ XML Schema Structures ], [ XML Schema Datatypes ] document for the "http://www.w3.org/2003/06/wsdl/http" "http://www.w3.org/2004/08/wsdl/http" namespace can be found at <a href= "http://www.w3.org/2003/06/wsdl/http"> http://www.w3.org/2003/06/wsdl/http http://www.w3.org/2004/08/wsdl/http .
mime wsdls "http://www.w3.org/2003/06/wsdl/mime" "http://www.w3.org/2004/08/wsdl-simple-types" A normative XML Schema [ <cite> <a href= "#XMLSchemaP1"> XML Schema Structures </a> </cite> ], This prefix and namespace name are used to refer to the simple types defined by [ <a href= "#XMLSchemaP2"> XML Schema Datatypes WSDL 2.0 Core Language ] deleted text: document for use in the "http://www.w3.org/2003/06/wsdl/mime" namespace can be found at <a href= "http://www.w3.org/2003/06/wsdl/mime"> http://www.w3.org/2003/06/wsdl/mime </a>. </td> </tr> <tr> <td rowspan="1" colspan="1"> xsd </td> <td rowspan="1" colspan="1"> "http://www.w3.org/2001/XMLSchema" </td> <td rowspan="1" colspan="1"> Defined component model, see Definition of the Simple Types Used in the W3C XML Schema specification [ <cite> <a href="#XMLSchemaP1"> XML Schema Structures </a> </cite> ], [ <cite> <a href="#XMLSchemaP2"> XML Schema Datatypes </a> </cite> ]. Component Model .
xsi xs "http://www.w3.org/2001/XMLSchema-instance" "http://www.w3.org/2001/XMLSchema" Defined in the W3C XML Schema specification [ XML Schema Structures ], [ XML Schema Datatypes ].

Namespace names of the general form "http://example.org/..." and "http://example.com/..." represent application or context-dependent URIs [ IETF RFC 2396 ].

deleted text: This specification uses the Extended Backus-Naur Form (EBNF) as described in XML 1.0 [ <cite> <a href="#XML"> XML 1.0 </a> </cite> ]. </p> <p> All parts of this specification are normative, with the EXCEPTION of pseudo-schemas, examples, and sections explicitly marked as "Non-Normative". Pseudo-schemas are provided for each component, before the description of this component. They provide visual help for the XML 1.0-based [ XML 1.0 ] serialization, but do not limit the ability of the bindings to be expressed with other versions of XML such as XML 1.1 [ XML 1.1 ] or futures versions of XML Schema [ XML Schema Structures ], [ XML Schema Datatypes ].

Note that the WSDL binding specifications in this document are defined in terms of a component model defined by this specification. As such, it is explicitly NOT a conformance requirement to be able to process documents encoded in a particular version of XML.

<a name="_soap-b" id="_soap-b"> 2. WSDL SOAP Binding

<table border="1" summary="Editorial note: JCS"> <tr> <td width="50%" valign="top" align="left"> <b> Editorial note: JCS </b> </td> <td width="50%" valign="top" align="right"> 20030115 </td> </tr> <tr> <td valign="top" align="left" colspan="2">

The WG is actively redesigning the SOAP/HTTP SOAP binding to align with changes described in this section is an extension for [ WSDL 2.0 Core Language ] to enable Web Services applications to use SOAP 1.2. </td> </tr> </table> <table border="1" summary="Editorial note: JCS"> <tr> <td width="50%" valign="top" align="left"> 1.2 [ <b> Editorial note: JCS </b> SOAP 1.2 Part 1: Messaging Framework </td> <td width="50%" valign="top" align="right"> 20030115 </td> </tr> <tr> <td valign="top" align="left" colspan="2"> ]. This section is not fully converted binding extends WSDL 2.0 by adding properties to a the Binding component model compatible as defined in [ WSDL 2.0 Core Language ]. In addition, an XML Infoset representation for these additional properties is provided, along with Part 1. </td> </tr> </table> a mapping from that representation to the various component properties.

As allowed in [ WSDL includes 2.0 Core Language ], a Binding component MAY exist without indicating a specific Interface component that it applies to. In this case there MUST NOT be any Binding Operation or Binding Fault components present in the Binding component.

The SOAP binding is designed with the objective of minimizing what needs to be explicitly declared for SOAP 1.2 endpoints, common cases. This is achieved by defining a set of default rules which supports the specification apply for all Interface Operation components of an Interface component, unless specifically overidden on a per Interface Operation basis. Thus, if a given Interface Operation component is not referred to specifically, then all the following protocol specific information: default rules apply for that component. That is, per the requirements of [ WSDL 2.0 Core Language ] all operations of an Interface component are bound by this binding.

deleted text: <ul> <li>

An indication Notice that a there are no default binding is rules defined for Interface Fault components by this binding. Thus, if a given Interface component has any Fault components, then such Interface components MUST be bound to via Binding components which indicate a specific interface and contain as many Binding Fault components as there are Fault components in the SOAP 1.2 protocol. Interface Fault component.

deleted text: </li> <li>

A way subset of deleted text: specifying an address for a SOAP endpoint. </p> </li> <li> <p> The URI for the deleted text: SOAPAction HTTP header field for properties specified in the HTTP binding of SOAP. </p> <table border="1" summary="Editorial note: JCS"> <tr> <td width="50%" valign="top" align="left"> defined in section Editorial note: JCS 3. WSDL HTTP Binding </td> <td width="50%" valign="top" align="right"> 20030115 </td> </tr> <tr> <td valign="top" align="left" colspan="2"> The may be expressed in a SOAP deleted text: 1.2 HTTP binding does not define a SOAPAction when the SOAP binding uses HTTP header field. This as the underlying protocol, i.e. when the value of the {soap underlying protocol} property of the Binding component is a known issue. </td> </tr> </table> "http://www.w3.org/2003/05/soap/bindings/HTTP/". The properties that are allowed are the ones that describe the underlying protocol.

When the SOAP bindings that do not require a <code> SOAPAction </code> omit Message Exchange Pattern is the <code> soapAction </code> attribute SOAP Response MEP, the Binding Operation may use the {http location} property defined in <a href= "#_soap_operation"> 2.4 operation Element with operation [parent] 3.6 Binding Operations .When such a location is specified, the Endpoint component also follows the rules for constructing the address from the {address} . property and the {http location} property values.

deleted text: </li> </ul>

<a name="_soap_binding" id="_soap_binding"> 2.1 <code> binding </code> Element with <code> binding </code> [parent] XML Syntax Summary (Non-Normative)

<definitions >


 <binding >
  <<b>soap:binding</b> protocol="uri" 
                styleDefault="document|rpc"?
                namespaceDefault="uri"? 
                encodingStyleDefault="uri"? />
 </binding>



  <binding name="xs:NCName" interface="xs:QName"?
           type="http://www.w3.org/2004/08/wsdl/soap12"
           whttp:version="xs:string"??
           whttp:defaultTransferCoding="xs:string"??
           wsoap:protocol="xs:anyURI"
           wsoap:mepDefault="xs:anyURI"? >
    <documentation />?

    <wsoap:module uri="xs:anyURI" required="xs:boolean"? >
      <documentation />?
    </wsoap:module>*
    
    <fault ref="xs:QName"
           wsoap:code="xs:QName"
           wsoap:subcodes="list of xs:QName"? >
      <documentation />?
    </fault>*

    <operation ref="xs:QName" 
               whttp:defaultTransferCoding="xs:string"?? >
               wsoap:mep="xs:anyURI"?
               wsoap:action="xs:anyURI"? >
      <documentation />?

      <wsoap:module ... />*

      <input messageLabel="xs:NCName"?
             whttp:transferCoding="xs:string?? >
        <documentation />?
        <wsoap:module ... />*
        <feature ... />*
        <property ... />*
      </input>*

      <output messageLabel="xs:NCName"?
             whttp:transferCoding="xs:string?? >
        <documentation />?
        <wsoap:module ... />*
        <feature ... />*
        <property ... />*
      </output>*

      <feature ... />*
      <property ... />*
    </operation>*

    <feature ... />*
    <property ... />*

  </binding>

  <service>
    <endpoint name="xs:NCName" binding="xs:QName" address="xs:anyURI"?
              whttp:authenticationType="xs:string"?? 
              whttp:authenticationRealm="xs:string"?? >
      <documentation />?
      <feature ... />*
      <property ... />*
    </endpoint>
    <feature ... />*
    <property ... />*
  </service>


</definitions>

Note:

The mandatory double question marks (" binding ?? <em> element information item </em> ") after the attributes in the whttp namespace indicates that messages are those optional attributes only make sense if the when the SOAP Envelopes binding uses HTTP as the underlying protocol, i.e. when the value of the wsoap:protocol attribute is "http://www.w3.org/2003/05/soap/bindings/HTTP/".

2.2 Identifying a SOAP Binding

A Binding component (defined in [ <a href="#SOAP12-PART1"> SOAP 1.2 Part 1: Messaging Framework WSDL 2.0 Core Language ]. </p> <p> The <code> ]) is identified as a SOAP binding </code> <em> element information item </em> has by assigning the following Infoset properties: value "http://www.w3.org/2004/08/wsdl/soap12" to the {type} property of the Binding component.

2.3 Default Binding Rules

  • deleted text: A [local name] of <code> binding </code> </p> </li> <li> <p> A [namespace name] Payload Construction. When formulating the SOAP envelope to be transmitted the contents of "http://www.w3.org/2003/06/wsdl/soap12" </p> </li> <li> <p> A [parent] the payload (i.e., the contents of the binding soap:Body deleted text: in the namespace named "http://www.w3.org/2003/06/wsdl" </p> </li> <li> <p> One or more attribute element information item s amongst its [attributes] of the SOAP envelope) MUST be what is defined by the corresponding Message Reference component. This is subject to optimization by a feature that is in use which may affect serialization, such as follows: MTOM [ SOAP Message Transmission Optimization Mechanism ]. The following default binding rules MUST be adhered to:

    • A required <code> protocol </code> If the value of the {message content model} property of the Message Reference component is attribute information item #any as described below. then the payload MAY be any one XML element.

    • An optional <code> styleDefault </code> If the value is attribute information item #none as described below. then the payload MUST be empty.

    • An optional <code> namespaceDefault </code> If the value is attribute #element then the payload will be the element information item as described below. identified by the {element} property of the Message Reference component.

    • An optional <code> encodingStyleDefault </code> <em> attribute information item </em> as described below. If the Message Reference component is declared using a non-XML type system (as considered in the Types section of [ WSDL 2.0 Core Language ]) then additional binding rules MUST be defined to indicate how to map those components into the SOAP envelope.

    </li> </ul>

    Note:

    The <code> This SOAP binding </code> <em> only allows one single element information item </em> has no [children]. in SOAP body.

    <div class="div3"> <h4> <a name="_soap_binding_transport" id= "_soap_binding_transport"> </a> 2.1.1 <code> protocol </code> Attribute with <code> binding </code> [owner] </h4>
  • The <code> protocol </code> attribute information item SOAPAction. indicates which underlying protocol to use If a value for SOAP Envelopes within the {soap action} property of a <code> binding </code> <em> element information item </em>. The <code> protocol </code> <em> attribute information item </em> Binding Operation component has NOT been specified then the following Infoset properties: </p> <ul> <li> <p> A [local name] of <code> protocol </code> SOAP Action Feature (see [ SOAP 1.2 Part 2: Adjuncts ]) has NO value assigned by the Binding component.

  • A [namespace name] which SOAP MEP Selection. If the Interface Operation component's {message exchange pattern} property has the value "http://www.w3.org/2004/08/wsdl/in-out" then the default value of the {soap mep} property for the corresponding Binding Operation component is "http://www.w3.org/2003/05/soap/mep/request-response/" identifying the SOAP Request-Response Message Exchange Pattern as defined in [ SOAP 1.2 Part 2: Adjuncts ]. If the Inteface Operation component has any other value for the {message exchange pattern} property, then no default value is defined for the {soap mep} property of the corresponding Binding Operation component.

  • An [owner] of <code> HTTP Method Selection. This default binding </code> in rule is applicable when the namespace named "http://www.w3.org/2003/06/wsdl/soap12" </p> </li> </ul> <p> The type value of the <code> protocol </code> <em> attribute information item </em> {soap underlying protocol} property of the Binding component is "http://www.w3.org/2003/05/soap/bindings/HTTP/". If the {soap mep} property of the Binding Operation component has the value "http://www.w3.org/2003/05/soap/mep/request-response/" then the default value of the {http method} property is xsd:anyURI POST . The If the {soap mep} property of the Binding Operation component has the value "http://www.w3.org/2003/05/soap/mep/soap-response/" then the default value of the <code> protocol </code> {http method} property is attribute information item GET .

  • HTTP URI Generation. This default binding rule is a URI that identifies a specific protocol to carry SOAP Envelopes. The URI applicable when the value "http://www.w3.org/2003/05/soap/bindings/HTTP/" corresponds of the {soap underlying protocol} property of the Binding component is "http://www.w3.org/2003/05/soap/bindings/HTTP/". If the {soap mep} property of the Binding Operation component has the value "http://www.w3.org/2003/05/soap/mep/soap-response/" then the URI to execute the HTTP binding in GET against MUST be generated using the SOAP specification. </p> </div> <div class="div3"> <h4> HTTP binding's rules for generating a URI for HTTP GET (see <a name="_soap_binding_style" id= "_soap_binding_style"> 3. WSDL HTTP Binding 2.1.2 <code> styleDefault </code> Attribute with <code> binding </code> [owner] </h4> <p> ). The input serialization format of styleDefault x-www-form-urlencoded <em> attribute information item </em> indicates is the default only supported serialization style format for all operations contained within HTTP GET in the [ancestor] SOAP Response Message Exchange Pattern.

    Editorial note: Input serialization for HTTP GET in SOAP HTTP binding  
    Use of a different input serialization format requires introduction of either a new MEP or a new binding. The <code> styleDefault </code> <em> attribute information item </em> has Working Group considered the following Infoset properties: </p> <ul> <li> <p> A [local name] limitations of the styleDefault x-www-form-urlencoded </p> </li> <li> <p> A [namespace name] serialization format (see points #2 and #3 of Binding message content to URI analysis ). It decided that the limitations of the serialization format, which has no value </p> could potentially be solved by a serialization format extension, were not sufficiently broad enough to warrant allowing extensibility in input serialization for the soap-response MEP. The Working Group solicits the public's feedback on this decision.
  • <li>

2.4 Specifying the SOAP Underlying Protocol

2.4.1 Description

An [owner] of <code> Every SOAP binding </code> MUST indicate what underlying protocol is in use, as defined in the namespace named "http://www.w3.org/2003/06/wsdl/soap12" SOAP Protocol Binding Framework section of [ SOAP 1.2 Part 1: Messaging Framework ].

deleted text: </li> </ul>

The type of SOAP binding defined by this specification supports the <code> styleDefault </code> <em> attribute information item </em> is <em> xsd:string </em>. The value of SOAP HTTP binding defined by the <code> styleDefault </code> <em> attribute information item </em> [ SOAP 1.2 Part 2: Adjuncts ] specification. This is either "document" or "rpc"; if indicated by assigning the <code> styleDefault </code> <em> attribute information item </em> is omitted, URI "http://www.w3.org/2003/05/soap/bindings/HTTP/" (as defined by [ SOAP 1.2 Part 2: Adjuncts ]) to the value is "document". See below {soap underlying protocol} property defined below. Other values MAY be used for more information on this property in conjunction with the SOAP binding defined by this specification provided that the semantics of the <code> style </code> <em> attribute information item </em>. such protocols are consistent with this binding.

<a name="_soap_binding_name" id="_soap_binding_name"> 2.1.3 <code> namespaceDefault </code> Attribute with <code> binding </code> [owner] 2.4.2 Relationship to WSDL Component Model

The <code> namespaceDefault </code> <em> attribute information item </em> indicates SOAP protocol specification adds the default namespace following property to use the WSDL component model (as defined in [ WSDL 2.0 Core Language ]):

  • {soap underlying protocol}, an absolute URI as defined by [ IETF RFC 2396 ], to the Binding component.

2.4.3 XML Representation


<definitions >
  <binding  name="xs:NCName" interface="xs:QName"? type="xs:anyURI"
            wsoap:protocol="xs:anyURI" >
    ...
  </binding>
</definitions>

The XML representation for any operation contained within specifying the [ancestor] binding with <code> style </code> SOAP protocol is a REQUIRED attribute information item with deleted text: value "rpc". The <code> namespaceDefault </code> <em> attribute information item </em> has the following Infoset properties:

  • A [local name] of namespaceDefault protocol

  • A [namespace name] deleted text: which has no value </p> </li> <li> <p> An [owner] of <code> binding </code> in the namespace named "http://www.w3.org/2003/06/wsdl/soap12" "http://www.w3.org/2004/08/wsdl/soap12"

2.4.4 Mapping Between Component Properties and XML Representation

See Table 2-1 .


Table 2-1. Mapping between Binding Component Extension Properties and XML Representation
Property Mapping
{soap underlying protocol} The type actual value of the namespaceDefault wsoap:protocol attribute information item deleted text: </em> is <em> xsd:anyURI . The value of

2.5 Specifying the <code> namespaceDefault </code> <em> attribute information item </em> is Default SOAP MEP

2.5.1 Description

Every Binding Operation component of a SOAP binding MUST indicate the XML namespace SOAP Message Exchange Pattern (MEP) (see [ SOAP 1.2 Part 2: Adjuncts ]) to use for the 'wrapper' element be used for that operation. This binding specification allows the user to indicate a default SOAP Envelope body block(s). See below MEP to be used for more information on the semantics all Binding Operation components of the <code> namespace </code> <em> attribute information item </em>. this Binding component.

<a name="_soap_binding_encoding" id= "_soap_binding_encoding"> 2.1.4 <code> encodingStyleDefault </code> Attribute with <code> binding </code> [owner] 2.5.2 Relationship to WSDL Component Model

The deleted text: <code> encodingStyleDefault </code> <em> attribute information item </em> indicates the default encodingStyle to use for any operation contained within SOAP MEP specification is a syntactic convenience and does not affect the [ancestor] binding. underlying component model.

2.5.3 XML Representation


<definitions >
  <binding  name="xs:NCName" interface="xs:QName"? type="xs:anyURI"
            wsoap:protocol="xs:anyURI"
            wsoap:mepDefault="xs:anyURI ?" >
    ...
  </binding>
</definitions>

The <code> encodingStyleDefault </code> XML representation for specifying the default SOAP MEP is an OPTIONAL attribute information item has with the following Infoset properties:

  • A [local name] of encodingStyleDefault mepDefault

  • A [namespace name] deleted text: which has no value </p> </li> <li> <p> An [owner] of <code> binding </code> in the namespace named "http://www.w3.org/2003/06/wsdl/soap12" "http://www.w3.org/2004/08/wsdl/soap12"

2.6 Declaring SOAP Modules

2.6.1 Description

The type of the <code> encodingStyleDefault </code> <em> attribute information item </em> In SOAP, it is <em> xsd:anyURI </em>. permissible for specification interaction to engage one or more additional features (typically implemented as one or more SOAP header blocks), as defined by SOAP Modules (see [ SOAP 1.2 Part 1: Messaging Framework ]). This binding specification allows users to indicate which SOAP Modules are in use across the entire binding, on a per operation basis or on a per message basis.

2.6.2 Relationship to WSDL Component Model

The <code> encodingStyle </code> and <code> encodingStyleDefault </code> <em> attribute information item </em> s indicate how SOAP Module component adds the type description for following property to the SOAP Envelope WSDL component was derived. This information MAY be exploited by tools that generate data structures from model (as defined in [ WSDL 2.0 Core Language ]):

  • {soap modules} to the type description. Binding, Binding Operation and Binding Message Reference components.

The [normalized value] "http://www.w3.org/2003/05/soap-envelope/encoding/none" indicates that the type description was not derived as SOAP modules applicable for a function particular operation of a well-known encoding. The [normalized value] MUST NOT be "". any service consists of all modules specified in the input or output Binding Message reference components, and those specified within the Binding Operation components and those specified within the Binding component. If no <code> encodingStyleDefault </code> any module is declared in scope, multiple components, then the [normalized value] is "http://www.w3.org/2003/05/soap-envelope/encoding/none" </p> <p> For all [normalized value]s requiredness of the <code> encodingStyle </code> and <code> encodingStyleDefault </code> <em> attribute information item </em> s, the SOAP Envelope component(s) MUST be exactly as described that module is defined by the type description; closest declaration, where closeness is defined by whether it is specified directly at the writer of Binding Message Reference component level, the SOAP Envelope component(s) MUST it exactly as described by Binding Operation component level or the type description. Binding component level, respectively.

</div> <div class="div2"> <h3>

<a name="_soap_module" id="_soap_module"> 2.2 <code> module </code> Element with <code> binding </code> [parent] </h3> <div class="exampleInner"> <pre> <definitions > <binding > <<b>soap:module</b> uri="uri" required="boolean"? > </<b>soap:module</b>> </binding> </definitions> </pre> </div> 2.6.3 SOAP Module Component

The optional <code> SOAP Module component identifies a SOAP module </code> <em> element information item </em> indicates that is in use. The properties of the SOAP module(s) supported Module component are as follows:

  • {uri} An absolute URI as defined by a <code> binding </code> <em> element information item </em>. A [ IETF RFC 2396 ]. The value of this property identifies the specific SOAP module[ module that is in use, as defined in the SOAP Protocol Binding Framework section of [ <a href="#SOAP12-PART1"> SOAP 1.2 Part 1: Messaging Framework ] realizes zero or more SOAP features implemented as one or more ].

  • {required} A boolean indicating if the SOAP header blocks. module is required.

2.6.4 XML Representation


<definitions >
  <binding >
    <wsoap:module uri="uri"
                  required="boolean"? >
      <documentation ... />?
    </wsoap:module>
    <operation>
      <wsoap:module ... />*
      <input>
        <wsoap:module ... />*
      </input>
      <output>
        <wsoap:module ... />*
      </output>
    </operation>
  </binding>
</definitions>

The <code> module </code> XML representation for a SOAP Module component is an element information item has with the following Infoset properties:

  • A [local name] of module

  • A [namespace name] of "http://www.w3.org/2003/06/wsdl/soap12" </p> </li> <li> <p> A [parent] of <code> binding </code> in the namespace named "http://www.w3.org/2003/06/wsdl" "http://www.w3.org/2004/08/wsdl/soap12"

  • One or more attribute information item s amongst its [attributes] as follows:

    • A required REQUIRED uri attribute information item deleted text: as described below </p> </li> <li> <p> An optional <code> required </code> <em> attribute information item </em> as described below </p> </li> </ul> </li> </ul> <div class="div3"> <h4> <a name="_soap_module_uri" id="_soap_module_uri"> </a> 2.2.1 <code> uri </code> Attribute with deleted text: <code> module </code> [owner] </h4> <p> The <code> uri </code> <em> attribute information item </em> specifies the URI of the SOAP module for the [owner] <code> module </code> . The <code> uri </code> <em> attribute information item </em> has the following Infoset properties:

      • A [local name] of uri

      • A [namespace name] which has no value

    • An [owner] of <code> module </code> in the namespace named "http://www.w3.org/2003/06/wsdl/soap12" </p> </li> </ul> <p> The type of the <code> uri </code> <em> attribute information item </em> is <code> xsd:anyURI </code>. The value of the <code> uri </code> <em> attribute information item </em> is a URI that identifies a specific SOAP module. </p> </div> <div class="div3"> <h4> <a name="_soap_module_required" id= "_soap_module_required"> </a> 2.2.2 <code> required </code> Attribute with <code> binding </code> [owner] </h4> <p> The <code> required </code> <em> attribute information item </em> specifies whether the [owner] <code> module </code> is required by the [parent] binding. The OPTIONAL required attribute information item has with the following Infoset properties:

      • A [local name] of required

      • A [namespace name] which has no value

    • An [owner] of <code> module </code> in the Zero or more namespace named "http://www.w3.org/2003/06/wsdl/soap12" </p> </li> </ul> <p> The type of the <code> required </code> <em> attribute information item </em> is <code> xsd:boolean </code>. </p> <p> Omitting this qualified attribute information item is defined as being semantically equivalent to including it with a value of "false". </p> </div> </div> <div class="div2"> <h3> <a name="_soap_property" id="_soap_property"> </a> 2.3 <code> propertyConstraint </code> Element with <code> module </code> [parent] </h3> <div class="exampleInner"> <pre> <definitions> <binding> <soap:module> <<b>soap:propertyConstraint</b> uri="uri" type="qname"? /> </soap:module> </binding> </definitions> </pre> </div> <p> The optional <code> propertyConstraint </code> <em> element information item </em> indicates SOAP module(s) supported by a <code> module </code> <em> element information item </em>. </p> <p> s. The <code> propertyConstraint </code> [namespace name] of such element attribute information item has the following Infoset properties: </p> <ul> <li> <p> A [local name] of <code> propertyConstraint </code> </p> </li> <li> <p> A [namespace name] of "http://www.w3.org/2003/06/wsdl/soap12" s MUST NOT be "http://www.w3.org/2004/08/wsdl" and MUST NOT be "http://www.w3.org/2004/08/wsdl/soap12".

    • <li> <p> A [parent] of <code> module </code> in the namespace named "http://www.w3.org/2003/06/wsdl" </p>
  • One Zero or more attribute element information item deleted text: s amongst its [attributes] [children], in order, as follows:

    <ul> <li> <p> A required <code> uri </code> <em> attribute information item </em> as described below </p> </li>
    1. An optional OPTIONAL type documentation attribute element information item as described below defined in [ WSDL 2.0 Core Language ].

    2. </ul> </li> </ul>
    3. The value of the <code> propertyConstraint </code> Zero or more namespace-qualified element information item is the value that is required for the SOAP property of the [parent] <code> module </code> . </p> <p> s amongst its [children]. The <code> propertyConstraint </code> [namespace name] of such element information item has no [children]. s MUST NOT be "http://www.w3.org/2004/08/wsdl" and MUST NOT be "http://www.w3.org/2004/08/wsdl/soap12".

<a name="_soap_property_uri" id="_soap_property_uri"> 2.3.1 <code> uri </code> Attribute with <code> propertyConstraint </code> [owner] 2.6.5 Mapping Between Component Properties and XML Representation

The <code> uri </code> <em> attribute information item </em> specifies the URI of the SOAP property for the [ancestor] <code> module </code> . The <code> uri </code> <em> attribute information item </em> has the following Infoset properties: See Table 2-2 .

<ul> <li> <p> A [local name] of <code> uri </code> </p> </li> <li> <p> A [namespace name] which has no value </p> </li> <li> <p> An [owner] of <code> propertyConstraint </code> in the namespace named "http://www.w3.org/2003/06/wsdl/soap12" </p> </li> </ul> <p>
Table 2-2. Mapping between SOAP Module Component Properties and XML Representation
Property Mapping
{uri} The type actual value of the uri attribute information item </em> is <code> xsd:anyURI </code>. .
{required} The actual value of the uri required attribute information item </em> is .

2.7 Binding Faults

2.7.1 Description

For every Interface Fault component contained in an Interface component, a URI that identifies mapping to a deleted text: specific SOAP property for Fault must be described. This binding specification allows the [ancestor] <code> module </code> . user to indicate the SOAP fault code and subcodes that are transmitted for a given Interface Fault component.

<a name="_soap_property_type" id= "_soap_property_type"> 2.3.2 <code> type </code> Attribute with <code> propertyConstraint </code> [owner] 2.7.2 Relationship to WSDL Component Model

The <code> type </code> <em> attribute information item </em> specifies the type of the value of the [owner] <code> propertyConstraint </code> . The <code> type </code> <em> attribute information item </em> has SOAP Fault binding adds the following Infoset properties: properties to the WSDL component model (as defined in [ WSDL 2.0 Core Language ]):

  • A [local name] of <code> type </code> {soap fault code}, a QName as defined by [ </p> </li> <li> <p> A [namespace name] which has no XML 1.0 ], to the Binding Fault component. The value deleted text: </p> </li> <li> <p> An [owner] of <code> propertyConstraint </code> in this property identifies a possible SOAP fault (see [ SOAP 1.2 Part 1: Messaging Framework ]) for the namespace named "http://www.w3.org/2003/06/wsdl/soap12" operation in scope.

  • </ul>
  • The type {soap fault subcodes}, a list of QNames, to the <code> type </code> <em> attribute information item </em> is <code> xsd:QName </code>. Binding Fault component. The value of the <code> type </code> <em> attribute information item </em> is XML Qualified Name that this property identifies the type of the value one or more subcodes for the [owner] <code> propertyConstraint </code> . this SOAP fault.

</div> <div class="div2"> <h3>

<a name="_soap_operation" id="_soap_operation"> 2.4 <code> operation </code> Element with <code> operation </code> [parent] </h3> 2.7.3 XML Representation



<definitions>
 <binding>
  <operation>
   <<b>soap:operation</b> style="document|rpc"? 
                   soapAction="uri"? /> ?
  </operation>
 </binding>



<definitions >
  <binding >
    <fault ref="xs:QName"
           wsoap:code="xs:QName"
           wsoap:subcodes="list of xs:QName"? />
    </fault>*
  </binding>


</definitions>

The optional <code> operation </code> <em> element information item </em> provides binding information XML representation for the [parent] operation. The <code> operation </code> binding a SOAP Fault are two element attribute information item has s with the following Infoset properties:

  • wsoap:code REQUIRED attribute information item

    • A [local name] of operation code

    • A [namespace name] of "http://www.w3.org/2003/06/wsdl/soap12" </p> </li> <li> <p> A [parent] of <code> operation </code> in the namespace named "http://www.w3.org/2003/06/wsdl" "http://www.w3.org/2004/08/wsdl/soap12"

    • <li> <p> Zero or more <em> attribute information item </em> s amongst its [attributes] as follows: </p> <ul> <li> <p> An optional <code> style </code> <em> attribute information item </em> as described below </p>
  • An optional <code> soapAction </code> wsoap:subcodes OPTIONAL attribute information item deleted text: as described below </p> </li> </ul> </li> </ul> <p> The <code> operation </code> <em> element information item </em> has no [children]. </p> <p> If the <code> operation </code> <em> element information item </em> has no [attributes], it MAY be omitted. </p> <div class="div3"> <h4> deleted text: <a name="_soap_operation_style" id= "_soap_operation_style"> </a> 2.4.1 <code> style </code> Attribute with <code> operation </code> [owner] </h4> <p> The <code> style </code> <em> attribute information item </em> indicates the serialization style of the <code> operation </code> owner. The <code> style </code> <em> attribute information item </em> has the following Infoset properties:

    • A [local name] of style subcodes

    • A [namespace name] deleted text: which has no value </p> </li> <li> <p> An [owner] of <code> operation </code> in the namespace named "http://www.w3.org/2003/06/wsdl/soap12" "http://www.w3.org/2004/08/wsdl/soap12"

2.7.4 Mapping Between Component Properties and XML Representation

See Table 2-3 .


Table 2-3. Mapping between SOAP Fault Component Properties and XML Representation
Property Mapping
{soap fault code} The type actual value of the style code attribute information item deleted text: </em> is <em> xsd:string . </p> <p>
{soap fault subcodes} The actual value of the style subcodes attribute information item </em> indicates whether the [owner] operation is serialized according to a document-oriented style (message contains document(s)) or remote-procedure-call (RPC) oriented style (message contains parameter(s) and/or return value(s)). This information may be used to select .

2.8 Binding Operations

2.8.1 Description

For every Interface Operation component contained in an appropriate programming model. The value of this <em> attribute information item </em> also affects the way Interface component, in which the <code> Fault </code> of addition to the SOAP message is constructed, as explained default binding rules described in section <a href="#_soap_body"> 2.5 body Element with input or output [parent] 2.3 Default Binding Rules </a> . If the <code> style </code> <em> attribute ,there may be additional binding information deleted text: item </em> is not specified, it defaults to be specified. This binding specification allows the value specified in user to indicate the [ancestor] <code> binding </code> <em> element information item </em> in SOAP Message Exchange Pattern (MEP) and a value for the namespace named "http://www.w3.org/2003/06/wsdl/soap12". SOAP Action Feature (see [ SOAP 1.2 Part 2: Adjuncts ]) on a per-operation basis.

<a name="_soap_operation_action" id= "_soap_operation_action"> 2.4.2 <code> soapAction </code> Attribute with <code> operation </code> [owner] 2.8.2 Relationship to WSDL Component Model

<table border="1" summary="Editorial note: JCS"> <tr> <td width="50%" valign="top" align="left"> <b> Editorial note: JCS </b> </td> <td width="50%" valign="top" align="right"> 20030115 </td> </tr> <tr> <td valign="top" align="left" colspan="2">

The SOAP 1.2 HTTP Operation binding does not define a SOAPAction HTTP header. This is a known issue. </td> </tr> </table> <p> The <code> soapAction </code> <em> attribute information item </em> specifies the value of the HTTP SOAPAction header for the <code> operation </code> owner. The <code> soapAction </code> <em> attribute information item </em> has specification adds the following Infoset properties: property to the WSDL component model (as defined in [ WSDL 2.0 Core Language ]):

  • A [local name] of <code> soapAction </code> {soap mep}, an absolute URI as defined by [ </p> </li> <li> <p> A [namespace name] which has no value </p> </li> <li> <p> An [owner] of <code> operation </code> in the namespace named "http://www.w3.org/2003/06/wsdl/soap12" </p> </li> </ul> <p> The type of IETF RFC 2396 ], to the <code> soapAction </code> <em> attribute information item </em> is <em> xsd:anyURI </em>. </p> <p> Binding Operation component. The value of this property identifies the <code> soapAction </code> <em> attribute information item </em> is the URI to be included in the HTTP SOAPAction header SOAP Message Exchange Pattern (MEP) (as defined by [ SOAP 1.2 Part 1: Messaging Framework ]) for the [owner] this specific operation. This URI If no specific value should be used directly as is assigned, then the value for assigned by the HTTP SOAPAction header; no attempt should be made default rules apply (see 2.3 Default Binding Rules ). It is an error for this property to make not have a deleted text: relative URI value absolute when making (which MAY happen if the request. For default rules are not applicable).

  • {soap action}, an absolute URI as defined by [ IETF RFC 2396 ], to the HTTP protocol binding Binding Operation component. The value of deleted text: SOAP, this property identifies the value is required (it has no default value). For other of the SOAP protocol bindings, it MUST NOT be specified. Action Feature (as defined by [ SOAP 1.2 Part 1: Messaging Framework ]) for this specific operation.

</div> <div class="div2"> <h3>

<a name="_soap_body" id="_soap_body"> 2.5 <code> body </code> Element with <code> input </code> or <code> output </code> [parent] </h3> 2.8.3 XML Representation



<definitions>
 <binding>
  <operation>
   [ <input> | <output> ]
    <<b>soap:body</b> namespace="uri"?
               encodingStyle="uri"? /> ?
   [ </input> | </output> ]
  </operation>
 </binding>



<definitions >
  <binding >
    <operation ref="xs:QName" 
               wsoap:mep="xs:anyURI"?
               wsoap:action="xs:anyURI"? >
    </operation>
  </binding>


</definitions>

The optional <code> body </code> <em> element information item </em> specifies properties of the SOAP Envelope body block(s) XML representation for the [parent] operation. The <code> body </code> binding an Operation are two element attribute information item has s with the following Infoset properties:

  • wsoap:mep OPTIONAL attribute information item

    • A [local name] of body mep

    • A [namespace name] of "http://www.w3.org/2003/06/wsdl/soap12" "http://www.w3.org/2004/08/wsdl/soap12"

    • <li> <p> A [parent] of <code> input </code> or <code> output </code> in the namespace named "http://www.w3.org/2003/06/wsdl" </p>
  • Zero or more wsoap:action OPTIONAL attribute information item s amongst its [attributes] as follows:

    • An optional A [local name] of namespace action <em> attribute information item </em> as described below

    • An optional <code> encodingStyle </code> <em> attribute information item </em> as described below A [namespace name] of "http://www.w3.org/2004/08/wsdl/soap12"

2.8.4 Mapping Between Component Properties and XML Representation

See Table 2-4 .


Table 2-4. Mapping between SOAP Operation Component Properties and XML Representation
Property Mapping
{soap mep} The actual value of the body wsoap:mep element attribute information item </em> has no [children]. </p> <p> ,if present. If not, the actual value of the body wsoap:mepDefault element attribute information item has no [attributes], it MAY be omitted. </p> <p> The <code> body </code> of the parent wsdl:binding element information item </em> provides information on how to assemble the different message parts inside ,if present. If not the <code> Fault </code> element of value as defined by the default SOAP Envelope. binding rules (see 2.3 Default Binding Rules ), if applicable.
{soap action} The actual value of the body action element attribute information item </em> is used .,if any.

3. WSDL HTTP Binding

The HTTP binding described in both RPC-oriented and document-oriented messages, but the style of the enclosing operation has important effects on how the <code> Fault </code> this section is structured: </p> <ul> <li> <p> If an extension for [ WSDL 2.0 Core Language ] to enable Web Services applications to use HTTP 1.1 [ IETF RFC 2616 ] (as well as other versions of HTTP) and HTTPS [ IETF RFC 2818 ]. This binding extends WSDL 2.0 by adding properties to the operation style is rpc each part component model defined in [ WSDL 2.0 Core Language ]. In addition an XML Infoset representation for these additional properties<