iOS Safari messed up vertical alignment of <kbd>
[GitHub/WoltLab/WCF.git] / XSD / package.xsd
CommitLineData
a314770a
MW
1<?xml version="1.0" encoding="UTF-8"?>
2<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.woltlab.com" targetNamespace="http://www.woltlab.com" elementFormDefault="qualified">
61d010dd 3 <!-- include types -->
a314770a
MW
4 <xs:include schemaLocation="types.xsd" />
5
61d010dd 6 <!-- data element -->
a314770a
MW
7 <xs:element name="package">
8 <xs:complexType>
9 <xs:choice maxOccurs="unbounded">
10 <xs:element name="instructions" type="instructions" minOccurs="1" maxOccurs="unbounded" />
11 <xs:element name="packageinformation" type="packageInformation" minOccurs="1" maxOccurs="1" />
12 <xs:element name="authorinformation" type="authorInformation" minOccurs="1" maxOccurs="1" />
13 <xs:element name="requiredpackages" type="requiredPackages" minOccurs="0" maxOccurs="1" />
14 <xs:element name="optionalpackages" type="optionalPackages" minOccurs="0" maxOccurs="1" />
15 <xs:element name="excludedpackages" type="excludedPackages" minOccurs="0" maxOccurs="1" />
16 </xs:choice>
17 <xs:attribute name="name" type="woltlab_varchar" use="required" />
18 </xs:complexType>
19 </xs:element>
20
61d010dd 21 <!-- simple package element -->
a314770a
MW
22 <xs:complexType name="simplePackage">
23 <xs:simpleContent>
24 <xs:extension base="xs:string">
25 <xs:attribute name="minversion" type="xs:string" />
26 <xs:attribute name="file" type="xs:string" />
27 </xs:extension>
28 </xs:simpleContent>
29 </xs:complexType>
30
61d010dd 31 <!-- optional package element -->
a314770a
MW
32 <xs:complexType name="optionalPackage">
33 <xs:simpleContent>
34 <xs:extension base="xs:string">
35 <xs:attribute name="minVersion" type="xs:string" />
36 <xs:attribute name="file" type="xs:string" use="required" />
37 </xs:extension>
38 </xs:simpleContent>
39 </xs:complexType>
40
61d010dd 41 <!-- excluded package element -->
a314770a
MW
42 <xs:complexType name="excludedPackage">
43 <xs:simpleContent>
44 <xs:extension base="xs:string">
45 <xs:attribute name="version" type="xs:string" />
46 </xs:extension>
47 </xs:simpleContent>
48 </xs:complexType>
49
61d010dd 50 <!-- instructions elements -->
a314770a
MW
51 <xs:complexType name="instructions">
52 <xs:sequence>
53 <xs:any minOccurs="0" maxOccurs="unbounded" processContents="skip" />
54 </xs:sequence>
61d010dd 55 <xs:attribute name="type" type="instructionType" use="required" />
a314770a
MW
56 <xs:attribute name="fromversion" type="woltlab_varchar" />
57 </xs:complexType>
58
61d010dd
MS
59 <!-- instruction type attribute -->
60 <xs:simpleType name="instructionType">
a314770a
MW
61 <xs:restriction base="xs:string">
62 <xs:enumeration value="install" />
63 <xs:enumeration value="update" />
64 </xs:restriction>
65 </xs:simpleType>
66
61d010dd 67 <!-- package information element -->
a314770a 68 <xs:complexType name="packageInformation">
9f2aa693 69 <xs:choice maxOccurs="unbounded">
a314770a
MW
70 <xs:element name="packagename" minOccurs="1" maxOccurs="unbounded">
71 <xs:complexType>
72 <xs:simpleContent>
73 <xs:extension base="woltlab_varchar">
74 <xs:attribute name="language" type="xs:string" />
75 </xs:extension>
76 </xs:simpleContent>
77 </xs:complexType>
78 </xs:element>
79 <xs:element name="packagedescription" minOccurs="0" maxOccurs="unbounded">
80 <xs:complexType>
81 <xs:simpleContent>
82 <xs:extension base="xs:string">
83 <xs:attribute name="language" type="xs:string" />
84 </xs:extension>
85 </xs:simpleContent>
86 </xs:complexType>
87 </xs:element>
d4245281 88 <xs:element name="packageurl" type="xs:anyURI" minOccurs="0" maxOccurs="1" />
aac1247e 89 <xs:element name="isapplication" type="woltlab_boolean" minOccurs="0" maxOccurs="1" />
a314770a
MW
90 <xs:element name="version" type="woltlab_varchar" minOccurs="1" maxOccurs="1" />
91 <xs:element name="date" type="xs:date" minOccurs="1" maxOccurs="1" />
9f2aa693 92 </xs:choice>
a314770a
MW
93 </xs:complexType>
94
61d010dd 95 <!-- author information element -->
a314770a
MW
96 <xs:complexType name="authorInformation">
97 <xs:all>
98 <xs:element name="author" type="woltlab_varchar" minOccurs="1" />
99 <xs:element name="authorurl" type="xs:anyURI" minOccurs="0" />
100 </xs:all>
101 </xs:complexType>
102
61d010dd 103 <!-- required packages element -->
a314770a
MW
104 <xs:complexType name="requiredPackages">
105 <xs:sequence>
106 <xs:element name="requiredpackage" type="simplePackage" minOccurs="0" maxOccurs="unbounded" />
107 </xs:sequence>
108 </xs:complexType>
109
61d010dd 110 <!-- optional packages element -->
a314770a
MW
111 <xs:complexType name="optionalPackages">
112 <xs:sequence>
113 <xs:element name="optionalpackage" type="optionalPackage" minOccurs="0" maxOccurs="unbounded" />
114 </xs:sequence>
115 </xs:complexType>
116
61d010dd 117 <!-- excluded packages element -->
a314770a
MW
118 <xs:complexType name="excludedPackages">
119 <xs:sequence>
120 <xs:element name="excludedpackage" type="excludedPackage" minOccurs="0" maxOccurs="unbounded" />
121 </xs:sequence>
122 </xs:complexType>
123</xs:schema>