0f3e8474 by Michael B. Mathews

ILP-593 Updated namespace and interface names to use the word Analysis versus test

1 parent 42b3e85c
1 <?xml version="1.0" encoding="UTF-8" ?>
2
3 <specification xmlns="https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd"
4 xmlns:xid="https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd"
5 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
6 xsi:schemaLocation="https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd"
7 identity="IlpAnalysisApi.xid.xml">
8 <title>ILP Analysis API Specifications</title>
9 <comment>
10 This file defines the ILP analysis API specification used by the analysis service and internal components.
11 </comment>
12
13 <!-- Include all known definitions -->
14 <import ref="https://xid.location.studio/GeoSpatial/V1.0/SpatialDefs.xid.xml" local="SpatialDefs.xid.xml" />
15 <import ref="https://xid.location.studio/GeoSpatial/V1.0/Contact.xid.xml" local="Contact.xid.xml" />
16 <import ref="https://xid.location.studio/SLAM/V1.0/SurveyApi.xid.xml" local="SurveyApi.xid.xml" />
17 <import ref="https://xid.location.studio/HPE/V1.2/HpeCore.xid.xml" local="HpeCore.xid.xml" />
18
19
20 <namespace name="ILP.Analysis">
21 <using namespace="Tensor"/>
22
23 <!--
24 *************************************
25 * Filter Structure Definition
26 *************************************
27 -->
28 <struct name="Filter">
29 <comment>Specifies filter parameters controlling selection of records in the Data Set.</comment>
30 <elem name="obsTypes" multiplicity ="0..*" type="uint8" >
31 <comment>Optional set of observation types to use in execution. If not defined, all observation types will be passed to ILP. This filter
32 limits the data presented to the ILP.</comment>
33 </elem>
34 <elem name="earliestDate" type="datetime" multiplicity="0..1">
35 <comment>Optional earliest date to select records. If not defined, earliest date is not considered.</comment>
36 </elem>
37 <elem name="latestDate" type="datetime" multiplicity="0..1">
38 <comment>Optional latest date to select records. If not defined, latest date is not considered.</comment>
39 </elem>
40 <elem name="bounds" multiplicity ="0..1" type="GeoSpatial.BoundingBox" >
41 <comment>Optional bounding box, which the records are contained.</comment>
42 </elem>
43 <elem name="devids" multiplicity ="0..*" type="string" >
44 <comment>Optional set of device idenifers to select for execution.</comment>
45 </elem>
46 </struct>
47
48
49 <!--
50 *************************************
51 * DataSet Structure Definition.
52 *************************************
53 -->
54 <struct name="DataSet" type="GeoSpatial.Object" rttkey="GeoSpatial.ObjectType.IlpTestDataSet">
55 <comment>DataSet comprises one or more surveys to use as analysis test records.</comment>
56 <elem name="uuidData" multiplicity ="0..*" type="UUID" >
57 <comment>Zero or more UUIDs identifying the survey test data to include in this data set.</comment>
58 </elem>
59 <elem name="data" multiplicity ="0..*" type="SLAM.SurveyData" >
60 <comment>Zero or more SLAM surveys comprising the test data to execute.</comment>
61 </elem>
62 <elem name="returnFilteredData" multiplicity ="1" type="bool" default ="false">
63 <comment>Optional boolean, determines if filtered data should be returned to caller for future testing and analysis.</comment>
64 </elem>
65 </struct>
66
67 <!--
68 *************************************
69 * Specification Structure Definition.
70 *************************************
71 -->
72 <struct name="Specification" type="GeoSpatial.Object" rttkey="GeoSpatial.ObjectType.IlpTestSpecification">
73 <comment>Specification for an ILP Test comprising one or more data sets.</comment>
74
75 <elem name="createDate" type="datetime" multiplicity="1">
76 <comment>Date and time the test specification was created.</comment>
77 </elem>
78
79 <elem name="modifiedDate" type="datetime" multiplicity="1">
80 <comment>Date and time the test specification was modified.</comment>
81 </elem>
82
83 <elem name="contact" multiplicity ="0..1" type="GeoSpatial.ContactInfo" >
84 <comment>Optional contact information.</comment>
85 </elem>
86
87 </struct>
88
89 <!--
90 *************************************
91 * ResultRecord Definition.
92 *************************************
93 -->
94 <struct name="ResultRecord" >
95 <comment>Result Record contains detailed results of position calculation and information relative to truth.</comment>
96
97 <elem name="index" type="uint32" multiplicity="1" />
98 <elem name="epoch" type="datetime" multiplicity="1" />
99 <elem name="resultcode" type="ResultCode" multiplicity="1" />
100 <elem name="status" type="HPE.ProcessingStatus" multiplicity="1" />
101 <elem name="source" type="string" multiplicity="1" />
102 <elem name="stateTruth" type="HPE.StateVector" multiplicity="1" />
103 <elem name="stateEst" type="HPE.StateVector" multiplicity="1" />
104 <elem name="stateUncert" type="HPE.StateVector" multiplicity="1" />
105 <elem name="stateErr" type="HPE.StateVector" multiplicity="1" />
106 <elem name="llaTruth" type="GeoSpatial.PositionECEF" multiplicity="1" />
107 <elem name="llaEst" type="GeoSpatial.PositionECEF" multiplicity="1" />
108 <elem name="enuErr" type="GeoSpatial.XYZVector" multiplicity="1" />
109 <elem name="enuEstVel" type="GeoSpatial.XYZVector" multiplicity="1" />
110 <elem name="enuErrVel" type="GeoSpatial.XYZVector" multiplicity="1" />
111 <elem name="veracity" type="float32" multiplicity="1" />
112 <elem name="floor" type="float32" multiplicity="1" />
113 <elem name="floorUncert" type="float32" multiplicity="1" />
114 <elem name="floorErr" type="float32" multiplicity="1" />
115 <elem name="floorLabel" type="string" multiplicity="1" />
116 <elem name="data" type="json" multiplicity="0..1" />
117 </struct>
118
119 <!--
120 *************************************
121 * Statistics Definition.
122 *************************************
123 -->
124 <struct name="Statistics" >
125 <comment>Calculated statistics for the associated the results.</comment>
126
127 <elem name="count" type="uint32" multiplicity="1" />
128 <elem name="cep50" type="float32" multiplicity="1" />
129 <elem name="cep68" type="float32" multiplicity="1" />
130 <elem name="cep95" type="float32" multiplicity="1" />
131 <elem name="cepmax" type="float32" multiplicity="1" />
132 <elem name="rmsuncert" type="float32" multiplicity="1" />
133 <elem name="rmserr" type="float32" multiplicity="1" />
134 <elem name="meanState" type="HPE.StateVector" multiplicity="1" />
135 <elem name="meanStateErr" type="HPE.StateVector" multiplicity="1" />
136 <elem name="meanEnuErr" type="GeoSpatial.XYZVector" multiplicity="1" />
137 <elem name="meanEnuUncert" type="GeoSpatial.XYZVector" multiplicity="1" />
138 <elem name="meanEnuVel" type="GeoSpatial.XYZVector" multiplicity="1" />
139 <elem name="meanEnuVelUncert" type="GeoSpatial.XYZVector" multiplicity="1" />
140 <elem name="meanEnuVelErr" type="GeoSpatial.XYZVector" multiplicity="1" />
141 <elem name="meanFloor" type="float32" multiplicity="1" />
142 <elem name="rmsFloorUncert" type="float32" multiplicity="1" />
143 <elem name="rmsFloorErr" type="float32" multiplicity="1" />
144 </struct>
145
146 <!--
147 *************************************
148 * ResultSet Structure Definition.
149 *************************************
150 -->
151 <struct name="ResultSet" type="GeoSpatial.Object" rttkey="GeoSpatial.ObjectType.IlpTestResultSet">
152 <comment>Specification for an ILP analysis test data result set.</comment>
153
154 <elem name="uuidData" multiplicity ="0..*" type="UUID" >
155 <comment>Zero or more UUIDs identifying the survey test data used in this result set.</comment>
156 </elem>
157
158 <elem name="records" type="ResultRecord" multiplicity="0..*">
159 <comment>The estimated position result records.</comment>
160 </elem>
161
162 <elem name="stats" type="Statistics" multiplicity="1">
163 <comment>Statistics for the result set.</comment>
164 </elem>
165
166 <elem name="confidence" type="float32" multiplicity="1" >
167 <comment>Confidence for the result records. Typically this will be .6872, but will report the confidence specified by the input.</comment>
168 </elem>
169
170 </struct>
171
172 <!--
173 *************************************
174 * Results Structure Definition.
175 *************************************
176 -->
177 <struct name="Results" type="GeoSpatial.Object" rttkey="GeoSpatial.ObjectType.IlpTestResults">
178 <comment>Specification for an ILP analysis test data result set.</comment>
179
180 <elem name="uuidData" multiplicity ="0..*" type="UUID" >
181 <comment>Zero or more UUIDs identifying the survey test data used in this result set.</comment>
182 </elem>
183
184 <elem name="startExecutionDate" type="datetime" multiplicity="1">
185 <comment>Date and time the test was executed.</comment>
186 </elem>
187
188 <elem name="durationExecution" type="uint32" multiplicity="1">
189 <tag name="unit" value="msec"/>
190 <comment>Duration of the execution time in milliseconds.</comment>
191 </elem>
192
193 <elem name="uriSource" type="string" multiplicity="1">
194 <comment>Source of results.</comment>
195 </elem>
196 </struct>
197
198 <!--
199 *******************************************************
200 Analysis API
201 *******************************************************
202 -->
203 <interface name="Analysis">
204 <comment>Interface for performance analysis functions with ILP.</comment>
205
206 <operation name="Execute">
207 <comment>
208 Operation executes the provided specification.
209 </comment>
210 <input name="input" type="Tensor.InputBase" sid="0x1060">
211
212 <elem name="returnResults" multiplicity ="1" type="bool" default ="true">
213 <comment>Optional, determines if results should be returned to caller on completion. By default, this is true. For long processing sessions
214 the connection timeout may occur before results are returned. In that case check the published results.</comment>
215 </elem>
216
217 <elem name="saveResults" multiplicity ="1" type="bool" default ="false">
218 <comment>Optional, determines if processing results should be stored</comment>
219 </elem>
220
221 <elem name="publishResults" multiplicity ="1" type="bool" default ="false">
222 <comment>Optional, publishes the results for additional downstream processing.</comment>
223 </elem>
224
225 <elem name="spec" multiplicity="1" type="Specification">
226 <comment>The test specification to execute.</comment>
227 </elem>
228
229 </input>
230 <output name="output" type="Tensor.OutputBase" sid="0x1061">
231
232 <comment>Test Execution output. Note if not wanting results, the execute method will return early with a processing result code.</comment>
233
234 <elem name="results" multiplicity="0..1" type="Results">
235 <comment>The result test data set if the 'returnResults' option was selected on input.</comment>
236 </elem>
237
238 <elem name="dataSetsFiltered" multiplicity="0..*" type="DataSet">
239 <comment>The resultant requested filtered data sets if any.</comment>
240 </elem>
241
242 </output>
243 </operation>
244 </interface>
245 </namespace>
246 </specification>
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!