2271000097ce42c31a902ba54f739ca52eed4738
[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:Accounts"/>
21           <xs:element ref="packages:account"/>
22           <xs:element ref="packages:font"/>
23         </xs:choice>
24       </xs:sequence>
25       <xs:attribute name="install-location" type="packages:InstallLocationType"/>
26       <xs:attribute name="package" use="required" type="xs:string"/>
27       <xs:attribute name="type" type="packages:PackageType"/>
28       <xs:attribute name="version" use="required" type="xs:NMTOKEN"/>
29       <xs:attribute name="size" type="xs:NMTOKEN"/>
30     </xs:complexType>
31   </xs:element>
32
33     <xs:simpleType name="InstallLocationType">
34       <xs:restriction base="xs:string">
35         <xs:enumeration value="auto"/>
36         <xs:enumeration value="internal-only"/>
37         <xs:enumeration value="prefer-external"/>
38       </xs:restriction>
39     </xs:simpleType>
40     <xs:simpleType name="PackageType">
41       <xs:restriction base="xs:string">
42         <xs:enumeration value="rpm"/>
43         <xs:enumeration value="tpk"/>
44         <xs:enumeration value="wgt"/>
45         <xs:enumeration value="apk"/>
46       </xs:restriction>
47     </xs:simpleType>
48     <xs:simpleType name="TypeType">
49       <xs:restriction base="xs:string">
50         <xs:enumeration value="capp"/>
51         <xs:enumeration value="c++app"/>
52         <xs:enumeration value="webapp"/>
53        </xs:restriction>
54     </xs:simpleType>
55     <xs:simpleType name="HwAccelerationType">
56       <xs:restriction base="xs:string">
57         <xs:enumeration value="use-GL"/>
58         <xs:enumeration value="not-use-GL"/>
59         <xs:enumeration value="use-system-setting"/>
60        </xs:restriction>
61     </xs:simpleType>
62         <xs:simpleType name="RecentImage">
63           <xs:restriction base="xs:string">
64                 <xs:enumeration value="icon"/>
65                 <xs:enumeration value="capture"/>
66            </xs:restriction>
67         </xs:simpleType>
68
69   <xs:element name="author">
70     <xs:complexType mixed="true">
71       <xs:attribute name="email"/>
72       <xs:attribute name="href"/>
73       <xs:attribute ref="xml:lang"/>
74     </xs:complexType>
75   </xs:element>
76   <xs:element name="description">
77     <xs:complexType mixed="true">
78       <xs:attribute ref="xml:lang"/>
79     </xs:complexType>
80   </xs:element>
81   <xs:element name="compatibility">
82     <xs:complexType/>
83   </xs:element>
84   <xs:element name="device-profile">
85     <xs:complexType/>
86   </xs:element>
87   <xs:element name="service-application">
88     <xs:complexType>
89       <xs:sequence>
90         <xs:choice maxOccurs="unbounded" minOccurs="0">
91           <xs:element ref="packages:label"/>
92           <xs:element ref="packages:icon"/>
93           <xs:element ref="packages:application-service"/>
94           <xs:element ref="packages:app-control"/>
95           <xs:element ref="packages:category"/>
96         </xs:choice>
97       </xs:sequence>
98       <xs:attribute name="appid" use="required" type="xs:string"/>
99       <xs:attribute name="auto-restart" use="required" type="xs:boolean"/>
100       <xs:attribute name="exec" use="required"/>
101       <xs:attribute name="on-boot" use="required" type="xs:boolean"/>
102       <xs:attribute name="type" use="required" type="packages:TypeType"/>
103     </xs:complexType>
104   </xs:element>
105   <xs:element name="ui-application">
106     <xs:complexType>
107       <xs:sequence>
108         <xs:choice maxOccurs="unbounded" minOccurs="0">
109           <xs:element ref="packages:label"/>
110           <xs:element ref="packages:icon"/>
111           <xs:element ref="packages:application-service"/>
112           <xs:element ref="packages:app-control"/>
113           <xs:element ref="packages:category"/>
114         </xs:choice>
115       </xs:sequence>
116       <xs:attribute name="appid" use="required" type="xs:string"/>
117       <xs:attribute name="exec" use="required"/>
118       <xs:attribute name="multiple" type="xs:boolean"/>
119       <xs:attribute name="nodisplay" type="xs:boolean"/>
120       <xs:attribute name="taskmanage" type="xs:boolean"/>
121       <xs:attribute name="type" use="required" type="packages:TypeType"/>
122       <xs:attribute name="categories" type="xs:NCName"/>
123       <xs:attribute name="extraid"/>
124       <xs:attribute name="hw-acceleration" type="packages:HwAccelerationType"/>
125           <xs:attribute name="recentimage" type="packages:RecentImage"/>
126           <xs:attribute name="mainapp" type="xs:boolean"/>
127     </xs:complexType>
128   </xs:element>
129   <xs:element name="ime-application">
130     <xs:complexType>
131       <xs:sequence>
132         <xs:choice maxOccurs="unbounded">
133           <xs:element ref="packages:label"/>
134           <xs:element ref="packages:icon"/>
135         </xs:choice>
136       </xs:sequence>
137       <xs:attribute name="appid" use="required" type="xs:string"/>
138       <xs:attribute name="exec" use="required" type="xs:NCName"/>
139       <xs:attribute name="multiple" type="xs:boolean"/>
140       <xs:attribute name="nodisplay" type="xs:boolean"/>
141       <xs:attribute name="type" use="required" type="packages:TypeType"/>
142     </xs:complexType>
143   </xs:element>
144   <xs:element name="shortcut-list">
145   </xs:element>
146   <xs:element name="livebox">
147   </xs:element>
148   <xs:element name="Accounts">
149   </xs:element>
150   <xs:element name="account">
151   </xs:element>
152   <xs:element name="font">
153     <xs:complexType>
154       <xs:sequence>
155         <xs:element ref="packages:label"/>
156         <xs:element ref="packages:icon"/>
157       </xs:sequence>
158     </xs:complexType>
159   </xs:element>
160   <xs:element name="label">
161     <xs:complexType mixed="true">
162       <xs:attribute ref="xml:lang"/>
163     </xs:complexType>
164   </xs:element>
165   <xs:element name="icon">
166         <xs:complexType mixed="true">
167           <xs:attribute ref="xml:lang"/>
168           <xs:attribute name="section" type="packages:SectionType"/>
169           <xs:attribute name="resolution" type="packages:ResolutionType"/>
170         </xs:complexType>
171   </xs:element>
172   <xs:simpleType name="SectionType">
173         <xs:restriction base="xs:string">
174           <xs:enumeration value="notification"/>
175           <xs:enumeration value="setting"/>
176          </xs:restriction>
177   </xs:simpleType>
178   <xs:simpleType name="ResolutionType">
179         <xs:restriction base="xs:string">
180           <xs:enumeration value="xhigh"/>
181           <xs:enumeration value="high"/>
182          </xs:restriction>
183   </xs:simpleType>
184   <xs:element name="application-service">
185     <xs:complexType>
186       <xs:sequence>
187         <xs:choice maxOccurs="unbounded">
188           <xs:element ref="packages:operation"/>
189           <xs:element ref="packages:uri"/>
190           <xs:element ref="packages:mime"/>
191           <xs:element ref="packages:subapp"/>
192         </xs:choice>
193       </xs:sequence>
194     </xs:complexType>
195   </xs:element>
196   <xs:element name="app-control">
197     <xs:complexType>
198       <xs:sequence>
199         <xs:choice maxOccurs="unbounded">
200           <xs:element ref="packages:operation"/>
201           <xs:element ref="packages:uri"/>
202           <xs:element ref="packages:mime"/>
203           <xs:element ref="packages:subapp"/>
204         </xs:choice>
205       </xs:sequence>
206     </xs:complexType>
207   </xs:element>
208   <xs:element name="category">
209     <xs:complexType>
210       <xs:sequence>
211         <xs:choice maxOccurs="unbounded">
212           <xs:any minOccurs="0" processContents="lax"/>
213         </xs:choice>
214       </xs:sequence>
215       <xs:anyAttribute processContents="lax"/>
216     </xs:complexType>
217   </xs:element>
218   <xs:element name="operation">
219     <xs:complexType>
220       <xs:attribute name="name" use="required"/>
221     </xs:complexType>
222   </xs:element>
223   <xs:element name="uri">
224     <xs:complexType>
225       <xs:attribute name="name" use="required"/>
226     </xs:complexType>
227   </xs:element>
228   <xs:element name="mime">
229     <xs:complexType>
230       <xs:attribute name="name" use="required"/>
231     </xs:complexType>
232   </xs:element>
233   <xs:element name="subapp">
234     <xs:complexType>
235       <xs:attribute name="name" use="required"/>
236     </xs:complexType>
237   </xs:element>
238 </xs:schema>