Merge "add launch_mode attribute to support app_group" into tizen
[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:ime-application"/>
18           <xs:element ref="packages:shortcut-list"/>
19           <xs:element ref="packages:livebox"/>
20           <xs:element ref="packages:account"/>
21                   <xs:element ref="packages:notifications"/>
22                   <xs:element ref="packages:privileges"/>
23           <xs:element ref="packages:font"/>
24                   <xs:element ref="packages:ime"/>
25         </xs:choice>
26       </xs:sequence>
27           <xs:attribute name="storeclient-id" type="xs:string"/>
28       <xs:attribute name="install-location" type="packages:InstallLocationType"/>
29       <xs:attribute name="package" use="required" type="xs:string"/>
30           <xs:attribute name="main_package" type="xs:string"/>
31       <xs:attribute name="type" type="packages:PackageType"/>
32       <xs:attribute name="version" use="required" type="xs:NMTOKEN"/>
33       <xs:attribute name="size" type="xs:NMTOKEN"/>
34           <xs:attribute name="root_path" type="xs:string"/>
35           <xs:attribute name="csc_path" type="xs:string"/>
36           <xs:attribute name="appsetting" type="xs:boolean"/>
37           <xs:attribute name="nodisplay-setting" type="xs:boolean"/>
38           <xs:attribute name="url" type="xs:string"/>
39           <xs:attribute name="api-version" type="xs:string"/>
40     </xs:complexType>
41   </xs:element>
42
43     <xs:simpleType name="InstallLocationType">
44       <xs:restriction base="xs:string">
45         <xs:enumeration value="auto"/>
46         <xs:enumeration value="internal-only"/>
47         <xs:enumeration value="prefer-external"/>
48       </xs:restriction>
49     </xs:simpleType>
50     <xs:simpleType name="PackageType">
51       <xs:restriction base="xs:string">
52         <xs:enumeration value="rpm"/>
53         <xs:enumeration value="tpk"/>
54         <xs:enumeration value="wgt"/>
55         <xs:enumeration value="apk"/>
56         <xs:enumeration value="coretpk"/>
57       </xs:restriction>
58     </xs:simpleType>
59     <xs:simpleType name="ProfileType">
60       <xs:restriction base="xs:string">
61         <xs:enumeration value="mobile"/>
62         <xs:enumeration value="wearable"/>
63         <xs:enumeration value="TV"/>
64        </xs:restriction>
65     </xs:simpleType>
66     <xs:simpleType name="TypeType">
67       <xs:restriction base="xs:string">
68         <xs:enumeration value="capp"/>
69         <xs:enumeration value="c++app"/>
70         <xs:enumeration value="webapp"/>
71        </xs:restriction>
72     </xs:simpleType>
73     <xs:simpleType name="HwAccelerationType">
74       <xs:restriction base="xs:string">
75         <xs:enumeration value="use-GL"/>
76         <xs:enumeration value="not-use-GL"/>
77         <xs:enumeration value="use-system-setting"/>
78        </xs:restriction>
79     </xs:simpleType>
80         <xs:simpleType name="ScreenReaderType">
81           <xs:restriction base="xs:string">
82                 <xs:enumeration value="screenreader-off"/>
83                 <xs:enumeration value="screenreader-on"/>
84                 <xs:enumeration value="use-system-setting"/>
85            </xs:restriction>
86         </xs:simpleType>
87         <xs:simpleType name="RecentImage">
88           <xs:restriction base="xs:string">
89                 <xs:enumeration value="icon"/>
90                 <xs:enumeration value="capture"/>
91            </xs:restriction>
92         </xs:simpleType>
93
94   <xs:element name="author">
95     <xs:complexType mixed="true">
96       <xs:attribute name="email"/>
97       <xs:attribute name="href"/>
98       <xs:attribute ref="xml:lang"/>
99     </xs:complexType>
100   </xs:element>
101   <xs:element name="description">
102     <xs:complexType mixed="true">
103       <xs:attribute ref="xml:lang"/>
104     </xs:complexType>
105   </xs:element>
106   <xs:element name="compatibility">
107     <xs:complexType/>
108   </xs:element>
109   <xs:element name="device-profile">
110     <xs:complexType/>
111   </xs:element>
112   <xs:element name="profile">
113     <xs:complexType>
114       <xs:attribute name="name" type="packages:ProfileType"/>
115     </xs:complexType>
116   </xs:element>
117   <xs:element name="service-application">
118     <xs:complexType>
119       <xs:sequence>
120         <xs:choice maxOccurs="unbounded" minOccurs="0">
121           <xs:element ref="packages:label"/>
122           <xs:element ref="packages:icon"/>
123           <xs:element ref="packages:application-service"/>
124           <xs:element ref="packages:app-control"/>
125           <xs:element ref="packages:category"/>
126           <xs:element ref="packages:metadata"/>
127                   <xs:element ref="packages:permission"/>
128                   <xs:element ref="packages:datacontrol"/>
129         </xs:choice>
130       </xs:sequence>
131       <xs:attribute name="appid" use="required" type="xs:string"/>
132       <xs:attribute name="auto-restart" use="required" type="xs:boolean"/>
133       <xs:attribute name="exec" use="required"/>
134       <xs:attribute name="on-boot" use="required" type="xs:boolean"/>
135       <xs:attribute name="type" use="required" type="packages:TypeType"/>
136           <xs:attribute name="permission-type" type="xs:string"/>
137     </xs:complexType>
138   </xs:element>
139   <xs:element name="ui-application">
140     <xs:complexType>
141       <xs:sequence>
142         <xs:choice maxOccurs="unbounded" minOccurs="0">
143           <xs:element ref="packages:label"/>
144           <xs:element ref="packages:icon"/>
145                   <xs:element ref="packages:image"/>
146           <xs:element ref="packages:application-service"/>
147           <xs:element ref="packages:app-control"/>
148           <xs:element ref="packages:category"/>
149           <xs:element ref="packages:metadata"/>
150                   <xs:element ref="packages:permission"/>
151         </xs:choice>
152       </xs:sequence>
153       <xs:attribute name="appid" use="required" type="xs:string"/>
154       <xs:attribute name="exec" use="required"/>
155       <xs:attribute name="multiple" type="xs:boolean"/>
156       <xs:attribute name="nodisplay" type="xs:boolean"/>
157       <xs:attribute name="taskmanage" type="xs:boolean"/>
158       <xs:attribute name="enabled" type="xs:boolean"/>
159       <xs:attribute name="type" use="required" type="packages:TypeType"/>
160       <xs:attribute name="categories" type="xs:NCName"/>
161       <xs:attribute name="extraid"/>
162       <xs:attribute name="hw-acceleration" type="packages:HwAccelerationType"/>
163           <xs:attribute name="screen-reader" type="packages:ScreenReaderType"/>
164           <xs:attribute name="recentimage" type="packages:RecentImage"/>
165           <xs:attribute name="mainapp" type="xs:boolean"/>
166       <xs:attribute name="indicatordisplay" type="xs:boolean"/>
167       <xs:attribute name="portrait-effectimage" type="xs:string"/>
168       <xs:attribute name="landscape-effectimage" type="xs:string"/>
169       <xs:attribute name="guestmode-visibility" type="xs:string"/>
170           <xs:attribute name="launchcondition" type="xs:boolean"/>
171           <xs:attribute name="permission-type" type="xs:string"/>
172           <xs:attribute name="component-type" type="xs:string"/>
173           <xs:attribute name="submode" type="xs:boolean"/>
174           <xs:attribute name="submode-mainid" type="xs:string"/>
175      <xs:attribute name="launch_mode" type="packages:LaunchType"/>
176     </xs:complexType>
177   </xs:element>
178   <xs:element name="ime-application">
179     <xs:complexType>
180       <xs:sequence>
181         <xs:choice maxOccurs="unbounded">
182           <xs:element ref="packages:label"/>
183           <xs:element ref="packages:icon"/>
184         </xs:choice>
185       </xs:sequence>
186       <xs:attribute name="appid" use="required" type="xs:string"/>
187       <xs:attribute name="exec" use="required" type="xs:NCName"/>
188       <xs:attribute name="multiple" type="xs:boolean"/>
189       <xs:attribute name="nodisplay" type="xs:boolean"/>
190       <xs:attribute name="type" use="required" type="packages:TypeType"/>
191     </xs:complexType>
192   </xs:element>
193   <xs:element name="shortcut-list">
194   </xs:element>
195   <xs:element name="livebox">
196   </xs:element>
197   <xs:element name="account">
198   </xs:element>
199   <xs:element name="notifications">
200   </xs:element>
201   <xs:element name="ime">
202   </xs:element>
203   <xs:element name="privileges">
204     <xs:complexType>
205       <xs:sequence>
206         <xs:choice maxOccurs="unbounded" minOccurs="0">
207           <xs:element ref="packages:privilege"/>
208         </xs:choice>
209       </xs:sequence>
210     </xs:complexType>
211   </xs:element>
212   <xs:element name="privilege">
213   </xs:element>
214   <xs:element name="font">
215   </xs:element>
216   <xs:element name="label">
217     <xs:complexType mixed="true">
218       <xs:attribute ref="xml:lang"/>
219     </xs:complexType>
220   </xs:element>
221   <xs:element name="icon">
222         <xs:complexType mixed="true">
223           <xs:attribute ref="xml:lang"/>
224           <xs:attribute name="section" type="xs:string"/>
225           <xs:attribute name="resolution" type="packages:ResolutionType"/>
226         </xs:complexType>
227   </xs:element>
228   <xs:element name="image">
229         <xs:complexType mixed="true">
230           <xs:attribute ref="xml:lang"/>
231           <xs:attribute name="section" type="xs:string"/>
232         </xs:complexType>
233   </xs:element>
234   <xs:simpleType name="SectionType">
235         <xs:restriction base="xs:string">
236           <xs:enumeration value="notification"/>
237           <xs:enumeration value="setting"/>
238          </xs:restriction>
239   </xs:simpleType>
240   <xs:simpleType name="LaunchType">
241         <xs:restriction base="xs:string">
242           <xs:enumeration value="caller"/>
243           <xs:enumeration value="single"/>
244           <xs:enumeration value="group"/>
245          </xs:restriction>
246   </xs:simpleType>
247   <xs:simpleType name="ResolutionType">
248         <xs:restriction base="xs:string">
249           <xs:enumeration value="xhigh"/>
250           <xs:enumeration value="high"/>
251          </xs:restriction>
252   </xs:simpleType>
253   <xs:element name="application-service">
254     <xs:complexType>
255       <xs:sequence>
256         <xs:choice maxOccurs="unbounded">
257           <xs:element ref="packages:operation"/>
258           <xs:element ref="packages:uri"/>
259           <xs:element ref="packages:mime"/>
260           <xs:element ref="packages:subapp"/>
261         </xs:choice>
262       </xs:sequence>
263     </xs:complexType>
264   </xs:element>
265   <xs:element name="app-control">
266     <xs:complexType>
267       <xs:sequence>
268         <xs:choice maxOccurs="unbounded">
269           <xs:element ref="packages:operation"/>
270           <xs:element ref="packages:uri"/>
271           <xs:element ref="packages:mime"/>
272           <xs:element ref="packages:subapp"/>
273         </xs:choice>
274       </xs:sequence>
275     </xs:complexType>
276   </xs:element>
277   <xs:element name="category">
278     <xs:complexType>
279       <xs:sequence>
280         <xs:choice maxOccurs="unbounded">
281           <xs:any minOccurs="0" processContents="lax"/>
282         </xs:choice>
283       </xs:sequence>
284       <xs:anyAttribute processContents="lax"/>
285     </xs:complexType>
286   </xs:element>
287   <xs:element name="metadata">
288     <xs:complexType>
289       <xs:attribute name="key" use="required" type="xs:string"/>
290       <xs:attribute name="value" type="xs:string"/>
291     </xs:complexType>
292   </xs:element>
293   <xs:element name="permission">
294         <xs:complexType>
295           <xs:attribute name="type" type="xs:string"/>
296         </xs:complexType>
297   </xs:element>
298   <xs:element name="datacontrol">
299         <xs:complexType>
300           <xs:attribute name="providerid" type="xs:string"/>
301           <xs:attribute name="access" type="xs:string"/>
302           <xs:attribute name="type" type="xs:string"/>
303         </xs:complexType>
304   </xs:element>
305   <xs:element name="operation">
306     <xs:complexType>
307       <xs:attribute name="name" use="required"/>
308     </xs:complexType>
309   </xs:element>
310   <xs:element name="uri">
311     <xs:complexType>
312       <xs:attribute name="name" use="required"/>
313     </xs:complexType>
314   </xs:element>
315   <xs:element name="mime">
316     <xs:complexType>
317       <xs:attribute name="name" use="required"/>
318     </xs:complexType>
319   </xs:element>
320   <xs:element name="subapp">
321     <xs:complexType>
322       <xs:attribute name="name" use="required"/>
323     </xs:complexType>
324   </xs:element>
325 </xs:schema>