Commit | Line | Data |
---|---|---|
9d355ea1 | 1 | <?xml version="1.0" encoding="UTF-8"?> |
2 | <!-- This file is used for xml-files which install, update or delete pages. --> | |
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 --> | |
18 | <xs:complexType name="import"> | |
19 | <xs:sequence> | |
20 | <xs:element name="menu" type="menu_import" maxOccurs="unbounded" /> | |
21 | </xs:sequence> | |
22 | </xs:complexType> | |
23 | ||
24 | <!-- delete element --> | |
25 | <xs:complexType name="delete"> | |
26 | <xs:sequence> | |
27 | <xs:element name="menu" type="menu_delete" maxOccurs="unbounded" /> | |
28 | </xs:sequence> | |
29 | </xs:complexType> | |
30 | ||
31 | <!-- deleted menu --> | |
32 | <xs:complexType name="menu_delete"> | |
33 | <xs:attribute name="identifier" type="woltlab_varchar" use="required" /> | |
34 | </xs:complexType> | |
35 | ||
36 | <!-- imported/updated menu --> | |
37 | <xs:complexType name="menu_import"> | |
38 | <xs:complexContent> | |
39 | <xs:extension base="menu_delete"> | |
40 | <xs:choice maxOccurs="unbounded"> | |
41 | <xs:element name="title" type="title_element" minOccurs="1" maxOccurs="unbounded" /> | |
42 | <xs:element name="box" type="box_element" minOccurs="1" /> | |
43 | </xs:choice> | |
44 | </xs:extension> | |
45 | </xs:complexContent> | |
46 | </xs:complexType> | |
47 | ||
48 | <!-- title element --> | |
49 | <xs:complexType name="title_element"> | |
50 | <xs:simpleContent> | |
51 | <xs:extension base="woltlab_varchar"> | |
52 | <xs:attribute name="language" type="woltlab_varchar" use="optional" /> | |
53 | </xs:extension> | |
54 | </xs:simpleContent> | |
55 | </xs:complexType> | |
56 | ||
57 | <!-- box element --> | |
58 | <xs:complexType name="box_element"> | |
59 | <xs:all> | |
60 | <xs:element name="position" type="woltlab_varchar" minOccurs="1" /> | |
61 | <xs:element name="showHeader" type="woltlab_boolean" minOccurs="0" /> | |
62 | <xs:element name="cssClassName" type="woltlab_varchar" minOccurs="0" /> | |
63 | <xs:element name="visibleEverywhere" type="woltlab_boolean" minOccurs="0" /> | |
f6b2fa98 | 64 | <xs:element name="visibilityExceptions" type="visibilityExceptions_element" minOccurs="0" /> |
9d355ea1 | 65 | </xs:all> |
66 | </xs:complexType> | |
f6b2fa98 MS |
67 | |
68 | <xs:complexType name="visibilityExceptions_element"> | |
69 | <xs:choice maxOccurs="unbounded"> | |
70 | <xs:element name="page" type="xs:string" minOccurs="1" /> | |
71 | </xs:choice> | |
72 | </xs:complexType> | |
9d355ea1 | 73 | </xs:schema> |