<?xml version='1.0' encoding='UTF-8'?>
<definitions name='InteropServiceA' targetNamespace='http://soapinterop.org/'
            xmlns='http://schemas.xmlsoap.org/wsdl/'
            xmlns:tns='http://soapinterop.org/'
            xmlns:xsd='http://www.w3.org/2001/XMLSchema'
            xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
            xmlns:suds='http://www.w3.org/2000/wsdl/suds'
            xmlns:wsdl='http://schemas.xmlsoap.org/wsdl/'
            xmlns:soapenc='http://schemas.xmlsoap.org/soap/encoding/'
            xmlns:ns1='http://schemas.microsoft.com/clr/ns/System'
            xmlns:ns2='http://soapinterop.org/xsd'
            xmlns:ns3='http://schemas.microsoft.com/clr/ns/System.Runtime.Remoting.Metadata.W3cXsd2001'
            xmlns:ns0='http://soapinterop.org/'
            xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/'>
    <types>
        <schema targetNamespace='http://soapinterop.org/'
                xmlns='http://www.w3.org/2001/XMLSchema'
                elementFormDefault='unqualified' attributeFormDefault='unqualified'>
            <import namespace='http://soapinterop.org/xsd'/>
            <complexType name='ArrayOfString'>
                    <complexContent>
                            <restriction base='soapenc:Array'>
                                    <attribute ref='soapenc:arrayType' wsdl:arrayType ='xsd:string[]'/>
                            </restriction>
                    </complexContent>
            </complexType>
            <complexType name='ArrayOfInt'>
                    <complexContent>
                            <restriction base='soapenc:Array'>
                                    <attribute ref='soapenc:arrayType' wsdl:arrayType ='xsd:int[]'/>
                            </restriction>
                    </complexContent>
            </complexType>
            <complexType name='ArrayOfFloat'>
                    <complexContent>
                            <restriction base='soapenc:Array'>
                                    <attribute ref='soapenc:arrayType' wsdl:arrayType ='xsd:float[]'/>
                            </restriction>
                    </complexContent>
            </complexType>
            <complexType name='ArrayOfSOAPStruct'>
                    <complexContent>
                            <restriction base='soapenc:Array'>
                                    <attribute ref='soapenc:arrayType' wsdl:arrayType ='ns2:SOAPStruct[]'/>
                            </restriction>
                    </complexContent>
            </complexType>
        </schema>
        <schema targetNamespace='http://soapinterop.org/xsd'
                xmlns='http://www.w3.org/2001/XMLSchema'
                elementFormDefault='unqualified' attributeFormDefault='unqualified'>
            <element name='SOAPStruct' type='ns2:SOAPStruct'/>
            <complexType name='SOAPStruct'>
                <all>
                        <element name='varString' type='xsd:string'/>
                        <element name='varInt' type='xsd:int'/>
                        <element name='varFloat' type='xsd:float'/>
                </all>
            </complexType>
        </schema>
    </types>

    <message name='InteropServiceA.echoStringInput'>
        <part name='inputString' type='xsd:string'/>
    </message>
    <message name='InteropServiceA.echoStringOutput'>
        <part name='return' type='xsd:string'/>
    </message>

    <message name='InteropServiceA.echoBooleanInput'>
        <part name='inputBoolean' type='xsd:boolean'/>
    </message>
    <message name='InteropServiceA.echoBooleanOutput'>
        <part name='return' type='xsd:boolean'/>
    </message>

    <message name='InteropServiceA.echoIntegerInput'>
        <part name='inputInteger' type='xsd:int'/>
    </message>
    <message name='InteropServiceA.echoIntegerOutput'>
        <part name='return' type='xsd:int'/>
    </message>

    <message name='InteropServiceA.echoFloatInput'>
        <part name='inputFloat' type='xsd:float'/>
    </message>
    <message name='InteropServiceA.echoFloatOutput'>
        <part name='return' type='xsd:float'/>
    </message>

    <message name='InteropServiceA.echoStructInput'>
        <part name='inputStruct' type='ns2:SOAPStruct'/>
    </message>
    <message name='InteropServiceA.echoStructOutput'>
        <part name='return' type='ns2:SOAPStruct'/>
    </message>

    <message name='InteropServiceA.echoVoidInput'>
    </message>
    <message name='InteropServiceA.echoVoidOutput'>
    </message>

    <message name='InteropServiceA.echoStringArrayInput'>
        <part name='inputStringArray' type='ns0:ArrayOfString'/>
    </message>
    <message name='InteropServiceA.echoStringArrayOutput'>
        <part name='return' type='ns0:ArrayOfString'/>
    </message>

    <message name='InteropServiceA.echoIntegerArrayInput'>
        <part name='inputIntegerArray' type='ns0:ArrayOfInt'/>
    </message>
    <message name='InteropServiceA.echoIntegerArrayOutput'>
        <part name='return' type='ns0:ArrayOfInt'/>
    </message>

    <message name='InteropServiceA.echoFloatArrayInput'>
        <part name='inputFloatArray' type='ns0:ArrayOfFloat'/>
    </message>
    <message name='InteropServiceA.echoFloatArrayOutput'>
        <part name='return' type='ns0:ArrayOfFloat'/>
    </message>

    <message name='InteropServiceA.echoStructArrayInput'>
        <part name='inputStructArray' type='ns0:ArrayOfSOAPStruct'/>
    </message>
    <message name='InteropServiceA.echoStructArrayOutput'>
        <part name='return' type='ns0:ArrayOfSOAPStruct'/>
    </message>

    <message name='InteropServiceA.echoDateInput'>
        <part name='inputDate' type='xsd:dateTime'/>
    </message>
    <message name='InteropServiceA.echoDateOutput'>
        <part name='return' type='xsd:dateTime'/>
    </message>

    <message name='InteropServiceA.echoBase64Input'>
        <part name='inputBase64' type='xsd:base64Binary'/>
    </message>
    <message name='InteropServiceA.echoBase64Output'>
        <part name='return' type='xsd:base64Binary'/>
    </message>

    <message name='InteropServiceA.echoDecimalInput'>
        <part name='inputDecimal' type='xsd:decimal'/>
    </message>
    <message name='InteropServiceA.echoDecimalOutput'>
        <part name='return' type='xsd:decimal'/>
    </message>

    <portType name='InteropServiceAPortType'>
        <operation name='echoString' parameterOrder='inputString'>
            <input name='echoStringRequest' message='tns:InteropServiceA.echoStringInput'/>
            <output name='echoStringResponse' message='tns:InteropServiceA.echoStringOutput'/>
        </operation>
        <operation name='echoBoolean' parameterOrder='inputBoolean'>
            <input name='echoBooleanRequest' message='tns:InteropServiceA.echoBooleanInput'/>
            <output name='echoBooleanResponse' message='tns:InteropServiceA.echoBooleanOutput'/>
        </operation>
        <operation name='echoInteger' parameterOrder='inputInteger'>
            <input name='echoIntegerRequest' message='tns:InteropServiceA.echoIntegerInput'/>
            <output name='echoIntegerResponse' message='tns:InteropServiceA.echoIntegerOutput'/>
        </operation>
        <operation name='echoFloat' parameterOrder='inputFloat'>
            <input name='echoFloatRequest' message='tns:InteropServiceA.echoFloatInput'/>
            <output name='echoFloatResponse' message='tns:InteropServiceA.echoFloatOutput'/>
        </operation>
        <operation name='echoStruct' parameterOrder='inputStruct'>
            <input name='echoStructRequest' message='tns:InteropServiceA.echoStructInput'/>
            <output name='echoStructResponse' message='tns:InteropServiceA.echoStructOutput'/>
        </operation>
        <operation name='echoVoid'>
            <input name='echoVoidRequest' message='tns:InteropServiceA.echoVoidInput'/>
            <output name='echoVoidResponse' message='tns:InteropServiceA.echoVoidOutput'/>
        </operation>
        <operation name='echoStringArray' parameterOrder='inputStringArray'>
            <input name='echoStringArrayRequest' message='tns:InteropServiceA.echoStringArrayInput'/>
            <output name='echoStringArrayResponse' message='tns:InteropServiceA.echoStringArrayOutput'/>
        </operation>
        <operation name='echoIntegerArray' parameterOrder='inputIntegerArray'>
            <input name='echoIntegerArrayRequest' message='tns:InteropServiceA.echoIntegerArrayInput'/>
            <output name='echoIntegerArrayResponse' message='tns:InteropServiceA.echoIntegerArrayOutput'/>
        </operation>
        <operation name='echoFloatArray' parameterOrder='inputFloatArray'>
            <input name='echoFloatArrayRequest' message='tns:InteropServiceA.echoFloatArrayInput'/>
            <output name='echoFloatArrayResponse' message='tns:InteropServiceA.echoFloatArrayOutput'/>
        </operation>
        <operation name='echoStructArray' parameterOrder='inputStructArray'>
            <input name='echoStructArrayRequest' message='tns:InteropServiceA.echoStructArrayInput'/>
            <output name='echoStructArrayResponse' message='tns:InteropServiceA.echoStructArrayOutput'/>
        </operation>
        <operation name='echoDate' parameterOrder='inputDate'>
            <input name='echoDateRequest' message='tns:InteropServiceA.echoDateInput'/>
            <output name='echoDateResponse' message='tns:InteropServiceA.echoDateOutput'/>
        </operation>
        <operation name='echoBase64' parameterOrder='inputBase64'>
            <input name='echoBase64Request' message='tns:InteropServiceA.echoBase64Input'/>
            <output name='echoBase64Response' message='tns:InteropServiceA.echoBase64Output'/>
        </operation>
        <operation name='echoDecimal' parameterOrder='inputDecimal'>
            <input name='echoDecimalRequest' message='tns:InteropServiceA.echoDecimalInput'/>
            <output name='echoDecimalResponse' message='tns:InteropServiceA.echoDecimalOutput'/>
        </operation>
    </portType>

    <binding name='InteropServiceABinding' type='tns:InteropServiceAPortType'>
        <soap:binding style='rpc' transport='http://schemas.xmlsoap.org/soap/http'/>
        <suds:class type='ns0:InteropServiceA' rootType='MarshalByRefObject'>
        </suds:class>
        <operation name='echoString'>
            <soap:operation soapAction='http://soapinterop.org/'/>
            <suds:method attributes='public'/>
            <input name='echoStringRequest'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </input>
            <output name='echoStringResponse'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </output>
        </operation>
        <operation name='echoBoolean'>
            <soap:operation soapAction='http://soapinterop.org/'/>
            <suds:method attributes='public'/>
            <input name='echoBooleanRequest'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </input>
            <output name='echoBooleanResponse'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </output>
        </operation>
        <operation name='echoInteger'>
            <soap:operation soapAction='http://soapinterop.org/'/>
            <suds:method attributes='public'/>
            <input name='echoIntegerRequest'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </input>
            <output name='echoIntegerResponse'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </output>
        </operation>
        <operation name='echoFloat'>
            <soap:operation soapAction='http://soapinterop.org/'/>
            <suds:method attributes='public'/>
            <input name='echoFloatRequest'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </input>
            <output name='echoFloatResponse'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </output>
        </operation>
        <operation name='echoStruct'>
            <soap:operation soapAction='http://soapinterop.org/'/>
            <suds:method attributes='public'/>
            <input name='echoStructRequest'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </input>
            <output name='echoStructResponse'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </output>
        </operation>
        <operation name='echoVoid'>
            <soap:operation soapAction='http://soapinterop.org/'/>
            <suds:method attributes='public'/>
            <input name='echoVoidRequest'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </input>
            <output name='echoVoidResponse'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </output>
        </operation>
        <operation name='echoStringArray'>
            <soap:operation soapAction='http://soapinterop.org/'/>
            <suds:method attributes='public'/>
            <input name='echoStringArrayRequest'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </input>
            <output name='echoStringArrayResponse'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </output>
        </operation>
        <operation name='echoIntegerArray'>
            <soap:operation soapAction='http://soapinterop.org/'/>
            <suds:method attributes='public'/>
            <input name='echoIntegerArrayRequest'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </input>
            <output name='echoIntegerArrayResponse'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </output>
        </operation>
        <operation name='echoFloatArray'>
            <soap:operation soapAction='http://soapinterop.org/'/>
            <suds:method attributes='public'/>
            <input name='echoFloatArrayRequest'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </input>
            <output name='echoFloatArrayResponse'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </output>
        </operation>
        <operation name='echoStructArray'>
            <soap:operation soapAction='http://soapinterop.org/'/>
            <suds:method attributes='public'/>
            <input name='echoStructArrayRequest'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </input>
            <output name='echoStructArrayResponse'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </output>
        </operation>
        <operation name='echoDate'>
            <soap:operation soapAction='http://soapinterop.org/'/>
            <suds:method attributes='public'/>
            <input name='echoDateRequest'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </input>
            <output name='echoDateResponse'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </output>
        </operation>
        <operation name='echoBase64'>
            <soap:operation soapAction='http://soapinterop.org/'/>
            <suds:method attributes='public'/>
            <input name='echoBase64Request'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </input>
            <output name='echoBase64Response'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </output>
        </operation>
        <operation name='echoDecimal'>
            <soap:operation soapAction='http://soapinterop.org/'/>
            <suds:method attributes='public'/>
            <input name='echoDecimalRequest'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </input>
            <output name='echoDecimalResponse'>
                <soap:body use='encoded' encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' namespace='http://soapinterop.org/'/>
            </output>
        </operation>
    </binding>

    <portType name='SOAPStructPortType'>
    </portType>

    <binding name='SOAPStructBinding' type='tns:SOAPStructPortType'>
        <soap:binding style='rpc' transport='http://schemas.xmlsoap.org/soap/http'/>
        <suds:class type='ns2:SOAPStruct'>
        </suds:class>
    </binding>

    <service name='InteropServiceAService'>
        <port name='InteropServiceAPort' binding='tns:InteropServiceABinding'>
            <soap:address location='http://www.mssoapinterop.org:80/Remoting/ServiceA.soap'/>
        </port>
    </service>
</definitions>
