1<?xml version="1.0" encoding="UTF-8"?>
2<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
3 <xs:import namespace="http://www.w3.org/2001/XMLSchema-instance" schemaLocation="xsi.xsd"/>
4 <xs:element name="sources">
5 <xs:complexType>
6 <xs:all>
7 <xs:element ref="sids"/>
8 <xs:element minOccurs="0" ref="satellites"/>
9 <xs:element minOccurs="0" ref="special-packets"/>
10 </xs:all>
11 <xs:attribute ref="xsi:noNamespaceSchemaLocation"/>
12 </xs:complexType>
13 </xs:element>
14 <xs:element name="sids">
15 <xs:complexType>
16 <xs:sequence>
17 <xs:element minOccurs="0" maxOccurs="unbounded" ref="sid"/>
18 </xs:sequence>
19 </xs:complexType>
20 </xs:element>
21 <xs:element name="sid">
22 <xs:complexType>
23 <xs:all>
24 <xs:element minOccurs="0" ref="sid-num"/>
25 <xs:element name="name" type="xs:string">
26 <xs:annotation>
27 <xs:documentation>Required name of this source</xs:documentation>
28 </xs:annotation>
29 </xs:element>
30 <xs:element minOccurs="0" ref="long-name"/>
31 <xs:element minOccurs="0" ref="description"/>
32 <xs:element minOccurs="0" name="satellite" type="xs:string">
33 <xs:annotation>
34 <xs:documentation>Name of associated <satellite></xs:documentation>
35 </xs:annotation>
36 </xs:element>
37 <xs:element minOccurs="0" ref="colour"/>
38 <xs:element minOccurs="0" ref="visible"/>
39 <xs:element minOccurs="0" ref="operational"/>
40 <xs:element minOccurs="0" ref="default"/>
41 <xs:element minOccurs="0" ref="orbiter"/>
42 <xs:element minOccurs="0" ref="group"/>
43 </xs:all>
44 </xs:complexType>
45 </xs:element>
46 <xs:element name="sid-num" type="xs:integer">
47 <xs:annotation>
48 <xs:documentation>For SID classes that use SID_NUM fields for database storage</xs:documentation>
49 </xs:annotation>
50 </xs:element>
51 <xs:element name="long-name" type="xs:string">
52 <xs:annotation>
53 <xs:documentation>Longer name to use in graph labels and other places</xs:documentation>
54 </xs:annotation>
55 </xs:element>
56 <xs:element name="description" type="xs:string">
57 <xs:annotation>
58 <xs:documentation>Description, currently for information only and not used</xs:documentation>
59 </xs:annotation>
60 </xs:element>
61 <xs:element name="colour" type="xs:string">
62 <xs:annotation>
63 <xs:documentation>Default colour used in report viewer</xs:documentation>
64 </xs:annotation>
65 </xs:element>
66 <xs:element name="visible" type="xs:boolean">
67 <xs:annotation>
68 <xs:documentation>Control visibility of this SID in web tools</xs:documentation>
69 </xs:annotation>
70 </xs:element>
71 <xs:element name="operational" type="xs:boolean">
72 <xs:annotation>
73 <xs:documentation>Specify whether this source is included in regular reporting and processing</xs:documentation>
74 </xs:annotation>
75 </xs:element>
76 <xs:element name="default" type="xs:boolean">
77 <xs:annotation>
78 <xs:documentation>For one SID only nominate as the default GUI menu item</xs:documentation>
79 </xs:annotation>
80 </xs:element>
81 <xs:element name="orbiter" type="xs:string">
82 <xs:annotation>
83 <xs:documentation>Name of either a Python class or another SID for orbit determination</xs:documentation>
84 </xs:annotation>
85 </xs:element>
86 <xs:element name="group" type="xs:string">
87 <xs:annotation>
88 <xs:documentation>Used to group similar SIDs in a GUI</xs:documentation>
89 </xs:annotation>
90 </xs:element>
91 <xs:element name="satellites">
92 <xs:complexType>
93 <xs:sequence>
94 <xs:element minOccurs="0" maxOccurs="unbounded" name="satellite">
95 <xs:complexType>
96 <xs:all>
97 <xs:element name="name" type="xs:string">
98 <xs:annotation>
99 <xs:documentation>Normal short identifier for this satellite</xs:documentation>
100 </xs:annotation>
101 </xs:element>
102 <xs:element minOccurs="0" ref="launch-date"/>
103 <xs:element minOccurs="0" ref="decommision-date"/>
104 <xs:element minOccurs="0" ref="orbit-duration"/>
105 </xs:all>
106 </xs:complexType>
107 </xs:element>
108 </xs:sequence>
109 </xs:complexType>
110 </xs:element>
111 <xs:element name="launch-date" type="xs:dateTime">
112 <xs:annotation>
113 <xs:documentation>Launch date, if known</xs:documentation>
114 </xs:annotation>
115 </xs:element>
116 <xs:element name="decommision-date" type="xs:dateTime">
117 <xs:annotation>
118 <xs:documentation>End of life date, if known</xs:documentation>
119 </xs:annotation>
120 </xs:element>
121 <xs:element name="orbit-duration" type="xs:duration">
122 <xs:annotation>
123 <xs:documentation>Nominal orbit duration for satellites with orbits</xs:documentation>
124 </xs:annotation>
125 </xs:element>
126 <xs:element name="special-packets">
127 <xs:annotation>
128 <xs:documentation>For PUS ingestion configuration</xs:documentation>
129 </xs:annotation>
130 <xs:complexType>
131 <xs:all>
132 <xs:element minOccurs="0" ref="good-frame-spid"/>
133 <xs:element minOccurs="0" ref="bad-frame-spid"/>
134 <xs:element minOccurs="0" ref="unknown-packet-spid"/>
135 <xs:element minOccurs="0" ref="bad-packet-spid"/>
136 <xs:element minOccurs="0" ref="idle-packet-spid"/>
137 <xs:element minOccurs="0" ref="idle-frame-spid"/>
138 </xs:all>
139 </xs:complexType>
140 </xs:element>
141 <xs:element name="good-frame-spid" type="xs:integer"/>
142 <xs:element name="bad-frame-spid" type="xs:integer"/>
143 <xs:element name="unknown-packet-spid" type="xs:integer"/>
144 <xs:element name="bad-packet-spid" type="xs:integer"/>
145 <xs:element name="idle-packet-spid" type="xs:integer"/>
146 <xs:element name="idle-frame-spid" type="xs:integer"/>
147</xs:schema>