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