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