1<?xml version="1.0" encoding="utf-8"?>
2<definitions xmlns:s1="http://soapinterop.org/xsd" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://soapinterop.org/" xmlns:s3="http://soapinterop.org/echoheader/" xmlns:soap12enc="http://www.w3.org/2002/06/soap-envelope" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:s2="http://soapinterop.org" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="http://soapinterop.org/" xmlns="http://schemas.xmlsoap.org/wsdl/">
3  <types>
4    <s:schema elementFormDefault="qualified" targetNamespace="http://soapinterop.org/">
5      <s:import namespace="http://soapinterop.org/xsd" />
6      <s:import namespace="http://soapinterop.org/echoheader/" />
7      <s:element name="echoVoid">
8        <s:complexType />
9      </s:element>
10      <s:element name="echoVoidResponse">
11        <s:complexType />
12      </s:element>
13      <s:element name="echoInteger">
14        <s:complexType>
15          <s:sequence>
16            <s:element minOccurs="1" maxOccurs="1" name="inputInteger" type="s:int" />
17          </s:sequence>
18        </s:complexType>
19      </s:element>
20      <s:element name="echoIntegerResponse">
21        <s:complexType>
22          <s:sequence>
23            <s:element minOccurs="1" maxOccurs="1" name="return" type="s:int" />
24          </s:sequence>
25        </s:complexType>
26      </s:element>
27      <s:element name="echoFloat">
28        <s:complexType>
29          <s:sequence>
30            <s:element minOccurs="1" maxOccurs="1" name="inputFloat" type="s:float" />
31          </s:sequence>
32        </s:complexType>
33      </s:element>
34      <s:element name="echoFloatResponse">
35        <s:complexType>
36          <s:sequence>
37            <s:element minOccurs="1" maxOccurs="1" name="return" type="s:float" />
38          </s:sequence>
39        </s:complexType>
40      </s:element>
41      <s:element name="echoString">
42        <s:complexType>
43          <s:sequence>
44            <s:element minOccurs="0" maxOccurs="1" name="inputString" type="s:string" />
45          </s:sequence>
46        </s:complexType>
47      </s:element>
48      <s:element name="echoStringResponse">
49        <s:complexType>
50          <s:sequence>
51            <s:element minOccurs="0" maxOccurs="1" name="return" type="s:string" />
52          </s:sequence>
53        </s:complexType>
54      </s:element>
55      <s:element name="echoBase64">
56        <s:complexType>
57          <s:sequence>
58            <s:element minOccurs="0" maxOccurs="1" name="inputBase64" type="s:base64Binary" />
59          </s:sequence>
60        </s:complexType>
61      </s:element>
62      <s:element name="echoBase64Response">
63        <s:complexType>
64          <s:sequence>
65            <s:element minOccurs="0" maxOccurs="1" name="return" type="s:base64Binary" />
66          </s:sequence>
67        </s:complexType>
68      </s:element>
69      <s:element name="echoDate">
70        <s:complexType>
71          <s:sequence>
72            <s:element minOccurs="1" maxOccurs="1" name="inputDate" type="s:dateTime" />
73          </s:sequence>
74        </s:complexType>
75      </s:element>
76      <s:element name="echoDateResponse">
77        <s:complexType>
78          <s:sequence>
79            <s:element minOccurs="1" maxOccurs="1" name="return" type="s:dateTime" />
80          </s:sequence>
81        </s:complexType>
82      </s:element>
83      <s:element name="echoComplexType">
84        <s:complexType>
85          <s:sequence>
86            <s:element minOccurs="0" maxOccurs="1" name="inputComplexType" type="s1:SOAPComplexType" />
87          </s:sequence>
88        </s:complexType>
89      </s:element>
90      <s:element name="echoComplexTypeResponse">
91        <s:complexType>
92          <s:sequence>
93            <s:element minOccurs="0" maxOccurs="1" name="return" type="s1:SOAPComplexType" />
94          </s:sequence>
95        </s:complexType>
96      </s:element>
97      <s:element name="echoIntegerMultiOccurs">
98        <s:complexType>
99          <s:sequence>
100            <s:element minOccurs="0" maxOccurs="1" name="inputIntegerMultiOccurs" type="s0:ArrayOfInt" />
101          </s:sequence>
102        </s:complexType>
103      </s:element>
104      <s:complexType name="ArrayOfInt">
105        <s:sequence>
106          <s:element minOccurs="0" maxOccurs="unbounded" name="int" type="s:int" />
107        </s:sequence>
108      </s:complexType>
109      <s:element name="echoIntegerMultiOccursResponse">
110        <s:complexType>
111          <s:sequence>
112            <s:element minOccurs="0" maxOccurs="unbounded" name="return" type="s:int" />
113          </s:sequence>
114        </s:complexType>
115      </s:element>
116      <s:element name="echoFloatMultiOccurs">
117        <s:complexType>
118          <s:sequence>
119            <s:element minOccurs="0" maxOccurs="1" name="inputFloatMultiOccurs" type="s0:ArrayOfFloat" />
120          </s:sequence>
121        </s:complexType>
122      </s:element>
123      <s:complexType name="ArrayOfFloat">
124        <s:sequence>
125          <s:element minOccurs="0" maxOccurs="unbounded" name="float" type="s:float" />
126        </s:sequence>
127      </s:complexType>
128      <s:element name="echoFloatMultiOccursResponse">
129        <s:complexType>
130          <s:sequence>
131            <s:element minOccurs="0" maxOccurs="unbounded" name="return" type="s:float" />
132          </s:sequence>
133        </s:complexType>
134      </s:element>
135      <s:element name="echoStringMultiOccurs">
136        <s:complexType>
137          <s:sequence>
138            <s:element minOccurs="0" maxOccurs="1" name="inputStringMultiOccurs" type="s0:ArrayOfString" />
139          </s:sequence>
140        </s:complexType>
141      </s:element>
142      <s:complexType name="ArrayOfString">
143        <s:sequence>
144          <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
145        </s:sequence>
146      </s:complexType>
147      <s:element name="echoStringMultiOccursResponse">
148        <s:complexType>
149          <s:sequence>
150            <s:element minOccurs="0" maxOccurs="unbounded" name="return" type="s:string" />
151          </s:sequence>
152        </s:complexType>
153      </s:element>
154      <s:element name="echoComplexTypeMultiOccurs">
155        <s:complexType>
156          <s:sequence>
157            <s:element minOccurs="0" maxOccurs="1" name="inputComplexTypeMultiOccurs" type="s1:ArrayOfSOAPComplexType" />
158          </s:sequence>
159        </s:complexType>
160      </s:element>
161      <s:element name="SOAPComplexType" nillable="true" type="s1:SOAPComplexType" />
162      <s:element name="echoComplexTypeMultiOccursResponse">
163        <s:complexType>
164          <s:sequence>
165            <s:element minOccurs="0" maxOccurs="unbounded" name="return" type="s1:SOAPComplexType" />
166          </s:sequence>
167        </s:complexType>
168      </s:element>
169      <s:element name="echoDecimal">
170        <s:complexType>
171          <s:sequence>
172            <s:element minOccurs="1" maxOccurs="1" name="inputDecimal" type="s:decimal" />
173          </s:sequence>
174        </s:complexType>
175      </s:element>
176      <s:element name="echoDecimalResponse">
177        <s:complexType>
178          <s:sequence>
179            <s:element minOccurs="1" maxOccurs="1" name="return" type="s:decimal" />
180          </s:sequence>
181        </s:complexType>
182      </s:element>
183      <s:element name="echoBoolean">
184        <s:complexType>
185          <s:sequence>
186            <s:element minOccurs="1" maxOccurs="1" name="inputBoolean" type="s:boolean" />
187          </s:sequence>
188        </s:complexType>
189      </s:element>
190      <s:element name="echoBooleanResponse">
191        <s:complexType>
192          <s:sequence>
193            <s:element minOccurs="1" maxOccurs="1" name="return" type="s:boolean" />
194          </s:sequence>
195        </s:complexType>
196      </s:element>
197      <s:element name="echoHexBinary">
198        <s:complexType>
199          <s:sequence>
200            <s:element minOccurs="0" maxOccurs="1" name="inputHexBinary" type="s:hexBinary" />
201          </s:sequence>
202        </s:complexType>
203      </s:element>
204      <s:element name="echoHexBinaryResponse">
205        <s:complexType>
206          <s:sequence>
207            <s:element minOccurs="0" maxOccurs="1" name="return" type="s:hexBinary" />
208          </s:sequence>
209        </s:complexType>
210      </s:element>
211      <s:element name="echoComplexTypeAsSimpleTypes">
212        <s:complexType>
213          <s:sequence>
214            <s:element minOccurs="0" maxOccurs="1" name="inputComplexType" type="s1:SOAPComplexType" />
215          </s:sequence>
216        </s:complexType>
217      </s:element>
218      <s:element name="echoComplexTypeAsSimpleTypesResponse">
219        <s:complexType>
220          <s:sequence>
221            <s:element minOccurs="0" maxOccurs="1" name="outputString" type="s:string" />
222            <s:element minOccurs="1" maxOccurs="1" name="outputInteger" type="s:int" />
223            <s:element minOccurs="1" maxOccurs="1" name="outputFloat" type="s:float" />
224          </s:sequence>
225        </s:complexType>
226      </s:element>
227      <s:element name="echoSimpleTypesAsComplexType">
228        <s:complexType>
229          <s:sequence>
230            <s:element minOccurs="0" maxOccurs="1" name="inputString" type="s:string" />
231            <s:element minOccurs="1" maxOccurs="1" name="inputInteger" type="s:int" />
232            <s:element minOccurs="1" maxOccurs="1" name="inputFloat" type="s:float" />
233          </s:sequence>
234        </s:complexType>
235      </s:element>
236      <s:element name="echoSimpleTypesAsComplexTypeResponse">
237        <s:complexType>
238          <s:sequence>
239            <s:element minOccurs="0" maxOccurs="1" name="return" type="s1:SOAPComplexType" />
240          </s:sequence>
241        </s:complexType>
242      </s:element>
243      <s:element name="echoNestedComplexType">
244        <s:complexType>
245          <s:sequence>
246            <s:element minOccurs="0" maxOccurs="1" name="inputComplexType" type="s1:SOAPComplexTypeComplexType" />
247          </s:sequence>
248        </s:complexType>
249      </s:element>
250      <s:element name="echoNestedComplexTypeResponse">
251        <s:complexType>
252          <s:sequence>
253            <s:element minOccurs="0" maxOccurs="1" name="return" type="s1:SOAPComplexTypeComplexType" />
254          </s:sequence>
255        </s:complexType>
256      </s:element>
257      <s:element name="echoNestedMultiOccurs">
258        <s:complexType>
259          <s:sequence>
260            <s:element minOccurs="0" maxOccurs="1" name="inputComplexType" type="s1:SOAPMultiOccursComplexType" />
261          </s:sequence>
262        </s:complexType>
263      </s:element>
264      <s:element name="echoNestedMultiOccursResponse">
265        <s:complexType>
266          <s:sequence>
267            <s:element minOccurs="0" maxOccurs="1" name="return" type="s1:SOAPMultiOccursComplexType" />
268          </s:sequence>
269        </s:complexType>
270      </s:element>
271      <s:element name="echoChoice">
272        <s:complexType>
273          <s:sequence>
274            <s:element minOccurs="0" maxOccurs="1" name="inputChoice" type="s1:ChoiceComplexType" />
275          </s:sequence>
276        </s:complexType>
277      </s:element>
278      <s:element name="echoChoiceResponse">
279        <s:complexType>
280          <s:sequence>
281            <s:element minOccurs="0" maxOccurs="1" name="return" type="s1:ChoiceComplexType" />
282          </s:sequence>
283        </s:complexType>
284      </s:element>
285      <s:element name="echoEnum">
286        <s:complexType>
287          <s:sequence>
288            <s:element minOccurs="1" maxOccurs="1" name="inputEnum" type="s1:Enum" />
289          </s:sequence>
290        </s:complexType>
291      </s:element>
292      <s:element name="echoEnumResponse">
293        <s:complexType>
294          <s:sequence>
295            <s:element minOccurs="1" maxOccurs="1" name="return" type="s1:Enum" />
296          </s:sequence>
297        </s:complexType>
298      </s:element>
299      <s:element name="echoAnyType">
300        <s:complexType>
301          <s:sequence>
302            <s:element minOccurs="0" maxOccurs="1" name="inputAnyType" />
303          </s:sequence>
304        </s:complexType>
305      </s:element>
306      <s:element name="echoAnyTypeResponse">
307        <s:complexType>
308          <s:sequence>
309            <s:element minOccurs="0" maxOccurs="1" name="return" />
310          </s:sequence>
311        </s:complexType>
312      </s:element>
313      <s:element name="echoAnyElement">
314        <s:complexType>
315          <s:sequence>
316            <s:element minOccurs="0" maxOccurs="1" name="inputAny">
317              <s:complexType>
318                <s:sequence>
319                  <s:any />
320                </s:sequence>
321              </s:complexType>
322            </s:element>
323          </s:sequence>
324        </s:complexType>
325      </s:element>
326      <s:element name="echoAnyElementResponse">
327        <s:complexType>
328          <s:sequence>
329            <s:element minOccurs="0" maxOccurs="1" name="return">
330              <s:complexType>
331                <s:sequence>
332                  <s:any />
333                </s:sequence>
334              </s:complexType>
335            </s:element>
336          </s:sequence>
337        </s:complexType>
338      </s:element>
339      <s:element name="echoVoidSoapHeaderResponse">
340        <s:complexType />
341      </s:element>
342      <s:element name="echoMeComplexTypeRequest" type="s3:echoMeComplexTypeRequest" />
343      <s:element name="echoMeStringRequest" type="s3:echoMeStringRequest" />
344      <s:element name="echoMeComplexTypeResponse" type="s3:echoMeComplexTypeResponse" />
345      <s:element name="echoMeStringResponse" type="s3:echoMeStringResponse" />
346    </s:schema>
347    <s:schema elementFormDefault="qualified" targetNamespace="http://soapinterop.org/xsd">
348      <s:import namespace="http://soapinterop.org/" />
349      <s:complexType name="SOAPComplexType">
350        <s:sequence>
351          <s:element minOccurs="1" maxOccurs="1" name="varInt" type="s:int" />
352          <s:element minOccurs="0" maxOccurs="1" name="varString" type="s:string" />
353          <s:element minOccurs="1" maxOccurs="1" name="varFloat" type="s:float" />
354        </s:sequence>
355      </s:complexType>
356      <s:complexType name="ArrayOfSOAPComplexType">
357        <s:sequence>
358          <s:element minOccurs="0" maxOccurs="unbounded" ref="s0:SOAPComplexType" />
359        </s:sequence>
360      </s:complexType>
361      <s:complexType name="SOAPComplexTypeComplexType">
362        <s:sequence>
363          <s:element minOccurs="0" maxOccurs="1" name="varString" type="s:string" />
364          <s:element minOccurs="1" maxOccurs="1" name="varInt" type="s:int" />
365          <s:element minOccurs="1" maxOccurs="1" name="varFloat" type="s:float" />
366          <s:element minOccurs="0" maxOccurs="1" name="varComplexType" type="s1:SOAPComplexType" />
367        </s:sequence>
368      </s:complexType>
369      <s:complexType name="SOAPMultiOccursComplexType">
370        <s:sequence>
371          <s:element minOccurs="0" maxOccurs="1" name="varString" type="s:string" />
372          <s:element minOccurs="1" maxOccurs="1" name="varInt" type="s:int" />
373          <s:element minOccurs="1" maxOccurs="1" name="varFloat" type="s:float" />
374          <s:element minOccurs="0" maxOccurs="1" name="varMultiOccurs" type="s1:ArrayOfString" />
375        </s:sequence>
376      </s:complexType>
377      <s:complexType name="ArrayOfString">
378        <s:sequence>
379          <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
380        </s:sequence>
381      </s:complexType>
382      <s:complexType name="ChoiceComplexType">
383        <s:sequence>
384          <s:choice minOccurs="1" maxOccurs="1">
385            <s:element minOccurs="0" maxOccurs="1" name="name0" type="s:string" />
386            <s:element minOccurs="0" maxOccurs="1" name="name1" type="s:string" />
387          </s:choice>
388        </s:sequence>
389      </s:complexType>
390      <s:simpleType name="Enum">
391        <s:restriction base="s:string">
392          <s:enumeration value="BitOne" />
393          <s:enumeration value="BitTwo" />
394          <s:enumeration value="BitThree" />
395          <s:enumeration value="BitFour" />
396          <s:enumeration value="BitFive" />
397        </s:restriction>
398      </s:simpleType>
399    </s:schema>
400    <s:schema elementFormDefault="qualified" targetNamespace="http://soapinterop.org">
401      <s:element name="echoVoidSoapHeader">
402        <s:complexType />
403      </s:element>
404    </s:schema>
405    <s:schema elementFormDefault="qualified" targetNamespace="http://soapinterop.org/echoheader/">
406      <s:complexType name="echoMeComplexTypeRequest">
407        <s:sequence>
408          <s:element minOccurs="0" maxOccurs="1" name="varString" type="s:string" />
409          <s:element minOccurs="1" maxOccurs="1" name="varInt" type="s:int" />
410          <s:element minOccurs="1" maxOccurs="1" name="varFloat" type="s:float" />
411        </s:sequence>
412      </s:complexType>
413      <s:complexType name="echoMeStringRequest">
414        <s:sequence>
415          <s:element minOccurs="0" maxOccurs="1" name="varString" type="s:string" />
416        </s:sequence>
417      </s:complexType>
418      <s:complexType name="echoMeComplexTypeResponse">
419        <s:sequence>
420          <s:element minOccurs="0" maxOccurs="1" name="varString" type="s:string" />
421          <s:element minOccurs="1" maxOccurs="1" name="varInt" type="s:int" />
422          <s:element minOccurs="1" maxOccurs="1" name="varFloat" type="s:float" />
423        </s:sequence>
424      </s:complexType>
425      <s:complexType name="echoMeStringResponse">
426        <s:sequence>
427          <s:element minOccurs="0" maxOccurs="1" name="varString" type="s:string" />
428        </s:sequence>
429      </s:complexType>
430    </s:schema>
431  </types>
432  <message name="echoVoidSoapIn">
433    <part name="parameters" element="s0:echoVoid" />
434  </message>
435  <message name="echoVoidSoapOut">
436    <part name="parameters" element="s0:echoVoidResponse" />
437  </message>
438  <message name="echoIntegerSoapIn">
439    <part name="parameters" element="s0:echoInteger" />
440  </message>
441  <message name="echoIntegerSoapOut">
442    <part name="parameters" element="s0:echoIntegerResponse" />
443  </message>
444  <message name="echoFloatSoapIn">
445    <part name="parameters" element="s0:echoFloat" />
446  </message>
447  <message name="echoFloatSoapOut">
448    <part name="parameters" element="s0:echoFloatResponse" />
449  </message>
450  <message name="echoStringSoapIn">
451    <part name="parameters" element="s0:echoString" />
452  </message>
453  <message name="echoStringSoapOut">
454    <part name="parameters" element="s0:echoStringResponse" />
455  </message>
456  <message name="echoBase64SoapIn">
457    <part name="parameters" element="s0:echoBase64" />
458  </message>
459  <message name="echoBase64SoapOut">
460    <part name="parameters" element="s0:echoBase64Response" />
461  </message>
462  <message name="echoDateSoapIn">
463    <part name="parameters" element="s0:echoDate" />
464  </message>
465  <message name="echoDateSoapOut">
466    <part name="parameters" element="s0:echoDateResponse" />
467  </message>
468  <message name="echoComplexTypeSoapIn">
469    <part name="parameters" element="s0:echoComplexType" />
470  </message>
471  <message name="echoComplexTypeSoapOut">
472    <part name="parameters" element="s0:echoComplexTypeResponse" />
473  </message>
474  <message name="echoIntegerMultiOccursSoapIn">
475    <part name="parameters" element="s0:echoIntegerMultiOccurs" />
476  </message>
477  <message name="echoIntegerMultiOccursSoapOut">
478    <part name="parameters" element="s0:echoIntegerMultiOccursResponse" />
479  </message>
480  <message name="echoFloatMultiOccursSoapIn">
481    <part name="parameters" element="s0:echoFloatMultiOccurs" />
482  </message>
483  <message name="echoFloatMultiOccursSoapOut">
484    <part name="parameters" element="s0:echoFloatMultiOccursResponse" />
485  </message>
486  <message name="echoStringMultiOccursSoapIn">
487    <part name="parameters" element="s0:echoStringMultiOccurs" />
488  </message>
489  <message name="echoStringMultiOccursSoapOut">
490    <part name="parameters" element="s0:echoStringMultiOccursResponse" />
491  </message>
492  <message name="echoComplexTypeMultiOccursSoapIn">
493    <part name="parameters" element="s0:echoComplexTypeMultiOccurs" />
494  </message>
495  <message name="echoComplexTypeMultiOccursSoapOut">
496    <part name="parameters" element="s0:echoComplexTypeMultiOccursResponse" />
497  </message>
498  <message name="echoDecimalSoapIn">
499    <part name="parameters" element="s0:echoDecimal" />
500  </message>
501  <message name="echoDecimalSoapOut">
502    <part name="parameters" element="s0:echoDecimalResponse" />
503  </message>
504  <message name="echoBooleanSoapIn">
505    <part name="parameters" element="s0:echoBoolean" />
506  </message>
507  <message name="echoBooleanSoapOut">
508    <part name="parameters" element="s0:echoBooleanResponse" />
509  </message>
510  <message name="echoHexBinarySoapIn">
511    <part name="parameters" element="s0:echoHexBinary" />
512  </message>
513  <message name="echoHexBinarySoapOut">
514    <part name="parameters" element="s0:echoHexBinaryResponse" />
515  </message>
516  <message name="echoComplexTypeAsSimpleTypesSoapIn">
517    <part name="parameters" element="s0:echoComplexTypeAsSimpleTypes" />
518  </message>
519  <message name="echoComplexTypeAsSimpleTypesSoapOut">
520    <part name="parameters" element="s0:echoComplexTypeAsSimpleTypesResponse" />
521  </message>
522  <message name="echoSimpleTypesAsComplexTypeSoapIn">
523    <part name="parameters" element="s0:echoSimpleTypesAsComplexType" />
524  </message>
525  <message name="echoSimpleTypesAsComplexTypeSoapOut">
526    <part name="parameters" element="s0:echoSimpleTypesAsComplexTypeResponse" />
527  </message>
528  <message name="echoNestedComplexTypeSoapIn">
529    <part name="parameters" element="s0:echoNestedComplexType" />
530  </message>
531  <message name="echoNestedComplexTypeSoapOut">
532    <part name="parameters" element="s0:echoNestedComplexTypeResponse" />
533  </message>
534  <message name="echoNestedMultiOccursSoapIn">
535    <part name="parameters" element="s0:echoNestedMultiOccurs" />
536  </message>
537  <message name="echoNestedMultiOccursSoapOut">
538    <part name="parameters" element="s0:echoNestedMultiOccursResponse" />
539  </message>
540  <message name="echoChoiceSoapIn">
541    <part name="parameters" element="s0:echoChoice" />
542  </message>
543  <message name="echoChoiceSoapOut">
544    <part name="parameters" element="s0:echoChoiceResponse" />
545  </message>
546  <message name="echoEnumSoapIn">
547    <part name="parameters" element="s0:echoEnum" />
548  </message>
549  <message name="echoEnumSoapOut">
550    <part name="parameters" element="s0:echoEnumResponse" />
551  </message>
552  <message name="echoAnyTypeSoapIn">
553    <part name="parameters" element="s0:echoAnyType" />
554  </message>
555  <message name="echoAnyTypeSoapOut">
556    <part name="parameters" element="s0:echoAnyTypeResponse" />
557  </message>
558  <message name="echoAnyElementSoapIn">
559    <part name="parameters" element="s0:echoAnyElement" />
560  </message>
561  <message name="echoAnyElementSoapOut">
562    <part name="parameters" element="s0:echoAnyElementResponse" />
563  </message>
564  <message name="echoVoidSoapHeaderSoapIn">
565    <part name="parameters" element="s2:echoVoidSoapHeader" />
566  </message>
567  <message name="echoVoidSoapHeaderSoapOut">
568    <part name="parameters" element="s0:echoVoidSoapHeaderResponse" />
569  </message>
570  <message name="echoVoidSoapHeaderechoMeComplexTypeRequest">
571    <part name="echoMeComplexTypeRequest" element="s0:echoMeComplexTypeRequest" />
572  </message>
573  <message name="echoVoidSoapHeaderechoMeComplexTypeResponse">
574    <part name="echoMeComplexTypeResponse" element="s0:echoMeComplexTypeResponse" />
575  </message>
576  <message name="echoVoidSoapHeaderechoMeStringRequest">
577    <part name="echoMeStringRequest" element="s0:echoMeStringRequest" />
578  </message>
579  <message name="echoVoidSoapHeaderechoMeStringResponse">
580    <part name="echoMeStringResponse" element="s0:echoMeStringResponse" />
581  </message>
582  <portType name="Round4XSDTestSoap">
583    <operation name="echoVoid">
584      <input message="s0:echoVoidSoapIn" />
585      <output message="s0:echoVoidSoapOut" />
586    </operation>
587    <operation name="echoInteger">
588      <input message="s0:echoIntegerSoapIn" />
589      <output message="s0:echoIntegerSoapOut" />
590    </operation>
591    <operation name="echoFloat">
592      <input message="s0:echoFloatSoapIn" />
593      <output message="s0:echoFloatSoapOut" />
594    </operation>
595    <operation name="echoString">
596      <input message="s0:echoStringSoapIn" />
597      <output message="s0:echoStringSoapOut" />
598    </operation>
599    <operation name="echoBase64">
600      <input message="s0:echoBase64SoapIn" />
601      <output message="s0:echoBase64SoapOut" />
602    </operation>
603    <operation name="echoDate">
604      <input message="s0:echoDateSoapIn" />
605      <output message="s0:echoDateSoapOut" />
606    </operation>
607    <operation name="echoComplexType">
608      <input message="s0:echoComplexTypeSoapIn" />
609      <output message="s0:echoComplexTypeSoapOut" />
610    </operation>
611    <operation name="echoIntegerMultiOccurs">
612      <input message="s0:echoIntegerMultiOccursSoapIn" />
613      <output message="s0:echoIntegerMultiOccursSoapOut" />
614    </operation>
615    <operation name="echoFloatMultiOccurs">
616      <input message="s0:echoFloatMultiOccursSoapIn" />
617      <output message="s0:echoFloatMultiOccursSoapOut" />
618    </operation>
619    <operation name="echoStringMultiOccurs">
620      <input message="s0:echoStringMultiOccursSoapIn" />
621      <output message="s0:echoStringMultiOccursSoapOut" />
622    </operation>
623    <operation name="echoComplexTypeMultiOccurs">
624      <input message="s0:echoComplexTypeMultiOccursSoapIn" />
625      <output message="s0:echoComplexTypeMultiOccursSoapOut" />
626    </operation>
627    <operation name="echoDecimal">
628      <input message="s0:echoDecimalSoapIn" />
629      <output message="s0:echoDecimalSoapOut" />
630    </operation>
631    <operation name="echoBoolean">
632      <input message="s0:echoBooleanSoapIn" />
633      <output message="s0:echoBooleanSoapOut" />
634    </operation>
635    <operation name="echoHexBinary">
636      <input message="s0:echoHexBinarySoapIn" />
637      <output message="s0:echoHexBinarySoapOut" />
638    </operation>
639    <operation name="echoComplexTypeAsSimpleTypes">
640      <input message="s0:echoComplexTypeAsSimpleTypesSoapIn" />
641      <output message="s0:echoComplexTypeAsSimpleTypesSoapOut" />
642    </operation>
643    <operation name="echoSimpleTypesAsComplexType">
644      <input message="s0:echoSimpleTypesAsComplexTypeSoapIn" />
645      <output message="s0:echoSimpleTypesAsComplexTypeSoapOut" />
646    </operation>
647    <operation name="echoNestedComplexType">
648      <input message="s0:echoNestedComplexTypeSoapIn" />
649      <output message="s0:echoNestedComplexTypeSoapOut" />
650    </operation>
651    <operation name="echoNestedMultiOccurs">
652      <input message="s0:echoNestedMultiOccursSoapIn" />
653      <output message="s0:echoNestedMultiOccursSoapOut" />
654    </operation>
655    <operation name="echoChoice">
656      <input message="s0:echoChoiceSoapIn" />
657      <output message="s0:echoChoiceSoapOut" />
658    </operation>
659    <operation name="echoEnum">
660      <input message="s0:echoEnumSoapIn" />
661      <output message="s0:echoEnumSoapOut" />
662    </operation>
663    <operation name="echoAnyType">
664      <input message="s0:echoAnyTypeSoapIn" />
665      <output message="s0:echoAnyTypeSoapOut" />
666    </operation>
667    <operation name="echoAnyElement">
668      <input message="s0:echoAnyElementSoapIn" />
669      <output message="s0:echoAnyElementSoapOut" />
670    </operation>
671    <operation name="echoVoidSoapHeader">
672      <input message="s0:echoVoidSoapHeaderSoapIn" />
673      <output message="s0:echoVoidSoapHeaderSoapOut" />
674    </operation>
675  </portType>
676  <binding name="Round4XSDTestSoap" type="s0:Round4XSDTestSoap">
677    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
678    <operation name="echoVoid">
679      <soap:operation soapAction="http://soapinterop.org/echoVoid" style="document" />
680      <input>
681        <soap:body use="literal" />
682      </input>
683      <output>
684        <soap:body use="literal" />
685      </output>
686    </operation>
687    <operation name="echoInteger">
688      <soap:operation soapAction="http://soapinterop.org/echoInteger" style="document" />
689      <input>
690        <soap:body use="literal" />
691      </input>
692      <output>
693        <soap:body use="literal" />
694      </output>
695    </operation>
696    <operation name="echoFloat">
697      <soap:operation soapAction="http://soapinterop.org/echoFloat" style="document" />
698      <input>
699        <soap:body use="literal" />
700      </input>
701      <output>
702        <soap:body use="literal" />
703      </output>
704    </operation>
705    <operation name="echoString">
706      <soap:operation soapAction="http://soapinterop.org/echoString" style="document" />
707      <input>
708        <soap:body use="literal" />
709      </input>
710      <output>
711        <soap:body use="literal" />
712      </output>
713    </operation>
714    <operation name="echoBase64">
715      <soap:operation soapAction="http://soapinterop.org/echoBase64" style="document" />
716      <input>
717        <soap:body use="literal" />
718      </input>
719      <output>
720        <soap:body use="literal" />
721      </output>
722    </operation>
723    <operation name="echoDate">
724      <soap:operation soapAction="http://soapinterop.org/echoDate" style="document" />
725      <input>
726        <soap:body use="literal" />
727      </input>
728      <output>
729        <soap:body use="literal" />
730      </output>
731    </operation>
732    <operation name="echoComplexType">
733      <soap:operation soapAction="http://soapinterop.org/echoComplexType" style="document" />
734      <input>
735        <soap:body use="literal" />
736      </input>
737      <output>
738        <soap:body use="literal" />
739      </output>
740    </operation>
741    <operation name="echoIntegerMultiOccurs">
742      <soap:operation soapAction="http://soapinterop.org/echoIntegerMultiOccurs" style="document" />
743      <input>
744        <soap:body use="literal" />
745      </input>
746      <output>
747        <soap:body use="literal" />
748      </output>
749    </operation>
750    <operation name="echoFloatMultiOccurs">
751      <soap:operation soapAction="http://soapinterop.org/echoFloatMultiOccurs" style="document" />
752      <input>
753        <soap:body use="literal" />
754      </input>
755      <output>
756        <soap:body use="literal" />
757      </output>
758    </operation>
759    <operation name="echoStringMultiOccurs">
760      <soap:operation soapAction="http://soapinterop.org/echoStringMultiOccurs" style="document" />
761      <input>
762        <soap:body use="literal" />
763      </input>
764      <output>
765        <soap:body use="literal" />
766      </output>
767    </operation>
768    <operation name="echoComplexTypeMultiOccurs">
769      <soap:operation soapAction="http://soapinterop.org/echoComplexTypeMultiOccurs" style="document" />
770      <input>
771        <soap:body use="literal" />
772      </input>
773      <output>
774        <soap:body use="literal" />
775      </output>
776    </operation>
777    <operation name="echoDecimal">
778      <soap:operation soapAction="http://soapinterop.org/echoDecimal" style="document" />
779      <input>
780        <soap:body use="literal" />
781      </input>
782      <output>
783        <soap:body use="literal" />
784      </output>
785    </operation>
786    <operation name="echoBoolean">
787      <soap:operation soapAction="http://soapinterop.org/echoBoolean" style="document" />
788      <input>
789        <soap:body use="literal" />
790      </input>
791      <output>
792        <soap:body use="literal" />
793      </output>
794    </operation>
795    <operation name="echoHexBinary">
796      <soap:operation soapAction="http://soapinterop.org/echoHexBinary" style="document" />
797      <input>
798        <soap:body use="literal" />
799      </input>
800      <output>
801        <soap:body use="literal" />
802      </output>
803    </operation>
804    <operation name="echoComplexTypeAsSimpleTypes">
805      <soap:operation soapAction="http://soapinterop.org/echoComplexTypeAsSimpleTypes" style="document" />
806      <input>
807        <soap:body use="literal" />
808      </input>
809      <output>
810        <soap:body use="literal" />
811      </output>
812    </operation>
813    <operation name="echoSimpleTypesAsComplexType">
814      <soap:operation soapAction="http://soapinterop.org/echoSimpleTypesAsComplexType" style="document" />
815      <input>
816        <soap:body use="literal" />
817      </input>
818      <output>
819        <soap:body use="literal" />
820      </output>
821    </operation>
822    <operation name="echoNestedComplexType">
823      <soap:operation soapAction="http://soapinterop.org/echoNestedComplexType" style="document" />
824      <input>
825        <soap:body use="literal" />
826      </input>
827      <output>
828        <soap:body use="literal" />
829      </output>
830    </operation>
831    <operation name="echoNestedMultiOccurs">
832      <soap:operation soapAction="http://soapinterop.org/echoNestedMultiOccurs" style="document" />
833      <input>
834        <soap:body use="literal" />
835      </input>
836      <output>
837        <soap:body use="literal" />
838      </output>
839    </operation>
840    <operation name="echoChoice">
841      <soap:operation soapAction="http://soapinterop.org/echoChoice" style="document" />
842      <input>
843        <soap:body use="literal" />
844      </input>
845      <output>
846        <soap:body use="literal" />
847      </output>
848    </operation>
849    <operation name="echoEnum">
850      <soap:operation soapAction="http://soapinterop.org/echoEnum" style="document" />
851      <input>
852        <soap:body use="literal" />
853      </input>
854      <output>
855        <soap:body use="literal" />
856      </output>
857    </operation>
858    <operation name="echoAnyType">
859      <soap:operation soapAction="http://soapinterop.org/echoAnyType" style="document" />
860      <input>
861        <soap:body use="literal" />
862      </input>
863      <output>
864        <soap:body use="literal" />
865      </output>
866    </operation>
867    <operation name="echoAnyElement">
868      <soap:operation soapAction="http://soapinterop.org/echoAnyElement" style="document" />
869      <input>
870        <soap:body use="literal" />
871      </input>
872      <output>
873        <soap:body use="literal" />
874      </output>
875    </operation>
876    <operation name="echoVoidSoapHeader">
877      <soap:operation soapAction="http://soapinterop.org" style="document" />
878      <input>
879        <soap:body use="literal" />
880        <soap:header message="s0:echoVoidSoapHeaderechoMeComplexTypeRequest" part="echoMeComplexTypeRequest" use="literal" />
881        <soap:header message="s0:echoVoidSoapHeaderechoMeStringRequest" part="echoMeStringRequest" use="literal" />
882      </input>
883      <output>
884        <soap:body use="literal" />
885        <soap:header message="s0:echoVoidSoapHeaderechoMeComplexTypeResponse" part="echoMeComplexTypeResponse" use="literal" />
886        <soap:header message="s0:echoVoidSoapHeaderechoMeStringResponse" part="echoMeStringResponse" use="literal" />
887      </output>
888    </operation>
889  </binding>
890  <binding name="Round4XSDTestSoap12" type="s0:Round4XSDTestSoap">
891    <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
892    <operation name="echoVoid">
893      <soap12:operation soapAction="http://soapinterop.org/echoVoid" style="document" />
894      <input>
895        <soap12:body use="literal" />
896      </input>
897      <output>
898        <soap12:body use="literal" />
899      </output>
900    </operation>
901    <operation name="echoInteger">
902      <soap12:operation soapAction="http://soapinterop.org/echoInteger" style="document" />
903      <input>
904        <soap12:body use="literal" />
905      </input>
906      <output>
907        <soap12:body use="literal" />
908      </output>
909    </operation>
910    <operation name="echoFloat">
911      <soap12:operation soapAction="http://soapinterop.org/echoFloat" style="document" />
912      <input>
913        <soap12:body use="literal" />
914      </input>
915      <output>
916        <soap12:body use="literal" />
917      </output>
918    </operation>
919    <operation name="echoString">
920      <soap12:operation soapAction="http://soapinterop.org/echoString" style="document" />
921      <input>
922        <soap12:body use="literal" />
923      </input>
924      <output>
925        <soap12:body use="literal" />
926      </output>
927    </operation>
928    <operation name="echoBase64">
929      <soap12:operation soapAction="http://soapinterop.org/echoBase64" style="document" />
930      <input>
931        <soap12:body use="literal" />
932      </input>
933      <output>
934        <soap12:body use="literal" />
935      </output>
936    </operation>
937    <operation name="echoDate">
938      <soap12:operation soapAction="http://soapinterop.org/echoDate" style="document" />
939      <input>
940        <soap12:body use="literal" />
941      </input>
942      <output>
943        <soap12:body use="literal" />
944      </output>
945    </operation>
946    <operation name="echoComplexType">
947      <soap12:operation soapAction="http://soapinterop.org/echoComplexType" style="document" />
948      <input>
949        <soap12:body use="literal" />
950      </input>
951      <output>
952        <soap12:body use="literal" />
953      </output>
954    </operation>
955    <operation name="echoIntegerMultiOccurs">
956      <soap12:operation soapAction="http://soapinterop.org/echoIntegerMultiOccurs" style="document" />
957      <input>
958        <soap12:body use="literal" />
959      </input>
960      <output>
961        <soap12:body use="literal" />
962      </output>
963    </operation>
964    <operation name="echoFloatMultiOccurs">
965      <soap12:operation soapAction="http://soapinterop.org/echoFloatMultiOccurs" style="document" />
966      <input>
967        <soap12:body use="literal" />
968      </input>
969      <output>
970        <soap12:body use="literal" />
971      </output>
972    </operation>
973    <operation name="echoStringMultiOccurs">
974      <soap12:operation soapAction="http://soapinterop.org/echoStringMultiOccurs" style="document" />
975      <input>
976        <soap12:body use="literal" />
977      </input>
978      <output>
979        <soap12:body use="literal" />
980      </output>
981    </operation>
982    <operation name="echoComplexTypeMultiOccurs">
983      <soap12:operation soapAction="http://soapinterop.org/echoComplexTypeMultiOccurs" style="document" />
984      <input>
985        <soap12:body use="literal" />
986      </input>
987      <output>
988        <soap12:body use="literal" />
989      </output>
990    </operation>
991    <operation name="echoDecimal">
992      <soap12:operation soapAction="http://soapinterop.org/echoDecimal" style="document" />
993      <input>
994        <soap12:body use="literal" />
995      </input>
996      <output>
997        <soap12:body use="literal" />
998      </output>
999    </operation>
1000    <operation name="echoBoolean">
1001      <soap12:operation soapAction="http://soapinterop.org/echoBoolean" style="document" />
1002      <input>
1003        <soap12:body use="literal" />
1004      </input>
1005      <output>
1006        <soap12:body use="literal" />
1007      </output>
1008    </operation>
1009    <operation name="echoHexBinary">
1010      <soap12:operation soapAction="http://soapinterop.org/echoHexBinary" style="document" />
1011      <input>
1012        <soap12:body use="literal" />
1013      </input>
1014      <output>
1015        <soap12:body use="literal" />
1016      </output>
1017    </operation>
1018    <operation name="echoComplexTypeAsSimpleTypes">
1019      <soap12:operation soapAction="http://soapinterop.org/echoComplexTypeAsSimpleTypes" style="document" />
1020      <input>
1021        <soap12:body use="literal" />
1022      </input>
1023      <output>
1024        <soap12:body use="literal" />
1025      </output>
1026    </operation>
1027    <operation name="echoSimpleTypesAsComplexType">
1028      <soap12:operation soapAction="http://soapinterop.org/echoSimpleTypesAsComplexType" style="document" />
1029      <input>
1030        <soap12:body use="literal" />
1031      </input>
1032      <output>
1033        <soap12:body use="literal" />
1034      </output>
1035    </operation>
1036    <operation name="echoNestedComplexType">
1037      <soap12:operation soapAction="http://soapinterop.org/echoNestedComplexType" style="document" />
1038      <input>
1039        <soap12:body use="literal" />
1040      </input>
1041      <output>
1042        <soap12:body use="literal" />
1043      </output>
1044    </operation>
1045    <operation name="echoNestedMultiOccurs">
1046      <soap12:operation soapAction="http://soapinterop.org/echoNestedMultiOccurs" style="document" />
1047      <input>
1048        <soap12:body use="literal" />
1049      </input>
1050      <output>
1051        <soap12:body use="literal" />
1052      </output>
1053    </operation>
1054    <operation name="echoChoice">
1055      <soap12:operation soapAction="http://soapinterop.org/echoChoice" style="document" />
1056      <input>
1057        <soap12:body use="literal" />
1058      </input>
1059      <output>
1060        <soap12:body use="literal" />
1061      </output>
1062    </operation>
1063    <operation name="echoEnum">
1064      <soap12:operation soapAction="http://soapinterop.org/echoEnum" style="document" />
1065      <input>
1066        <soap12:body use="literal" />
1067      </input>
1068      <output>
1069        <soap12:body use="literal" />
1070      </output>
1071    </operation>
1072    <operation name="echoAnyType">
1073      <soap12:operation soapAction="http://soapinterop.org/echoAnyType" style="document" />
1074      <input>
1075        <soap12:body use="literal" />
1076      </input>
1077      <output>
1078        <soap12:body use="literal" />
1079      </output>
1080    </operation>
1081    <operation name="echoAnyElement">
1082      <soap12:operation soapAction="http://soapinterop.org/echoAnyElement" style="document" />
1083      <input>
1084        <soap12:body use="literal" />
1085      </input>
1086      <output>
1087        <soap12:body use="literal" />
1088      </output>
1089    </operation>
1090    <operation name="echoVoidSoapHeader">
1091      <soap12:operation soapAction="http://soapinterop.org" style="document" />
1092      <input>
1093        <soap12:body use="literal" />
1094        <soap12:header message="s0:echoVoidSoapHeaderechoMeComplexTypeRequest" part="echoMeComplexTypeRequest" use="literal" />
1095        <soap12:header message="s0:echoVoidSoapHeaderechoMeStringRequest" part="echoMeStringRequest" use="literal" />
1096      </input>
1097      <output>
1098        <soap12:body use="literal" />
1099        <soap12:header message="s0:echoVoidSoapHeaderechoMeComplexTypeResponse" part="echoMeComplexTypeResponse" use="literal" />
1100        <soap12:header message="s0:echoVoidSoapHeaderechoMeStringResponse" part="echoMeStringResponse" use="literal" />
1101      </output>
1102    </operation>
1103  </binding>
1104  <service name="Round4XSDTest">
1105    <documentation>These operations implement DOC/LIT SOAP operations, for interop testing. Please email johnko@microsoft.com with any questions/comments.</documentation>
1106    <port name="Round4XSDTestSoap" binding="s0:Round4XSDTestSoap">
1107      <soap:address location="test://" />
1108    </port>
1109    <port name="Round4XSDTestSoap12" binding="s0:Round4XSDTestSoap12">
1110      <soap12:address location="http://mssoapinterop.org/asmx/xsd/round4xsd.asmx" />
1111    </port>
1112  </service>
1113</definitions>
1114