1<?xml version="1.0" encoding="utf-8"?>
2<wsdl:definitions name="SOAPBuilders"
3    xmlns="http://soapinterop.org/attachments/wsdl"
4    xmlns:types="http://soapinterop.org/attachments/xsd"
5    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
6    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
7    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
8    xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
9    xmlns:soap-enc="http://schemas.xmlsoap.org/soap/encoding/"
10    targetNamespace="http://soapinterop.org/attachments/wsdl">
11	<wsdl:types>
12		<schema
13			xmlns="http://www.w3.org/2001/XMLSchema"
14			targetNamespace="http://soapinterop.org/attachments/xsd"
15			elementFormDefault="qualified"
16			attributeFormDefault="qualified">
17
18		<complexType name="binary">
19			<simpleContent>
20				<extension base="xsd:base64Binary">
21					<attribute name="href" type="xsd:anyURI"/>
22				</extension>
23			</simpleContent>
24		</complexType >
25
26		<element name="EchoAttachment" type="types:EchoAttachment"/>
27		<element name="EchoAttachmentResponse" type="types:EchoAttachmentResponse"/>
28		<complexType name="EchoAttachment">
29			<sequence>
30				<element name="In" type="types:binary"/>
31			</sequence>
32		</complexType>
33		<complexType name="EchoAttachmentResponse">
34			<sequence>
35				<element name="Out" type="types:binary"/>
36			</sequence>
37		</complexType>
38
39		<element name="EchoAttachments" type="types:Attachments"/>
40		<element name="EchoAttachmentsResponse" type="types:Attachments"/>
41		<complexType name="Attachments">
42			<sequence>
43				<element name="Item" minOccurs="0" maxOccurs="unbounded" type="types:binary">
44				</element>
45			</sequence>
46		</complexType>
47
48		<element name="EchoAttachmentAsBase64" type="types:EchoAttachment"/>
49		<element name="EchoAttachmentAsBase64Response" type="types:EchoAttachmentResponse"/>
50
51		<element name="EchoBase64AsAttachment" type="types:EchoAttachment"/>
52		<element name="EchoBase64AsAttachmentResponse" type="types:EchoAttachmentResponse"/>
53		</schema>
54	</wsdl:types>
55
56	<wsdl:message name="EchoAttachmentIn">
57		<wsdl:part name="In" element="types:EchoAttachment"/>
58	</wsdl:message>
59	<wsdl:message name="EchoAttachmentOut">
60		<wsdl:part name="Out" element="types:EchoAttachmentResponse"/>
61	</wsdl:message>
62	<wsdl:message name="EchoAttachmentsIn">
63		<wsdl:part name="In" element="types:EchoAttachments"/>
64	</wsdl:message>
65	<wsdl:message name="EchoAttachmentsOut">
66		<wsdl:part name="Out" element="types:EchoAttachmentsResponse"/>
67	</wsdl:message>
68	<wsdl:message name="EchoAttachmentAsBase64In">
69		<wsdl:part name="In" element="types:EchoAttachmentAsBase64"/>
70	</wsdl:message>
71	<wsdl:message name="EchoAttachmentAsBase64Out">
72		<wsdl:part name="Out" element="types:EchoAttachmentAsBase64Response"/>
73	</wsdl:message>
74	<wsdl:message name="EchoBase64AsAttachmentIn">
75		<wsdl:part name="In" element="types:EchoBase64AsAttachment"/>
76	</wsdl:message>
77	<wsdl:message name="EchoBase64AsAttachmentOut">
78		<wsdl:part name="Out" element="types:EchoBase64AsAttachmentResponse"/>
79	</wsdl:message>
80
81	<wsdl:portType name="AttachmentsPortType">
82		<wsdl:operation name="EchoAttachment">
83			<wsdl:input name="EchoAttachmentInput" message="EchoAttachmentIn"/>
84			<wsdl:output name="EchoAttachmentOutput" message="EchoAttachmentOut"/>
85		</wsdl:operation>
86		<wsdl:operation name="EchoAttachments">
87			<wsdl:input name="EchoAttachmentsInput" message="EchoAttachmentsIn"/>
88			<wsdl:output name="EchoAttachmentsOutput" message="EchoAttachmentsOut"/>
89		</wsdl:operation>
90		<wsdl:operation name="EchoAttachmentAsBase64">
91			<wsdl:input name="EchoAttachmentAsBase64Input" message="EchoAttachmentAsBase64In"/>
92			<wsdl:output name="EchoAttachmentAsBase64Output" message="EchoAttachmentAsBase64Out"/>
93		</wsdl:operation>
94		<wsdl:operation name="EchoBase64AsAttachment">
95			<wsdl:input name="EchoBase64AsAttachmentInput" message="EchoBase64AsAttachmentIn"/>
96			<wsdl:output name="EchoBase64AsAttachmentOutput" message="EchoBase64AsAttachmentOut"/>
97		</wsdl:operation>
98	</wsdl:portType>
99	<wsdl:binding name="AttachmentsBinding" type="AttachmentsPortType">
100		<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
101		<wsdl:operation name="EchoAttachment">
102			<soap:operation soapAction="http://soapinterop.org/attachments/"/>
103			<wsdl:input name="EchoAttachmentInput">
104				<mime:multipartRelated>
105					<mime:part>
106						<soap:body use="literal"/>
107					</mime:part>
108					<mime:part>
109						<mime:content part="In" type="application/octetstream"/>
110					</mime:part>
111				</mime:multipartRelated>
112			</wsdl:input>
113			<wsdl:output name="EchoAttachmentOutput">
114				<mime:multipartRelated>
115					<mime:part>
116						<soap:body use="literal" />
117					</mime:part>
118					<mime:part>
119						<mime:content part="Out" type="application/octetstream"/>
120					</mime:part>
121				</mime:multipartRelated>
122			</wsdl:output>
123		</wsdl:operation>
124		<wsdl:operation name="EchoAttachments">
125			<soap:operation soapAction="http://soapinterop.org/attachments/"/>
126			<wsdl:input name="EchoAttachmentsInput">
127				<mime:multipartRelated>
128					<mime:part>
129						<soap:body use="literal"/>
130					</mime:part>
131					<mime:part>
132						<mime:content part="In" type="application/octetstream"/>
133					</mime:part>
134				</mime:multipartRelated>
135			</wsdl:input>
136			<wsdl:output name="EchoAttachmentsOutput">
137				<mime:multipartRelated>
138					<mime:part>
139						<soap:body use="literal"/>
140					</mime:part>
141					<mime:part>
142						<mime:content part="Out" type="application/octetstream"/>
143					</mime:part>
144				</mime:multipartRelated>
145			</wsdl:output>
146		</wsdl:operation>
147		<wsdl:operation name="EchoAttachmentAsBase64">
148			<soap:operation soapAction="http://soapinterop.org/attachments/"/>
149			<wsdl:input name="EchoAttachmentAsBase64Input">
150				<mime:multipartRelated>
151					<mime:part>
152						<soap:body use="literal"/>
153					</mime:part>
154					<mime:part>
155						<mime:content part="In" type="application/octetstream"/>
156					</mime:part>
157				</mime:multipartRelated>
158			</wsdl:input>
159			<wsdl:output name="EchoAttachmentAsBase64Output">
160				<soap:body use="literal"/>
161			</wsdl:output>
162		</wsdl:operation>
163		<wsdl:operation name="EchoBase64AsAttachment">
164			<soap:operation soapAction="http://soapinterop.org/attachments/"/>
165			<wsdl:input name="EchoBase64AsAttachmentInput">
166				<soap:body use="literal" />
167			</wsdl:input>
168			<wsdl:output name="EchoBase64AsAttachmentOutput">
169				<mime:multipartRelated>
170					<mime:part>
171						<soap:body use="literal"/>
172					</mime:part>
173					<mime:part>
174						<mime:content part="Out" type="application/octetstream"/>
175					</mime:part>
176				</mime:multipartRelated>
177			</wsdl:output>
178		</wsdl:operation>
179	</wsdl:binding>
180  <wsdl:service name="Round4MIMEDOC">
181    <wsdl:port name="Round4MIMEDOCTestSoap" binding="AttachmentsBinding">
182      <soap:address location="test://" />
183    </wsdl:port>
184  </wsdl:service>
185</wsdl:definitions>