FRESH AND RAW
[potpourri.git] / relaxng / game.rng
blob77d5052e72ab29905da575b1cdf16ffd846282bc
1 <?xml version="1.0" encoding="UTF-8"?>
2 <grammar xmlns="http://relaxng.org/ns/structure/1.0">
3 <start>
4 <element name="game">
5 <element name="meta">
6 <element name="title">
7 <text/>
8 </element>
9 <element name="version">
10 <text/>
11 </element>
12 <oneOrMore>
13 <element name="author">
14 <text/>
15 </element>
16 </oneOrMore>
17 <element name="about">
18 <text/>
19 </element>
20 <optional>
21 <element name="icon">
22 <text/>
23 </element>
24 </optional>
25 </element>
26 <oneOrMore>
27 <element name="presentation">
28 <attribute name="name"/>
29 <element name="graphics">
30 <element name="width">
31 <text/>
32 </element>
33 <element name="height">
34 <text/>
35 </element>
36 <optional>
37 <element name="bits_per_pixel">
38 <text/>
39 </element>
40 </optional>
41 </element>
42 <optional>
43 <element name="net">
44 <empty/>
45 </element>
46 </optional>
47 </element>
48 </oneOrMore>
49 <element name="controls">
50 <zeroOrMore>
51 <element name="event">
52 <element name="name">
53 <text/>
54 </element>
55 <element name="default">
56 <element name="source">
57 <text/>
58 </element>
59 <optional>
60 <element name="value">
61 <text/>
62 </element>
63 </optional>
64 </element>
65 <optional>
66 <element name="fixed">
67 <empty/>
68 </element>
69 </optional>
70 </element>
71 </zeroOrMore>
72 </element>
73 <element name="media">
74 <interleave>
75 <zeroOrMore>
76 <element name="sprite">
77 <text/>
78 </element>
79 </zeroOrMore>
80 <element name="sound">
81 <attribute name="name"/>
82 <attribute name="filename"/>
83 </element>
84 </interleave>
85 </element>
86 <zeroOrMore>
87 <element name="actor">
88 <text/>
89 </element>
90 </zeroOrMore>
91 <zeroOrMore>
92 <element name="menu">
93 <text/>
94 <optional>
95 <attribute name="startup"/>
96 </optional>
97 </element>
98 </zeroOrMore>
99 </element>
100 </start>
101 </grammar>