soap-encoding.xsd
Go to the documentation of this file.00001 <?xml version='1.0' encoding='UTF-8' ?>
00002
00003 <!-- Schema for the SOAP/1.1 encoding
00004
00005 This schema has been produced using W3C's SOAP Version 1.2 schema
00006 found at:
00007
00008 http://www.w3.org/2001/06/soap-encoding
00009
00010 Copyright 2001 Martin Gudgin, Developmentor.
00011 http://www.develop.co.uk
00012
00013 Changes made are the following:
00014 - reverted namespace to http://schemas.xmlsoap.org/soap/encoding/
00015 - reverted root to only allow 0 and 1 as lexical values
00016
00017 Further changes:
00018
00019 - removed default value from root attribute declaration - 20030314
00020
00021 Original copyright:
00022
00023 Copyright 2001 W3C (Massachusetts Institute of Technology,
00024 Institut National de Recherche en Informatique et en Automatique,
00025 Keio University). All Rights Reserved.
00026 http://www.w3.org/Consortium/Legal/
00027
00028 This document is governed by the W3C Software License [1] as
00029 described in the FAQ [2].
00030
00031 [1] http://www.w3.org/Consortium/Legal/copyright-software-19980720
00032 [2] http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620.html#DTD
00033 -->
00034 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
00035 xmlns:tns="http://schemas.xmlsoap.org/soap/encoding/"
00036 targetNamespace="http://schemas.xmlsoap.org/soap/encoding/" >
00037
00038 <xs:attribute name="root" >
00039 <xs:annotation>
00040 <xs:documentation>
00041 'root' can be used to distinguish serialization roots from other
00042 elements that are present in a serialization but are not roots of
00043 a serialized value graph
00044 </xs:documentation>
00045 </xs:annotation>
00046 <xs:simpleType>
00047 <xs:restriction base='xs:boolean'>
00048 <xs:pattern value='0|1' />
00049 </xs:restriction>
00050 </xs:simpleType>
00051 </xs:attribute>
00052
00053 <xs:attributeGroup name="commonAttributes" >
00054 <xs:annotation>
00055 <xs:documentation>
00056 Attributes common to all elements that function as accessors or
00057 represent independent (multi-ref) values. The href attribute is
00058 intended to be used in a manner like CONREF. That is, the element
00059 content should be empty iff the href attribute appears
00060 </xs:documentation>
00061 </xs:annotation>
00062 <xs:attribute name="id" type="xs:ID" />
00063 <xs:attribute name="href" type="xs:anyURI" />
00064 <xs:anyAttribute namespace="##other" processContents="lax" />
00065 </xs:attributeGroup>
00066
00067 <!-- Global Attributes. The following attributes are intended to be usable via qualified attribute names on any complex type referencing them. -->
00068
00069 <!-- Array attributes. Needed to give the type and dimensions of an array's contents, and the offset for partially-transmitted arrays. -->
00070
00071 <xs:simpleType name="arrayCoordinate" >
00072 <xs:restriction base="xs:string" />
00073 </xs:simpleType>
00074
00075 <xs:attribute name="arrayType" type="xs:string" />
00076 <xs:attribute name="offset" type="tns:arrayCoordinate" />
00077
00078 <xs:attributeGroup name="arrayAttributes" >
00079 <xs:attribute ref="tns:arrayType" />
00080 <xs:attribute ref="tns:offset" />
00081 </xs:attributeGroup>
00082
00083 <xs:attribute name="position" type="tns:arrayCoordinate" />
00084
00085 <xs:attributeGroup name="arrayMemberAttributes" >
00086 <xs:attribute ref="tns:position" />
00087 </xs:attributeGroup>
00088
00089 <xs:group name="Array" >
00090 <xs:sequence>
00091 <xs:any namespace="##any" minOccurs="0" maxOccurs="unbounded" processContents="lax" />
00092 </xs:sequence>
00093 </xs:group>
00094
00095 <xs:element name="Array" type="tns:Array" />
00096 <xs:complexType name="Array" >
00097 <xs:annotation>
00098 <xs:documentation>
00099 'Array' is a complex type for accessors identified by position
00100 </xs:documentation>
00101 </xs:annotation>
00102 <xs:group ref="tns:Array" minOccurs="0" />
00103 <xs:attributeGroup ref="tns:arrayAttributes" />
00104 <xs:attributeGroup ref="tns:commonAttributes" />
00105 </xs:complexType>
00106
00107 <!-- 'Struct' is a complex type for accessors identified by name.
00108 Constraint: No element may be have the same name as any other,
00109 nor may any element have a maxOccurs > 1. -->
00110
00111 <xs:element name="Struct" type="tns:Struct" />
00112
00113 <xs:group name="Struct" >
00114 <xs:sequence>
00115 <xs:any namespace="##any" minOccurs="0" maxOccurs="unbounded" processContents="lax" />
00116 </xs:sequence>
00117 </xs:group>
00118
00119 <xs:complexType name="Struct" >
00120 <xs:group ref="tns:Struct" minOccurs="0" />
00121 <xs:attributeGroup ref="tns:commonAttributes"/>
00122 </xs:complexType>
00123
00124 <!-- 'Base64' can be used to serialize binary data using base64 encoding
00125 as defined in RFC2045 but without the MIME line length limitation. -->
00126
00127 <xs:simpleType name="base64" >
00128 <xs:restriction base="xs:base64Binary" />
00129 </xs:simpleType>
00130
00131 <!-- Element declarations corresponding to each of the simple types in the
00132 XML Schemas Specification. -->
00133
00134 <xs:element name="duration" type="tns:duration" />
00135 <xs:complexType name="duration" >
00136 <xs:simpleContent>
00137 <xs:extension base="xs:duration" >
00138 <xs:attributeGroup ref="tns:commonAttributes" />
00139 </xs:extension>
00140 </xs:simpleContent>
00141 </xs:complexType>
00142
00143 <xs:element name="dateTime" type="tns:dateTime" />
00144 <xs:complexType name="dateTime" >
00145 <xs:simpleContent>
00146 <xs:extension base="xs:dateTime" >
00147 <xs:attributeGroup ref="tns:commonAttributes" />
00148 </xs:extension>
00149 </xs:simpleContent>
00150 </xs:complexType>
00151
00152
00153
00154 <xs:element name="NOTATION" type="tns:NOTATION" />
00155 <xs:complexType name="NOTATION" >
00156 <xs:simpleContent>
00157 <xs:extension base="xs:QName" >
00158 <xs:attributeGroup ref="tns:commonAttributes" />
00159 </xs:extension>
00160 </xs:simpleContent>
00161 </xs:complexType>
00162
00163
00164 <xs:element name="time" type="tns:time" />
00165 <xs:complexType name="time" >
00166 <xs:simpleContent>
00167 <xs:extension base="xs:time" >
00168 <xs:attributeGroup ref="tns:commonAttributes" />
00169 </xs:extension>
00170 </xs:simpleContent>
00171 </xs:complexType>
00172
00173 <xs:element name="date" type="tns:date" />
00174 <xs:complexType name="date" >
00175 <xs:simpleContent>
00176 <xs:extension base="xs:date" >
00177 <xs:attributeGroup ref="tns:commonAttributes" />
00178 </xs:extension>
00179 </xs:simpleContent>
00180 </xs:complexType>
00181
00182 <xs:element name="gYearMonth" type="tns:gYearMonth" />
00183 <xs:complexType name="gYearMonth" >
00184 <xs:simpleContent>
00185 <xs:extension base="xs:gYearMonth" >
00186 <xs:attributeGroup ref="tns:commonAttributes" />
00187 </xs:extension>
00188 </xs:simpleContent>
00189 </xs:complexType>
00190
00191 <xs:element name="gYear" type="tns:gYear" />
00192 <xs:complexType name="gYear" >
00193 <xs:simpleContent>
00194 <xs:extension base="xs:gYear" >
00195 <xs:attributeGroup ref="tns:commonAttributes" />
00196 </xs:extension>
00197 </xs:simpleContent>
00198 </xs:complexType>
00199
00200 <xs:element name="gMonthDay" type="tns:gMonthDay" />
00201 <xs:complexType name="gMonthDay" >
00202 <xs:simpleContent>
00203 <xs:extension base="xs:gMonthDay" >
00204 <xs:attributeGroup ref="tns:commonAttributes" />
00205 </xs:extension>
00206 </xs:simpleContent>
00207 </xs:complexType>
00208
00209 <xs:element name="gDay" type="tns:gDay" />
00210 <xs:complexType name="gDay" >
00211 <xs:simpleContent>
00212 <xs:extension base="xs:gDay" >
00213 <xs:attributeGroup ref="tns:commonAttributes" />
00214 </xs:extension>
00215 </xs:simpleContent>
00216 </xs:complexType>
00217
00218 <xs:element name="gMonth" type="tns:gMonth" />
00219 <xs:complexType name="gMonth" >
00220 <xs:simpleContent>
00221 <xs:extension base="xs:gMonth" >
00222 <xs:attributeGroup ref="tns:commonAttributes" />
00223 </xs:extension>
00224 </xs:simpleContent>
00225 </xs:complexType>
00226
00227 <xs:element name="boolean" type="tns:boolean" />
00228 <xs:complexType name="boolean" >
00229 <xs:simpleContent>
00230 <xs:extension base="xs:boolean" >
00231 <xs:attributeGroup ref="tns:commonAttributes" />
00232 </xs:extension>
00233 </xs:simpleContent>
00234 </xs:complexType>
00235
00236 <xs:element name="base64Binary" type="tns:base64Binary" />
00237 <xs:complexType name="base64Binary" >
00238 <xs:simpleContent>
00239 <xs:extension base="xs:base64Binary" >
00240 <xs:attributeGroup ref="tns:commonAttributes" />
00241 </xs:extension>
00242 </xs:simpleContent>
00243 </xs:complexType>
00244
00245 <xs:element name="hexBinary" type="tns:hexBinary" />
00246 <xs:complexType name="hexBinary" >
00247 <xs:simpleContent>
00248 <xs:extension base="xs:hexBinary" >
00249 <xs:attributeGroup ref="tns:commonAttributes" />
00250 </xs:extension>
00251 </xs:simpleContent>
00252 </xs:complexType>
00253
00254 <xs:element name="float" type="tns:float" />
00255 <xs:complexType name="float" >
00256 <xs:simpleContent>
00257 <xs:extension base="xs:float" >
00258 <xs:attributeGroup ref="tns:commonAttributes" />
00259 </xs:extension>
00260 </xs:simpleContent>
00261 </xs:complexType>
00262
00263 <xs:element name="double" type="tns:double" />
00264 <xs:complexType name="double" >
00265 <xs:simpleContent>
00266 <xs:extension base="xs:double" >
00267 <xs:attributeGroup ref="tns:commonAttributes" />
00268 </xs:extension>
00269 </xs:simpleContent>
00270 </xs:complexType>
00271
00272 <xs:element name="anyURI" type="tns:anyURI" />
00273 <xs:complexType name="anyURI" >
00274 <xs:simpleContent>
00275 <xs:extension base="xs:anyURI" >
00276 <xs:attributeGroup ref="tns:commonAttributes" />
00277 </xs:extension>
00278 </xs:simpleContent>
00279 </xs:complexType>
00280
00281 <xs:element name="QName" type="tns:QName" />
00282 <xs:complexType name="QName" >
00283 <xs:simpleContent>
00284 <xs:extension base="xs:QName" >
00285 <xs:attributeGroup ref="tns:commonAttributes" />
00286 </xs:extension>
00287 </xs:simpleContent>
00288 </xs:complexType>
00289
00290
00291 <xs:element name="string" type="tns:string" />
00292 <xs:complexType name="string" >
00293 <xs:simpleContent>
00294 <xs:extension base="xs:string" >
00295 <xs:attributeGroup ref="tns:commonAttributes" />
00296 </xs:extension>
00297 </xs:simpleContent>
00298 </xs:complexType>
00299
00300 <xs:element name="normalizedString" type="tns:normalizedString" />
00301 <xs:complexType name="normalizedString" >
00302 <xs:simpleContent>
00303 <xs:extension base="xs:normalizedString" >
00304 <xs:attributeGroup ref="tns:commonAttributes" />
00305 </xs:extension>
00306 </xs:simpleContent>
00307 </xs:complexType>
00308
00309 <xs:element name="token" type="tns:token" />
00310 <xs:complexType name="token" >
00311 <xs:simpleContent>
00312 <xs:extension base="xs:token" >
00313 <xs:attributeGroup ref="tns:commonAttributes" />
00314 </xs:extension>
00315 </xs:simpleContent>
00316 </xs:complexType>
00317
00318 <xs:element name="language" type="tns:language" />
00319 <xs:complexType name="language" >
00320 <xs:simpleContent>
00321 <xs:extension base="xs:language" >
00322 <xs:attributeGroup ref="tns:commonAttributes" />
00323 </xs:extension>
00324 </xs:simpleContent>
00325 </xs:complexType>
00326
00327 <xs:element name="Name" type="tns:Name" />
00328 <xs:complexType name="Name" >
00329 <xs:simpleContent>
00330 <xs:extension base="xs:Name" >
00331 <xs:attributeGroup ref="tns:commonAttributes" />
00332 </xs:extension>
00333 </xs:simpleContent>
00334 </xs:complexType>
00335
00336 <xs:element name="NMTOKEN" type="tns:NMTOKEN" />
00337 <xs:complexType name="NMTOKEN" >
00338 <xs:simpleContent>
00339 <xs:extension base="xs:NMTOKEN" >
00340 <xs:attributeGroup ref="tns:commonAttributes" />
00341 </xs:extension>
00342 </xs:simpleContent>
00343 </xs:complexType>
00344
00345 <xs:element name="NCName" type="tns:NCName" />
00346 <xs:complexType name="NCName" >
00347 <xs:simpleContent>
00348 <xs:extension base="xs:NCName" >
00349 <xs:attributeGroup ref="tns:commonAttributes" />
00350 </xs:extension>
00351 </xs:simpleContent>
00352 </xs:complexType>
00353
00354 <xs:element name="NMTOKENS" type="tns:NMTOKENS" />
00355 <xs:complexType name="NMTOKENS" >
00356 <xs:simpleContent>
00357 <xs:extension base="xs:NMTOKENS" >
00358 <xs:attributeGroup ref="tns:commonAttributes" />
00359 </xs:extension>
00360 </xs:simpleContent>
00361 </xs:complexType>
00362
00363 <xs:element name="ID" type="tns:ID" />
00364 <xs:complexType name="ID" >
00365 <xs:simpleContent>
00366 <xs:extension base="xs:ID" >
00367 <xs:attributeGroup ref="tns:commonAttributes" />
00368 </xs:extension>
00369 </xs:simpleContent>
00370 </xs:complexType>
00371
00372 <xs:element name="IDREF" type="tns:IDREF" />
00373 <xs:complexType name="IDREF" >
00374 <xs:simpleContent>
00375 <xs:extension base="xs:IDREF" >
00376 <xs:attributeGroup ref="tns:commonAttributes" />
00377 </xs:extension>
00378 </xs:simpleContent>
00379 </xs:complexType>
00380
00381 <xs:element name="ENTITY" type="tns:ENTITY" />
00382 <xs:complexType name="ENTITY" >
00383 <xs:simpleContent>
00384 <xs:extension base="xs:ENTITY" >
00385 <xs:attributeGroup ref="tns:commonAttributes" />
00386 </xs:extension>
00387 </xs:simpleContent>
00388 </xs:complexType>
00389
00390 <xs:element name="IDREFS" type="tns:IDREFS" />
00391 <xs:complexType name="IDREFS" >
00392 <xs:simpleContent>
00393 <xs:extension base="xs:IDREFS" >
00394 <xs:attributeGroup ref="tns:commonAttributes" />
00395 </xs:extension>
00396 </xs:simpleContent>
00397 </xs:complexType>
00398
00399 <xs:element name="ENTITIES" type="tns:ENTITIES" />
00400 <xs:complexType name="ENTITIES" >
00401 <xs:simpleContent>
00402 <xs:extension base="xs:ENTITIES" >
00403 <xs:attributeGroup ref="tns:commonAttributes" />
00404 </xs:extension>
00405 </xs:simpleContent>
00406 </xs:complexType>
00407
00408 <xs:element name="decimal" type="tns:decimal" />
00409 <xs:complexType name="decimal" >
00410 <xs:simpleContent>
00411 <xs:extension base="xs:decimal" >
00412 <xs:attributeGroup ref="tns:commonAttributes" />
00413 </xs:extension>
00414 </xs:simpleContent>
00415 </xs:complexType>
00416
00417 <xs:element name="integer" type="tns:integer" />
00418 <xs:complexType name="integer" >
00419 <xs:simpleContent>
00420 <xs:extension base="xs:integer" >
00421 <xs:attributeGroup ref="tns:commonAttributes" />
00422 </xs:extension>
00423 </xs:simpleContent>
00424 </xs:complexType>
00425
00426 <xs:element name="nonPositiveInteger" type="tns:nonPositiveInteger" />
00427 <xs:complexType name="nonPositiveInteger" >
00428 <xs:simpleContent>
00429 <xs:extension base="xs:nonPositiveInteger" >
00430 <xs:attributeGroup ref="tns:commonAttributes" />
00431 </xs:extension>
00432 </xs:simpleContent>
00433 </xs:complexType>
00434
00435 <xs:element name="negativeInteger" type="tns:negativeInteger" />
00436 <xs:complexType name="negativeInteger" >
00437 <xs:simpleContent>
00438 <xs:extension base="xs:negativeInteger" >
00439 <xs:attributeGroup ref="tns:commonAttributes" />
00440 </xs:extension>
00441 </xs:simpleContent>
00442 </xs:complexType>
00443
00444 <xs:element name="long" type="tns:long" />
00445 <xs:complexType name="long" >
00446 <xs:simpleContent>
00447 <xs:extension base="xs:long" >
00448 <xs:attributeGroup ref="tns:commonAttributes" />
00449 </xs:extension>
00450 </xs:simpleContent>
00451 </xs:complexType>
00452
00453 <xs:element name="int" type="tns:int" />
00454 <xs:complexType name="int" >
00455 <xs:simpleContent>
00456 <xs:extension base="xs:int" >
00457 <xs:attributeGroup ref="tns:commonAttributes" />
00458 </xs:extension>
00459 </xs:simpleContent>
00460 </xs:complexType>
00461
00462 <xs:element name="short" type="tns:short" />
00463 <xs:complexType name="short" >
00464 <xs:simpleContent>
00465 <xs:extension base="xs:short" >
00466 <xs:attributeGroup ref="tns:commonAttributes" />
00467 </xs:extension>
00468 </xs:simpleContent>
00469 </xs:complexType>
00470
00471 <xs:element name="byte" type="tns:byte" />
00472 <xs:complexType name="byte" >
00473 <xs:simpleContent>
00474 <xs:extension base="xs:byte" >
00475 <xs:attributeGroup ref="tns:commonAttributes" />
00476 </xs:extension>
00477 </xs:simpleContent>
00478 </xs:complexType>
00479
00480 <xs:element name="nonNegativeInteger" type="tns:nonNegativeInteger" />
00481 <xs:complexType name="nonNegativeInteger" >
00482 <xs:simpleContent>
00483 <xs:extension base="xs:nonNegativeInteger" >
00484 <xs:attributeGroup ref="tns:commonAttributes" />
00485 </xs:extension>
00486 </xs:simpleContent>
00487 </xs:complexType>
00488
00489 <xs:element name="unsignedLong" type="tns:unsignedLong" />
00490 <xs:complexType name="unsignedLong" >
00491 <xs:simpleContent>
00492 <xs:extension base="xs:unsignedLong" >
00493 <xs:attributeGroup ref="tns:commonAttributes" />
00494 </xs:extension>
00495 </xs:simpleContent>
00496 </xs:complexType>
00497
00498 <xs:element name="unsignedInt" type="tns:unsignedInt" />
00499 <xs:complexType name="unsignedInt" >
00500 <xs:simpleContent>
00501 <xs:extension base="xs:unsignedInt" >
00502 <xs:attributeGroup ref="tns:commonAttributes" />
00503 </xs:extension>
00504 </xs:simpleContent>
00505 </xs:complexType>
00506
00507 <xs:element name="unsignedShort" type="tns:unsignedShort" />
00508 <xs:complexType name="unsignedShort" >
00509 <xs:simpleContent>
00510 <xs:extension base="xs:unsignedShort" >
00511 <xs:attributeGroup ref="tns:commonAttributes" />
00512 </xs:extension>
00513 </xs:simpleContent>
00514 </xs:complexType>
00515
00516 <xs:element name="unsignedByte" type="tns:unsignedByte" />
00517 <xs:complexType name="unsignedByte" >
00518 <xs:simpleContent>
00519 <xs:extension base="xs:unsignedByte" >
00520 <xs:attributeGroup ref="tns:commonAttributes" />
00521 </xs:extension>
00522 </xs:simpleContent>
00523 </xs:complexType>
00524
00525 <xs:element name="positiveInteger" type="tns:positiveInteger" />
00526 <xs:complexType name="positiveInteger" >
00527 <xs:simpleContent>
00528 <xs:extension base="xs:positiveInteger" >
00529 <xs:attributeGroup ref="tns:commonAttributes" />
00530 </xs:extension>
00531 </xs:simpleContent>
00532 </xs:complexType>
00533
00534 <xs:element name="anyType" />
00535 </xs:schema>
00536