6 Appendix A: Full WSDL Definitions

For ease of implementation, this section provides the full Web Services Description Language (WSDL). The syntax uses the XML syntax extensions, as specified in [WSDL].

Note The "http://schemas.microsoft.com/ws/2005/12/wsdl/contract" namespace is specified in [MS-WSPOL].

 <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:tns="http://schemas.microsoft.com/net/2006/05/peer" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract" xmlns:wsa10="http://www.w3.org/2005/08/addressing" xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" targetNamespace="http://schemas.microsoft.com/net/2006/05/peer" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  
 <wsdl:types>
     <!--Serialization.Arrays-->
     <xs:schema xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/Arrays" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns:xs="http://www.w3.org/2001/XMLSchema">
       <xs:complexType name="ArrayOfunsignedShort">
         <xs:sequence>
           <xs:element minOccurs="0" maxOccurs="unbounded" name="unsignedShort" type="xs:unsignedShort" />
         </xs:sequence>
       </xs:complexType>
       <xs:element name="ArrayOfunsignedShort" nillable="true" type="tns:ArrayOfunsignedShort" />
     </xs:schema>
     
     <!--Message-->
     <xs:schema xmlns:tns="http://schemas.microsoft.com/Message" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/Message" xmlns:xs="http://www.w3.org/2001/XMLSchema">
       <xs:complexType name="MessageBody">
         <xs:sequence>
           <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##any" />
         </xs:sequence>
       </xs:complexType>
     </xs:schema>
     
     <!--Addressing-->
     <xs:schema xmlns:wsa10="http://www.w3.org/2005/08/addressing" attributeFormDefault="unqualified" blockDefault="#all" finalDefault="" elementFormDefault="qualified" targetNamespace="http://www.w3.org/2005/08/addressing" xmlns:xs="http://www.w3.org/2001/XMLSchema">
       <xs:element name="EndpointReference" type="wsa10:EndpointReferenceType" />
       <xs:complexType name="EndpointReferenceType">
         <xs:sequence>
           <xs:element name="Address" type="wsa10:AttributedURIType" />
           <xs:element minOccurs="0" name="ReferenceParameters" type="wsa10:ReferenceParametersType" />
           <xs:element minOccurs="0" ref="wsa10:Metadata" />
           <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="lax" />
       </xs:complexType>
       <xs:complexType name="ReferenceParametersType">
         <xs:sequence>
           <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##any" processContents="lax" />
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="lax" />
       </xs:complexType>
       <xs:element name="Metadata" type="wsa10:MetadataType" />
       <xs:complexType name="MetadataType">
         <xs:sequence>
           <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##any" processContents="lax" />
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="lax" />
       </xs:complexType>
       <xs:element name="MessageID" type="wsa10:AttributedURIType" />
       <xs:element name="RelatesTo" type="wsa10:RelatesToType" />
       <xs:complexType name="RelatesToType">
         <xs:simpleContent>
           <xs:extension base="xs:anyURI">
             <xs:attribute default="http://www.w3.org/2005/08/addressing/reply" name="RelationshipType" type="wsa10:RelationshipTypeOpenEnum" use="optional" />
             <xs:anyAttribute namespace="##other" processContents="lax" />
           </xs:extension>
         </xs:simpleContent>
       </xs:complexType>
       <xs:simpleType name="RelationshipTypeOpenEnum">
         <xs:union memberTypes="wsa10:RelationshipType xs:anyURI" />
       </xs:simpleType>
       <xs:simpleType name="RelationshipType">
         <xs:restriction base="xs:anyURI">
           <xs:enumeration value="http://www.w3.org/2005/08/addressing/reply" />
         </xs:restriction>
       </xs:simpleType>
       <xs:element name="ReplyTo" type="wsa10:EndpointReferenceType" />
       <xs:element name="From" type="wsa10:EndpointReferenceType" />
       <xs:element name="FaultTo" type="wsa10:EndpointReferenceType" />
       <xs:element name="To" type="wsa10:AttributedURIType" />
       <xs:element name="Action" type="wsa10:AttributedURIType" />
       <xs:complexType name="AttributedURIType">
         <xs:simpleContent>
           <xs:extension base="xs:anyURI">
             <xs:anyAttribute namespace="##other" processContents="lax" />
           </xs:extension>
         </xs:simpleContent>
       </xs:complexType>
       <xs:attribute name="IsReferenceParameter" type="xs:boolean" />
       <xs:simpleType name="FaultCodesOpenEnumType">
         <xs:union memberTypes="wsa10:FaultCodesType xs:QName" />
       </xs:simpleType>
       <xs:simpleType name="FaultCodesType">
         <xs:restriction base="xs:QName">
           <xs:enumeration value="wsa10:InvalidAddressingHeader" />
           <xs:enumeration value="wsa10:InvalidAddress" />
           <xs:enumeration value="wsa10:InvalidEPR" />
           <xs:enumeration value="wsa10:InvalidCardinality" />
           <xs:enumeration value="wsa10:MissingAddressInEPR" />
           <xs:enumeration value="wsa10:DuplicateMessageID" />
           <xs:enumeration value="wsa10:ActionMismatch" />
           <xs:enumeration value="wsa10:MessageAddressingHeaderRequired" />
           <xs:enumeration value="wsa10:DestinationUnreachable" />
           <xs:enumeration value="wsa10:ActionNotSupported" />
           <xs:enumeration value="wsa10:EndpointUnavailable" />
         </xs:restriction>
       </xs:simpleType>
       <xs:element name="RetryAfter" type="wsa10:AttributedUnsignedLongType" />
       <xs:complexType name="AttributedUnsignedLongType">
         <xs:simpleContent>
           <xs:extension base="xs:unsignedLong">
             <xs:anyAttribute namespace="##other" processContents="lax" />
           </xs:extension>
         </xs:simpleContent>
       </xs:complexType>
       <xs:element name="ProblemHeaderQName" type="wsa10:AttributedQNameType" />
       <xs:complexType name="AttributedQNameType">
         <xs:simpleContent>
           <xs:extension base="xs:QName">
             <xs:anyAttribute namespace="##other" processContents="lax" />
           </xs:extension>
         </xs:simpleContent>
       </xs:complexType>
       <xs:element name="ProblemHeader" type="wsa10:AttributedAnyType" />
       <xs:complexType name="AttributedAnyType">
         <xs:sequence>
           <xs:any minOccurs="1" maxOccurs="1" namespace="##any" processContents="lax" />
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="lax" />
       </xs:complexType>
       <xs:element name="ProblemIRI" type="wsa10:AttributedURIType" />
       <xs:element name="ProblemAction" type="wsa10:ProblemActionType" />
       <xs:complexType name="ProblemActionType">
         <xs:sequence>
           <xs:element minOccurs="0" ref="wsa10:Action" />
           <xs:element minOccurs="0" name="SoapAction" type="xs:anyURI" />
         </xs:sequence>
         <xs:anyAttribute namespace="##other" processContents="lax" />
       </xs:complexType>
     </xs:schema>
     
     <!--System.ServiceModel-->
     <xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/System.ServiceModel" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/System.ServiceModel" xmlns:xs="http://www.w3.org/2001/XMLSchema">
       <xs:simpleType name="HostNameComparisonMode">
         <xs:restriction base="xs:string">
           <xs:enumeration value="StrongWildcard" />
           <xs:enumeration value="Exact" />
           <xs:enumeration value="WeakWildcard" />
         </xs:restriction>
       </xs:simpleType>
       <xs:element name="HostNameComparisonMode" nillable="true" type="tns:HostNameComparisonMode" />
     </xs:schema>
     
     <!--System.ServiceModel.Channels-->
     <xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/System.ServiceModel.Channels" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/System.ServiceModel.Channels" xmlns:xs="http://www.w3.org/2001/XMLSchema">
       <xs:import namespace="http://schemas.datacontract.org/2004/07/System.ServiceModel" />
       <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
       <xs:complexType name="BaseUriWithWildcard">
         <xs:sequence>
           <xs:element minOccurs="0" name="baseAddress" nillable="true" type="xs:anyURI" />
           <xs:element minOccurs="0" name="hostNameComparisonMode" xmlns:q1="http://schemas.datacontract.org/2004/07/System.ServiceModel" type="q1:HostNameComparisonMode" />
         </xs:sequence>
       </xs:complexType>
       <xs:element name="BaseUriWithWildcard" nillable="true" type="tns:BaseUriWithWildcard" />
       <xs:simpleType name="DisconnectReason">
         <xs:restriction base="xs:string">
           <xs:enumeration value="LeavingMesh">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">2</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="NotUsefulNeighbor">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">3</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="DuplicateNeighbor">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">4</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="DuplicateNodeId">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">5</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="NodeBusy">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">6</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="InternalFailure">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">10</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
         </xs:restriction>
       </xs:simpleType>
       <xs:element name="DisconnectReason" nillable="true" type="tns:DisconnectReason" />
       <xs:simpleType name="RefuseReason">
         <xs:restriction base="xs:string">
           <xs:enumeration value="DuplicateNeighbor">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">4</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="DuplicateNodeId">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">5</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="NodeBusy">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">6</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
         </xs:restriction>
       </xs:simpleType>
       <xs:element name="RefuseReason" nillable="true" type="tns:RefuseReason" />
     </xs:schema>
     
     <!--System.Net.Sockets-->
     <xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/System.Net.Sockets" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/System.Net.Sockets" xmlns:xs="http://www.w3.org/2001/XMLSchema">
       <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
       <xs:simpleType name="AddressFamily">
         <xs:restriction base="xs:string">
           <xs:enumeration value="Unknown">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">-1</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="Unspecified">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">0</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="Unix">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">1</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="InterNetwork">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">2</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="ImpLink">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">3</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="Pup">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">4</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="Chaos">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">5</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="NS">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">6</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="Ipx">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">6</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="Iso">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">7</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="Osi">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">7</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="Ecma">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">8</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="DataKit">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">9</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="Ccitt">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">10</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="Sna">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">11</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="DecNet">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">12</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="DataLink">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">13</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="Lat">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">14</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="HyperChannel">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">15</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="AppleTalk">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">16</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="NetBios">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">17</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="VoiceView">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">18</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="FireFox">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">19</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="Banyan">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">21</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="Atm">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">22</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="InterNetworkV6">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">23</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="Cluster">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">24</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="Ieee12844">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">25</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="Irda">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">26</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="NetworkDesigners">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">28</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
           <xs:enumeration value="Max">
             <xs:annotation>
               <xs:appinfo>
                 <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">29</EnumerationValue>
               </xs:appinfo>
             </xs:annotation>
           </xs:enumeration>
         </xs:restriction>
       </xs:simpleType>
       <xs:element name="AddressFamily" nillable="true" type="tns:AddressFamily" />
       <xs:complexType name="SocketInformation">
         <xs:annotation>
           <xs:appinfo>
             <IsValueType xmlns="http://schemas.microsoft.com/2003/10/Serialization/">true</IsValueType>
           </xs:appinfo>
         </xs:annotation>
         <xs:sequence>
           <xs:element name="options" type="tns:SocketInformationOptions" />
           <xs:element name="protocolInformation" nillable="true" type="xs:base64Binary" />
         </xs:sequence>
       </xs:complexType>
       <xs:element name="SocketInformation" nillable="true" type="tns:SocketInformation" />
       <xs:simpleType name="SocketInformationOptions">
         <xs:list>
           <xs:simpleType>
             <xs:restriction base="xs:string">
               <xs:enumeration value="NonBlocking" />
               <xs:enumeration value="Connected" />
               <xs:enumeration value="Listening" />
               <xs:enumeration value="UseOnlyOverlappedIO" />
             </xs:restriction>
           </xs:simpleType>
         </xs:list>
       </xs:simpleType>
       <xs:element name="SocketInformationOptions" nillable="true" type="tns:SocketInformationOptions" />
     </xs:schema>
     
     <!--System.Net-->
     <xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/System.Net" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/System.Net" xmlns:xs="http://www.w3.org/2001/XMLSchema">
       <xs:import namespace="http://schemas.datacontract.org/2004/07/System.Net.Sockets" />
       <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
       <xs:complexType name="IPAddress">
         <xs:sequence>
           <xs:element name="m_Address" type="xs:long" />
           <xs:element name="m_Family" xmlns:q1="http://schemas.datacontract.org/2004/07/System.Net.Sockets" type="q1:AddressFamily" />
           <xs:element name="m_HashCode" type="xs:int" />
           <xs:element name="m_Numbers" nillable="true" xmlns:q2="http://schemas.microsoft.com/2003/10/Serialization/Arrays" type="q2:ArrayOfunsignedShort" />
           <xs:element name="m_ScopeId" type="xs:long" />
         </xs:sequence>
       </xs:complexType>
       <xs:element name="IPAddress" nillable="true" type="tns:IPAddress" />
       <xs:complexType name="ArrayOfIPAddress">
         <xs:sequence>
           <xs:element minOccurs="0" maxOccurs="unbounded" name="IPAddress" nillable="true" type="tns:IPAddress" />
         </xs:sequence>
       </xs:complexType>
       <xs:element name="ArrayOfIPAddress" nillable="true" type="tns:ArrayOfIPAddress" />
     </xs:schema>
     
     <!--"http://schemas.microsoft.com/net/2006/05/peer-->
     <xs:schema xmlns:tns="http://schemas.microsoft.com/net/2006/05/peer" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/net/2006/05/peer" xmlns:xs="http://www.w3.org/2001/XMLSchema">
       <xs:import namespace="http://www.w3.org/2005/08/addressing" />
       <xs:import namespace="http://schemas.datacontract.org/2004/07/System.Net" />
       <xs:import namespace="http://schemas.datacontract.org/2004/07/System.ServiceModel.Channels" />
       <xs:complexType name="ConnectInfo">
         <xs:sequence>
           <xs:element minOccurs="0" name="Address" nillable="true" type="tns:PeerNodeAddress" />
           <xs:element minOccurs="0" name="NodeId" type="xs:unsignedLong" />
         </xs:sequence>
       </xs:complexType>
       <xs:element name="ConnectInfo" nillable="true" type="tns:ConnectInfo" />
       <xs:complexType name="PeerNodeAddress">
         <xs:sequence>
           <xs:element minOccurs="0" name="EndpointAddress" nillable="true" xmlns:wsa10="http://www.w3.org/2005/08/addressing" type="wsa10:EndpointReferenceType" />
           <xs:element minOccurs="0" name="IPAddresses" nillable="true" xmlns:q2="http://schemas.datacontract.org/2004/07/System.Net" type="q2:ArrayOfIPAddress" />
         </xs:sequence>
       </xs:complexType>
       <xs:element name="PeerNodeAddress" nillable="true" type="tns:PeerNodeAddress" />
       <xs:element name="Connect" nillable="true" type="tns:ConnectInfo" />
       <xs:complexType name="DisconnectInfo">
         <xs:sequence>
           <xs:element minOccurs="0" name="Reason" xmlns:q3="http://schemas.datacontract.org/2004/07/System.ServiceModel.Channels" type="q3:DisconnectReason" />
           <xs:element minOccurs="0" name="Referrals" nillable="true" type="tns:ArrayOfReferral" />
         </xs:sequence>
       </xs:complexType>
       <xs:element name="DisconnectInfo" nillable="true" type="tns:DisconnectInfo" />
       <xs:complexType name="ArrayOfReferral">
         <xs:sequence>
           <xs:element minOccurs="0" maxOccurs="unbounded" name="Referral" nillable="true" type="tns:Referral" />
         </xs:sequence>
       </xs:complexType>
       <xs:element name="ArrayOfReferral" nillable="true" type="tns:ArrayOfReferral" />
       <xs:complexType name="Referral">
         <xs:sequence>
           <xs:element minOccurs="0" name="Address" nillable="true" type="tns:PeerNodeAddress" />
           <xs:element minOccurs="0" name="NodeId" type="xs:unsignedLong" />
         </xs:sequence>
       </xs:complexType>
       <xs:element name="Referral" nillable="true" type="tns:Referral" />
       <xs:element name="Disconnect" nillable="true" type="tns:DisconnectInfo" />
       <xs:complexType name="RefuseInfo">
         <xs:sequence>
           <xs:element minOccurs="0" name="Reason" xmlns:q4="http://schemas.datacontract.org/2004/07/System.ServiceModel.Channels" type="q4:RefuseReason" />
           <xs:element minOccurs="0" name="Referrals" nillable="true" type="tns:ArrayOfReferral" />
         </xs:sequence>
       </xs:complexType>
       <xs:element name="RefuseInfo" nillable="true" type="tns:RefuseInfo" />
       <xs:element name="Refuse" nillable="true" type="tns:RefuseInfo" />
       <xs:complexType name="WelcomeInfo">
         <xs:sequence>
           <xs:element minOccurs="0" name="NodeId" type="xs:unsignedLong" />
           <xs:element minOccurs="0" name="Referrals" nillable="true" type="tns:ArrayOfReferral" />
         </xs:sequence>
       </xs:complexType>
       <xs:element name="WelcomeInfo" nillable="true" type="tns:WelcomeInfo" />
       <xs:element name="Welcome" nillable="true" type="tns:WelcomeInfo" />
       <xs:complexType name="LinkUtilityInfo">
         <xs:sequence>
           <xs:element minOccurs="0" name="Total" type="xs:unsignedInt" />
           <xs:element minOccurs="0" name="Useful" type="xs:unsignedInt" />
         </xs:sequence>
       </xs:complexType>
       <xs:element name="LinkUtilityInfo" nillable="true" type="tns:LinkUtilityInfo" />
       <xs:element name="LinkUtility" nillable="true" type="tns:LinkUtilityInfo" />
     </xs:schema>    
   </wsdl:types>
   
   <!--Imported types-->
   <wsdl:types>
     <xsd:schema targetNamespace="http://schemas.microsoft.com/net/2006/05/peer/Imports">
       <xsd:import namespace="http://tempuri.org/" />
       <xsd:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
       <xsd:import namespace="http://schemas.datacontract.org/2004/07/System" />
       <xsd:import namespace="http://schemas.datacontract.org/2004/07/System.ServiceModel.Channels" />
       <xsd:import namespace="http://schemas.datacontract.org/2004/07/System.ServiceModel" />
       <xsd:import namespace="http://schemas.datacontract.org/2004/07/System.ServiceModel.Activation" />
       <xsd:import namespace="http://schemas.datacontract.org/2004/07/System.Net" />
       <xsd:import namespace="http://schemas.datacontract.org/2004/07/System.Net.Sockets" />
       <xsd:import namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
       <xsd:import namespace="http://schemas.microsoft.com/Message" />
       <xsd:import namespace="http://www.w3.org/2005/08/addressing" />
     </xsd:schema>
   </wsdl:types>
   
   <!--Headers-->
   <wsdl:message name="ConnectInfo">
     <wsdl:part name="Connect" element="tns:Connect" />
   </wsdl:message>
   <wsdl:message name="DisconnectInfo">
     <wsdl:part name="Disconnect" element="tns:Disconnect" />
   </wsdl:message>
   <wsdl:message name="RefuseInfo">
     <wsdl:part name="Refuse" element="tns:Refuse" />
   </wsdl:message>
   <wsdl:message name="WelcomeInfo">
     <wsdl:part name="Welcome" element="tns:Welcome" />
   </wsdl:message>
   <wsdl:message name="PeerService_FloodMessage_InputMessage">
     <wsdl:part name="floodedInfo" xmlns:q1="http://schemas.microsoft.com/Message" type="q1:MessageBody" />
   </wsdl:message>
   <wsdl:message name="UtilityInfo">
     <wsdl:part name="LinkUtility" element="tns:LinkUtility" />
   </wsdl:message>
   <wsdl:message name="PeerService_ProcessRequestSecurityToken_InputMessage">
     <wsdl:part name="message" xmlns:q2="http://schemas.microsoft.com/Message" type="q2:MessageBody" />
   </wsdl:message>
   <wsdl:message name="PeerService_ProcessRequestSecurityToken_OutputMessage">
     <wsdl:part name="ProcessRequestSecurityTokenResult" xmlns:q3="http://schemas.microsoft.com/Message" type="q3:MessageBody" />
   </wsdl:message>
   <wsdl:message name="PeerService_Ping_InputMessage">
     <wsdl:part name="message" xmlns:q4="http://schemas.microsoft.com/Message" type="q4:MessageBody" />
   </wsdl:message>
   <wsdl:message name="PeerService_Fault_InputMessage">
     <wsdl:part name="message" xmlns:q5="http://schemas.microsoft.com/Message" type="q5:MessageBody" />
   </wsdl:message>
   
   <!--PeerService port definition wsdl:input messages-->
   <wsdl:portType msc:usingSession="true" name="PeerService">
     <wsdl:operation msc:isInitiating="true" msc:isTerminating="false" name="Connect">
       <wsdl:input wsaw:Action="http://schemas.microsoft.com/net/2006/05/peer/Connect" name="ConnectInfo" message="tns:ConnectInfo" />
     </wsdl:operation>
     <wsdl:operation msc:isInitiating="true" msc:isTerminating="false" name="Disconnect">
       <wsdl:input wsaw:Action="http://schemas.microsoft.com/net/2006/05/peer/Disconnect" name="DisconnectInfo" message="tns:DisconnectInfo" />
     </wsdl:operation>
     <wsdl:operation msc:isInitiating="true" msc:isTerminating="false" name="Refuse">
       <wsdl:input wsaw:Action="http://schemas.microsoft.com/net/2006/05/peer/Refuse" name="RefuseInfo" message="tns:RefuseInfo" />
     </wsdl:operation>
     <wsdl:operation msc:isInitiating="true" msc:isTerminating="false" name="Welcome">
       <wsdl:input wsaw:Action="http://schemas.microsoft.com/net/2006/05/peer/Welcome" name="WelcomeInfo" message="tns:WelcomeInfo" />
     </wsdl:operation>
     <wsdl:operation msc:isInitiating="true" msc:isTerminating="false" name="FloodMessage">
       <wsdl:input wsaw:Action="http://schemas.microsoft.com/net/2006/05/peer/Flood" message="tns:PeerService_FloodMessage_InputMessage" />
     </wsdl:operation>
     <wsdl:operation msc:isInitiating="true" msc:isTerminating="false" name="LinkUtility">
       <wsdl:input wsaw:Action="http://schemas.microsoft.com/net/2006/05/peer/LinkUtility" name="UtilityInfo" message="tns:UtilityInfo" />
     </wsdl:operation>
     <wsdl:operation msc:isInitiating="true" msc:isTerminating="false" name="ProcessRequestSecurityToken">
       <wsdl:input wsaw:Action="RequestSecurityToken" message="tns:PeerService_ProcessRequestSecurityToken_InputMessage" />
       <wsdl:output wsaw:Action="RequestSecurityTokenResponse" message="tns:PeerService_ProcessRequestSecurityToken_OutputMessage" />
     </wsdl:operation>
     <wsdl:operation msc:isInitiating="true" msc:isTerminating="false" name="Ping">
       <wsdl:input wsaw:Action="http://schemas.microsoft.com/net/2006/05/peer/Ping" message="tns:PeerService_Ping_InputMessage" />
     </wsdl:operation>
     <wsdl:operation msc:isInitiating="true" msc:isTerminating="false" name="Fault">
       <wsdl:input wsaw:Action="http://www.w3.org/2005/08/addressing/fault" message="tns:PeerService_Fault_InputMessage" />
     </wsdl:operation>
  
   <!--PeerService port definition wsdl:output messages-->
     <wsdl:operation msc:isInitiating="true" msc:isTerminating="false" name="Connect">
       <wsdl:output wsaw:Action="http://schemas.microsoft.com/net/2006/05/peer/Connect" name="ConnectInfo" message="tns:ConnectInfo" />
     </wsdl:operation>
     <wsdl:operation msc:isInitiating="true" msc:isTerminating="false" name="Disconnect">
       <wsdl:output wsaw:Action="http://schemas.microsoft.com/net/2006/05/peer/Disconnect" name="DisconnectInfo" message="tns:DisconnectInfo" />
     </wsdl:operation>
     <wsdl:operation msc:isInitiating="true" msc:isTerminating="false" name="Refuse">
       <wsdl:output wsaw:Action="http://schemas.microsoft.com/net/2006/05/peer/Refuse" name="RefuseInfo" message="tns:RefuseInfo" />
     </wsdl:operation>
     <wsdl:operation msc:isInitiating="true" msc:isTerminating="false" name="Welcome">
       <wsdl:output wsaw:Action="http://schemas.microsoft.com/net/2006/05/peer/Welcome" name="WelcomeInfo" message="tns:WelcomeInfo" />
     </wsdl:operation>
     <wsdl:operation msc:isInitiating="true" msc:isTerminating="false" name="FloodMessage">
       <wsdl:output wsaw:Action="http://schemas.microsoft.com/net/2006/05/peer/Flood" message="tns:PeerService_FloodMessage_InputMessage" />
     </wsdl:operation>
     <wsdl:operation msc:isInitiating="true" msc:isTerminating="false" name="LinkUtility">
       <wsdl:output wsaw:Action="http://schemas.microsoft.com/net/2006/05/peer/LinkUtility" name="UtilityInfo" message="tns:UtilityInfo" />
     </wsdl:operation>
     <wsdl:operation msc:isInitiating="true" msc:isTerminating="false" name="ProcessRequestSecurityToken">
       <wsdl:output wsaw:Action="RequestSecurityToken" message="tns:PeerService_ProcessRequestSecurityToken_InputMessage" />
       <wsdl:input wsaw:Action="RequestSecurityTokenResponse" message="tns:PeerService_ProcessRequestSecurityToken_OutputMessage" />
     </wsdl:operation>
     <wsdl:operation msc:isInitiating="true" msc:isTerminating="false" name="Ping">
       <wsdl:output wsaw:Action="http://schemas.microsoft.com/net/2006/05/peer/Ping" message="tns:PeerService_Ping_InputMessage" />
     </wsdl:operation>
     <wsdl:operation msc:isInitiating="true" msc:isTerminating="false" name="Fault">
       <wsdl:output wsaw:Action="http://www.w3.org/2005/08/addressing/fault" message="tns:PeerService_Fault_InputMessage" />
     </wsdl:operation>
   </wsdl:portType>
   
   <!-- PeerService binding definition-->
   <wsdl:binding name="DefaultBinding_PeerService" type="tns:PeerService">
     <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
     <wsdl:operation name="Connect">
       <soap:operation soapAction="http://schemas.microsoft.com/net/2006/05/peer/Connect" style="document" />
       <wsdl:input name="ConnectInfo">
         <soap:body use="literal" />
       </wsdl:input>
     </wsdl:operation>
     <wsdl:operation name="Disconnect">
       <soap:operation soapAction="http://schemas.microsoft.com/net/2006/05/peer/Disconnect" style="document" />
       <wsdl:input name="DisconnectInfo">
         <soap:body use="literal" />
       </wsdl:input>
     </wsdl:operation>
     <wsdl:operation name="Refuse">
       <soap:operation soapAction="http://schemas.microsoft.com/net/2006/05/peer/Refuse" style="document" />
       <wsdl:input name="RefuseInfo">
         <soap:body use="literal" />
       </wsdl:input>
     </wsdl:operation>
     <wsdl:operation name="Welcome">
       <soap:operation soapAction="http://schemas.microsoft.com/net/2006/05/peer/Welcome" style="document" />
       <wsdl:input name="WelcomeInfo">
         <soap:body use="literal" />
       </wsdl:input>
     </wsdl:operation>
     <wsdl:operation name="FloodMessage">
       <soap:operation soapAction="http://schemas.microsoft.com/net/2006/05/peer/Flood" style="document" />
       <wsdl:input>
         <soap:body use="literal" />
       </wsdl:input>
     </wsdl:operation>
     <wsdl:operation name="LinkUtility">
       <soap:operation soapAction="http://schemas.microsoft.com/net/2006/05/peer/LinkUtility" style="document" />
       <wsdl:input name="UtilityInfo">
         <soap:body use="literal" />
       </wsdl:input>
     </wsdl:operation>
     <wsdl:operation name="ProcessRequestSecurityToken">
       <soap:operation soapAction="RequestSecurityToken" style="document" />
       <wsdl:input>
         <soap:body use="literal" />
       </wsdl:input>
       <wsdl:output>
         <soap:body use="literal" />
       </wsdl:output>
     </wsdl:operation>
     <wsdl:operation name="Ping">
       <soap:operation soapAction="http://schemas.microsoft.com/net/2006/05/peer/Ping" style="document" />
       <wsdl:input>
         <soap:body use="literal" />
       </wsdl:input>
     </wsdl:operation>
     <wsdl:operation name="Fault">
       <soap:operation soapAction="http://www.w3.org/2005/08/addressing/fault" style="document" />
       <wsdl:input>
         <soap:body use="literal" />
       </wsdl:input>
     </wsdl:operation>
     <wsdl:operation name="Connect">
       <soap:operation soapAction="http://schemas.microsoft.com/net/2006/05/peer/Connect" style="document" />
       <wsdl:output name="ConnectInfo">
         <soap:body use="literal" />
       </wsdl:output>
     </wsdl:operation>
     <wsdl:operation name="Disconnect">
       <soap:operation soapAction="http://schemas.microsoft.com/net/2006/05/peer/Disconnect" style="document" />
       <wsdl:output name="DisconnectInfo">
         <soap:body use="literal" />
       </wsdl:output>
     </wsdl:operation>
     <wsdl:operation name="Refuse">
       <soap:operation soapAction="http://schemas.microsoft.com/net/2006/05/peer/Refuse" style="document" />
       <wsdl:output name="RefuseInfo">
         <soap:body use="literal" />
       </wsdl:output>
     </wsdl:operation>
     <wsdl:operation name="Welcome">
       <soap:operation soapAction="http://schemas.microsoft.com/net/2006/05/peer/Welcome" style="document" />
       <wsdl:output name="WelcomeInfo">
         <soap:body use="literal" />
       </wsdl:output>
     </wsdl:operation>
     <wsdl:operation name="FloodMessage">
       <soap:operation soapAction="http://schemas.microsoft.com/net/2006/05/peer/Flood" style="document" />
       <wsdl:output>
         <soap:body use="literal" />
       </wsdl:output>
     </wsdl:operation>
     <wsdl:operation name="LinkUtility">
       <soap:operation soapAction="http://schemas.microsoft.com/net/2006/05/peer/LinkUtility" style="document" />
       <wsdl:output name="UtilityInfo">
         <soap:body use="literal" />
       </wsdl:output>
     </wsdl:operation>
     <wsdl:operation name="ProcessRequestSecurityToken">
       <soap:operation soapAction="RequestSecurityToken" style="document" />
       <wsdl:input>
         <soap:body use="literal" />
       </wsdl:input>
       <wsdl:output>
         <soap:body use="literal" />
       </wsdl:output>
     </wsdl:operation>
     <wsdl:operation name="Ping">
       <soap:operation soapAction="http://schemas.microsoft.com/net/2006/05/peer/Ping" style="document" />
       <wsdl:output>
         <soap:body use="literal" />
       </wsdl:output>
     </wsdl:operation>
     <wsdl:operation name="Fault">
       <soap:operation soapAction="http://www.w3.org/2005/08/addressing/fault" style="document" />
       <wsdl:output>
         <soap:body use="literal" />
       </wsdl:output>
     </wsdl:operation>
   </wsdl:binding>
 </wsdl:definitions>
Show: