<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright 2003-2004 The Apache Software Foundation.                      -->
<!-- (c) Copyright IBM Corp. 2004, 2005 All Rights Reserved                   -->
<!--                                                                          -->
<!-- Licensed 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="Service"
             targetNamespace="http://complextype.test.apache.org"
             xmlns:tns="http://complextype.test.apache.org"
             xmlns="http://schemas.xmlsoap.org/wsdl/"
             xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
             xmlns:xsd="http://www.w3.org/2001/XMLSchema">
	<types>
		<xsd:schema elementFormDefault="qualified" 
		            targetNamespace="http://complextype.test.apache.org"
		            xmlns:tns="http://complextype.test.apache.org">
			<xsd:element name="myOperation">
  				<xsd:complexType>
					<xsd:sequence>
				    	<xsd:element name="aType" type="tns:aRecord"/>
				    </xsd:sequence>
				</xsd:complexType>
			</xsd:element>

			<xsd:complexType name="aRecord">
				<xsd:all>
					<xsd:element name="field1" type="xsd:string" nillable="true"/>
					<xsd:element name="field2" type="xsd:string" fixed="field2Value"/>
					<xsd:element name="field3" type="xsd:string" nillable="false"/>
				</xsd:all>
			</xsd:complexType>
			
			<xsd:element name="myOperationResponse">
			  <xsd:complexType>
			    <xsd:sequence>
			      <xsd:element name="result" type="xsd:boolean"/>
			    </xsd:sequence>
			  </xsd:complexType>
			</xsd:element>
		</xsd:schema>
	</types>
	<message name="request">
		<part name="parameters" element="tns:myOperation"/>
	</message>
	<message name="response">
		<part name="parameters" element="tns:myOperationResponse"/>
	</message>
	<portType name="operations">
		<operation name="myOperation">
			<input message="tns:request"/>
			<output message="tns:response"/>
		</operation>
	</portType>
	<binding name="operationsBinding" type="tns:operations">
		<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
		<operation name="myOperation">
			<soap:operation soapAction="http://complextype.test.apache.org"/>
			<input>
				<soap:body use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
	</binding>
	<service name="TestServices">
		<port name="Service" binding="tns:operationsBinding">
			<soap:address location="http://localhost:9080/ComplexTypeAll/services/Service"/>
		</port>
	</service>
</definitions>
