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