wsdlpull  1.23
wsdl10.xsd
Go to the documentation of this file.
1 <schema xmlns="http://www.w3.org/2001/XMLSchema"
2  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
3  targetNamespace="http://schemas.xmlsoap.org/wsdl/"
4  elementFormDefault="qualified">
5 <element name="documentation">
6 <complexType mixed="true">
7 <choice minOccurs="0" maxOccurs="unbounded">
8 <any minOccurs="0" maxOccurs="unbounded"/>
9 </choice>
10 <anyAttribute/>
11 </complexType>
12 </element>
13 <complexType name="documented" abstract="true">
14 <sequence>
15 <element ref="wsdl:documentation" minOccurs="0"/>
16 </sequence>
17 </complexType>
18 <complexType name="openAtts" abstract="true">
19 <annotation>
20 <documentation>
21 This type is extended by component types
22  to allow attributes from other namespaces to be added.
23  </documentation>
24 </annotation>
25 <sequence>
26 <element ref="wsdl:documentation" minOccurs="0"/>
27 </sequence>
28 <anyAttribute namespace="##other"/>
29 </complexType>
30 <element name="definitions" type="wsdl:definitionsType">
31 <key name="message">
32 <selector xpath="message"/>
33 <field xpath="@name"/>
34 </key>
35 <key name="portType">
36 <selector xpath="portType"/>
37 <field xpath="@name"/>
38 </key>
39 <key name="binding">
40 <selector xpath="binding"/>
41 <field xpath="@name"/>
42 </key>
43 <key name="service">
44 <selector xpath="service"/>
45 <field xpath="@name"/>
46 </key>
47 <key name="import">
48 <selector xpath="import"/>
49 <field xpath="@namespace"/>
50 </key>
51 <key name="port">
52 <selector xpath="service/port"/>
53 <field xpath="@name"/>
54 </key>
55 </element>
56 <complexType name="definitionsType">
57 <complexContent>
58 <extension base="wsdl:documented">
59 <sequence>
60 <element ref="wsdl:import" minOccurs="0" maxOccurs="unbounded"/>
61 <element ref="wsdl:types" minOccurs="0"/>
62 <element ref="wsdl:message" minOccurs="0" maxOccurs="unbounded"/>
63 <element ref="wsdl:portType" minOccurs="0" maxOccurs="unbounded"/>
64 <element ref="wsdl:binding" minOccurs="0" maxOccurs="unbounded"/>
65 <element ref="wsdl:service" minOccurs="0" maxOccurs="unbounded"/>
66 <any namespace="##other" minOccurs="0" maxOccurs="unbounded">
67 <annotation>
68 <documentation>to support extensibility elements </documentation>
69 </annotation>
70 </any>
71 </sequence>
72 <attribute name="targetNamespace" type="uriReference" use="optional"/>
73 <attribute name="name" type="NMTOKEN" use="optional"/>
74 </extension>
75 </complexContent>
76 </complexType>
77 <element name="import" type="wsdl:importType"/>
78 <complexType name="importType">
79 <complexContent>
80 <extension base="wsdl:documented">
81 <attribute name="namespace" type="uriReference" use="required"/>
82 <attribute name="location" type="uriReference" use="required"/>
83 </extension>
84 </complexContent>
85 </complexType>
86 <element name="types" type="wsdl:typesType"/>
87 <complexType name="typesType">
88 <complexContent>
89 <extension base="wsdl:documented">
90 <sequence>
91 <any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
92 </sequence>
93 </extension>
94 </complexContent>
95 </complexType>
96 <element name="message" type="wsdl:messageType">
97 <unique name="part">
98 <selector xpath="part"/>
99 <field xpath="@name"/>
100 </unique>
101 </element>
102 <complexType name="messageType">
103 <complexContent>
104 <extension base="wsdl:documented">
105 <sequence>
106 <element ref="wsdl:part" minOccurs="0" maxOccurs="unbounded"/>
107 </sequence>
108 <attribute name="name" type="NCName" use="required"/>
109 </extension>
110 </complexContent>
111 </complexType>
112 <element name="part" type="wsdl:partType"/>
113 <complexType name="partType">
114 <complexContent>
115 <extension base="wsdl:openAtts">
116 <attribute name="name" type="NMTOKEN" use="optional"/>
117 <attribute name="type" type="QName" use="optional"/>
118 <attribute name="element" type="QName" use="optional"/>
119 </extension>
120 </complexContent>
121 </complexType>
122 <element name="portType" type="wsdl:portTypeType"/>
123 <complexType name="portTypeType">
124 <complexContent>
125 <extension base="wsdl:documented">
126 <sequence>
127 <element ref="wsdl:operation" minOccurs="0" maxOccurs="unbounded"/>
128 </sequence>
129 <attribute name="name" type="NCName" use="required"/>
130 </extension>
131 </complexContent>
132 </complexType>
133 <element name="operation" type="wsdl:operationType"/>
134 <complexType name="operationType">
135 <complexContent>
136 <extension base="wsdl:documented">
137 <choice>
138 <group ref="wsdl:one-way-operation"/>
139 <group ref="wsdl:request-response-operation"/>
140 <group ref="wsdl:solicit-response-operation"/>
141 <group ref="wsdl:notification-operation"/>
142 </choice>
143 <attribute name="name" type="NCName" use="required"/>
144 </extension>
145 </complexContent>
146 </complexType>
147 <group name="one-way-operation">
148 <sequence>
149 <element ref="wsdl:input"/>
150 </sequence>
151 </group>
152 <group name="request-response-operation">
153 <sequence>
154 <element ref="wsdl:input"/>
155 <element ref="wsdl:output"/>
156 <element ref="wsdl:fault" minOccurs="0" maxOccurs="unbounded"/>
157 </sequence>
158 </group>
159 <group name="solicit-response-operation">
160 <sequence>
161 <element ref="wsdl:output"/>
162 <element ref="wsdl:input"/>
163 <element ref="wsdl:fault" minOccurs="0" maxOccurs="unbounded"/>
164 </sequence>
165 </group>
166 <group name="notification-operation">
167 <sequence>
168 <element ref="wsdl:output"/>
169 </sequence>
170 </group>
171 <element name="input" type="wsdl:paramType"/>
172 <element name="output" type="wsdl:paramType"/>
173 <element name="fault" type="wsdl:faultType"/>
174 <complexType name="paramType">
175 <complexContent>
176 <extension base="wsdl:documented">
177 <attribute name="name" type="NMTOKEN" use="optional"/>
178 <attribute name="message" type="QName" use="required"/>
179 </extension>
180 </complexContent>
181 </complexType>
182 <complexType name="faultType">
183 <complexContent>
184 <extension base="wsdl:documented">
185 <attribute name="name" type="NMTOKEN" use="required"/>
186 <attribute name="message" type="QName" use="required"/>
187 </extension>
188 </complexContent>
189 </complexType>
190 <complexType name="startWithExtensionsType" abstract="true">
191 <complexContent>
192 <extension base="wsdl:documented">
193 <sequence>
194 <any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
195 </sequence>
196 </extension>
197 </complexContent>
198 </complexType>
199 <element name="binding" type="wsdl:bindingType"/>
200 <complexType name="bindingType">
201 <complexContent>
202 <extension base="wsdl:startWithExtensionsType">
203 <sequence>
204 <element name="operation" type="wsdl:binding_operationType" minOccurs="0" maxOccurs="unbounded"/>
205 </sequence>
206 <attribute name="name" type="NCName" use="required"/>
207 <attribute name="type" type="QName" use="required"/>
208 </extension>
209 </complexContent>
210 </complexType>
211 <complexType name="binding_operationType">
212 <complexContent>
213 <extension base="wsdl:startWithExtensionsType">
214 <sequence>
215 <element name="input" type="wsdl:startWithExtensionsType" minOccurs="0"/>
216 <element name="output" type="wsdl:startWithExtensionsType" minOccurs="0"/>
217 <element name="fault" minOccurs="0" maxOccurs="unbounded">
218 <complexType>
219 <complexContent>
220 <extension base="wsdl:startWithExtensionsType">
221 <attribute name="name" type="NMTOKEN" use="required"/>
222 </extension>
223 </complexContent>
224 </complexType>
225 </element>
226 </sequence>
227 <attribute name="name" type="NCName" use="required"/>
228 </extension>
229 </complexContent>
230 </complexType>
231 <element name="service" type="wsdl:serviceType"/>
232 <complexType name="serviceType">
233 <complexContent>
234 <extension base="wsdl:documented">
235 <sequence>
236 <element ref="wsdl:port" minOccurs="0" maxOccurs="unbounded"/>
237 <any namespace="##other" minOccurs="0"/>
238 </sequence>
239 <attribute name="name" type="NCName" use="required"/>
240 </extension>
241 </complexContent>
242 </complexType>
243 <element name="port" type="wsdl:portType"/>
244 <complexType name="portType">
245 <complexContent>
246 <extension base="wsdl:documented">
247 <sequence>
248 <any namespace="##other" minOccurs="0"/>
249 </sequence>
250 <attribute name="name" type="NCName" use="required"/>
251 <attribute name="binding" type="QName" use="required"/>
252 </extension>
253 </complexContent>
254 </complexType>
255 <attribute name="arrayType" type="string"/>
256 </schema>
257