1 |
efrain |
1 |
<?xml version="1.0" encoding="utf-8" ?>
|
|
|
2 |
<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
|
|
3 |
<xs:element name="moodle_database" type="databaseType" />
|
|
|
4 |
<xs:complexType name="databaseType">
|
|
|
5 |
<xs:sequence>
|
|
|
6 |
<xs:element maxOccurs="unbounded" name="table"
|
|
|
7 |
type="tableType" />
|
|
|
8 |
</xs:sequence>
|
|
|
9 |
<xs:attribute name="version" type="xs:float" use="required" />
|
|
|
10 |
<xs:attribute name="release" type="xs:string"></xs:attribute>
|
|
|
11 |
<xs:attribute name="timestamp" type="xs:dateTime"
|
|
|
12 |
use="required" />
|
|
|
13 |
<xs:attribute name="comment" type="xs:string" />
|
|
|
14 |
</xs:complexType>
|
|
|
15 |
<xs:complexType name="tableType">
|
|
|
16 |
<xs:sequence>
|
|
|
17 |
<xs:element maxOccurs="unbounded" name="record" type="recordType" />
|
|
|
18 |
</xs:sequence>
|
|
|
19 |
<xs:attribute name="name" type="xs:NCName" use="required" />
|
|
|
20 |
<xs:attribute name="schemaHash" type="xs:string" use="required" />
|
|
|
21 |
</xs:complexType>
|
|
|
22 |
<xs:complexType name="recordType">
|
|
|
23 |
<xs:sequence>
|
|
|
24 |
<xs:element maxOccurs="unbounded" name="field" type="fieldType" />
|
|
|
25 |
</xs:sequence>
|
|
|
26 |
</xs:complexType>
|
|
|
27 |
<xs:complexType name="fieldType">
|
|
|
28 |
<xs:simpleContent>
|
|
|
29 |
<xs:extension base="xs:string">
|
|
|
30 |
<xs:attribute name="name" type="xs:string" use="required" />
|
|
|
31 |
<xs:attribute default="content" name="value" use="optional">
|
|
|
32 |
<xs:simpleType>
|
|
|
33 |
<xs:restriction base="xs:string">
|
|
|
34 |
<xs:enumeration value="content" />
|
|
|
35 |
<xs:enumeration value="null" />
|
|
|
36 |
</xs:restriction>
|
|
|
37 |
</xs:simpleType>
|
|
|
38 |
</xs:attribute>
|
|
|
39 |
</xs:extension>
|
|
|
40 |
</xs:simpleContent>
|
|
|
41 |
</xs:complexType>
|
|
|
42 |
</xs:schema>
|