<?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="LicenseUsageHistoryService" targetNamespace="urn:org.apache:ws-axis/c/test/v1_0" xmlns:impl="urn:org.apache:ws-axis/c/test/v1_0" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/">
	<types>
		<schema targetNamespace="urn:org.apache:ws-axis/c/test/v1_0" xmlns:impl="urn:org.apache:ws-axis/c/test/v1_0"  xmlns="http://www.w3.org/2001/XMLSchema" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" elementFormDefault="qualified">
			<complexType name="FourthLevelElemType">
				<sequence>
					<element name="SampleString" type="xsd:string"/>
					<element name="SampleInt" type="xsd:int"/>
				</sequence>
			</complexType>
			<complexType name="ThirdLevelElemType">
				<sequence>
					<element name="FourthLevelElem" type="impl:FourthLevelElemType" maxOccurs="unbounded"/>
				</sequence>
			</complexType>
			<complexType name="SecondLevelElemType">
				<sequence>
					<element name="ThirdLevelElem" type="impl:ThirdLevelElemType" maxOccurs="unbounded"/>
				</sequence>
			</complexType>
			<complexType name="FirstLevelElemType">
				<sequence>
					<element name="SecondLevelElem" type="impl:SecondLevelElemType" maxOccurs="unbounded"/>
				</sequence>
			</complexType>
			<element name="FirstLevelElem" type="impl:FirstLevelElemType"/>
		</schema>
	</types>
	<message name="TestDocRequest">
		<part element="impl:FirstLevelElem" name="inputPart"/>
	</message>
	<message name="TestDocResponse">
		<part element="impl:FirstLevelElem" name="outputPart"/>
	</message>
	<portType name="FourLevelTestDocInterface">
		<operation name="RetrieveTestDoc">
			<input message="impl:TestDocRequest" name="TestDocRequest"/>
			<output message="impl:TestDocResponse" name="TestDocResponse"/>
		</operation>
	</portType>
	<binding name="FourLevelTestDocBinding" type="impl:FourLevelTestDocInterface">
		<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
		<operation name="RetrieveTestDoc">
			<soap:operation soapAction="FourLevelTestDocService#RetrieveTestDoc" style="document"/>
			<input name="TestDocRequest">
				<soap:body namespace="urn:org.apache:ws-axis/c/test/v1_0" use="literal"/>
			</input>
			<output name="TestDocResponse">
				<soap:body namespace="urn:org.apache:ws-axis/c/test/v1_0" use="literal"/>
			</output>
		</operation>
	</binding>
	<service name="FourLevelTestDocService">
		<port binding="impl:FourLevelTestDocBinding" name="FourLevelTestDoc">
			<soap:address location="http://localhost:80/axis/FourLevelTestDoc"/>
		</port>
	</service>
</definitions>
