[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/lib/xmldb/ -> xmldb.xsd (source)

   1  <?xml version="1.0" encoding="UTF-8" ?>
   2  
   3  <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
   4    <xs:simpleType name="trueFalse" >
   5      <xs:restriction base="xs:NMTOKEN" >
   6       <xs:enumeration value="true" />
   7       <xs:enumeration value="false" />
   8      </xs:restriction >
   9    </xs:simpleType >
  10  
  11    <xs:simpleType name="tableName" >
  12      <xs:restriction base="xs:string" >
  13       <xs:pattern value='[0-9a-z_]{1,28}'/>
  14      </xs:restriction >
  15    </xs:simpleType >
  16  
  17    <xs:simpleType name="fieldName" >
  18      <xs:restriction base="xs:string" >
  19       <xs:pattern value='[0-9a-z_]{1,30}'/>
  20      </xs:restriction >
  21    </xs:simpleType >
  22  
  23    <xs:simpleType name="fieldType">
  24      <xs:restriction base="xs:NMTOKEN">
  25        <xs:enumeration value="int" />
  26        <xs:enumeration value="number" />
  27        <xs:enumeration value="float" />
  28        <xs:enumeration value="char" />
  29        <xs:enumeration value="text" />
  30        <xs:enumeration value="binary" />
  31        <xs:enumeration value="datetime" />
  32      </xs:restriction>
  33    </xs:simpleType>
  34  
  35    <xs:simpleType name="fieldLength" >
  36      <xs:restriction base="xs:string" >
  37      <!-- TODO: Moodle 2.5 - Drop LOB sizes, keep only numbers -->
  38       <xs:pattern value='(\d+)|(small|medium|big)'/>
  39      </xs:restriction >
  40    </xs:simpleType >
  41  
  42    <xs:simpleType name="fieldsList" >
  43      <xs:restriction base="xs:string" >
  44       <xs:pattern value='[0-9a-z_, ]+'/>
  45      </xs:restriction >
  46    </xs:simpleType >
  47  
  48    <xs:simpleType name="keyType">
  49      <xs:restriction base="xs:NMTOKEN">
  50        <xs:enumeration value="primary" />
  51        <xs:enumeration value="unique" />
  52        <xs:enumeration value="foreign" />
  53        <xs:enumeration value="foreign-unique" />
  54      </xs:restriction>
  55    </xs:simpleType>
  56  
  57  
  58    <xs:element name="FIELD">
  59      <xs:complexType>
  60        <xs:attribute name="NAME"       type="fieldName"   use="required" />
  61        <xs:attribute name="SEQUENCE"   type="trueFalse"   use="required" />
  62        <xs:attribute name="TYPE"       type="fieldType"   use="required" />
  63        <xs:attribute name="LENGTH"     type="fieldLength" use="optional" />
  64        <xs:attribute name="NOTNULL"    type="trueFalse"   use="required" />
  65        <xs:attribute name="DECIMALS"   type="xs:positiveInteger" use="optional" />
  66        <!-- TODO: Moodle 2.4 - Drop ignored UNSIGNED attribute -->
  67        <xs:attribute name="UNSIGNED"   type="trueFalse"   use="optional" />
  68        <xs:attribute name="DEFAULT"    type="xs:string"   use="optional" />
  69        <xs:attribute name="COMMENT"    type="xs:string"   use="optional" />
  70        <!-- TODO: Moodle 2.6 - Drop ignored PREVIOUS/NEXT attributes -->
  71        <xs:attribute name="PREVIOUS"   type="fieldName"   use="optional" />
  72        <xs:attribute name="NEXT"       type="fieldName"   use="optional" />
  73      </xs:complexType>
  74    </xs:element>
  75  
  76    <xs:element name="FIELDS">
  77      <xs:complexType>
  78        <xs:sequence>
  79          <xs:element ref="FIELD" maxOccurs="unbounded" />
  80        </xs:sequence>
  81      </xs:complexType>
  82    </xs:element>
  83  
  84    <xs:element name="INDEX">
  85      <xs:complexType>
  86        <xs:attribute name="NAME"     type="xs:NMTOKEN" use="required" />
  87        <xs:attribute name="UNIQUE"   type="trueFalse"  use="required" />
  88        <xs:attribute name="FIELDS"   type="fieldsList" use="required" />
  89        <xs:attribute name="HINTS"    type="xs:string"  use="optional" />
  90        <xs:attribute name="COMMENT"  type="xs:string"  use="optional" />
  91        <!-- TODO: Moodle 2.6 - Drop ignored PREVIOUS/NEXT attributes -->
  92        <xs:attribute name="PREVIOUS" type="xs:NMTOKEN" use="optional" />
  93        <xs:attribute name="NEXT"     type="xs:NMTOKEN" use="optional" />
  94      </xs:complexType>
  95    </xs:element>
  96  
  97    <xs:element name="INDEXES">
  98      <xs:complexType>
  99        <xs:sequence>
 100          <xs:element ref="INDEX" maxOccurs="unbounded" />
 101        </xs:sequence>
 102      </xs:complexType>
 103    </xs:element>
 104  
 105    <xs:element name="KEY">
 106      <xs:complexType>
 107        <xs:attribute name="NAME"      type="xs:NMTOKEN" use="required" />
 108        <xs:attribute name="TYPE"      type="keyType"    use="required" />
 109        <xs:attribute name="FIELDS"    type="fieldsList" use="required" />
 110        <xs:attribute name="REFTABLE"  type="tableName"  use="optional" />
 111        <xs:attribute name="REFFIELDS" type="fieldsList" use="optional" />
 112        <xs:attribute name="COMMENT"   type="xs:string"  use="optional" />
 113        <!-- TODO: Moodle 2.6 - Drop ignored PREVIOUS/NEXT attributes -->
 114        <xs:attribute name="PREVIOUS"  type="xs:NMTOKEN" use="optional" />
 115        <xs:attribute name="NEXT"      type="xs:NMTOKEN" use="optional" />
 116      </xs:complexType>
 117    </xs:element>
 118  
 119    <xs:element name="KEYS">
 120      <xs:complexType>
 121        <xs:sequence>
 122          <xs:element ref="KEY" maxOccurs="unbounded" />
 123        </xs:sequence>
 124      </xs:complexType>
 125    </xs:element>
 126  
 127    <xs:element name="SENTENCE">
 128      <xs:complexType>
 129        <xs:attribute name="TEXT" type="xs:string" use="required" />
 130      </xs:complexType>
 131    </xs:element>
 132  
 133    <xs:element name="SENTENCES">
 134      <xs:complexType>
 135        <xs:sequence>
 136          <xs:element ref="SENTENCE" maxOccurs="unbounded" />
 137        </xs:sequence>
 138      </xs:complexType>
 139    </xs:element>
 140  
 141    <xs:element name="TABLE">
 142      <xs:complexType>
 143        <xs:sequence>
 144          <xs:element ref="FIELDS" />
 145          <xs:element ref="KEYS"    minOccurs="0" />
 146          <xs:element ref="INDEXES" minOccurs="0" />
 147        </xs:sequence>
 148        <xs:attribute name="NAME"     type="tableName" use="required" />
 149        <xs:attribute name="COMMENT"  type="xs:string" use="optional" />
 150        <!-- TODO: Moodle 2.6 - Drop ignored PREVIOUS/NEXT attributes -->
 151        <xs:attribute name="PREVIOUS" type="tableName" use="optional" />
 152        <xs:attribute name="NEXT"     type="tableName" use="optional" />
 153      </xs:complexType>
 154    </xs:element>
 155  
 156    <xs:element name="TABLES">
 157      <xs:complexType>
 158        <xs:sequence>
 159          <xs:element ref="TABLE" maxOccurs="unbounded" />
 160        </xs:sequence>
 161      </xs:complexType>
 162    </xs:element>
 163  
 164    <xs:element name="XMLDB">
 165      <xs:complexType>
 166        <xs:sequence>
 167          <xs:element ref="TABLES"     minOccurs="0" />
 168        </xs:sequence>
 169        <xs:attribute name="PATH"    type="xs:string" use="required" />
 170        <xs:attribute name="VERSION" type="xs:string" use="required" />
 171        <xs:attribute name="COMMENT" type="xs:string" use="optional" />
 172      </xs:complexType>
 173    </xs:element>
 174  
 175  </xs:schema>


Generated: Thu Aug 11 10:00:09 2016 Cross-referenced by PHPXref 0.7.1