Fix manifest xsd schema
[platform/core/appfw/pkgmgr-info.git] / parser / manifest.xsd.ref
1 <?xml version="1.0" encoding="UTF-8"?>
2 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://tizen.org/ns/packages" xmlns:packages="http://tizen.org/ns/packages">
3   <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
4
5   <xs:element name="manifest">
6     <xs:complexType>
7       <xs:choice maxOccurs="unbounded">
8         <xs:element ref="packages:label"/>
9         <xs:element ref="packages:icon"/>
10         <xs:element ref="packages:author"/>
11         <xs:element ref="packages:description"/>
12         <xs:element ref="packages:compatibility"/>
13         <xs:element ref="packages:profile"/>
14         <xs:element ref="packages:watch-application"/>
15         <xs:element ref="packages:watchface"/>
16         <xs:element ref="packages:service-application"/>
17         <xs:element ref="packages:ui-application"/>
18         <xs:element ref="packages:ime-application"/>
19         <xs:element ref="packages:shortcut-list"/>
20         <xs:element ref="packages:widget"/>
21         <xs:element ref="packages:widget-application"/>
22         <xs:element ref="packages:account"/>
23         <xs:element ref="packages:notifications"/>
24         <xs:element ref="packages:privileges"/>
25         <xs:element ref="packages:font"/>
26         <xs:element ref="packages:ime"/>
27         <xs:element ref="packages:feature"/>
28         <xs:element ref="packages:trust-anchor"/>
29       </xs:choice>
30       <xs:attribute name="storeclient-id" type="xs:string"/>
31       <xs:attribute name="install-location" type="packages:InstallLocationType"/>
32       <xs:attribute name="package" use="required" type="xs:string"/>
33       <xs:attribute name="type" type="packages:PackageType"/>
34       <xs:attribute name="version" use="required" type="xs:string"/>
35       <xs:attribute name="size" type="xs:NMTOKEN"/>
36       <xs:attribute name="root_path" type="xs:string"/>
37       <xs:attribute name="csc_path" type="xs:string"/>
38       <xs:attribute name="appsetting" type="xs:boolean"/>
39       <xs:attribute name="nodisplay-setting" type="xs:boolean"/>
40       <xs:attribute name="url" type="xs:string"/>
41       <xs:attribute name="support-disable" type="xs:boolean"/>
42       <xs:attribute name="api-version" type="xs:string"/>
43       <xs:attribute name="backend-installer" type="xs:string"/>
44       <xs:attribute name="preload" type="xs:boolean"/>
45     </xs:complexType>
46   </xs:element>
47
48   <xs:simpleType name="InstallLocationType">
49     <xs:restriction base="xs:string">
50       <xs:enumeration value="auto"/>
51       <xs:enumeration value="internal-only"/>
52       <xs:enumeration value="prefer-external"/>
53     </xs:restriction>
54   </xs:simpleType>
55   <xs:simpleType name="PackageType">
56     <xs:restriction base="xs:string">
57       <xs:enumeration value="rpm"/>
58       <xs:enumeration value="tpk"/>
59       <xs:enumeration value="wgt"/>
60     </xs:restriction>
61   </xs:simpleType>
62   <xs:simpleType name="ProfileType">
63     <xs:restriction base="xs:string">
64       <xs:enumeration value="mobile"/>
65       <xs:enumeration value="wearable"/>
66       <xs:enumeration value="TV"/>
67     </xs:restriction>
68   </xs:simpleType>
69   <xs:simpleType name="TypeType">
70     <xs:restriction base="xs:string">
71       <xs:enumeration value="capp"/>
72       <xs:enumeration value="c++app"/>
73       <xs:enumeration value="webapp"/>
74       <xs:enumeration value="jsapp"/>
75     </xs:restriction>
76   </xs:simpleType>
77   <xs:simpleType name="HwAccelerationType">
78     <xs:restriction base="xs:string">
79       <xs:enumeration value="on"/>
80       <xs:enumeration value="off"/>
81       <xs:enumeration value="default"/>
82       <xs:enumeration value="use-GL"/>
83       <xs:enumeration value="not-use-GL"/>
84       <xs:enumeration value="use-system-setting"/>
85     </xs:restriction>
86   </xs:simpleType>
87   <xs:simpleType name="ScreenReaderType">
88     <xs:restriction base="xs:string">
89       <xs:enumeration value="screenreader-off"/>
90       <xs:enumeration value="screenreader-on"/>
91       <xs:enumeration value="use-system-setting"/>
92     </xs:restriction>
93   </xs:simpleType>
94   <xs:simpleType name="RecentImage">
95     <xs:restriction base="xs:string">
96     <xs:enumeration value="icon"/>
97     <xs:enumeration value="capture"/>
98      </xs:restriction>
99   </xs:simpleType>
100   <xs:simpleType name="PrivilegeType">
101     <xs:restriction base="xs:string">
102       <xs:enumeration value="tpk"/>
103       <xs:enumeration value="wgt"/>
104     </xs:restriction>
105   </xs:simpleType>
106
107   <xs:element name="author">
108     <xs:complexType mixed="true">
109       <xs:attribute name="email"/>
110       <xs:attribute name="href"/>
111       <xs:attribute ref="xml:lang"/>
112     </xs:complexType>
113   </xs:element>
114   <xs:element name="description">
115     <xs:complexType mixed="true">
116       <xs:attribute ref="xml:lang"/>
117     </xs:complexType>
118   </xs:element>
119   <xs:element name="compatibility">
120     <xs:complexType/>
121   </xs:element>
122   <xs:element name="profile">
123     <xs:complexType>
124       <xs:attribute name="name" use="required" type="packages:ProfileType"/>
125     </xs:complexType>
126   </xs:element>
127   <xs:element name="watch-application">
128     <xs:complexType>
129       <xs:choice maxOccurs="unbounded" minOccurs="0">
130         <xs:element ref="packages:label"/>
131         <xs:element ref="packages:icon"/>
132       </xs:choice>
133       <xs:attribute name="appid" use="required" type="xs:string"/>
134       <xs:attribute name="exec" use="required"/>
135       <xs:attribute name="ambient-support" type="xs:boolean"/>
136     </xs:complexType>
137   </xs:element>
138   <xs:element name="watchface">
139   </xs:element>
140   <xs:element name="service-application">
141     <xs:complexType>
142       <xs:choice maxOccurs="unbounded" minOccurs="0">
143         <xs:element ref="packages:label"/>
144         <xs:element ref="packages:icon"/>
145         <xs:element ref="packages:application-service"/>
146         <xs:element ref="packages:app-control"/>
147         <xs:element ref="packages:category"/>
148         <xs:element ref="packages:metadata"/>
149         <xs:element ref="packages:permission"/>
150         <xs:element ref="packages:datacontrol"/>
151         <xs:element ref="packages:background-category"/>
152       </xs:choice>
153       <xs:attribute name="appid" use="required" type="xs:string"/>
154       <xs:attribute name="auto-restart" type="xs:boolean"/>
155       <xs:attribute name="exec" use="required"/>
156       <xs:attribute name="on-boot" type="xs:boolean"/>
157       <xs:attribute name="type" use="required" type="packages:TypeType"/>
158       <xs:attribute name="multiple" type="xs:boolean"/>
159       <xs:attribute name="taskmanage" type="xs:boolean"/>
160       <xs:attribute name="permission-type" type="xs:string"/>
161       <xs:attribute name="component-type" type="xs:string"/>
162       <xs:attribute name="nodisplay" type="xs:boolean"/>
163     </xs:complexType>
164   </xs:element>
165   <xs:element name="ui-application">
166     <xs:complexType>
167       <xs:choice maxOccurs="unbounded" minOccurs="0">
168         <xs:element ref="packages:label"/>
169         <xs:element ref="packages:icon"/>
170         <xs:element ref="packages:image"/>
171         <xs:element ref="packages:application-service"/>
172         <xs:element ref="packages:app-control"/>
173         <xs:element ref="packages:category"/>
174         <xs:element ref="packages:metadata"/>
175         <xs:element ref="packages:permission"/>
176         <xs:element ref="packages:datacontrol"/>
177         <xs:element ref="packages:background-category"/>
178         <xs:element ref="packages:splash-screens"/>
179       </xs:choice>
180       <xs:attribute name="appid" use="required" type="xs:string"/>
181       <xs:attribute name="exec" use="required"/>
182       <xs:attribute name="multiple" type="xs:boolean"/>
183       <xs:attribute name="nodisplay" type="xs:boolean"/>
184       <xs:attribute name="taskmanage" type="xs:boolean"/>
185       <xs:attribute name="enabled" type="xs:boolean"/>
186       <xs:attribute name="type" use="required" type="packages:TypeType"/>
187       <xs:attribute name="categories" type="xs:NCName"/>
188       <xs:attribute name="extraid"/>
189       <xs:attribute name="hw-acceleration" type="packages:HwAccelerationType"/>
190       <xs:attribute name="screen-reader" type="packages:ScreenReaderType"/>
191       <xs:attribute name="recentimage" type="packages:RecentImage"/>
192       <xs:attribute name="mainapp" type="xs:boolean"/>
193       <xs:attribute name="indicatordisplay" type="xs:boolean"/>
194       <xs:attribute name="portrait-effectimage" type="xs:string"/>
195       <xs:attribute name="landscape-effectimage" type="xs:string"/>
196       <xs:attribute name="effectimage-type" type="xs:string"/>
197       <xs:attribute name="guestmode-visibility" type="xs:string"/>
198       <xs:attribute name="launchcondition" type="xs:boolean"/>
199       <xs:attribute name="permission-type" type="xs:string"/>
200       <xs:attribute name="component-type" type="xs:string"/>
201       <xs:attribute name="submode" type="xs:boolean"/>
202       <xs:attribute name="submode-mainid" type="xs:string"/>
203       <xs:attribute name="process-pool" type="xs:boolean"/>
204       <xs:attribute name="auto-restart" type="xs:boolean"/>
205       <xs:attribute name="on-boot" type="xs:boolean"/>
206       <xs:attribute name="multi-instance" type="xs:boolean"/>
207       <xs:attribute name="multi-instance-mainid" type="xs:string"/>
208       <xs:attribute name="ui-gadget" type="xs:boolean"/>
209       <xs:attribute name="launch_mode" type="packages:LaunchType"/>
210       <xs:attribute name="splash-screen-display" type="xs:boolean"/>
211     </xs:complexType>
212   </xs:element>
213   <xs:element name="ime-application">
214     <xs:complexType>
215       <xs:choice maxOccurs="unbounded">
216         <xs:element ref="packages:label"/>
217         <xs:element ref="packages:icon"/>
218       </xs:choice>
219       <xs:attribute name="appid" use="required" type="xs:string"/>
220       <xs:attribute name="exec" use="required" type="xs:NCName"/>
221       <xs:attribute name="multiple" type="xs:boolean"/>
222       <xs:attribute name="nodisplay" type="xs:boolean"/>
223       <xs:attribute name="type" use="required" type="packages:TypeType"/>
224     </xs:complexType>
225   </xs:element>
226   <xs:element name="shortcut-list">
227   </xs:element>
228   <xs:element name="widget">
229   </xs:element>
230   <xs:element name="widget-application">
231     <xs:complexType>
232       <xs:choice maxOccurs="unbounded" minOccurs="0">
233         <xs:element ref="packages:label"/>
234         <xs:element ref="packages:icon"/>
235         <xs:element ref="packages:support-size"/>
236       </xs:choice>
237       <xs:attribute name="appid" use="required" type="xs:ID"/>
238       <xs:attribute name="exec" use="required"/>
239       <xs:attribute name="main" type="xs:boolean"/>
240       <xs:attribute name="update-period" type="xs:positiveInteger"/>
241       <xs:attribute name="preview" type="xs:string"/>
242     </xs:complexType>
243   </xs:element>
244   <xs:element name="account">
245   </xs:element>
246   <xs:element name="notifications">
247   </xs:element>
248   <xs:element name="ime">
249   </xs:element>
250   <xs:element name="feature">
251   </xs:element>
252   <xs:element name="trust-anchor">
253     <xs:complexType>
254       <xs:attribute name="pkg-certs-dir" type="xs:string"/>
255       <xs:attribute name="use-system-certs" type="xs:string"/>
256     </xs:complexType>
257   </xs:element>
258   <xs:element name="privileges">
259     <xs:complexType>
260       <xs:choice maxOccurs="unbounded" minOccurs="0">
261         <xs:element ref="packages:privilege"/>
262         <xs:element ref="packages:appdefined-privilege"/>
263       </xs:choice>
264     </xs:complexType>
265   </xs:element>
266   <xs:element name="privilege">
267     <xs:complexType mixed="true">
268       <xs:attribute name="type" type="PrivilegeType"/>
269     </xs:complexType>
270   </xs:element>
271   <xs:element name="provides-appdefined-privileges">
272     <xs:complexType>
273       <xs:choice maxOccurs="unbounded" minOccurs="0">
274         <xs:element ref="packages:appdefined-privilege"/>
275       </xs:choice>
276     </xs:complexType>
277   </xs:element>
278   <xs:element name="appdefined-privilege">
279     <xs:complexType mixed="true">
280       <xs:attribute name="type" type="PrivilegeType"/>
281       <xs:attribute name="license" type="xs:string"/>
282     </xs:complexType>
283   </xs:element>
284   <xs:element name="font">
285   </xs:element>
286   <xs:element name="label">
287     <xs:complexType mixed="true">
288       <xs:attribute ref="xml:lang"/>
289     </xs:complexType>
290   </xs:element>
291   <xs:element name="icon">
292   <xs:complexType mixed="true">
293     <xs:attribute ref="xml:lang"/>
294     <xs:attribute name="section" type="xs:string"/>
295     <xs:attribute name="resolution" type="packages:ResolutionType"/>
296     <xs:attribute name="dpi" type="xs:string"/>
297   </xs:complexType>
298   </xs:element>
299   <xs:element name="image">
300   <xs:complexType mixed="true">
301     <xs:attribute ref="xml:lang"/>
302     <xs:attribute name="section" type="xs:string"/>
303   </xs:complexType>
304   </xs:element>
305   <xs:simpleType name="SectionType">
306   <xs:restriction base="xs:string">
307     <xs:enumeration value="notification"/>
308     <xs:enumeration value="setting"/>
309    </xs:restriction>
310   </xs:simpleType>
311   <xs:simpleType name="LaunchType">
312   <xs:restriction base="xs:string">
313     <xs:enumeration value="caller"/>
314     <xs:enumeration value="single"/>
315     <xs:enumeration value="group"/>
316     <xs:enumeration value="singleton"/>
317    </xs:restriction>
318   </xs:simpleType>
319   <xs:simpleType name="ResolutionType">
320   <xs:restriction base="xs:string">
321     <xs:enumeration value="xhigh"/>
322     <xs:enumeration value="high"/>
323    </xs:restriction>
324   </xs:simpleType>
325   <xs:element name="application-service">
326     <xs:complexType>
327       <xs:choice maxOccurs="unbounded">
328         <xs:element ref="packages:operation"/>
329         <xs:element ref="packages:uri"/>
330         <xs:element ref="packages:mime"/>
331         <xs:element ref="packages:subapp"/>
332       </xs:choice>
333     </xs:complexType>
334   </xs:element>
335   <xs:element name="app-control">
336     <xs:complexType>
337       <xs:choice maxOccurs="unbounded">
338         <xs:element ref="packages:operation"/>
339         <xs:element ref="packages:uri"/>
340         <xs:element ref="packages:mime"/>
341         <xs:element ref="packages:subapp"/>
342       </xs:choice>
343     </xs:complexType>
344   </xs:element>
345   <xs:element name="category">
346     <xs:complexType>
347       <xs:choice maxOccurs="unbounded">
348         <xs:any minOccurs="0" processContents="lax"/>
349       </xs:choice>
350       <xs:attribute name="name" use="required"/>
351       <xs:anyAttribute processContents="lax"/>
352     </xs:complexType>
353   </xs:element>
354   <xs:element name="metadata">
355     <xs:complexType>
356       <xs:attribute name="key" use="required" type="xs:string"/>
357       <xs:attribute name="value" type="xs:string"/>
358     </xs:complexType>
359   </xs:element>
360   <xs:element name="permission">
361   <xs:complexType>
362     <xs:attribute name="type" type="xs:string"/>
363   </xs:complexType>
364   </xs:element>
365   <xs:element name="datacontrol">
366   <xs:complexType>
367     <xs:choice maxOccurs="unbounded" minOccurs="0">
368       <xs:element ref="packages:privilege"/>
369     </xs:choice>
370     <xs:attribute name="providerid" type="xs:string"/>
371     <xs:attribute name="access" type="xs:string"/>
372     <xs:attribute name="type" type="xs:string"/>
373   </xs:complexType>
374   </xs:element>
375   <xs:element name="operation">
376     <xs:complexType>
377       <xs:attribute name="name" use="required"/>
378     </xs:complexType>
379   </xs:element>
380   <xs:element name="uri">
381     <xs:complexType>
382       <xs:attribute name="name" use="required"/>
383     </xs:complexType>
384   </xs:element>
385   <xs:element name="mime">
386     <xs:complexType>
387       <xs:attribute name="name" use="required"/>
388     </xs:complexType>
389   </xs:element>
390   <xs:element name="subapp">
391     <xs:complexType>
392       <xs:attribute name="name" use="required"/>
393     </xs:complexType>
394   </xs:element>
395   <xs:element name="background-category">
396     <xs:complexType mixed="true">
397       <xs:attribute name="value" type="packages:BackgroundCategoryType"/>
398     </xs:complexType>
399   </xs:element>
400   <xs:simpleType name="BackgroundCategoryType">
401     <xs:restriction base="xs:string">
402       <xs:enumeration value="media"/>
403       <xs:enumeration value="download"/>
404       <xs:enumeration value="background-network"/>
405       <xs:enumeration value="location"/>
406       <xs:enumeration value="sensor"/>
407       <xs:enumeration value="iot-communication"/>
408       <xs:enumeration value="system"/>
409     </xs:restriction>
410   </xs:simpleType>
411   <xs:element name="support-size">
412   </xs:element>
413   <xs:element name="splash-screens">
414     <xs:complexType>
415       <xs:choice maxOccurs="unbounded" minOccurs="0">
416         <xs:element ref="packages:splash-screen"/>
417       </xs:choice>
418     </xs:complexType>
419   </xs:element>
420   <xs:element name="splash-screen">
421     <xs:complexType>
422       <xs:attribute name="src" use="required" type="xs:string"/>
423       <xs:attribute name="type" use="required" type="xs:string"/>
424       <xs:attribute name="dpi" type="xs:string"/>
425       <xs:attribute name="orientation" use="required" type="xs:string"/>
426       <xs:attribute name="indicator-display" type="xs:string"/>
427       <xs:attribute name="app-control-operation" type="xs:string"/>
428       <xs:attribute name="color-depth" type="xs:string"/>
429     </xs:complexType>
430   </xs:element>
431 </xs:schema>