The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
<definitions name="simpleType"
        targetNamespace="urn:myNamespace"
        xmlns="http://schemas.xmlsoap.org/wsdl/"
        xmlns:tns="urn:myNamespace"
        xmlns:xsd="http://www.w3.org/2001/XMLSchema"
        xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
        xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>
        <types>
                <xsd:schema
                xmlns="urn:myNamespace"
                targetNamespace="urn:myNamespace"
                elementFormDefault="qualified" attributeFormDefault="qualified">
          <xsd:simpleType name="testSimpleType1">
			<xsd:restriction base="xsd:int">
				<xsd:enumeration value="1"/>
				<xsd:enumeration value="2"/>
				<xsd:enumeration value="3"/>
			</xsd:restriction>
		</xsd:simpleType>

		<xsd:simpleType name="testSimpleList">
			<xsd:annotation>
				<xsd:documentation>
				SimpleType Test
				</xsd:documentation>
			</xsd:annotation>
			<xsd:list itemType="xsd:int">
			</xsd:list>
		</xsd:simpleType>
		<xsd:simpleType name="testSimpleUnion">
			<xsd:annotation>
				<xsd:documentation>
				SimpleType Union test
				</xsd:documentation>
			</xsd:annotation>
			<xsd:union memberTypes="xsd:int xsd:float">
			</xsd:union>
		</xsd:simpleType>
                <xsd:complexType name="length3">
                         <xsd:all>
                                  <xsd:element name="size" type="xsd:nonPositiveInteger"/>
                                  <xsd:element name="unit" type="xsd:NMTOKEN"/>
                         </xsd:all>
                </xsd:complexType>

                <xsd:complexType name="complex">
                        <xsd:sequence>
                                  <xsd:element name="length" type="tns:length3"/>
                                  <xsd:element name="int" type="xsd:int"/>
                         </xsd:sequence>
                </xsd:complexType>

                <xsd:complexType name="mixed" mixed="true">
                        <xsd:sequence>
                                  <xsd:element name="length" type="tns:length3"/>
                                  <xsd:element name="int" type="xsd:int"/>
                         </xsd:sequence>
                </xsd:complexType>


                <xsd:element name="TestElement" type="xsd:int"/>
                <xsd:element name="TestElementComplexType" type="tns:length3"/>
                <xsd:simpleType name="testSimpleType2">
                        <xsd:restriction base="xsd:int">
                                <xsd:enumeration value="1"/>
                                <xsd:enumeration value="2"/>
                                <xsd:enumeration value="3"/>
                        </xsd:restriction>
                </xsd:simpleType>

                <xsd:simpleType name="testSimpleList2">
                        <xsd:annotation>
                                <xsd:documentation>
                                SimpleType Test
                                </xsd:documentation>
                        </xsd:annotation>
                        <xsd:list itemType="xsd:int">
                        </xsd:list>
                </xsd:simpleType>
                <xsd:simpleType name="testSimpleUnion2">
                        <xsd:annotation>
                                <xsd:documentation>
                                SimpleType Union test
                                </xsd:documentation>
                        </xsd:annotation>
                        <xsd:union memberTypes="xsd:int xsd:float">
                        </xsd:union>
                </xsd:simpleType>
                </xsd:schema>
        </types>
        <message name="testRequest">
                <part name="test" type="tns:complex"/>
        </message>
        <message name="testResponse">
                <part name="test" type="tns:testSimpleType1"/>
        </message>
        <message name="testRequest2">
                <part name="test" type="tns:testSimpleType1"/>
        </message>
        <message name="testResponse2">
                <part name="test" type="tns:testSimpleType1"/>
        </message>
        <portType name="testPort">
                <operation name="test.name">
                        <documentation>
                                Test-Methode
                        </documentation>

                        <input message="tns:testRequest"/>
                        <output message="tns:testResponse"/>
                </operation>
                <operation name="test2">
                        <documentation>
                                Test-Methode
                        </documentation>

                        <input message="tns:testRequest2"/>
                        <output message="tns:testResponse2"/>
                </operation>
        </portType>
        <binding type="tns:testPort" name="testBinding">
        	<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
	        <operation name="test.name">
                <soap:operation soapAction="test"/>
                <input>
                    <soap:body use="literal"/>
                </input>
                <output>
                    <soap:body use="literal"/>
                </output>
        </operation>
        </binding>
        <service name="testService">
                <port name="testPort" binding="tns:testBinding">
                        <soap:address location="http://127.0.0.1/testPort" />
                </port>
        </service>
</definitions>