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