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