1<?xml version="1.0" encoding="UTF-8"?>
2<!-- CHART PUS Packet definition files -->
3<grammar xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
4 <start>
5 <ref name="packet"/>
6 </start>
7 <define name="packet">
8 <element name="packet">
9 <interleave>
10 <attribute name="xsi:noNamespaceSchemaLocation"/>
11 <element name="name">
12 <a:documentation>packet name</a:documentation>
13 <text/>
14 </element>
15 <element name="description">
16 <a:documentation>table description string</a:documentation>
17 <text/>
18 </element>
19 <optional>
20 <element name="spid">
21 <a:documentation>Special Packet IDentifier</a:documentation>
22 <data type="integer"/>
23 </element>
24 </optional>
25 <optional>
26 <element name="service">
27 <a:documentation>PUS service</a:documentation>
28 <data type="integer"/>
29 </element>
30 </optional>
31 <optional>
32 <element name="subservice">
33 <a:documentation>PUS subservice</a:documentation>
34 <data type="integer"/>
35 </element>
36 </optional>
37 <element name="apid">
38 <a:documentation>PUS application ID</a:documentation>
39 <data type="integer"/>
40 </element>
41 <optional>
42 <element name="dynamic-start">
43 <a:documentation>First byte where dynamic parameter processing begins</a:documentation>
44 <data type="integer"/>
45 </element>
46 </optional>
47 <optional>
48 <element name="param1">
49 <a:documentation>First additional identifier parameter</a:documentation>
50 <data type="integer"/>
51 </element>
52 </optional>
53 <optional>
54 <element name="param2">
55 <a:documentation>Second additional identifier parameter</a:documentation>
56 <data type="integer"/>
57 </element>
58 </optional>
59 <optional>
60 <element name="header-type">
61 <a:documentation>Type of binary pre-paremeter standard header</a:documentation>
62 <choice>
63 <value>TM</value>
64 <value>STDXPUSS</value>
65 <value>STDXCCSD</value>
66 </choice>
67 </element>
68 </optional>
69 <optional>
70 <element name="format">
71 <a:documentation>Event configuration</a:documentation>
72 <choice>
73 <value>xdr</value>
74 <value>zxdr</value>
75 </choice>
76 </element>
77 </optional>
78 <zeroOrMore>
79 <element name="table">
80 <a:documentation>List of tables we write to</a:documentation>
81 <interleave>
82 <!-- raw only -->
83 <element name="name">
84 <a:documentation>Our table name</a:documentation>
85 <text/>
86 </element>
87 <zeroOrMore>
88 <element name="field">
89 <a:documentation>List of parameters</a:documentation>
90 <interleave>
91 <element name="name">
92 <a:documentation>Parameter name</a:documentation>
93 <text/>
94 </element>
95 <optional>
96 <element name="byte">
97 <a:documentation>Byte offset for static fields</a:documentation>
98 <data type="integer"/>
99 </element>
100 </optional>
101 <optional>
102 <element name="bit">
103 <a:documentation>Bit offset for static fields</a:documentation>
104 <data type="integer"/>
105 </element>
106 </optional>
107 <optional>
108 <element name="group-size">
109 <a:documentation>If this field cotrols duplication of subsequenct parameters</a:documentation>
110 <data type="integer"/>
111 </element>
112 </optional>
113 <optional>
114 <element name="offset-mod">
115 <a:documentation>Bit offset to introduce a gap inbetween variable parameters</a:documentation>
116 <data type="integer"/>
117 </element>
118 </optional>
119 <optional>
120 <element name="time-offset">
121 <a:documentation>Time offset in ms if this parameter has a different time to the main packet</a:documentation>
122 <data type="integer"/>
123 </element>
124 </optional>
125 <optional>
126 <element name="num-occ">
127 <a:documentation>Specific a number of fixed repeats of this parameter (sic)</a:documentation>
128 <data type="integer"/>
129 </element>
130 </optional>
131 <optional>
132 <element name="bits-between-occ">
133 <a:documentation>Stride between fixed repeats (sic)</a:documentation>
134 <data type="integer"/>
135 </element>
136 </optional>
137 <optional>
138 <element name="time-delta-occ">
139 <a:documentation>Time delta between repeats (sic)</a:documentation>
140 <data type="integer"/>
141 </element>
142 </optional>
143 </interleave>
144 </element>
145 </zeroOrMore>
146 </interleave>
147 </element>
148 </zeroOrMore>
149 </interleave>
150 </element>
151 </define>
152</grammar>