<?xml version='1.0' ?>
<!--
  ~ Licensed to the Apache Software Foundation (ASF) under one
  ~ or more contributor license agreements. See the NOTICE file
  ~ distributed with this work for additional information
  ~ regarding copyright ownership. The ASF licenses this file
  ~ to you under the Apache License, Version 2.0 (the
  ~ "License"); you may not use this file except in compliance
  ~ with the License. You may obtain a copy of the License at
  ~
  ~ http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing,
  ~ software distributed under the License is distributed on an
  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  ~ KIND, either express or implied. See the License for the
  ~ specific language governing permissions and limitations
  ~ under the License.
  -->
<definitions
    name="comprehensive_types_test"
    targetNamespace="urn:comprehensive-service.types.wsdl.test"
    xmlns:tns="urn:comprehensive-service.types.wsdl.test"
    xmlns:typens="urn:comprehensive-types.types.wsdl.test"
    xmlns:typens2="urn:comprehensive-types2.types.wsdl.test"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    xmlns="http://schemas.xmlsoap.org/wsdl/">


    <types>
        <xsd:schema
            targetNamespace="urn:comprehensive-types.types.wsdl.test"
            xmlns:xsd="http://www.w3.org/1999/XMLSchema"
            xmlns:xsd2="http://www.w3.org/2001/XMLSchema">

            <xsd:simpleType name="simple">
                <xsd:restriction base="xsd:string"/>
            </xsd:simpleType>

            <xsd:simpleType name="simpleDate">
                <xsd:restriction base="xsd:date"/>
            </xsd:simpleType>

            <xsd:simpleType name="simpleDateTime">
                <xsd:restriction base="xsd2:dateTime"/>
            </xsd:simpleType>

            <xsd:simpleType name="enum">
                <xsd:restriction base="xsd:string">
                    <xsd:enumeration value="one"/>
                    <xsd:enumeration value="two"/>
                    <xsd:enumeration value="three"/>
                </xsd:restriction>
            </xsd:simpleType>

            <xsd:complexType name="array">
                <xsd:complexContent>
                    <xsd:restriction base="soapenc:Array">
                        <xsd:attribute ref="soapenc:arrayType"
                            wsdl:arrayType="xsd:string[]"/>
                    </xsd:restriction>
                </xsd:complexContent>
            </xsd:complexType>

            <xsd:complexType name="array_of_base64">
                <xsd:complexContent>
                    <xsd:restriction base="soapenc:Array">
                        <xsd:attribute ref="soapenc:arrayType"
                            wsdl:arrayType="xsd:base64Binary[]"/>
                    </xsd:restriction>
                </xsd:complexContent>
            </xsd:complexType>

            <xsd:complexType name="complexAll">
                <xsd:all>
                    <xsd:element name="areaCode" type="xsd:int"/>
                    <xsd:element name="exchange" type="xsd:string"/>
                    <xsd:element name="number" type="xsd:string"/>
                </xsd:all>
            </xsd:complexType>

            <xsd:complexType name="complexSequence">
                <xsd:sequence>
                    <xsd:element name="areaCode" type="xsd:int"/>
                    <xsd:element name="exchange" type="xsd:string"/>
                    <xsd:element name="number" type="xsd:string"/>
                </xsd:sequence>
            </xsd:complexType>

            <xsd:complexType name="complexChoice">
                <xsd:choice>
                    <xsd:element name="choiceA" type="xsd:int"/>
                    <xsd:element name="choiceB" type="xsd:string"/>
                    <xsd:element name="choiceC" type="xsd:string"/>
                </xsd:choice>
            </xsd:complexType>


            <xsd:complexType name="Object">
                <xsd:sequence>
                    <xsd:element name="test" type="xsd:string"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="String">
                <xsd:sequence>
                    <xsd:element name="test" type="xsd:string"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="Class">
                <xsd:sequence>
                    <xsd:element name="test" type="xsd:string"/>
                </xsd:sequence>
            </xsd:complexType>

            <xsd:element name="enumValue" type="typens:enum"/>

            <xsd:complexType name="time">
                <xsd:simpleContent>
                    <xsd:extension base="xsd:string">
                        <xsd:attribute name="DST" type="xsd:boolean"/>
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>

            <xsd:complexType name="complexWComplex">
                <xsd:sequence>
                    <xsd:element name="stock_quote">
                        <xsd:complexType>
                            <xsd:attribute name="symbol"
                                type="xsd:string"/>
                            <xsd:sequence>

                                <xsd:element name="time"
                                    type="typens:time"/>
                                <xsd:element name="change"
                                    type="typens:simpleFwd"/>
                                <xsd:element name="pctchange"
                                    type="xsd:string"/>
                                <xsd:element name="bid"
                                    type="xsd:string"/>
                                <xsd:element name="ask"
                                    type="xsd:string"/>
                                <xsd:element name="choice"
                                    type="typens:complexChoice"/>
                            </xsd:sequence>
                            <xsd:attribute name="last"
                                type="xsd:string"/>
                        </xsd:complexType>
                    </xsd:element>
                    <xsd:element name="outside" type="xsd:int"/>
                </xsd:sequence>
            </xsd:complexType>

            <xsd:complexType name="emptyFault">
                <xsd:sequence/>
            </xsd:complexType>

            <xsd:element name="faultElement" type="typens:faultType"/>
            <xsd:complexType name="faultType">
                <xsd:sequence>
                    <xsd:element name="userData" type="xsd:string"/>
                </xsd:sequence>
            </xsd:complexType>

            <xsd:complexType name="emptyComplexType">
                <xsd:sequence/>
            </xsd:complexType>

            <xsd:simpleType name="simpleFwd">
                <xsd:restriction base="typens:simple"/>
            </xsd:simpleType>


            <xsd:complexType name="arrayM">
                <xsd:complexContent>
                    <xsd:restriction base="soapenc:Array">
                        <xsd:attribute ref="soapenc:arrayType"
                            wsdl:arrayType="typens:arrayM2[]"/>
                    </xsd:restriction>
                </xsd:complexContent>
            </xsd:complexType>
            <xsd:complexType name="arrayM2">
                <xsd:complexContent>
                    <xsd:restriction base="soapenc:Array">
                        <xsd:attribute ref="soapenc:arrayType"
                            wsdl:arrayType="typens:arrayM3[]"/>
                    </xsd:restriction>
                </xsd:complexContent>
            </xsd:complexType>
            <xsd:complexType name="arrayM3">
                <xsd:complexContent>
                    <xsd:restriction base="soapenc:Array">
                        <xsd:attribute ref="soapenc:arrayType"
                            wsdl:arrayType="xsd:int[]"/>
                    </xsd:restriction>
                </xsd:complexContent>
            </xsd:complexType>


            <xsd:complexType name="Animal">
                <xsd:all>
                    <xsd:element name="Name" nillable="true"
                        type="xsd:string"/>
                </xsd:all>
            </xsd:complexType>
            <xsd:element name="Animal" nillable="true"
                type="typens:Animal"/>
            <xsd:complexType name="Cat">
                <xsd:complexContent>
                    <xsd:extension base="typens:Animal">
                        <xsd:all>
                            <xsd:element name="Purr" nillable="true"
                                type="xsd:string"/>
                        </xsd:all>
                    </xsd:extension>
                </xsd:complexContent>
            </xsd:complexType>
            <xsd:element name="Cat" nillable="true" type="typens:Cat"/>

            <xsd:complexType name="PersionCat">
                <xsd:complexContent>
                    <xsd:extension base="typens:Cat">
                        <xsd:all>
                            <xsd:element name="Color"
                                type="xsd:string"/>
                            <xsd:element name="Toy"/>
                        </xsd:all>
                    </xsd:extension>
                </xsd:complexContent>
            </xsd:complexType>

            <xsd:complexType name="Yarn">
                <xsd:all>
                    <xsd:element name="Color" type="xsd:string"/>
                </xsd:all>
            </xsd:complexType>


            <xsd:simpleType name="enumString">
                <xsd:restriction base="xsd:string">
                    <xsd:enumeration value="Ho Ho Ho"/>
                    <xsd:enumeration value="He He He"/>
                    <xsd:enumeration value="Ha Ha Ha"/>
                </xsd:restriction>
            </xsd:simpleType>
            <xsd:simpleType name="enumInt">
                <xsd:restriction base="xsd:int">
                    <xsd:enumeration value="1"/>
                    <xsd:enumeration value="2"/>
                    <xsd:enumeration value="3"/>
                </xsd:restriction>
            </xsd:simpleType>
            <xsd:simpleType name="enumLong">
                <xsd:restriction base="xsd:long">
                    <xsd:enumeration value="1"/>
                    <xsd:enumeration value="2"/>
                    <xsd:enumeration value="3"/>
                    <xsd:enumeration value="-9223372036854775808"/>
                    <xsd:enumeration value="9223372036854775807"/>
                </xsd:restriction>
            </xsd:simpleType>
            <xsd:simpleType name="enumShort">
                <xsd:restriction base="xsd:short">
                    <xsd:enumeration value="1"/>
                    <xsd:enumeration value="2"/>
                    <xsd:enumeration value="3"/>
                </xsd:restriction>
            </xsd:simpleType>
            <xsd:simpleType name="enumFloat">
                <xsd:restriction base="xsd:float">
                    <xsd:enumeration value="1.1"/>
                    <xsd:enumeration value="2.2"/>
                    <xsd:enumeration value="3.3"/>
                </xsd:restriction>
            </xsd:simpleType>
            <xsd:simpleType name="enumDouble">
                <xsd:restriction base="xsd:double">
                    <xsd:enumeration value="1.1"/>
                    <xsd:enumeration value="2.2"/>
                    <xsd:enumeration value="3.3"/>
                </xsd:restriction>
            </xsd:simpleType>
            <xsd:simpleType name="enumByte">
                <xsd:restriction base="xsd:byte">
                    <xsd:enumeration value="1"/>
                    <xsd:enumeration value="2"/>
                    <xsd:enumeration value="3"/>
                </xsd:restriction>
            </xsd:simpleType>

            <xsd:simpleType name="enumInteger">
                <xsd:restriction base="xsd:integer">
                    <xsd:enumeration value="1"/>
                    <xsd:enumeration value="2"/>
                    <xsd:enumeration value="3"/>
                </xsd:restriction>
            </xsd:simpleType>

            <xsd:simpleType name="flowDirectionType">
                <xsd:restriction base="xsd:string">
                    <xsd:enumeration value="in"/>
                    <xsd:enumeration value="inOut"/>
                    <xsd:enumeration value="out"/>
                </xsd:restriction>
            </xsd:simpleType>

            <xsd:simpleType name="enumNMTOKEN">
                <xsd:restriction base="xsd:NMTOKEN">
                    <xsd:enumeration value="NameToken1"/>
                    <xsd:enumeration value="NameToken2"/>
                    <xsd:enumeration value="NameToken3"/>
                </xsd:restriction>
            </xsd:simpleType>

            <xsd:simpleType name="AIDType">
                <xsd:restriction base="xsd:hexBinary">
                    <xsd:maxLength value="16"/>
                    <xsd:minLength value="5"/>
                </xsd:restriction>
            </xsd:simpleType>

            <xsd:simpleType name="passModeType">
                <xsd:restriction base="xsd:string">
                    <xsd:enumeration value="passByValue"/>
                    <xsd:enumeration value="passByReference"/>
                </xsd:restriction>
            </xsd:simpleType>


            <xsd:element name="StringParameter"
                type="typens:StringParameter"/>
            <xsd:complexType name="StringParameter">
                <xsd:simpleContent>
                    <xsd:extension base="xsd:string">
                        <xsd:attribute name="numBytes"
                            type="soapenc:int"/>
                        <xsd:attribute name="storageEncoding"
                            type="xsd:string"/>
                        <xsd:attribute name="direction"
                            type="typens:flowDirectionType"/>
                        <xsd:attribute name="passMode"
                            type="typens:passModeType"/>
                        <xsd:attribute name="description"
                            type="xsd:string"/>
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>

        </xsd:schema>


        <xsd:schema
            targetNamespace="urn:comprehensive-types2.types.wsdl.test"
            xmlns:xsd="http://www.w3.org/1999/XMLSchema">
            <xsd:complexType name="fwd">
                <xsd:complexContent>
                    <xsd:restriction base="soapenc:Array">
                        <xsd:attribute ref="soapenc:arrayType"
                            wsdl:arrayType="xsd:QName[]"/>
                    </xsd:restriction>
                </xsd:complexContent>
            </xsd:complexType>


            <xsd:element name="three" type="typens:enum"
                maxOccurs="unbounded"/>


            <xsd:element name="a" type="xsd:short"/>
            <xsd:complexType name="a">
                <xsd:sequence>
                    <xsd:element name="c" type="xsd:int"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="b">
                <xsd:sequence>
                    <xsd:element name="d" type="typens2:a"/>
                </xsd:sequence>
            </xsd:complexType>


            <xsd:complexType name="SimpleAnyURIType">
                <xsd:simpleContent>
                    <xsd:extension base="xsd:anyURI">
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>

        </xsd:schema>

    </types>

    <message name="empty"/>

    <message name="allPrimitives">
        <part name="string" type="xsd:string"/>
        <part name="integer" type="xsd:integer"/>
        <part name="int" type="xsd:int"/>
        <part name="long" type="xsd:long"/>
        <part name="short" type="xsd:short"/>
        <part name="decimal" type="xsd:decimal"/>
        <part name="float" type="xsd:float"/>
        <part name="double" type="xsd:double"/>
        <part name="boolean" type="xsd:boolean"/>
        <part name="byte" type="xsd:byte"/>
        <part name="QName" type="xsd:QName"/>
        <part name="dateTime" type="xsd:dateTime"/>
        <part name="base64Binary" type="xsd:base64Binary"/>
        <part name="hexBinary" type="xsd:hexBinary"/>
        <part name="soapString" type="soapenc:string"/>
        <part name="soapBoolean" type="soapenc:boolean"/>
        <part name="soapFloat" type="soapenc:float"/>
        <part name="soapDouble" type="soapenc:double"/>
        <part name="soapDecimal" type="soapenc:decimal"/>
        <part name="soapInt" type="soapenc:int"/>
        <part name="soapShort" type="soapenc:short"/>
        <part name="soapBase64" type="soapenc:base64"/>
        <part name="time" type="xsd:time"/>
        <part name="unsignedLong" type="xsd:unsignedLong"/>
        <part name="unsignedInt" type="xsd:unsignedInt"/>
        <part name="unsignedShort" type="xsd:unsignedShort"/>
        <part name="unsignedByte" type="xsd:unsignedByte"/>
        <part name="nonNegativeInteger" type="xsd:nonNegativeInteger"/>
        <part name="positiveInteger" type="xsd:positiveInteger"/>
        <part name="nonPositiveInteger" type="xsd:nonPositiveInteger"/>
        <part name="negativeInteger" type="xsd:negativeInteger"/>
        <part name="anyURI" type="xsd:anyURI"/>
        <part name="gYear" type="xsd:gYear"/>
        <part name="gMonth" type="xsd:gMonth"/>
        <part name="gDay" type="xsd:gDay"/>
        <part name="gYearMonth" type="xsd:gYearMonth"/>
        <part name="gMonthDay" type="xsd:gMonthDay"/>
    </message>
    <message name="inputBoolean">
        <part name="inBoolean" type="xsd:boolean"/>
        <part name="boolean" type="xsd:boolean"/>
    </message>

    <message name="outputBoolean">
        <part name="outBoolean" type="xsd:boolean"/>
        <part name="boolean" type="xsd:boolean"/>
    </message>

    <message name="inputByte">
        <part name="inByte" type="xsd:byte"/>
        <part name="byte" type="xsd:byte"/>
    </message>

    <message name="outputByte">
        <part name="outByte" type="xsd:byte"/>
        <part name="byte" type="xsd:byte"/>
    </message>

    <message name="inputShort">
        <part name="inShort" type="xsd:short"/>
        <part name="short" type="xsd:short"/>
    </message>

    <message name="outputShort">
        <part name="outShort" type="xsd:short"/>
        <part name="short" type="xsd:short"/>
    </message>

    <message name="inputInt">
        <part name="inInt" type="xsd:int"/>
        <part name="int" type="xsd:int"/>
    </message>

    <message name="outputInt">
        <part name="outInt" type="xsd:int"/>
        <part name="int" type="xsd:int"/>
    </message>

    <message name="inputLong">
        <part name="inLong" type="xsd:long"/>
        <part name="long" type="xsd:long"/>
    </message>

    <message name="outputLong">
        <part name="outLong" type="xsd:long"/>
        <part name="long" type="xsd:long"/>
    </message>

    <message name="inputFloat">
        <part name="inFloat" type="xsd:float"/>
        <part name="float" type="xsd:float"/>
    </message>

    <message name="outputFloat">
        <part name="outFloat" type="xsd:float"/>
        <part name="float" type="xsd:float"/>
    </message>

    <message name="inputDouble">
        <part name="inDouble" type="xsd:double"/>
        <part name="double" type="xsd:double"/>
    </message>

    <message name="outputDouble">
        <part name="outDouble" type="xsd:double"/>
        <part name="double" type="xsd:double"/>
    </message>

    <message name="inputString">
        <part name="inString" type="xsd:string"/>
        <part name="string" type="xsd:string"/>
    </message>

    <message name="outputString">
        <part name="outString" type="xsd:string"/>
        <part name="string" type="xsd:string"/>
    </message>

    <message name="inputInteger">
        <part name="inInteger" type="xsd:integer"/>
        <part name="integer" type="xsd:integer"/>
    </message>

    <message name="outputInteger">
        <part name="outInteger" type="xsd:integer"/>
        <part name="integer" type="xsd:integer"/>
    </message>

    <message name="inputDecimal">
        <part name="inDecimal" type="xsd:decimal"/>
        <part name="decimal" type="xsd:decimal"/>
    </message>

    <message name="outputDecimal">
        <part name="outDecimal" type="xsd:decimal"/>
        <part name="decimal" type="xsd:decimal"/>
    </message>

    <message name="inputDateTime">
        <part name="inDateTime" type="xsd:dateTime"/>
        <part name="dateTime" type="xsd:dateTime"/>
    </message>

    <message name="outputDateTime">
        <part name="outDateTime" type="xsd:dateTime"/>
        <part name="dateTime" type="xsd:dateTime"/>
    </message>

    <message name="inputBase64Binary">
        <part name="inBase64Binary" type="xsd:base64Binary"/>
        <part name="base64Binary" type="xsd:base64Binary"/>
    </message>

    <message name="outputBase64Binary">
        <part name="outBase64Binary" type="xsd:base64Binary"/>
        <part name="base64Binary" type="xsd:base64Binary"/>
    </message>

    <message name="inputQName">
        <part name="inQName" type="xsd:QName"/>
        <part name="qName" type="xsd:QName"/>
    </message>

    <message name="outputQName">
        <part name="outQName" type="xsd:QName"/>
        <part name="qName" type="xsd:QName"/>
    </message>

    <message name="inputHexBinary">
        <part name="inHexBinary" type="xsd:hexBinary"/>
        <part name="hexBinary" type="xsd:hexBinary"/>
    </message>

    <message name="outputHexBinary">
        <part name="outHexBinary" type="xsd:hexBinary"/>
        <part name="hexBinary" type="xsd:hexBinary"/>
    </message>

    <message name="inputTime">
        <part name="inTime" type="xsd:time"/>
        <part name="time" type="xsd:time"/>
    </message>

    <message name="outputTime">
        <part name="outTime" type="xsd:time"/>
        <part name="time" type="xsd:time"/>
    </message>

    <message name="inputUnsignedLong">
        <part name="inUnsignedLong" type="xsd:unsignedLong"/>
        <part name="unsignedLong" type="xsd:unsignedLong"/>
    </message>

    <message name="outputUnsignedLong">
        <part name="outUnsignedLong" type="xsd:unsignedLong"/>
        <part name="unsignedLong" type="xsd:unsignedLong"/>
    </message>

    <message name="inputUnsignedInt">
        <part name="inUnsignedInt" type="xsd:unsignedInt"/>
        <part name="unsignedInt" type="xsd:unsignedInt"/>
    </message>

    <message name="outputUnsignedInt">
        <part name="outUnsignedInt" type="xsd:unsignedInt"/>
        <part name="unsignedInt" type="xsd:unsignedInt"/>
    </message>

    <message name="inputUnsignedShort">
        <part name="inUnsignedShort" type="xsd:unsignedShort"/>
        <part name="unsignedShort" type="xsd:unsignedShort"/>
    </message>

    <message name="outputUnsignedShort">
        <part name="outUnsignedShort" type="xsd:unsignedShort"/>
        <part name="unsignedShort" type="xsd:unsignedShort"/>
    </message>

    <message name="inputUnsignedByte">
        <part name="inUnsignedByte" type="xsd:unsignedByte"/>
        <part name="unsignedByte" type="xsd:unsignedByte"/>
    </message>

    <message name="outputUnsignedByte">
        <part name="outUnsignedByte" type="xsd:unsignedByte"/>
        <part name="unsignedByte" type="xsd:unsignedByte"/>
    </message>

    <message name="inputNonNegativeInteger">
        <part name="inNonNegativeInteger"
            type="xsd:nonNegativeInteger"/>
        <part name="NonNegativeInteger" type="xsd:nonNegativeInteger"/>
    </message>

    <message name="outputNonNegativeInteger">
        <part name="outNonNegativeInteger"
            type="xsd:nonNegativeInteger"/>
        <part name="NonNegativeInteger" type="xsd:nonNegativeInteger"/>
    </message>

    <message name="inputPositiveInteger">
        <part name="inPositiveInteger" type="xsd:positiveInteger"/>
        <part name="PositiveInteger" type="xsd:positiveInteger"/>
    </message>

    <message name="outputPositiveInteger">
        <part name="outPositiveInteger" type="xsd:positiveInteger"/>
        <part name="PositiveInteger" type="xsd:positiveInteger"/>
    </message>

    <message name="inputNonPositiveInteger">
        <part name="inNonPositiveInteger"
            type="xsd:nonPositiveInteger"/>
        <part name="NonPositiveInteger" type="xsd:nonPositiveInteger"/>
    </message>

    <message name="outputNonPositiveInteger">
        <part name="outNonPositiveInteger"
            type="xsd:nonPositiveInteger"/>
        <part name="NonPositiveInteger" type="xsd:nonPositiveInteger"/>
    </message>

    <message name="inputNegativeInteger">
        <part name="inNegativeInteger" type="xsd:negativeInteger"/>
        <part name="NegativeInteger" type="xsd:negativeInteger"/>
    </message>

    <message name="outputNegativeInteger">
        <part name="outNegativeInteger" type="xsd:negativeInteger"/>
        <part name="NegativeInteger" type="xsd:negativeInteger"/>
    </message>

    <message name="inputAnyURI">
        <part name="inAnyURI" type="xsd:anyURI"/>
        <part name="anyURI" type="xsd:anyURI"/>
    </message>

    <message name="outputAnyURI">
        <part name="outAnyURI" type="xsd:anyURI"/>
        <part name="anyURI" type="xsd:anyURI"/>
    </message>

    <message name="inputSimpleAnyURI">
        <part name="inAnyURI" type="typens2:SimpleAnyURIType"/>
        <part name="anyURI" type="typens2:SimpleAnyURIType"/>
    </message>

    <message name="outputSimpleAnyURI">
        <part name="outAnyURI" type="typens2:SimpleAnyURIType"/>
        <part name="anyURI" type="typens2:SimpleAnyURIType"/>
    </message>

    <message name="inputYear">
        <part name="inYear" type="xsd:gYear"/>
        <part name="Year" type="xsd:gYear"/>
    </message>

    <message name="outputYear">
        <part name="outYear" type="xsd:gYear"/>
        <part name="Year" type="xsd:gYear"/>
    </message>

    <message name="inputMonth">
        <part name="inMonth" type="xsd:gMonth"/>
        <part name="Month" type="xsd:gMonth"/>
    </message>

    <message name="outputMonth">
        <part name="outMonth" type="xsd:gMonth"/>
        <part name="Month" type="xsd:gMonth"/>
    </message>

    <message name="inputDay">
        <part name="inDay" type="xsd:gDay"/>
        <part name="Day" type="xsd:gDay"/>
    </message>

    <message name="outputDay">
        <part name="outDay" type="xsd:gDay"/>
        <part name="Day" type="xsd:gDay"/>
    </message>

    <message name="inputYearMonth">
        <part name="inYearMonth" type="xsd:gYearMonth"/>
        <part name="YearMonth" type="xsd:gYearMonth"/>
    </message>

    <message name="outputYearMonth">
        <part name="outYearMonth" type="xsd:gYearMonth"/>
        <part name="YearMonth" type="xsd:gYearMonth"/>
    </message>

    <message name="inputMonthDay">
        <part name="inMonthDay" type="xsd:gMonthDay"/>
        <part name="MonthDay" type="xsd:gMonthDay"/>
    </message>

    <message name="outputMonthDay">
        <part name="outMonthDay" type="xsd:gMonthDay"/>
        <part name="MonthDay" type="xsd:gMonthDay"/>
    </message>

    <message name="inputSoapString">
        <part name="inSoapString" type="soapenc:string"/>
        <part name="soapencString" type="soapenc:string"/>
    </message>

    <message name="outputSoapString">
        <part name="outSoapString" type="soapenc:string"/>
        <part name="soapencString" type="soapenc:string"/>
    </message>

    <message name="inputSoapBoolean">
        <part name="inSoapBoolean" type="soapenc:boolean"/>
        <part name="soapencBoolean" type="soapenc:boolean"/>
    </message>

    <message name="outputSoapBoolean">
        <part name="outSoapBoolean" type="soapenc:boolean"/>
        <part name="soapencBoolean" type="soapenc:boolean"/>
    </message>

    <message name="inputSoapFloat">
        <part name="inSoapFloat" type="soapenc:float"/>
        <part name="soapencFloat" type="soapenc:float"/>
    </message>

    <message name="outputSoapFloat">
        <part name="outSoapFloat" type="soapenc:float"/>
        <part name="soapencFloat" type="soapenc:float"/>
    </message>

    <message name="inputSoapDouble">
        <part name="inSoapDouble" type="soapenc:double"/>
        <part name="soapencDouble" type="soapenc:double"/>
    </message>

    <message name="outputSoapDouble">
        <part name="outSoapDouble" type="soapenc:double"/>
        <part name="soapencDouble" type="soapenc:double"/>
    </message>

    <message name="inputSoapDecimal">
        <part name="inSoapDecimal" type="soapenc:decimal"/>
        <part name="soapencDecimal" type="soapenc:decimal"/>
    </message>

    <message name="outputSoapDecimal">
        <part name="outSoapDecimal" type="soapenc:decimal"/>
        <part name="soapencDecimal" type="soapenc:decimal"/>
    </message>

    <message name="inputSoapInt">
        <part name="inSoapInt" type="soapenc:int"/>
        <part name="soapencInt" type="soapenc:int"/>
    </message>

    <message name="outputSoapInt">
        <part name="outSoapInt" type="soapenc:int"/>
        <part name="soapencInt" type="soapenc:int"/>
    </message>

    <message name="inputSoapShort">
        <part name="inSoapShort" type="soapenc:short"/>
        <part name="soapencShort" type="soapenc:short"/>
    </message>

    <message name="outputSoapShort">
        <part name="outSoapShort" type="soapenc:short"/>
        <part name="soapencShort" type="soapenc:short"/>
    </message>

    <message name="inputSoapBase64">
        <part name="inSoapBase64" type="soapenc:base64"/>
        <part name="soapencBase64" type="soapenc:base64"/>
    </message>

    <message name="outputSoapBase64">
        <part name="outSoapBase64" type="soapenc:base64"/>
        <part name="soapencBase64" type="soapenc:base64"/>
    </message>

    <message name="enum">
        <part name="enum" type="typens:enum"/>
    </message>

    <message name="enumInt">
        <part name="enumInt" type="typens:enumInt"/>
    </message>

    <message name="array">
        <part name="array" type="typens:array"/>
    </message>

    <message name="arrayM">
        <part name="arrayM" type="typens:arrayM"/>
    </message>

    <message name="complexAll">
        <part name="complexAll" type="typens:complexAll"/>
    </message>

    <message name="complexSequence">
        <part name="complexSequence" type="typens:complexSequence"/>
    </message>

    <message name="complexWComplex">
        <part name="complexWComplex" type="typens:complexWComplex"/>
    </message>

    <message name="any">
        <part name="any" type="xsd:anyType"/>
    </message>

    <message name="animal">
        <part name="animal" type="typens:Animal"/>
    </message>

    <message name="cat">
        <part name="cat" type="typens:Cat"/>
    </message>

    <message name="emptyFault">
        <part name="theFault" type="typens:emptyFault"/>
    </message>

    <message name="faultWithElement">
        <part name="fault2" element="typens:faultElement"/>
    </message>

    <message name="emptyComplexType">
        <part name="emptyComplexType" type="typens:emptyComplexType"/>
    </message>


    <portType name="TypeTest">
        <operation name="allPrimitivesIn">
            <input message="tns:allPrimitives"/>
            <output message="tns:empty"/>
        </operation>
        <operation name="allPrimitivesInout">
            <input message="tns:allPrimitives"/>
            <output message="tns:allPrimitives"/>
        </operation>
        <operation name="allPrimitivesOut">
            <input message="tns:empty"/>
            <output message="tns:allPrimitives"/>
        </operation>
        <operation name="enumIn">
            <input message="tns:enum"/>
            <output message="tns:empty"/>
        </operation>
        <operation name="enumInout">
            <input message="tns:enum"/>
            <output message="tns:enum"/>
        </operation>
        <operation name="enumOut" parameterOrder="enum">
            <input message="tns:empty"/>
            <output message="tns:enum"/>
        </operation>
        <operation name="enumReturn">
            <input message="tns:empty"/>
            <output message="tns:enum"/>
        </operation>
        <operation name="enumIntIn">
            <input message="tns:enumInt"/>
            <output message="tns:empty"/>
        </operation>
        <operation name="enumIntInout">
            <input message="tns:enumInt"/>
            <output message="tns:enumInt"/>
        </operation>
        <operation name="enumIntOut" parameterOrder="enumInt">
            <input message="tns:empty"/>
            <output message="tns:enumInt"/>
        </operation>
        <operation name="enumIntReturn">
            <input message="tns:empty"/>
            <output message="tns:enumInt"/>
        </operation>
        <operation name="arrayIn">
            <input message="tns:array"/>
            <output message="tns:empty"/>
        </operation>
        <operation name="arrayInout">
            <input message="tns:array"/>
            <output message="tns:array"/>
        </operation>
        <operation name="arrayOut" parameterOrder="array">
            <input message="tns:empty"/>
            <output message="tns:array"/>
        </operation>
        <operation name="arrayReturn">
            <input message="tns:empty"/>
            <output message="tns:array"/>
        </operation>

        <operation name="arrayMIn">
            <input message="tns:arrayM"/>
            <output message="tns:empty"/>
        </operation>
        <operation name="arrayMInout">
            <input message="tns:arrayM"/>
            <output message="tns:arrayM"/>
        </operation>
        <operation name="arrayMOut" parameterOrder="arrayM">
            <input message="tns:empty"/>
            <output message="tns:arrayM"/>
        </operation>
        <operation name="arrayMReturn">
            <input message="tns:empty"/>
            <output message="tns:arrayM"/>
        </operation>

        <operation name="complexAllIn">
            <input message="tns:complexAll"/>
            <output message="tns:empty"/>
        </operation>
        <operation name="complexAllInout">
            <input message="tns:complexAll"/>
            <output message="tns:complexAll"/>
        </operation>
        <operation name="complexAllOut" parameterOrder="complexAll">
            <input message="tns:empty"/>
            <output message="tns:complexAll"/>
        </operation>
        <operation name="complexAllReturn">
            <input message="tns:empty"/>
            <output message="tns:complexAll"/>
        </operation>
        <operation name="complexSequenceIn">
            <input message="tns:complexSequence"/>
            <output message="tns:empty"/>
        </operation>
        <operation name="complexSequenceInout">
            <input message="tns:complexSequence"/>
            <output message="tns:complexSequence"/>
        </operation>
        <operation name="complexSequenceOut"
            parameterOrder="complexSequence">
            <input message="tns:empty"/>
            <output message="tns:complexSequence"/>
        </operation>
        <operation name="complexSequenceReturn">
            <input message="tns:empty"/>
            <output message="tns:complexSequence"/>
        </operation>
        <operation name="complexWComplexIn">
            <input message="tns:complexWComplex"/>
            <output message="tns:empty"/>
        </operation>
        <operation name="complexWComplexInout">
            <input message="tns:complexWComplex"/>
            <output message="tns:complexWComplex"/>
        </operation>
        <operation name="complexWComplexOut"
            parameterOrder="complexWComplex">
            <input message="tns:empty"/>
            <output message="tns:complexWComplex"/>
        </operation>
        <operation name="complexWComplexReturn">
            <input message="tns:empty"/>
            <output message="tns:complexWComplex"/>
        </operation>
        <operation name="emptyComplexTypeIn"
            parameterOrder="emptyComplexType">
            <input message="tns:emptyComplexType"/>
            <output message="tns:empty"/>
            <fault name="emptyFault" message="tns:emptyFault"/>
        </operation>
        <operation name="emptyComplexTypeInout"
            parameterOrder="emptyComplexType">
            <input message="tns:emptyComplexType"/>
            <output message="tns:emptyComplexType"/>
            <fault name="emptyFault" message="tns:emptyFault"/>
        </operation>
        <operation name="emptyComplexTypeOut"
            parameterOrder="emptyComplexType">
            <input message="tns:empty"/>
            <output message="tns:emptyComplexType"/>
            <fault name="emptyFault" message="tns:emptyFault"/>
        </operation>
        <operation name="emptyComplexTypeReturn">
            <input message="tns:empty"/>
            <output message="tns:emptyComplexType"/>
            <fault name="emptyFault" message="tns:emptyFault"/>
        </operation>
        <operation name="anyIn">
            <input message="tns:any"/>
            <output message="tns:empty"/>
        </operation>
        <operation name="anyInout">
            <input message="tns:any"/>
            <output message="tns:any"/>
        </operation>
        <operation name="anyOut" parameterOrder="any">
            <input message="tns:empty"/>
            <output message="tns:any"/>
        </operation>
        <operation name="anyReturn">
            <input message="tns:empty"/>
            <output message="tns:any"/>
        </operation>
        <operation name="animalIn">
            <input message="tns:animal"/>
            <output message="tns:empty"/>
        </operation>
        <operation name="animalInout">
            <input message="tns:animal"/>
            <output message="tns:animal"/>
        </operation>
        <operation name="animalOut" parameterOrder="animal">
            <input message="tns:empty"/>
            <output message="tns:animal"/>
        </operation>
        <operation name="animalReturn">
            <input message="tns:empty"/>
            <output message="tns:animal"/>
        </operation>
        <operation name="catIn">
            <input message="tns:cat"/>
            <output message="tns:empty"/>
        </operation>
        <operation name="catInout">
            <input message="tns:cat"/>
            <output message="tns:cat"/>
        </operation>
        <operation name="catOut" parameterOrder="cat">
            <input message="tns:empty"/>
            <output message="tns:cat"/>
        </operation>
        <operation name="catReturn">
            <input message="tns:empty"/>
            <output message="tns:cat"/>
        </operation>
        <operation name="methodBoolean">
            <input message="tns:inputBoolean"/>
            <output message="tns:outputBoolean"/>
        </operation>
        <operation name="methodByte">
            <input message="tns:inputByte"/>
            <output message="tns:outputByte"/>
        </operation>
        <operation name="methodShort">
            <input message="tns:inputShort"/>
            <output message="tns:outputShort"/>
        </operation>
        <operation name="methodInt">
            <input message="tns:inputInt"/>
            <output message="tns:outputInt"/>
        </operation>
        <operation name="methodLong">
            <input message="tns:inputLong"/>
            <output message="tns:outputLong"/>
        </operation>
        <operation name="methodFloat">
            <input message="tns:inputFloat"/>
            <output message="tns:outputFloat"/>
        </operation>
        <operation name="methodDouble">
            <input message="tns:inputDouble"/>
            <output message="tns:outputDouble"/>
        </operation>
        <operation name="methodString">
            <input message="tns:inputString"/>
            <output message="tns:outputString"/>
        </operation>
        <operation name="methodInteger">
            <input message="tns:inputInteger"/>
            <output message="tns:outputInteger"/>
        </operation>
        <operation name="methodDecimal">
            <input message="tns:inputDecimal"/>
            <output message="tns:outputDecimal"/>
        </operation>
        <operation name="methodDateTime">
            <input message="tns:inputDateTime"/>
            <output message="tns:outputDateTime"/>
        </operation>
        <operation name="methodQName">
            <input message="tns:inputQName"/>
            <output message="tns:outputQName"/>
        </operation>
        <operation name="methodTime">
            <input message="tns:inputTime"/>
            <output message="tns:outputTime"/>
        </operation>
        <operation name="methodUnsignedLong">
            <input message="tns:inputUnsignedLong"/>
            <output message="tns:outputUnsignedLong"/>
        </operation>
        <operation name="methodUnsignedInt">
            <input message="tns:inputUnsignedInt"/>
            <output message="tns:outputUnsignedInt"/>
        </operation>
        <operation name="methodUnsignedShort">
            <input message="tns:inputUnsignedShort"/>
            <output message="tns:outputUnsignedShort"/>
        </operation>
        <operation name="methodUnsignedByte">
            <input message="tns:inputUnsignedByte"/>
            <output message="tns:outputUnsignedByte"/>
        </operation>
        <operation name="methodNonNegativeInteger">
            <input message="tns:inputNonNegativeInteger"/>
            <output message="tns:outputNonNegativeInteger"/>
        </operation>
        <operation name="methodPositiveInteger">
            <input message="tns:inputPositiveInteger"/>
            <output message="tns:outputPositiveInteger"/>
        </operation>
        <operation name="methodNonPositiveInteger">
            <input message="tns:inputNonPositiveInteger"/>
            <output message="tns:outputNonPositiveInteger"/>
        </operation>
        <operation name="methodNegativeInteger">
            <input message="tns:inputNegativeInteger"/>
            <output message="tns:outputNegativeInteger"/>
        </operation>
        <operation name="methodAnyURI">
            <input message="tns:inputAnyURI"/>
            <output message="tns:outputAnyURI"/>
        </operation>
        <operation name="methodSimpleAnyURI">
            <input message="tns:inputSimpleAnyURI"/>
            <output message="tns:outputSimpleAnyURI"/>
        </operation>
        <operation name="methodYear">
            <input message="tns:inputYear"/>
            <output message="tns:outputYear"/>
        </operation>
        <operation name="methodMonth">
            <input message="tns:inputMonth"/>
            <output message="tns:outputMonth"/>
        </operation>
        <operation name="methodDay">
            <input message="tns:inputDay"/>
            <output message="tns:outputDay"/>
        </operation>
        <operation name="methodYearMonth">
            <input message="tns:inputYearMonth"/>
            <output message="tns:outputYearMonth"/>
        </operation>
        <operation name="methodMonthDay">
            <input message="tns:inputMonthDay"/>
            <output message="tns:outputMonthDay"/>
        </operation>
        <operation name="methodSoapString">
            <input message="tns:inputSoapString"/>
            <output message="tns:outputSoapString"/>
        </operation>
        <operation name="methodSoapBoolean">
            <input message="tns:inputSoapBoolean"/>
            <output message="tns:outputSoapBoolean"/>
        </operation>
        <operation name="methodSoapFloat">
            <input message="tns:inputSoapFloat"/>
            <output message="tns:outputSoapFloat"/>
        </operation>
        <operation name="methodSoapDouble">
            <input message="tns:inputSoapDouble"/>
            <output message="tns:outputSoapDouble"/>
        </operation>
        <operation name="methodSoapDecimal">
            <input message="tns:inputSoapDecimal"/>
            <output message="tns:outputSoapDecimal"/>
        </operation>
        <operation name="methodSoapInt">
            <input message="tns:inputSoapInt"/>
            <output message="tns:outputSoapInt"/>
        </operation>
        <operation name="methodSoapShort">
            <input message="tns:inputSoapShort"/>
            <output message="tns:outputSoapShort"/>
        </operation>
    </portType>


    <binding name="TypeTestBinding" type="tns:TypeTest">
        <soap:binding
            style="rpc"
            transport="http://schemas.xmlsoap.org/soap/http"/>
        <operation name="allPrimitivesIn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="allPrimitivesInout">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="allPrimitivesOut">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="enumIn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="enumInout">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="enumOut">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="enumReturn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="enumIntIn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="enumIntInout">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="enumIntOut">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="enumIntReturn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="arrayIn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="arrayInout">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="arrayOut">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="arrayReturn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>

        <operation name="arrayMIn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="arrayMInout">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="arrayMOut">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="arrayMReturn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>

        <operation name="complexAllIn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="complexAllInout">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="complexAllOut">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="complexAllReturn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="complexSequenceIn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="complexSequenceInout">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="complexSequenceOut">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="complexSequenceReturn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="complexWComplexIn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="complexWComplexInout">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="complexWComplexOut">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="complexWComplexReturn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="emptyComplexTypeIn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
            <fault name="emptyFault">
                <soap:fault name="emptyFault" use="encoded"/>
            </fault>
        </operation>
        <operation name="emptyComplexTypeInout">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
            <fault name="emptyFault">
                <soap:fault name="emptyFault" use="encoded"/>
            </fault>
        </operation>
        <operation name="emptyComplexTypeOut">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
            <fault name="emptyFault">
                <soap:fault name="emptyFault" use="encoded"/>
            </fault>
        </operation>
        <operation name="emptyComplexTypeReturn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
            <fault name="emptyFault">
                <soap:fault name="emptyFault" use="encoded"/>
            </fault>
        </operation>
        <operation name="anyIn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="anyInout">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="anyOut">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="anyReturn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="animalIn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="animalInout">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="animalOut">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="animalReturn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="catIn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="catInout">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="catOut">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="catReturn">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodBoolean">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodByte">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodShort">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodInt">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodLong">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodFloat">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodDouble">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodString">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodInteger">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodDecimal">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodDateTime">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodQName">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodTime">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodUnsignedLong">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodUnsignedInt">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodUnsignedShort">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodUnsignedByte">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodNonNegativeInteger">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodPositiveInteger">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodNonPositiveInteger">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodNegativeInteger">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>

        <operation name="methodAnyURI">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodSimpleAnyURI">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodYear">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodMonth">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodDay">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodYearMonth">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodMonthDay">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodSoapString">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodSoapBoolean">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodSoapFloat">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodSoapDouble">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodSoapDecimal">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodSoapInt">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
        <operation name="methodSoapShort">
            <soap:operation soapAction=""/>
            <input>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </input>
            <output>
                <soap:body
                    use="encoded"
                    namespace=""
                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </output>
        </operation>
    </binding>


    <service name="TypeTestService">
        <port name="TypeTest" binding="tns:TypeTestBinding">
            <soap:address location="http://localhost:8080/axis/services/TypeTest"/>
        </port>
    </service>

</definitions>
