More animation work
[potpourri.git] / relaxng / actor.rng
blob158c85b52e3c0bfdae4e2195b03170d226846429
1 <?xml version="1.0" encoding="UTF-8"?>
2 <grammar xmlns="http://relaxng.org/ns/structure/1.0">
3 <start>
4 <element name="actor">
5 <element name="name">
6 <text/>
7 </element>
8 <zeroOrMore>
9 <element name="sprite">
10 <element name="name">
11 <text/>
12 </element>
13 <optional>
14 <element name="x">
15 <text/>
16 </element>
17 </optional>
18 <optional>
19 <element name="y">
20 <text/>
21 </element>
22 </optional>
23 <optional>
24 <element name="center_x">
25 <text/>
26 </element>
27 </optional>
28 <optional>
29 <element name="center_y">
30 <text/>
31 </element>
32 </optional>
33 <optional>
34 <element name="angle">
35 <text/>
36 </element>
37 </optional>
38 </element>
39 </zeroOrMore>
40 <optional>
41 <element name="physics">
42 <element name="body">
43 <attribute name="mass"/>
44 <attribute name="inertia"/>
45 <optional>
46 <element name="fixed">
47 <empty/>
48 </element>
49 </optional>
50 </element>
51 <element name="shape">
52 <choice>
53 <element name="poly">
54 <element name="data">
55 <oneOrMore>
56 <ref name="coordinate"/>
57 </oneOrMore>
58 </element>
59 <element name="offset">
60 <ref name="coordinate"/>
61 </element>
62 </element>
63 <element name="line">
64 <element name="point1">
65 <ref name="coordinate"/>
66 </element>
67 <element name="point2">
68 <ref name="coordinate"/>
69 </element>
70 <element name="radius">
71 <text/>
72 </element>
73 </element>
74 <element name="circle">
75 <element name="offset">
76 <ref name="coordinate"/>
77 </element>
78 <element name="radius">
79 <text/>
80 </element>
81 </element>
82 </choice>
83 </element>
84 </element>
85 </optional>
86 <zeroOrMore>
87 <element name="script">
88 <element name="event">
89 <text/>
90 </element>
91 <element name="script">
92 <text/>
93 </element>
94 </element>
95 </zeroOrMore>
96 </element>
97 </start>
98 <define name="coordinate">
99 <element name="pair">
100 <element name="x">
101 <text/>
102 </element>
103 <element name="y">
104 <text/>
105 </element>
106 </element>
107 </define>
108 </grammar>