<?xml version="1.0" encoding="UTF-8"?>
<definitions name="interop2B"
 xmlns="http://schemas.xmlsoap.org/wsdl/"
 targetNamespace="http://soapinterop.org/"
 xmlns:SOAP-ENV="http://www.w3.org/2002/06/soap-envelope"
 xmlns:SOAP-ENC="http://www.w3.org/2002/06/soap-encoding"
 xmlns:SOAP="http://schemas.xmlsoap.org/wsdl/soap/"
 xmlns:WSDL="http://schemas.xmlsoap.org/wsdl/"
 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
 xmlns:tns="http://soapinterop.org/"
 xmlns:ns="http://soapinterop.org/xsd">

<types>
 <schema
  xmlns="http://www.w3.org/2001/XMLSchema"
  targetNamespace="http://soapinterop.org/xsd"
  xmlns:SOAP-ENV="http://www.w3.org/2002/06/soap-envelope"
  xmlns:SOAP-ENC="http://www.w3.org/2002/06/soap-encoding"
  xmlns:ns="http://soapinterop.org/xsd">

  <complexType name="SOAPStruct">
   <all>
    <element name="varString" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="varInt" type="xsd:int" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="varFloat" type="xsd:float" minOccurs="0" maxOccurs="1" nillable="true"/>
   </all>
   <anyAttribute namespace="##other"/>
  </complexType>

  <complexType name="SOAPStructStruct">
   <all>
    <element name="varString" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="varInt" type="xsd:int" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="varFloat" type="xsd:float" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="varStruct" type="ns:SOAPStruct" minOccurs="0" maxOccurs="1" nillable="true"/>
   </all>
   <anyAttribute namespace="##other"/>
  </complexType>

  <complexType name="SOAPArrayStruct">
   <all>
    <element name="varString" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="varInt" type="xsd:int" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="varFloat" type="xsd:float" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="varArray" type="ArrayOfstring" minOccurs="0" maxOccurs="1" nillable="true"/>
   </all>
   <anyAttribute namespace="##other"/>
  </complexType>

  <complexType name="echoStructAsSimpleTypesResponse">
   <all>
    <element name="outputString" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    <element name="outputInteger" type="xsd:int" minOccurs="0" maxOccurs="1"/>
    <element name="outputFloat" type="xsd:float" minOccurs="0" maxOccurs="1"/>
   </all>
   <anyAttribute namespace="##other"/>
  </complexType>

  <complexType name="echoSimpleTypesAsStructResponse">
   <all>
    <element name="return" type="ns:SOAPStruct" minOccurs="0" maxOccurs="1"/>
   </all>
   <anyAttribute namespace="##other"/>
  </complexType>

  <complexType name="ArrayOfstring2D" base="SOAP:Array">
   <complexContent>
    <restriction base="SOAP-ENC:Array">
     <attribute ref="SOAP-ENC:arrayType" WSDL:arrayType="xsd:string[,]"/>
   </restriction>
   </complexContent>
  </complexType>

  <complexType name="ArrayOfstring" base="SOAP:Array">
   <complexContent>
    <restriction base="SOAP-ENC:Array">
     <attribute ref="SOAP-ENC:arrayType" WSDL:arrayType="xsd:string[]"/>
   </restriction>
   </complexContent>
  </complexType>

  <complexType name="echo2DStringArrayResponse">
   <all>
    <element name="return" type="ArrayOfstring2D" minOccurs="0" maxOccurs="1" nillable="true"/>
   </all>
   <anyAttribute namespace="##other"/>
  </complexType>

  <complexType name="echoNestedStructResponse">
   <all>
    <element name="return" type="ns:SOAPStructStruct" minOccurs="0" maxOccurs="1"/>
   </all>
   <anyAttribute namespace="##other"/>
  </complexType>

  <complexType name="echoNestedArrayResponse">
   <all>
    <element name="return" type="ns:SOAPArrayStruct" minOccurs="0" maxOccurs="1"/>
   </all>
   <anyAttribute namespace="##other"/>
  </complexType>

 </schema>
</types>

<message name="echoStructAsSimpleTypesRequest">
 <part name="inputStruct" type="ns:SOAPStruct"/>
</message>

<message name="echoStructAsSimpleTypesResponse">
 <part name="outputString" type="xsd:string"/>
 <part name="outputInteger" type="xsd:int"/>
 <part name="outputFloat" type="xsd:float"/>
</message>

<message name="echoSimpleTypesAsStructRequest">
 <part name="inputString" type="xsd:string"/>
 <part name="inputInteger" type="xsd:int"/>
 <part name="inputFloat" type="xsd:float"/>
</message>

<message name="echoSimpleTypesAsStructResponse">
 <part name="return" type="ns:SOAPStruct"/>
</message>

<message name="echo2DStringArrayRequest">
 <part name="input2DStringArray" type="ns:ArrayOfstring2D"/>
</message>

<message name="echo2DStringArrayResponse">
 <part name="return" type="ns:ArrayOfstring2D"/>
</message>

<message name="echoNestedStructRequest">
 <part name="inputStruct" type="ns:SOAPStructStruct"/>
</message>

<message name="echoNestedStructResponse">
 <part name="return" type="ns:SOAPStructStruct"/>
</message>

<message name="echoNestedArrayRequest">
 <part name="inputStruct" type="ns:SOAPArrayStruct"/>
</message>

<message name="echoNestedArrayResponse">
 <part name="return" type="ns:SOAPArrayStruct"/>
</message>

<portType name="interop2BPortType">
 <documentation>Service definition of function ns__echoStructAsSimpleTypes</documentation>
 <operation name="echoStructAsSimpleTypes">
  <input message="tns:echoStructAsSimpleTypesRequest"/>
  <output message="tns:echoStructAsSimpleTypesResponse"/>
 </operation>
 <documentation>Service definition of function ns__echoSimpleTypesAsStruct</documentation>
 <operation name="echoSimpleTypesAsStruct">
  <input message="tns:echoSimpleTypesAsStructRequest"/>
  <output message="tns:echoSimpleTypesAsStructResponse"/>
 </operation>
 <documentation>Service definition of function ns__echo2DStringArray</documentation>
 <operation name="echo2DStringArray">
  <input message="tns:echo2DStringArrayRequest"/>
  <output message="tns:echo2DStringArrayResponse"/>
 </operation>
 <documentation>Service definition of function ns__echoNestedStruct</documentation>
 <operation name="echoNestedStruct">
  <input message="tns:echoNestedStructRequest"/>
  <output message="tns:echoNestedStructResponse"/>
 </operation>
 <documentation>Service definition of function ns__echoNestedArray</documentation>
 <operation name="echoNestedArray">
  <input message="tns:echoNestedArrayRequest"/>
  <output message="tns:echoNestedArrayResponse"/>
 </operation>
</portType>

<binding name="interop2BBinding" type="tns:interop2BPortType">
 <SOAP:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
 <operation name="echoStructAsSimpleTypes">
  <SOAP:operation soapAction="http://soapinterop.org/"/>
  <input>
   <SOAP:body use="encoded" namespace="http://soapinterop.org/" encodingStyle="http://www.w3.org/2002/06/soap-encoding"/>
  </input>
  <output>
   <SOAP:body use="encoded" namespace="http://soapinterop.org/" encodingStyle="http://www.w3.org/2002/06/soap-encoding"/>
  </output>
 </operation>
 <operation name="echoSimpleTypesAsStruct">
  <SOAP:operation soapAction="http://soapinterop.org/"/>
  <input>
   <SOAP:body use="encoded" namespace="http://soapinterop.org/" encodingStyle="http://www.w3.org/2002/06/soap-encoding"/>
  </input>
  <output>
   <SOAP:body use="encoded" namespace="http://soapinterop.org/" encodingStyle="http://www.w3.org/2002/06/soap-encoding"/>
  </output>
 </operation>
 <operation name="echo2DStringArray">
  <SOAP:operation soapAction="http://soapinterop.org/"/>
  <input>
   <SOAP:body use="encoded" namespace="http://soapinterop.org/" encodingStyle="http://www.w3.org/2002/06/soap-encoding"/>
  </input>
  <output>
   <SOAP:body use="encoded" namespace="http://soapinterop.org/" encodingStyle="http://www.w3.org/2002/06/soap-encoding"/>
  </output>
 </operation>
 <operation name="echoNestedStruct">
  <SOAP:operation soapAction="http://soapinterop.org/"/>
  <input>
   <SOAP:body use="encoded" namespace="http://soapinterop.org/" encodingStyle="http://www.w3.org/2002/06/soap-encoding"/>
  </input>
  <output>
   <SOAP:body use="encoded" namespace="http://soapinterop.org/" encodingStyle="http://www.w3.org/2002/06/soap-encoding"/>
  </output>
 </operation>
 <operation name="echoNestedArray">
  <SOAP:operation soapAction="http://soapinterop.org/"/>
  <input>
   <SOAP:body use="encoded" namespace="http://soapinterop.org/" encodingStyle="http://www.w3.org/2002/06/soap-encoding"/>
  </input>
  <output>
   <SOAP:body use="encoded" namespace="http://soapinterop.org/" encodingStyle="http://www.w3.org/2002/06/soap-encoding"/>
  </output>
 </operation>
</binding>

<service name="interop2B">
 <documentation>gSOAP Stub and Skeleton Compiler for C and C++ 2.1.8 generated service definition</documentation>
 <port name="interop2BPort" binding="tns:interop2BBinding">
  <SOAP:address location="http://websrv.cs.fsu.edu/~engelen/interop2B.cgi"/>
 </port>
</service>

</definitions>
