[Release] wrt-installer_0.1.58
[framework/web/wrt-installer.git] / configuration / config.xsd
1 <?xml version="1.0" encoding="UTF-8"?>\r
2 <!-- Widgets 1.0 (Working Draft) RELAX NG schema -->\r
3 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://www.w3.org/ns/widgets" xmlns:its="http://www.w3.org/2005/11/its" xmlns:widgets="http://www.w3.org/ns/widgets" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3.org/ns/widgets config.xsd">\r
4     <xs:import schemaLocation="local.xsd"/>\r
5     <xs:import namespace="http://www.w3.org/2005/11/its" schemaLocation="its.xsd"/>\r
6     <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>\r
7     <xs:import namespace="http://tizen.org/ns/widgets" schemaLocation="config.tizen.xsd"/>\r
8     <xs:group name="extension">\r
9         <xs:sequence>\r
10             <xs:group minOccurs="0" maxOccurs="unbounded" ref="widgets:anyElement"/>\r
11         </xs:sequence>\r
12     </xs:group>\r
13     <xs:attributeGroup name="extension">\r
14         <xs:attributeGroup ref="widgets:attr.allowed"/>\r
15     </xs:attributeGroup>\r
16     <xs:group name="anyElement">\r
17         <xs:sequence>\r
18             <xs:choice minOccurs="0" maxOccurs="unbounded">\r
19                 <xs:any namespace="##other" processContents="skip"/>\r
20                 <xs:any namespace="##local" processContents="skip"/>\r
21             </xs:choice>\r
22         </xs:sequence>\r
23     </xs:group>\r
24     <xs:group name="any">\r
25         <xs:sequence>\r
26             <xs:group minOccurs="0" maxOccurs="unbounded" ref="widgets:anyElement"/>\r
27         </xs:sequence>\r
28     </xs:group>\r
29     <xs:attributeGroup name="any">\r
30         <xs:anyAttribute processContents="skip"/>\r
31     </xs:attributeGroup>\r
32     <xs:attributeGroup name="attr.allowed">\r
33         <xs:attributeGroup ref="local"/>\r
34     </xs:attributeGroup>\r
35     <xs:attributeGroup name="attr.xmllang">\r
36         <xs:attribute ref="xml:lang" use="required"/>\r
37     </xs:attributeGroup>\r
38     <xs:attributeGroup name="attr.itsdir">\r
39         <xs:attribute ref="its:dir" use="required"/>\r
40     </xs:attributeGroup>\r
41     <xs:simpleType name="data.positiveNumber">\r
42         <xs:restriction base="xs:string">\r
43             <xs:pattern value="[1-9]\d*"/>\r
44         </xs:restriction>\r
45     </xs:simpleType>\r
46     <xs:simpleType name="data.boolean">\r
47         <xs:restriction base="xs:string">\r
48             <xs:enumeration value="true"/>\r
49             <xs:enumeration value="false"/>\r
50         </xs:restriction>\r
51     </xs:simpleType>\r
52     <xs:simpleType name="data.versionNumber">\r
53         <xs:restriction base="xs:string">\r
54             <xs:pattern value="[0-9]{1,2}.[0-9]{1,2}.[0-9]{1,4}"/>\r
55         </xs:restriction>\r
56     </xs:simpleType>\r
57     <xs:element name="widget">\r
58         <xs:complexType mixed="true">\r
59             <xs:choice minOccurs="0" maxOccurs="unbounded">\r
60                 <xs:element ref="widgets:name"/>\r
61                 <xs:element ref="widgets:description"/>\r
62                 <xs:element ref="widgets:icon"/>\r
63                 <xs:element ref="widgets:author"/>\r
64                 <xs:element ref="widgets:license"/>\r
65                 <xs:element ref="widgets:content"/>\r
66                 <xs:element ref="widgets:feature"/>\r
67                 <xs:element ref="widgets:preference"/>\r
68                 <xs:element ref="widgets:access"/>\r
69                 <!-- "widgets:extension" group is commented. Otherwise, error: cos-nonambig: Content model violates the unique particle attribution rule. -->\r
70                 <!-- Allowing Any Elements or Attributes from a Particular Namespace -->\r
71                 <!-- The wildcards permitted within the list are ##local (a nonqualified element) and ##targetNamespace (the target namespace). Two wildcards can also be used instead of the list: ##any (any namespace) and ##other (any namespace other than the target namespace). -->\r
72                 <!--xs:group ref="widgets:extension"/-->\r
73                 <xs:element ref="tizen:app-control"  maxOccurs="unbounded" xmlns:tizen="http://tizen.org/ns/widgets"/>\r
74                 <xs:element ref="tizen:setting"  maxOccurs="unbounded" xmlns:tizen="http://tizen.org/ns/widgets"/>\r
75                 <xs:element ref="tizen:application" minOccurs="1" maxOccurs="1" xmlns:tizen="http://tizen.org/ns/widgets"/>\r
76                 <xs:element ref="tizen:content"  minOccurs="1" maxOccurs="1" xmlns:tizen="http://tizen.org/ns/widgets"/>\r
77                 <xs:element ref="tizen:privilege"  minOccurs="0" maxOccurs="unbounded" xmlns:tizen="http://tizen.org/ns/widgets"/>\r
78                 <xs:element ref="tizen:content-security-policy" minOccurs="0" maxOccurs="1" xmlns:tizen="http://tizen.org/ns/widgets"/>\r
79                 <xs:element ref="tizen:content-security-policy-report-only" minOccurs="0" maxOccurs="1" xmlns:tizen="http://tizen.org/ns/widgets"/>\r
80                 <xs:element ref="tizen:allow-navigation" minOccurs="0" maxOccurs="1" xmlns:tizen="http://tizen.org/ns/widgets"/>\r
81                 <xs:element ref="tizen:app-widget"  minOccurs="0" maxOccurs="unbounded" xmlns:tizen="http://tizen.org/ns/widgets"/>\r
82                 <xs:element ref="tizen:account"  minOccurs="0" maxOccurs="unbounded" xmlns:tizen="http://tizen.org/ns/widgets"/>\r
83                 <xs:element ref="tizen:metadata"  minOccurs="0" maxOccurs="unbounded" xmlns:tizen="http://tizen.org/ns/widgets"/>\r
84             </xs:choice>\r
85             <xs:attribute ref="xml:lang"/>\r
86             <xs:attribute name="id" type="xs:anyURI"/>\r
87             <xs:attribute name="version" type="widgets:data.versionNumber"/>\r
88             <xs:attribute name="height" type="widgets:data.positiveNumber"/>\r
89             <xs:attribute name="width" type="widgets:data.positiveNumber"/>\r
90             <xs:attribute name="viewmodes">\r
91                 <xs:simpleType>\r
92                     <xs:list>\r
93                         <xs:simpleType>\r
94                             <xs:restriction base="xs:token">\r
95                                 <xs:enumeration value="maximized"/>\r
96                                 <xs:enumeration value="fullscreen"/>\r
97                             </xs:restriction>\r
98                         </xs:simpleType>\r
99                     </xs:list>\r
100                 </xs:simpleType>\r
101             </xs:attribute>\r
102             <xs:attributeGroup ref="widgets:extension"/>\r
103         </xs:complexType>\r
104     </xs:element>\r
105     <xs:element name="name">\r
106         <xs:complexType mixed="true">\r
107             <xs:attribute ref="xml:lang"/>\r
108             <xs:attribute ref="its:dir"/>\r
109             <xs:attribute name="short"/>\r
110             <xs:attributeGroup ref="widgets:extension"/>\r
111         </xs:complexType>\r
112     </xs:element>\r
113     <xs:element name="description">\r
114         <xs:complexType mixed="true">\r
115             <xs:attribute ref="xml:lang"/>\r
116             <xs:attribute ref="its:dir"/>\r
117             <xs:attributeGroup ref="widgets:extension"/>\r
118         </xs:complexType>\r
119     </xs:element>\r
120     <xs:element name="icon">\r
121         <xs:complexType>\r
122             <xs:attributeGroup ref="widgets:attr.allowed"/>\r
123             <xs:attribute name="src" use="required" type="xs:anyURI"/>\r
124             <xs:attribute name="height" type="widgets:data.positiveNumber"/>\r
125             <xs:attribute name="width" type="widgets:data.positiveNumber"/>\r
126         </xs:complexType>\r
127     </xs:element>\r
128     <xs:element name="access">\r
129         <xs:complexType>\r
130             <xs:attributeGroup ref="widgets:attr.allowed"/>\r
131             <xs:attribute name="origin" use="required" type="xs:anyURI"/>\r
132             <xs:attribute name="subdomains" use="optional" type="widgets:data.boolean"/>\r
133         </xs:complexType>\r
134     </xs:element>\r
135     <xs:element name="author">\r
136         <xs:complexType mixed="true">\r
137             <xs:attribute ref="xml:lang"/>\r
138             <xs:attribute ref="its:dir"/>\r
139             <xs:attribute name="href" type="xs:anyURI"/>\r
140             <xs:attribute name="email">\r
141                 <xs:simpleType>\r
142                     <xs:restriction base="xs:string">\r
143                     </xs:restriction>\r
144                 </xs:simpleType>\r
145             </xs:attribute>\r
146             <xs:attributeGroup ref="widgets:extension"/>\r
147         </xs:complexType>\r
148     </xs:element>\r
149     <xs:element name="license">\r
150         <xs:complexType mixed="true">\r
151             <xs:attribute ref="xml:lang"/>\r
152             <xs:attribute ref="its:dir"/>\r
153             <xs:attribute name="href" type="xs:anyURI"/>\r
154             <xs:attributeGroup ref="widgets:extension"/>\r
155         </xs:complexType>\r
156     </xs:element>\r
157     <xs:element name="content">\r
158         <xs:complexType>\r
159             <xs:attributeGroup ref="widgets:attr.allowed"/>\r
160             <xs:attribute name="src" use="required" type="xs:anyURI"/>\r
161             <xs:attribute name="type"/>\r
162             <xs:attribute name="charset"/>\r
163         </xs:complexType>\r
164     </xs:element>\r
165     <xs:element name="feature">\r
166         <xs:complexType mixed="true">\r
167             <xs:choice minOccurs="0" maxOccurs="unbounded">\r
168                 <xs:element ref="widgets:param"/>\r
169             </xs:choice>\r
170             <xs:attribute name="name" use="required" type="xs:anyURI"/>\r
171             <xs:attributeGroup ref="widgets:extension"/>\r
172         </xs:complexType>\r
173     </xs:element>\r
174     <xs:element name="param">\r
175         <xs:complexType mixed="true">\r
176             <xs:attribute name="name" use="required"/>\r
177             <xs:attribute name="value" use="required"/>\r
178             <xs:attributeGroup ref="widgets:extension"/>\r
179         </xs:complexType>\r
180     </xs:element>\r
181     <xs:element name="preference">\r
182         <xs:complexType mixed="true">\r
183             <xs:attribute ref="xml:lang"/>\r
184             <xs:attribute name="name" use="required"/>\r
185             <xs:attribute name="value"/>\r
186             <xs:attribute name="readonly" type="widgets:data.boolean"/>\r
187             <xs:attributeGroup ref="widgets:extension"/>\r
188         </xs:complexType>\r
189     </xs:element>\r
190 </xs:schema>\r