30bf104066bab7ec6c8c88f4c2f14f0d95477b27
[GitHub/WoltLab/WCF.git] / XSD / userMenu.xsd
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- This file is used for xml-files which install, update or delete page menu items. -->
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="usermenuitem" type="usermenuitem_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="usermenuitem" type="usermenuitem_delete" maxOccurs="unbounded" />
28 </xs:sequence>
29 </xs:complexType>
30
31 <!-- deleted page menu item element -->
32 <xs:complexType name="usermenuitem_delete">
33 <xs:attribute name="name" type="woltlab_varchar" use="required" />
34 </xs:complexType>
35
36 <xs:complexType name="usermenuitem_icon">
37 <xs:attribute name="solid" type="xs:boolean" />
38 </xs:complexType>
39
40 <!-- imported/updated page menu item element -->
41 <xs:complexType name="usermenuitem_import">
42 <xs:complexContent>
43 <xs:extension base="usermenuitem_delete">
44 <xs:all>
45 <xs:element name="options" type="xs:string" minOccurs="0" />
46 <xs:element name="permissions" type="xs:string" minOccurs="0" />
47 <xs:element name="controller" type="woltlab_varchar_nullable" minOccurs="0" />
48 <xs:element name="iconclassname" type="woltlab_varchar_nullable" minOccurs="0" />
49 <xs:element name="classname" type="usermenuitem_icon" minOccurs="0" />
50 <xs:element name="parent" type="woltlab_varchar_nullable" minOccurs="0" />
51 <xs:element name="showorder" type="xs:unsignedInt" minOccurs="0" />
52 </xs:all>
53 </xs:extension>
54 </xs:complexContent>
55 </xs:complexType>
56 </xs:schema>