630f3b21fd03fb5007e1aad605e152a7ec35ac87
[platform/core/appfw/pkgmgr-info.git] / parser / manifest.xsd.in
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:service-application"/>
16           <xs:element ref="packages:ui-application"/>
17           <xs:element ref="packages:widget"/>
18           <xs:element ref="packages:widget-application"/>
19           <xs:element ref="packages:watch-application"/>
20           <xs:element ref="packages:watchface"/>
21           <xs:element ref="packages:ime-application"/>
22           <xs:element ref="packages:shortcut-list"/>
23           <xs:element ref="packages:livebox"/>
24           <xs:element ref="packages:account"/>
25           <xs:element ref="packages:notifications"/>
26           <xs:element ref="packages:privileges"/>
27           <xs:element ref="packages:font"/>
28           <xs:element ref="packages:ime"/>
29           <xs:element ref="packages:feature"/>
30         </xs:choice>
31       </xs:sequence>
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="api-version" type="xs:string"/>
44       <xs:attribute name="support-disable" type="xs:boolean"/>
45       <xs:attribute name="support-mode" type="xs:string"/>
46       <xs:attribute name="support-reset" type="xs:string"/>
47       <xs:attribute name="backend-installer" type="xs:string"/>
48     </xs:complexType>
49   </xs:element>
50
51   <xs:simpleType name="InstallLocationType">
52     <xs:restriction base="xs:string">
53       <xs:enumeration value="auto"/>
54       <xs:enumeration value="internal-only"/>
55       <xs:enumeration value="prefer-external"/>
56     </xs:restriction>
57   </xs:simpleType>
58   <xs:simpleType name="PackageType">
59     <xs:restriction base="xs:string">
60       <xs:enumeration value="rpm"/>
61       <xs:enumeration value="tpk"/>
62       <xs:enumeration value="wgt"/>
63       <xs:enumeration value="apk"/>
64       <xs:enumeration value="coretpk"/>
65     </xs:restriction>
66   </xs:simpleType>
67   <xs:simpleType name="ProfileType">
68     <xs:restriction base="xs:string">
69       <xs:enumeration value="mobile"/>
70       <xs:enumeration value="wearable"/>
71       <xs:enumeration value="TV"/>
72     </xs:restriction>
73   </xs:simpleType>
74   <xs:simpleType name="TypeType">
75     <xs:restriction base="xs:string">
76       <xs:enumeration value="capp"/>
77       <xs:enumeration value="c++app"/>
78       <xs:enumeration value="webapp"/>
79     </xs:restriction>
80   </xs:simpleType>
81   <xs:simpleType name="HwAccelerationType">
82     <xs:restriction base="xs:string">
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
102   <xs:element name="author">
103     <xs:complexType mixed="true">
104       <xs:attribute name="email"/>
105       <xs:attribute name="href"/>
106       <xs:attribute ref="xml:lang"/>
107     </xs:complexType>
108   </xs:element>
109   <xs:element name="description">
110     <xs:complexType mixed="true">
111       <xs:attribute ref="xml:lang"/>
112     </xs:complexType>
113   </xs:element>
114   <xs:element name="compatibility">
115     <xs:complexType/>
116   </xs:element>
117   <xs:element name="device-profile">
118     <xs:complexType/>
119   </xs:element>
120   <xs:element name="profile">
121     <xs:complexType>
122       <xs:attribute name="name" type="packages:ProfileType"/>
123     </xs:complexType>
124   </xs:element>
125   <xs:element name="service-application">
126     <xs:complexType>
127       <xs:sequence>
128         <xs:choice maxOccurs="unbounded" minOccurs="0">
129           <xs:element ref="packages:label"/>
130           <xs:element ref="packages:icon"/>
131           <xs:element ref="packages:application-service"/>
132           <xs:element ref="packages:app-control"/>
133           <xs:element ref="packages:category"/>
134           <xs:element ref="packages:metadata"/>
135           <xs:element ref="packages:permission"/>
136           <xs:element ref="packages:datacontrol"/>
137         </xs:choice>
138       </xs:sequence>
139       <xs:attribute name="appid" use="required" type="xs:string"/>
140       <xs:attribute name="auto-restart" type="xs:boolean"/>
141       <xs:attribute name="exec" use="required"/>
142       <xs:attribute name="on-boot" type="xs:boolean"/>
143       <xs:attribute name="type" use="required" type="packages:TypeType"/>
144       <xs:attribute name="multiple" type="xs:boolean"/>
145       <xs:attribute name="taskmanage" type="xs:boolean"/>
146       <xs:attribute name="permission-type" type="xs:string"/>
147       <xs:attribute name="component-type" type="xs:string"/>
148       <xs:attribute name="nodisplay" type="xs:boolean"/>
149     </xs:complexType>
150   </xs:element>
151   <xs:element name="ui-application">
152     <xs:complexType>
153       <xs:sequence>
154         <xs:choice maxOccurs="unbounded" minOccurs="0">
155           <xs:element ref="packages:label"/>
156           <xs:element ref="packages:icon"/>
157           <xs:element ref="packages:image"/>
158           <xs:element ref="packages:application-service"/>
159           <xs:element ref="packages:app-control"/>
160           <xs:element ref="packages:category"/>
161           <xs:element ref="packages:metadata"/>
162           <xs:element ref="packages:permission"/>
163           <xs:element ref="packages:datacontrol"/>
164           <xs:element ref="packages:background-category"/>
165         </xs:choice>
166       </xs:sequence>
167       <xs:attribute name="appid" use="required" type="xs:string"/>
168       <xs:attribute name="exec" use="required"/>
169       <xs:attribute name="multiple" type="xs:boolean"/>
170       <xs:attribute name="nodisplay" type="xs:boolean"/>
171       <xs:attribute name="taskmanage" type="xs:boolean"/>
172       <xs:attribute name="enabled" type="xs:boolean"/>
173       <xs:attribute name="type" use="required" type="packages:TypeType"/>
174       <xs:attribute name="categories" type="xs:NCName"/>
175       <xs:attribute name="extraid"/>
176       <xs:attribute name="hw-acceleration" type="packages:HwAccelerationType"/>
177       <xs:attribute name="screen-reader" type="packages:ScreenReaderType"/>
178       <xs:attribute name="recentimage" type="packages:RecentImage"/>
179       <xs:attribute name="mainapp" type="xs:boolean"/>
180       <xs:attribute name="indicatordisplay" type="xs:boolean"/>
181       <xs:attribute name="effectimage-type" type="xs:string"/>
182       <xs:attribute name="portrait-effectimage" type="xs:string"/>
183       <xs:attribute name="landscape-effectimage" type="xs:string"/>
184       <xs:attribute name="guestmode-visibility" type="xs:string"/>
185       <xs:attribute name="launchcondition" type="xs:boolean"/>
186       <xs:attribute name="permission-type" type="xs:string"/>
187       <xs:attribute name="component-type" type="xs:string"/>
188       <xs:attribute name="submode" type="xs:boolean"/>
189       <xs:attribute name="submode-mainid" type="xs:string"/>
190       <xs:attribute name="launch_mode" type="packages:LaunchType"/>
191       <xs:attribute name="on-boot" type="xs:boolean"/>
192       <xs:attribute name="auto-restart" type="xs:boolean"/>
193       <xs:attribute name="process-pool" type="xs:boolean"/>
194       <xs:attribute name="multi-instance" type="xs:boolean"/>
195       <xs:attribute name="multi-instance-mainid" type="xs:string"/>
196       <xs:attribute name="ui-gadget" type="xs:boolean"/>
197     </xs:complexType>
198   </xs:element>
199   <xs:element name="widget">
200   </xs:element>
201   <xs:element name="widget-application">
202   </xs:element>
203   <xs:element name="watch-application">
204   </xs:element>
205   <xs:element name="watchface">
206   </xs:element>
207   <xs:element name="ime-application">
208     <xs:complexType>
209       <xs:sequence>
210         <xs:choice maxOccurs="unbounded">
211           <xs:element ref="packages:label"/>
212           <xs:element ref="packages:icon"/>
213         </xs:choice>
214       </xs:sequence>
215       <xs:attribute name="appid" use="required" type="xs:string"/>
216       <xs:attribute name="exec" use="required" type="xs:NCName"/>
217       <xs:attribute name="multiple" type="xs:boolean"/>
218       <xs:attribute name="nodisplay" type="xs:boolean"/>
219       <xs:attribute name="type" use="required" type="packages:TypeType"/>
220     </xs:complexType>
221   </xs:element>
222   <xs:element name="shortcut-list">
223   </xs:element>
224   <xs:element name="livebox">
225   </xs:element>
226   <xs:element name="account">
227   </xs:element>
228   <xs:element name="notifications">
229   </xs:element>
230   <xs:element name="ime">
231   </xs:element>
232   <xs:element name="feature">
233   </xs:element>
234   <xs:element name="privileges">
235     <xs:complexType>
236       <xs:sequence>
237         <xs:choice maxOccurs="unbounded" minOccurs="0">
238           <xs:element ref="packages:privilege"/>
239         </xs:choice>
240       </xs:sequence>
241     </xs:complexType>
242   </xs:element>
243   <xs:element name="privilege">
244   </xs:element>
245   <xs:element name="font">
246   </xs:element>
247   <xs:element name="label">
248     <xs:complexType mixed="true">
249       <xs:attribute ref="xml:lang"/>
250     </xs:complexType>
251   </xs:element>
252   <xs:element name="icon">
253   <xs:complexType mixed="true">
254     <xs:attribute ref="xml:lang"/>
255     <xs:attribute name="section" type="xs:string"/>
256     <xs:attribute name="resolution" type="packages:ResolutionType"/>
257   </xs:complexType>
258   </xs:element>
259   <xs:element name="image">
260   <xs:complexType mixed="true">
261     <xs:attribute ref="xml:lang"/>
262     <xs:attribute name="section" type="xs:string"/>
263   </xs:complexType>
264   </xs:element>
265   <xs:simpleType name="SectionType">
266   <xs:restriction base="xs:string">
267     <xs:enumeration value="notification"/>
268     <xs:enumeration value="setting"/>
269    </xs:restriction>
270   </xs:simpleType>
271   <xs:simpleType name="LaunchType">
272   <xs:restriction base="xs:string">
273     <xs:enumeration value="caller"/>
274     <xs:enumeration value="single"/>
275     <xs:enumeration value="group"/>
276    </xs:restriction>
277   </xs:simpleType>
278   <xs:simpleType name="ResolutionType">
279   <xs:restriction base="xs:string">
280     <xs:enumeration value="xhigh"/>
281     <xs:enumeration value="high"/>
282    </xs:restriction>
283   </xs:simpleType>
284   <xs:element name="application-service">
285     <xs:complexType>
286       <xs:sequence>
287         <xs:choice maxOccurs="unbounded">
288           <xs:element ref="packages:operation"/>
289           <xs:element ref="packages:uri"/>
290           <xs:element ref="packages:mime"/>
291           <xs:element ref="packages:subapp"/>
292         </xs:choice>
293       </xs:sequence>
294     </xs:complexType>
295   </xs:element>
296   <xs:element name="app-control">
297     <xs:complexType>
298       <xs:sequence>
299         <xs:choice maxOccurs="unbounded">
300           <xs:element ref="packages:operation"/>
301           <xs:element ref="packages:uri"/>
302           <xs:element ref="packages:mime"/>
303           <xs:element ref="packages:subapp"/>
304         </xs:choice>
305       </xs:sequence>
306     </xs:complexType>
307   </xs:element>
308   <xs:element name="category">
309     <xs:complexType>
310       <xs:sequence>
311         <xs:choice maxOccurs="unbounded">
312           <xs:any minOccurs="0" processContents="lax"/>
313         </xs:choice>
314       </xs:sequence>
315       <xs:anyAttribute processContents="lax"/>
316     </xs:complexType>
317   </xs:element>
318   <xs:element name="metadata">
319     <xs:complexType>
320       <xs:attribute name="key" use="required" type="xs:string"/>
321       <xs:attribute name="value" type="xs:string"/>
322     </xs:complexType>
323   </xs:element>
324   <xs:element name="permission">
325   <xs:complexType>
326     <xs:attribute name="type" type="xs:string"/>
327   </xs:complexType>
328   </xs:element>
329   <xs:element name="datacontrol">
330   <xs:complexType>
331     <xs:attribute name="providerid" type="xs:string"/>
332     <xs:attribute name="access" type="xs:string"/>
333     <xs:attribute name="type" type="xs:string"/>
334   </xs:complexType>
335   </xs:element>
336   <xs:element name="operation">
337     <xs:complexType>
338       <xs:attribute name="name" use="required"/>
339     </xs:complexType>
340   </xs:element>
341   <xs:element name="uri">
342     <xs:complexType>
343       <xs:attribute name="name" use="required"/>
344     </xs:complexType>
345   </xs:element>
346   <xs:element name="mime">
347     <xs:complexType>
348       <xs:attribute name="name" use="required"/>
349     </xs:complexType>
350   </xs:element>
351   <xs:element name="subapp">
352     <xs:complexType>
353       <xs:attribute name="name" use="required"/>
354     </xs:complexType>
355   </xs:element>
356   <xs:element name="background-category">
357     <xs:complexType mixed="true">
358       <xs:attribute name="value" type="xs:string"/>
359     </xs:complexType>
360   </xs:element>
361 </xs:schema>