Merge branch '3.0'
[GitHub/WoltLab/WCF.git] / XSD / box.xsd
CommitLineData
9d355ea1 1<?xml version="1.0" encoding="UTF-8"?>
272b7d41 2<!-- This file is used for xml-files which install, update or delete boxes. -->
9d355ea1 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="box" type="box_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="box" type="box_delete" maxOccurs="unbounded" />
28 </xs:sequence>
29 </xs:complexType>
30
31 <!-- deleted box -->
32 <xs:complexType name="box_delete">
33 <xs:attribute name="identifier" type="woltlab_varchar" use="required" />
34 </xs:complexType>
35
36 <!-- imported/updated box -->
37 <xs:complexType name="box_import">
38 <xs:complexContent>
39 <xs:extension base="box_delete">
40 <xs:choice maxOccurs="unbounded">
41 <xs:element name="boxType" minOccurs="1">
42 <xs:simpleType>
43 <xs:restriction base="xs:string">
272b7d41
F
44 <xs:enumeration value="html" />
45 <xs:enumeration value="text" />
46 <xs:enumeration value="tpl" />
9d355ea1 47 <xs:enumeration value="system" />
48 </xs:restriction>
49 </xs:simpleType>
50 </xs:element>
51 <xs:element name="objectType" type="xs:string" minOccurs="0" />
52 <xs:element name="position" type="xs:string" minOccurs="0" />
53 <xs:element name="cssClassName" type="xs:string" minOccurs="0" />
54 <xs:element name="showHeader" type="woltlab_boolean" minOccurs="1" />
55 <xs:element name="visibleEverywhere" type="woltlab_boolean" minOccurs="0" />
56 <xs:element name="visibilityExceptions" type="visibilityExceptions_element" minOccurs="0" />
57 <xs:element name="sortField" type="xs:string" minOccurs="0" />
58 <xs:element name="sortOrder" minOccurs="1">
59 <xs:simpleType>
60 <xs:restriction base="xs:string">
61 <xs:enumeration value="ASC" />
62 <xs:enumeration value="DESC" />
63 </xs:restriction>
64 </xs:simpleType>
65 </xs:element>
66 <xs:element name="limit" type="xs:integer" minOccurs="0" />
67 <xs:element name="content" type="content_element" minOccurs="1" />
68 <xs:element name="name" type="name_element" minOccurs="1" />
69 </xs:choice>
70 </xs:extension>
71 </xs:complexContent>
72 </xs:complexType>
73
74 <xs:complexType name="content_element">
75 <xs:all>
76 <xs:element name="title" type="woltlab_varchar" minOccurs="1" />
77 </xs:all>
78 <xs:attribute name="language" type="woltlab_varchar" use="optional" />
79 </xs:complexType>
80
81 <xs:complexType name="visibilityExceptions_element">
82 <xs:choice maxOccurs="unbounded">
83 <xs:element name="page" type="xs:string" minOccurs="1" />
84 </xs:choice>
85 </xs:complexType>
86
87 <xs:complexType name="name_element">
88 <xs:simpleContent>
89 <xs:extension base="woltlab_varchar">
90 <xs:attribute name="language" type="woltlab_varchar" use="required" />
91 </xs:extension>
92 </xs:simpleContent>
93 </xs:complexType>
94</xs:schema>