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 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated by  doxygen 1.6.2