soap-encoding12.xsd

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

Generated by  doxygen 1.6.2