<?xml version="1.0" encoding="UTF-8" ?> 
<!-- 
 
Copyright 2001-2005 Microsoft Corporation.  Portions Copyright 2001-2003 International Business Machines Corporation and Microsoft Corporation.  All rights reserved.
Microsoft, IBM, and/or any other third party may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this document.  The presentation, distribution, or other dissemination of this document does not give you any license, either express or implied, to any intellectual property owned or controlled by Microsoft, IBM, their affiliates, and/or any other third party.

THIS DOCUMENT AND ITS CONTENTS ARE PROVIDED "AS IS."  MICROSOFT, IBM AND THEIR AFFILIATES MAKE NO WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS, IMPLIED, OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR OR INTENDED PURPOSE, TITLE, NON-INFRINGEMENT, ACCURACY, COMPLETENESS, RESULTS, LACK OF VIRUSES, LACK OF NEGLIGENCE, LACK OF ERRORS, AND SUITABILITY FOR ANY PURPOSE.

MICROSOFT, IBM, AND THEIR AFFILIATES WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, PUNITIVE, OR SPECIAL DAMAGES, WHETHER UNDER CONTRACT, TORT, WARRANTY, OR OTHERWISE, ARISING FROM OR RELATED TO THIS DOCUMENT OR THE PERFORMANCE OR IMPLEMENTATION OF THE CONTENTS THEREOF, INCLUDING, BUT NOT LIMITED TO, THE COST OF PROCURING SUBSTITUTE GOODS OR SERVICES, LOSS OF PROFITS, LOSS OF USE, OR LOSS OF DATA, EVEN IF MICROSOFT OR ITS AFFILIATES HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES IN ADVANCE.

--> 
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
           xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
           xmlns:wsoap12="http://schemas.xmlsoap.org/wsdl/soap12/"
           targetNamespace="http://schemas.xmlsoap.org/wsdl/soap12/" >

  <xs:import namespace = "http://schemas.xmlsoap.org/wsdl/" />

  <xs:element name="binding" type="wsoap12:tBinding" />
  <xs:complexType name="tBinding" >
    <xs:complexContent>
      <xs:extension base="wsdl:tExtensibilityElement" >
        <xs:attribute name="transport" type="xs:anyURI" use="required" />
        <xs:attribute name="style" type="wsoap12:tStyleChoice" use="optional" />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:simpleType name="tStyleChoice" >
    <xs:restriction base="xs:string" >
      <xs:enumeration value="rpc" />
      <xs:enumeration value="document" />
    </xs:restriction>
  </xs:simpleType>

  <xs:element name="operation" type="wsoap12:tOperation" />
  <xs:complexType name="tOperation" >
    <xs:complexContent>
      <xs:extension base="wsdl:tExtensibilityElement" >
        <xs:attribute name="soapAction" type="xs:anyURI" use="optional" />
        <xs:attribute name="soapActionRequired" type="xs:boolean" use="optional" />
        <xs:attribute name="style" type="wsoap12:tStyleChoice" use="optional" />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:element name="body" type="wsoap12:tBody" />
  <xs:attributeGroup name="tBodyAttributes" >
    <!-- The encodingStyle attribute is now a single URI, instead of a list of URIs -->
    <xs:attribute name="encodingStyle" type="xs:anyURI" use="optional" />
    <xs:attribute name="use" type="wsoap12:useChoice" use="optional" />
    <xs:attribute name="namespace" type="xs:anyURI" use="optional" />
  </xs:attributeGroup>
  <xs:complexType name="tBody" >
    <xs:complexContent>
      <xs:extension base="wsdl:tExtensibilityElement" >
        <xs:attribute name="parts" type="xs:NMTOKENS" use="optional" />
        <xs:attributeGroup ref = "wsoap12:tBodyAttributes" />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  
  <xs:simpleType name="useChoice" >
    <xs:restriction base="xs:string" >
      <xs:enumeration value="literal" />
      <xs:enumeration value="encoded" />
    </xs:restriction>
  </xs:simpleType>

  <xs:element name="fault" type="wsoap12:tFault" />
  <xs:complexType name="tFaultRes" abstract="true" >
    <xs:complexContent>
      <xs:restriction base="wsoap12:tBody" >
	    <xs:attribute ref="wsdl:required" use="optional" /> 
        <xs:attribute name="parts" type="xs:NMTOKENS" use="prohibited" />
		<xs:attributeGroup ref="wsoap12:tBodyAttributes" />
      </xs:restriction>
    </xs:complexContent>  	
  </xs:complexType>
  <xs:complexType name="tFault" >
    <xs:complexContent>
      <xs:extension base="wsoap12:tFaultRes">
        <xs:attribute name="name" type="xs:NCName" use="required" />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>


  <xs:element name="header" type="wsoap12:tHeader" />
  <xs:attributeGroup name="tHeaderAttributes" >
    <xs:attribute name="message" type="xs:QName" use="required" />
    <xs:attribute name="part" type="xs:NMTOKEN" use="required" />
    <xs:attribute name="use" type="wsoap12:useChoice" use="required" />
    <xs:attribute name="encodingStyle" type="xs:anyURI" use="optional" />
    <xs:attribute name="namespace" type="xs:anyURI" use="optional" />      
  </xs:attributeGroup>
  <xs:complexType name="tHeader" >
    <xs:complexContent>
      <xs:extension base="wsdl:tExtensibilityElement" >
        <xs:sequence>
          <xs:element ref="wsoap12:headerfault" minOccurs="0" maxOccurs="unbounded" />
        </xs:sequence>
		<xs:attributeGroup ref="wsoap12:tHeaderAttributes" />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:element name="headerfault" type="wsoap12:tHeaderFault" />
  <xs:complexType name="tHeaderFault" >
	<xs:attributeGroup ref="wsoap12:tHeaderAttributes" />
  </xs:complexType>

  <xs:element name="address" type="wsoap12:tAddress" />
  <xs:complexType name="tAddress" >
    <xs:complexContent>
      <xs:extension base="wsdl:tExtensibilityElement" >
        <xs:attribute name="location" type="xs:anyURI" use="required" />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

</xs:schema>
