Merged in changes from dflemstr (thanks!)
[pandora-libraries.git] / docs / PXML_schema.xsd
1 <?xml version="1.0" encoding="utf-16"?>
2 <xs:schema id="NewDataSet" targetNamespace="http://openpandora.org/namespaces/PXML" xmlns="http://openpandora.org/namespaces/PXML" xmlns:xs="http://www.w3.org/2001/XMLSchema" attributeFormDefault="unqualified" elementFormDefault="unqualified">
3   <xs:element name="PXML">
4     <xs:complexType>
5       <xs:all>
6         <!--Execution params -->
7         <xs:element name="exec">
8           <xs:complexType>
9             <xs:attribute name="background" type="xs:boolean" />
10             <xs:attribute name="startdir" use="optional" type="xs:string" />
11             <xs:attribute name="standalone" type="xs:boolean" />
12             <xs:attribute name="command" type="xs:string" />
13           </xs:complexType>
14         </xs:element>
15         <!--Author info-->
16         <xs:element name="author" maxOccurs="1">
17           <xs:complexType>
18             <xs:attribute name="name" type="xs:string" />
19             <xs:attribute name="website" type="xs:string" />
20             <xs:attribute name="email" type="xs:string" />
21           </xs:complexType>
22         </xs:element>
23         <!--Icon-->
24         <xs:element name="icon" maxOccurs="unbounded">
25           <xs:complexType>
26             <xs:attribute name="src" type="xs:string" />
27           </xs:complexType>
28         </xs:element>
29         <!--App version info-->
30         <xs:element name="version">
31           <xs:complexType>
32             <xs:attribute name="major" type="xs:nonNegativeInteger" />
33             <xs:attribute name="minor" type="xs:nonNegativeInteger" />
34             <xs:attribute name="release" type="xs:nonNegativeInteger" />
35             <xs:attribute name="build" type="xs:nonNegativeInteger" />
36           </xs:complexType>
37         </xs:element>
38         <!--OS Version info-->
39         <xs:element name="osversion">
40           <xs:complexType>
41             <xs:attribute name="major" type="xs:nonNegativeInteger" />
42             <xs:attribute name="minor" type="xs:nonNegativeInteger" />
43             <xs:attribute name="release" type="xs:nonNegativeInteger" />
44             <xs:attribute name="build" type="xs:nonNegativeInteger" />
45           </xs:complexType>
46         </xs:element>
47         <!--Title-->
48         <xs:element name="title">
49           <xs:complexType>
50             <xs:simpleContent>
51               <xs:extension base="xs:string">
52                 <xs:attribute name="lang" type="xs:language" />
53               </xs:extension>
54             </xs:simpleContent>
55           </xs:complexType>
56         </xs:element>
57         <!--Description-->
58         <xs:element name="description">
59           <xs:complexType>
60             <xs:simpleContent>
61               <xs:extension base="xs:string">
62                 <xs:attribute name="lang" type="xs:language" />
63               </xs:extension>
64             </xs:simpleContent>
65           </xs:complexType>
66         </xs:element>
67         <!--Preview pics-->
68         <xs:element name="previewpics" use="optional">
69           <xs:complexType>
70             <xs:sequence>
71               <xs:element name="pic" maxOccurs="unbounded">
72                 <xs:complexType>
73                   <xs:attribute name="src" type="xs:string" />
74                 </xs:complexType>
75               </xs:element>
76             </xs:sequence>
77           </xs:complexType>
78         </xs:element>
79         <!--Categories-->
80         <xs:element name="categories">
81           <xs:complexType>
82             <xs:sequence>
83               <xs:element name="category" maxOccurs="unbounded">
84                 <xs:complexType>
85                   <xs:sequence>
86                     <xs:element name="subcategory" maxOccurs="unbounded">
87                       <xs:complexType>
88                         <xs:attribute name="name" type="xs:normalizedString" />
89                       </xs:complexType>
90                     </xs:element>
91                   </xs:sequence>
92                   <xs:attribute name="name" type="xs:normalizedString" />
93                 </xs:complexType>
94               </xs:element>
95             </xs:sequence>
96           </xs:complexType>
97         </xs:element>
98         <!--Associations-->
99         <xs:element name="associations" use="optional">
100           <xs:complexType>
101             <xs:sequence>
102               <xs:element name="association" maxOccurs="unbounded">
103                 <xs:complexType>
104                   <xs:attribute name="name" type="xs:normalizedString" />
105                   <xs:attribute name="filetype" type="xs:string" />
106                   <xs:attribute name="arguments" type="xs:string" />
107                 </xs:complexType>
108               </xs:element>
109             </xs:sequence>
110           </xs:complexType>
111         </xs:element>
112         <!--Clockspeed-->
113         <xs:element name="clockspeed">
114           <xs:complexType>
115             <xs:attribute name="frequency" type="xs:PositiveInteger" />
116           </xs:complexType>
117         </xs:element>
118       </xs:all>
119       <!--AppID-->
120       <xs:attribute name="id" type="xs:normalizedString" />
121     </xs:complexType>
122   </xs:element>
123 </xs:schema>