Fix multiple issues in XSD files
[GitHub/WoltLab/WCF.git] / XSD / option.xsd
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- The file "option.xsd" is used for xml-files which installs, updates or deletes 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 <!-- include option types -->
8 <xs:include schemaLocation="optionTypes.xsd" />
9
10 <!-- data element -->
11 <xs:element name="data">
12 <xs:complexType>
13 <xs:all>
14 <xs:element name="import" type="import" minOccurs="0" />
15 <xs:element name="delete" type="delete" minOccurs="0" />
16 </xs:all>
17 </xs:complexType>
18 </xs:element>
19
20 <!-- import element type -->
21 <xs:complexType name="import">
22 <xs:all>
23 <xs:element name="categories" type="categories_import" minOccurs="0" />
24 <xs:element name="options" type="options_import" minOccurs="0" />
25 </xs:all>
26 </xs:complexType>
27
28 <!-- categories import element type -->
29 <xs:complexType name="categories_import">
30 <xs:sequence>
31 <xs:element name="category" type="category_import" maxOccurs="unbounded" />
32 </xs:sequence>
33 </xs:complexType>
34
35 <!-- imported/updated category element type -->
36 <xs:complexType name="category_import">
37 <xs:complexContent>
38 <xs:extension base="category_delete">
39 <xs:all>
40 <xs:element name="parent" type="woltlab_varchar_nullable" minOccurs="0" />
41 <xs:element name="showorder" type="xs:unsignedInt" minOccurs="0" />
42 <xs:element name="options" type="woltlab_varchar_nullable" minOccurs="0" />
43 <xs:element name="permissions" type="woltlab_varchar_nullable" minOccurs="0" />
44 </xs:all>
45 </xs:extension>
46 </xs:complexContent>
47 </xs:complexType>
48
49 <!-- options import element type -->
50 <xs:complexType name="options_import">
51 <xs:sequence>
52 <xs:element name="option" type="option_import" maxOccurs="unbounded" />
53 </xs:sequence>
54 </xs:complexType>
55
56 <!-- imported/updated element type -->
57 <xs:complexType name="option_import">
58 <xs:complexContent>
59 <xs:extension base="option_delete">
60 <xs:all>
61 <xs:element name="categoryname" type="woltlab_varchar" minOccurs="1" />
62 <xs:element name="optiontype" type="woltlab_varchar_nullable" minOccurs="0" />
63 <xs:element name="defaultvalue" type="xs:string" minOccurs="0" />
64 <xs:element name="validationpattern" type="xs:string" minOccurs="0" />
65 <xs:element name="selectoptions" type="xs:string" minOccurs="0" />
66 <xs:element name="enableoptions" type="xs:string" minOccurs="0" />
67 <xs:element name="hidden" type="woltlab_boolean" minOccurs="0" />
68 <xs:element name="showorder" type="xs:unsignedInt" minOccurs="0" />
69 <xs:element name="options" type="xs:string" minOccurs="0" />
70 <xs:element name="permissions" type="xs:string" minOccurs="0" />
71 <xs:element name="supporti18n" type="woltlab_boolean" minOccurs="0" />
72 <xs:element name="suffix" type="xs:string" minOccurs="0" />
73 <xs:element name="minvalue" type="xs:int" minOccurs="0" />
74 <xs:element name="maxvalue" type="xs:int" minOccurs="0" />
75 <xs:element name="minlength" type="xs:int" minOccurs="0" />
76 <xs:element name="maxlength" type="xs:int" minOccurs="0" />
77 <xs:element name="allowemptyvalue" type="woltlab_boolean" minOccurs="0" />
78 <xs:element name="disableAutocomplete" type="woltlab_boolean" minOccurs="0" />
79 <xs:element name="issortable" type="woltlab_boolean" minOccurs="0" />
80 </xs:all>
81 </xs:extension>
82 </xs:complexContent>
83 </xs:complexType>
84 </xs:schema>