The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
	xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
	xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="urn:HelloWorld"
	xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
	xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/"
	xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
	targetNamespace="urn:HelloWorld"
	xmlns="http://schemas.xmlsoap.org/wsdl/">
	<types>
		<s:schema elementFormDefault="qualified"
			targetNamespace="urn:HelloWorld">
			<s:element name="sayHello">
				<s:complexType>
					<s:sequence>
						<s:element minOccurs="0" maxOccurs="1"
							name="name" type="s:string" />
						<s:element minOccurs="0" maxOccurs="1"
							name="givenName" type="s:string" nillable="1" />
					</s:sequence>
				</s:complexType>
			</s:element>

			<s:element name="sayHelloResponse">
				<s:complexType>
					<s:sequence>
						<s:element minOccurs="0" maxOccurs="1"
							name="sayHelloResult" type="s:string" />
					</s:sequence>
				</s:complexType>
			</s:element>

			<s:complexType name="test2">
				<s:sequence>
					<s:element minOccurs="0" maxOccurs="1" name="name"
						type="s:string" />

					<s:element minOccurs="0" maxOccurs="1"
						name="givenName" type="s:string" />
				</s:sequence>
			</s:complexType>

			<s:complexType name="testExtended">
                <s:complexContent>
				<s:extension base="s0:test2">
					<s:sequence>
						<s:element minOccurs="0" maxOccurs="1"
							name="extend" type="s:string" />
					</s:sequence>
				</s:extension>
                </s:complexContent>
			</s:complexType>
		</s:schema>
	</types>

	<message name="sayHelloSoapIn">
		<part name="parameters" element="s0:sayHello" />
	</message>

	<message name="sayHelloSoapOut">
		<part name="parameters" element="s0:sayHelloResponse" />
	</message>

	<portType name="Service1Soap">
		<operation name="sayHello">
			<input message="s0:sayHelloSoapIn" />

			<output message="s0:sayHelloSoapOut" />
		</operation>
	</portType>

	<binding name="Service1Soap" type="s0:Service1Soap">
		<soap:binding transport="http://schemas.xmlsoap.org/soap/http"
			style="document" />

		<operation name="sayHello">
			<soap:operation soapAction="urn:HelloWorld#sayHello"
				style="document" />

			<input>
				<soap:body use="literal" />
			</input>

			<output>
				<soap:body use="literal" />
			</output>
		</operation>
	</binding>

	<service name="Service1">
		<port name="Service1Soap" binding="s0:Service1Soap">
			<soap:address
				location="http://localhost:81/soap-wsdl-test/helloworld.pl" />
		</port>
	</service>
</definitions>