9f2aa693 |
1 | <?xml version="1.0" encoding="UTF-8"?> |
2 | <!-- This file is used for xml files which install, update or delete acl options. --> |
3 | <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.woltlab.com" targetNamespace="http://www.woltlab.com" elementFormDefault="qualified"> |
4 | <!-- include types --> |
5 | <xs:include schemaLocation="types.xsd" /> |
6 | |
7 | <!-- data element --> |
8 | <xs:element name="data"> |
9 | <xs:complexType> |
10 | <xs:all> |
11 | <xs:element name="import" type="import" minOccurs="0" /> |
12 | <xs:element name="delete" type="delete" minOccurs="0" /> |
13 | </xs:all> |
14 | </xs:complexType> |
15 | </xs:element> |
16 | |
17 | <!-- import element type --> |
18 | <xs:complexType name="import"> |
19 | <xs:sequence> |
20 | <xs:element name="categories" type="categories_import" minOccurs="0" /> |
21 | <xs:element name="options" type="options_import" minOccurs="0" /> |
22 | </xs:sequence> |
23 | </xs:complexType> |
24 | |
25 | <!-- delete element type --> |
26 | <xs:complexType name="delete"> |
27 | <xs:choice maxOccurs="unbounded"> |
28 | <xs:element name="category" type="category_delete" minOccurs="0" /> |
29 | <xs:element name="option" type="option_delete" minOccurs="0" /> |
30 | </xs:choice> |
31 | </xs:complexType> |
32 | |
33 | <!-- categories import element type --> |
34 | <xs:complexType name="categories_import"> |
35 | <xs:sequence> |
36 | <xs:element name="category" type="category_import" maxOccurs="unbounded" /> |
37 | </xs:sequence> |
38 | </xs:complexType> |
39 | |
40 | <!-- imported/updated category element type --> |
41 | <xs:complexType name="category_import"> |
42 | <xs:complexContent> |
43 | <xs:extension base="category_delete"> |
44 | <xs:all> |
45 | <xs:element name="objecttype" type="woltlab_varchar_nullable" minOccurs="0" /> |
46 | </xs:all> |
47 | </xs:extension> |
48 | </xs:complexContent> |
49 | </xs:complexType> |
50 | |
51 | <!-- option import element type --> |
52 | <xs:complexType name="options_import"> |
53 | <xs:sequence> |
54 | <xs:element name="option" type="option_import" maxOccurs="unbounded" /> |
55 | </xs:sequence> |
56 | </xs:complexType> |
57 | |
58 | <!-- imported/updated option element type --> |
59 | <xs:complexType name="option_import"> |
60 | <xs:complexContent> |
61 | <xs:extension base="option_delete"> |
62 | <xs:all> |
63 | <xs:element name="objecttype" type="woltlab_varchar_nullable" minOccurs="1" /> |
64 | <xs:element name="categoryname" type="woltlab_varchar_nullable" minOccurs="1" /> |
65 | </xs:all> |
66 | </xs:extension> |
67 | </xs:complexContent> |
68 | </xs:complexType> |
69 | |
70 | <!-- deleted category element type --> |
71 | <xs:complexType name="category_delete"> |
72 | <xs:attribute name="name" type="woltlab_varchar" use="required" /> |
73 | </xs:complexType> |
74 | |
75 | <!-- deleted option element type --> |
76 | <xs:complexType name="option_delete"> |
77 | <xs:attribute name="name" type="woltlab_varchar" use="required" /> |
78 | </xs:complexType> |
79 | </xs:schema> |