[Release] wrt-installer_0.0.90
[framework/web/wrt-installer.git] / configuration / config.xsd
1 <?xml version="1.0" encoding="UTF-8"?>\r
2 <!-- Widgets 1.0 (Working Draft) RELAX NG schema -->\r
3 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://www.w3.org/ns/widgets" xmlns:its="http://www.w3.org/2005/11/its" xmlns:widgets="http://www.w3.org/ns/widgets" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3.org/ns/widgets config.xsd">\r
4     <xs:import schemaLocation="local.xsd"/>\r
5     <xs:import namespace="http://www.w3.org/2005/11/its" schemaLocation="its.xsd"/>\r
6     <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>\r
7     <xs:import namespace="http://tizen.org/ns/widgets" schemaLocation="config.tizen.xsd"/>\r
8     <xs:group name="extension">\r
9         <xs:sequence>\r
10             <xs:group minOccurs="0" maxOccurs="unbounded" ref="widgets:anyElement"/>\r
11         </xs:sequence>\r
12     </xs:group>\r
13     <xs:attributeGroup name="extension">\r
14         <xs:attributeGroup ref="widgets:attr.allowed"/>\r
15     </xs:attributeGroup>\r
16     <xs:group name="anyElement">\r
17         <xs:sequence>\r
18             <xs:choice minOccurs="0" maxOccurs="unbounded">\r
19                 <xs:any namespace="##other" processContents="skip"/>\r
20                 <xs:any namespace="##local" processContents="skip"/>\r
21             </xs:choice>\r
22         </xs:sequence>\r
23     </xs:group>\r
24     <xs:group name="any">\r
25         <xs:sequence>\r
26             <xs:group minOccurs="0" maxOccurs="unbounded" ref="widgets:anyElement"/>\r
27         </xs:sequence>\r
28     </xs:group>\r
29     <xs:attributeGroup name="any">\r
30         <xs:anyAttribute processContents="skip"/>\r
31     </xs:attributeGroup>\r
32     <xs:attributeGroup name="attr.allowed">\r
33         <xs:attributeGroup ref="local"/>\r
34     </xs:attributeGroup>\r
35     <xs:attributeGroup name="attr.xmllang">\r
36         <xs:attribute ref="xml:lang" use="required"/>\r
37     </xs:attributeGroup>\r
38     <xs:attributeGroup name="attr.itsdir">\r
39         <xs:attribute ref="its:dir" use="required"/>\r
40     </xs:attributeGroup>\r
41     <xs:simpleType name="data.positiveNumber">\r
42         <xs:restriction base="xs:string">\r
43             <xs:pattern value="[1-9]\d*"/>\r
44         </xs:restriction>\r
45     </xs:simpleType>\r
46     <xs:simpleType name="data.boolean">\r
47         <xs:restriction base="xs:string">\r
48             <xs:enumeration value="true"/>\r
49             <xs:enumeration value="false"/>\r
50         </xs:restriction>\r
51     </xs:simpleType>\r
52     <xs:simpleType name="data.versionNumber">\r
53         <xs:restriction base="xs:string">\r
54             <xs:pattern value="[0-9]{2}.[0-9]{2}.[0-9]{4}"/>\r
55         </xs:restriction>\r
56     </xs:simpleType>\r
57     <xs:element name="widget">\r
58         <xs:complexType mixed="true">\r
59             <xs:choice minOccurs="0" maxOccurs="unbounded">\r
60                 <xs:element ref="widgets:name"/>\r
61                 <xs:element ref="widgets:description"/>\r
62                 <xs:element ref="widgets:icon"/>\r
63                 <xs:element ref="widgets:author"/>\r
64                 <xs:element ref="widgets:license"/>\r
65                 <xs:element ref="widgets:content"/>\r
66                 <xs:element ref="widgets:feature"/>\r
67                 <xs:element ref="widgets:preference"/>\r
68                 <xs:element ref="widgets:access"/>\r
69                 <!-- "widgets:extension" group is commented. Otherwise, error: cos-nonambig: Content model violates the unique particle attribution rule. -->\r
70                 <!-- Allowing Any Elements or Attributes from a Particular Namespace -->\r
71                 <!-- The wildcards permitted within the list are ##local (a nonqualified element) and ##targetNamespace (the target namespace). Two wildcards can also be used instead of the list: ##any (any namespace) and ##other (any namespace other than the target namespace). -->\r
72                 <!--xs:group ref="widgets:extension"/-->\r
73                 <xs:element ref="tizen:appservice"  maxOccurs="unbounded" xmlns:tizen="http://tizen.org/ns/widgets"/>\r
74                 <xs:element ref="tizen:setting"  maxOccurs="unbounded" xmlns:tizen="http://tizen.org/ns/widgets"/>\r
75                 <xs:element ref="tizen:application" minOccurs="1" maxOccurs="1" xmlns:tizen="http://tizen.org/ns/widgets"/>\r
76                 <xs:element ref="tizen:content"  minOccurs="1" maxOccurs="1" xmlns:tizen="http://tizen.org/ns/widgets"/>\r
77                 </xs:choice>\r
78             <xs:attribute ref="xml:lang"/>\r
79             <xs:attribute name="id" type="xs:anyURI"/>\r
80             <xs:attribute name="version" type="widgets:data.versionNumber"/>\r
81             <xs:attribute name="height" type="widgets:data.positiveNumber"/>\r
82             <xs:attribute name="width" type="widgets:data.positiveNumber"/>\r
83             <xs:attribute name="viewmodes">\r
84                 <xs:simpleType>\r
85                     <xs:list>\r
86                         <xs:simpleType>\r
87                             <xs:restriction base="xs:token">\r
88                                 <xs:enumeration value="maximized"/>\r
89                                 <xs:enumeration value="fullscreen"/>\r
90                             </xs:restriction>\r
91                         </xs:simpleType>\r
92                     </xs:list>\r
93                 </xs:simpleType>\r
94             </xs:attribute>\r
95             <xs:attributeGroup ref="widgets:extension"/>\r
96         </xs:complexType>\r
97     </xs:element>\r
98     <xs:element name="name">\r
99         <xs:complexType mixed="true">\r
100             <xs:attribute ref="xml:lang"/>\r
101             <xs:attribute ref="its:dir"/>\r
102             <xs:attribute name="short"/>\r
103             <xs:attributeGroup ref="widgets:extension"/>\r
104         </xs:complexType>\r
105     </xs:element>\r
106     <xs:element name="description">\r
107         <xs:complexType mixed="true">\r
108             <xs:attribute ref="xml:lang"/>\r
109             <xs:attribute ref="its:dir"/>\r
110             <xs:attributeGroup ref="widgets:extension"/>\r
111         </xs:complexType>\r
112     </xs:element>\r
113     <xs:element name="icon">\r
114         <xs:complexType>\r
115             <xs:attributeGroup ref="widgets:attr.allowed"/>\r
116             <xs:attribute name="src" use="required" type="xs:anyURI"/>\r
117             <xs:attribute name="height" type="widgets:data.positiveNumber"/>\r
118             <xs:attribute name="width" type="widgets:data.positiveNumber"/>\r
119         </xs:complexType>\r
120     </xs:element>\r
121     <xs:element name="access">\r
122         <xs:complexType>\r
123             <xs:attributeGroup ref="widgets:attr.allowed"/>\r
124             <xs:attribute name="origin" use="required" type="xs:anyURI"/>\r
125             <xs:attribute name="subdomains" use="optional" type="widgets:data.boolean"/>\r
126         </xs:complexType>\r
127     </xs:element>\r
128     <xs:element name="author">\r
129         <xs:complexType mixed="true">\r
130             <xs:attribute ref="xml:lang"/>\r
131             <xs:attribute ref="its:dir"/>\r
132             <xs:attribute name="href" type="xs:anyURI"/>\r
133             <xs:attribute name="email">\r
134                 <xs:simpleType>\r
135                     <xs:restriction base="xs:string">\r
136                     </xs:restriction>\r
137                 </xs:simpleType>\r
138             </xs:attribute>\r
139             <xs:attributeGroup ref="widgets:extension"/>\r
140         </xs:complexType>\r
141     </xs:element>\r
142     <xs:element name="license">\r
143         <xs:complexType mixed="true">\r
144             <xs:attribute ref="xml:lang"/>\r
145             <xs:attribute ref="its:dir"/>\r
146             <xs:attribute name="href" type="xs:anyURI"/>\r
147             <xs:attributeGroup ref="widgets:extension"/>\r
148         </xs:complexType>\r
149     </xs:element>\r
150     <xs:element name="content">\r
151         <xs:complexType>\r
152             <xs:attributeGroup ref="widgets:attr.allowed"/>\r
153             <xs:attribute name="src" use="required" type="xs:anyURI"/>\r
154             <xs:attribute name="type"/>\r
155             <xs:attribute name="charset"/>\r
156         </xs:complexType>\r
157     </xs:element>\r
158     <xs:element name="feature">\r
159         <xs:complexType mixed="true">\r
160             <xs:choice minOccurs="0" maxOccurs="unbounded">\r
161                 <xs:element ref="widgets:param"/>\r
162             </xs:choice>\r
163             <xs:attribute name="name" use="required" type="xs:anyURI"/>\r
164             <xs:attributeGroup ref="widgets:extension"/>\r
165         </xs:complexType>\r
166     </xs:element>\r
167     <xs:element name="param">\r
168         <xs:complexType mixed="true">\r
169             <xs:attribute name="name" use="required"/>\r
170             <xs:attribute name="value" use="required"/>\r
171             <xs:attributeGroup ref="widgets:extension"/>\r
172         </xs:complexType>\r
173     </xs:element>\r
174     <xs:element name="preference">\r
175         <xs:complexType mixed="true">\r
176             <xs:attribute ref="xml:lang"/>\r
177             <xs:attribute name="name" use="required"/>\r
178             <xs:attribute name="value"/>\r
179             <xs:attribute name="readonly" type="widgets:data.boolean"/>\r
180             <xs:attributeGroup ref="widgets:extension"/>\r
181         </xs:complexType>\r
182     </xs:element>\r
183 </xs:schema>\r