1<?xml version="1.0" encoding="UTF-8"?>
2<definitions
3	xmlns="http://schemas.xmlsoap.org/wsdl/"
4	xmlns:tns="http://soapinterop.org/wsdl"
5	xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
6	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
7	xmlns:ns2="http://soapinterop.org/types"
8	targetNamespace="http://soapinterop.org/wsdl">
9	<types>
10		<schema elementFormDefault="qualified"
11			xmlns="http://www.w3.org/2001/XMLSchema"
12			xmlns:tns="http://soapinterop.org/types"
13			xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
14			xmlns:soap-enc="http://schemas.xmlsoap.org/soap/encoding/"
15			xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
16			targetNamespace="http://soapinterop.org/types">
17
18			<import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
19
20			<complexType name="EmptyFault"/>
21
22			<complexType name="ArrayOfString">
23				<complexContent>
24					<restriction base="soap-enc:Array">
25						<attribute ref="soap-enc:arrayType" wsdl:arrayType="string[]"/>
26					</restriction>
27				</complexContent>
28			</complexType>
29
30			<complexType name="ArrayOfInt">
31				<complexContent>
32					<restriction base="soap-enc:Array">
33						<attribute ref="soap-enc:arrayType" wsdl:arrayType="int[]"/>
34					</restriction>
35				</complexContent>
36			</complexType>
37
38			<complexType name="ArrayOfFloat">
39				<complexContent>
40					<restriction base="soap-enc:Array">
41						<attribute ref="soap-enc:arrayType" wsdl:arrayType="float[]"/>
42					</restriction>
43				</complexContent>
44			</complexType>
45
46			<simpleType name="Enum">
47				<restriction base="int">
48					<enumeration value="1"/>
49					<enumeration value="2"/>
50				</restriction>
51			</simpleType>
52		</schema>
53	</types>
54
55	<message name="echoFaultRequest"/>
56	<message name="echoFaultResponse"/>
57	<message name="echoStringFaultRequest">
58		<part name="param" type="xsd:string"/>
59	</message>
60	<message name="echoIntArrayFaultRequest">
61		<part name="param" type="ns2:ArrayOfInt"/>
62	</message>
63	<message name="echoMultipleFaults1Request">
64		<part name="whichFault" type="xsd:int"/>
65		<part name="param1" type="xsd:string"/>
66		<part name="param2" type="ns2:ArrayOfFloat"/>
67	</message>
68	<message name="echoMultipleFaults2Request">
69		<part name="whichFault" type="xsd:int"/>
70		<part name="param1" type="xsd:string"/>
71		<part name="param2" type="xsd:float"/>
72		<part name="param3" type="ns2:ArrayOfString"/>
73	</message>
74	<message name="echoMultipleFaults3Request">
75		<part name="whichFault" type="xsd:int"/>
76		<part name="param1" type="xsd:string"/>
77		<part name="param2" type="xsd:string"/>
78	</message>
79	<message name="echoMultipleFaults4Request">
80		<part name="whichFault" type="xsd:int"/>
81		<part name="param1" type="xsd:int"/>
82		<part name="param2" type="ns2:Enum"/>
83	</message>
84
85	<!-- Fault messages -->
86	<message name="EmptyFault">
87		<part name="part1" type="ns2:EmptyFault"/>
88	</message>
89	<message name="StringFault">
90		<part name="part2" type="xsd:string"/>
91	</message>
92	<message name="IntFault">
93		<part name="part3" type="xsd:int"/>
94	</message>
95	<message name="FloatFault">
96		<part name="part4" type="xsd:float"/>
97	</message>
98	<message name="IntArrayFault">
99		<part name="part5" type="ns2:ArrayOfInt"/>
100	</message>
101	<message name="StringArrayFault">
102		<part name="part6" type="ns2:ArrayOfString"/>
103	</message>
104	<message name="FloatArrayFault">
105		<part name="part7" type="ns2:ArrayOfFloat"/>
106	</message>
107	<!--
108		Part name same as in StringFault message
109	-->
110	<message name="String2Fault">
111		<part name="part2" type="xsd:string"/>
112	</message>
113	<message name="EnumFault">
114		<part name="part9" type="ns2:Enum"/>
115	</message>
116
117	<portType name="SimpleRpcEncPortType">
118		<!--
119			Throws an empty fault
120		-->
121		<operation name="echoEmptyFault" parameterOrder="">
122			<input message="tns:echoFaultRequest"/>
123			<output message="tns:echoFaultResponse"/>
124			<fault name="SimpleFault" message="tns:EmptyFault"/>
125		</operation>
126
127		<!--
128			Throws fault with xsd:string parameter
129		-->
130		<operation name="echoStringFault" parameterOrder="param">
131			<input message="tns:echoStringFaultRequest"/>
132			<output message="tns:echoFaultResponse"/>
133			<fault name="SimpleFault" message="tns:StringFault"/>
134		</operation>
135
136		<!--
137			Throws fault with xsd:int[] parameter
138		-->
139		<operation name="echoIntArrayFault" parameterOrder="param">
140			<input message="tns:echoIntArrayFaultRequest"/>
141			<output message="tns:echoFaultResponse"/>
142			<fault name="SimpleFault" message="tns:IntArrayFault"/>
143		</operation>
144
145		<!--
146			Throws empty fault, fault with a xsd:string
147			parameter and fault with xsd:float[] parameter
148		-->
149		<operation name="echoMultipleFaults1" parameterOrder="whichFault param1 param2">
150			<input message="tns:echoMultipleFaults1Request"/>
151			<output message="tns:echoFaultResponse"/>
152			<fault name="SimpleFault1" message="tns:EmptyFault"/>
153			<fault name="SimpleFault2" message="tns:StringFault"/>
154			<fault name="SimpleFault3" message="tns:FloatArrayFault"/>
155		</operation>
156
157		<!--
158			Throws fault with xsd:string parameter, fault with
159			xsd:float parameter and fault with xsd:string[]
160			parameters
161		-->
162		<operation name="echoMultipleFaults2" parameterOrder="whichFault param1 param2 param3">
163			<input message="tns:echoMultipleFaults2Request"/>
164			<output message="tns:echoFaultResponse"/>
165			<fault name="SimpleFault1" message="tns:StringFault"/>
166			<fault name="SimpleFault2" message="tns:FloatFault"/>
167			<fault name="SimpleFault3" message="tns:StringArrayFault"/>
168		</operation>
169
170		<!--
171			Throws two faults, each with xsd:string parameters
172			and same part names. Each part name is bound to a different
173			namespace.
174		-->
175		<operation name="echoMultipleFaults3" parameterOrder="whichFault param1 param2">
176			<input message="tns:echoMultipleFaults3Request"/>
177			<output message="tns:echoFaultResponse"/>
178			<fault name="SimpleFault1" message="tns:StringFault"/>
179			<fault name="SimpleFault2" message="tns:String2Fault"/>
180		</operation>
181
182		<!--
183			Throws fault with xsd:int parameter and fault with an
184			int enumeration parameter
185		-->
186		<operation name="echoMultipleFaults4" parameterOrder="whichFault param1 param2">
187			<input message="tns:echoMultipleFaults4Request"/>
188			<output message="tns:echoFaultResponse"/>
189			<fault name="SimpleFault1" message="tns:IntFault"/>
190			<fault name="SimpleFault2" message="tns:EnumFault"/>
191		</operation>
192	</portType>
193
194	<binding name="SimpleRpcEncBinding" type="tns:SimpleRpcEncPortType">
195		<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"/>
196
197		<operation name="echoEmptyFault">
198			<input>
199				<soap:body
200					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
201					use="encoded"
202					namespace="http://soapinterop.org/wsdl"/>
203			</input>
204			<output>
205				<soap:body
206					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
207					use="encoded"
208					namespace="http://soapinterop.org/wsdl"/>
209			</output>
210			<fault name="SimpleFault">
211				<soap:fault
212					name="SimpleFault"
213					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
214					use="encoded"
215					namespace="http://soapinterop.org/wsdl"/>
216			</fault>
217			<soap:operation soapAction=""/>
218		</operation>
219
220		<operation name="echoStringFault">
221			<input>
222				<soap:body
223					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
224					use="encoded"
225					namespace="http://soapinterop.org/wsdl"/>
226			</input>
227			<output>
228				<soap:body
229					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
230					use="encoded"
231					namespace="http://soapinterop.org/wsdl"/>
232			</output>
233			<fault name="SimpleFault">
234				<soap:fault
235					name="SimpleFault"
236					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
237					use="encoded"
238					namespace="http://soapinterop.org/wsdl"/>
239			</fault>
240			<soap:operation soapAction=""/>
241		</operation>
242
243		<operation name="echoIntArrayFault">
244			<input>
245				<soap:body
246					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
247					use="encoded"
248					namespace="http://soapinterop.org/wsdl"/>
249			</input>
250			<output>
251				<soap:body
252					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
253					use="encoded"
254					namespace="http://soapinterop.org/wsdl"/>
255			</output>
256			<fault name="SimpleFault">
257				<soap:fault
258					name="SimpleFault"
259					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
260					use="encoded"
261					namespace="http://soapinterop.org/wsdl"/>
262			</fault>
263			<soap:operation soapAction=""/>
264		</operation>
265
266		<operation name="echoMultipleFaults1">
267			<input>
268				<soap:body
269					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
270					use="encoded"
271					namespace="http://soapinterop.org/wsdl"/>
272			</input>
273			<output>
274				<soap:body
275					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
276					use="encoded"
277					namespace="http://soapinterop.org/wsdl"/>
278			</output>
279			<fault name="SimpleFault1">
280				<soap:fault
281					name="SimpleFault1"
282					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
283					use="encoded"
284					namespace="http://soapinterop.org/wsdl"/>
285			</fault>
286			<fault name="SimpleFault2">
287				<soap:fault
288					name="SimpleFault2"
289					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
290					use="encoded"
291					namespace="http://soapinterop.org/wsdl"/>
292			</fault>
293			<fault name="SimpleFault3">
294				<soap:fault
295					name="SimpleFault3"
296					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
297					use="encoded"
298					namespace="http://soapinterop.org/wsdl"/>
299			</fault>
300			<soap:operation soapAction=""/>
301		</operation>
302
303		<operation name="echoMultipleFaults2">
304			<input>
305				<soap:body
306					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
307					use="encoded"
308					namespace="http://soapinterop.org/wsdl"/>
309			</input>
310			<output>
311				<soap:body
312					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
313					use="encoded"
314					namespace="http://soapinterop.org/wsdl"/>
315			</output>
316			<fault name="SimpleFault1">
317				<soap:fault
318					name="SimpleFault1"
319					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
320					use="encoded"
321					namespace="http://soapinterop.org/wsdl"/>
322			</fault>
323			<fault name="SimpleFault2">
324				<soap:fault
325					name="SimpleFault2"
326					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
327					use="encoded"
328					namespace="http://soapinterop.org/wsdl"/>
329			</fault>
330			<fault name="SimpleFault3">
331				<soap:fault
332					name="SimpleFault3"
333					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
334					use="encoded"
335					namespace="http://soapinterop.org/wsdl"/>
336			</fault>
337			<soap:operation soapAction=""/>
338		</operation>
339
340		<operation name="echoMultipleFaults3">
341			<input>
342				<soap:body
343					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
344					use="encoded"
345					namespace="http://soapinterop.org/wsdl"/>
346			</input>
347			<output>
348				<soap:body
349					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
350					use="encoded"
351					namespace="http://soapinterop.org/wsdl"/>
352			</output>
353			<fault name="SimpleFault1">
354				<soap:fault
355					name="SimpleFault1"
356					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
357					use="encoded"
358					namespace="http://soapinterop.org/wsdl/fault1"/>
359			</fault>
360			<fault name="SimpleFault2">
361				<soap:fault
362					name="SimpleFault2"
363					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
364					use="encoded"
365					namespace="http://soapinterop.org/wsdl/fault2"/>
366			</fault>
367			<soap:operation soapAction=""/>
368		</operation>
369
370		<operation name="echoMultipleFaults4">
371			<input>
372				<soap:body
373					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
374					use="encoded"
375					namespace="http://soapinterop.org/wsdl"/>
376			</input>
377			<output>
378				<soap:body
379					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
380					use="encoded"
381					namespace="http://soapinterop.org/wsdl"/>
382			</output>
383			<fault name="SimpleFault1">
384				<soap:fault
385					name="SimpleFault1"
386					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
387					use="encoded"
388					namespace="http://soapinterop.org/wsdl"/>
389			</fault>
390			<fault name="SimpleFault2">
391				<soap:fault
392					name="SimpleFault2"
393					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
394					use="encoded"
395					namespace="http://soapinterop.org/wsdl"/>
396			</fault>
397			<soap:operation soapAction=""/>
398		</operation>
399
400	</binding>
401
402	<service name="SimpleRpcEncService">
403		<port name="SimpleRpcEncPort" binding="tns:SimpleRpcEncBinding">
404			<soap:address location="test://"/>
405		</port>
406	</service>
407</definitions>
408
409