Merge branch 'ILP-1118' into 'master'
ILP-1118 - Added Filtering and Updated documentation See merge request !7
Showing
2 changed files
with
66 additions
and
36 deletions
... | @@ -51,31 +51,33 @@ | ... | @@ -51,31 +51,33 @@ |
51 | <struct name="BoundingBox" pack="true"> | 51 | <struct name="BoundingBox" pack="true"> |
52 | 52 | ||
53 | <comment>Defines a bounding box in WGS84 reference frame.</comment> | 53 | <comment>Defines a bounding box in WGS84 reference frame.</comment> |
54 | <comment>Units for latitude and longitude are in units of micro degrees (1e-6 degrees) providing for about 11 cm resolution near the equator.</comment> | 54 | <comment> |
55 | Units for latitude and longitude are in units of micro degrees (1e-6 degrees) providing for about 11 cm resolution near the equator. Altitude units are in millimeters. | ||
56 | </comment> | ||
55 | <elem name="latmin" type="Tensor.int32" multiplicity="1" > | 57 | <elem name="latmin" type="Tensor.int32" multiplicity="1" > |
56 | <comment>Minimum value of the latitude.</comment> | 58 | <comment>Minimum value of the latitude. Valid range is -90,000,000 <= lat <= 90,000,000. </comment> |
57 | <tag name="unit" value="microdegrees"/> | 59 | <tag name="unit" value="microdegrees"/> |
58 | </elem> | 60 | </elem> |
59 | <elem name="latmax" type="Tensor.int32" multiplicity="1" > | 61 | <elem name="latmax" type="Tensor.int32" multiplicity="1" > |
60 | <comment>Maximum value of the latitude.</comment> | 62 | <comment>Maximum value of the latitude. Valid range is -90,000,000 <= lat <= 90,000,000.</comment> |
61 | <tag name="unit" value="microdegrees"/> | 63 | <tag name="unit" value="microdegrees"/> |
62 | </elem> | 64 | </elem> |
63 | <elem name="lonmin" type="Tensor.int32" multiplicity="1" > | 65 | <elem name="lonmin" type="Tensor.int32" multiplicity="1" > |
64 | <comment>Minimum value of the longitude.</comment> | 66 | <comment>Minimum value of the longitude. Valid range is -180,000,000 <= lat <= 180,000,000.</comment> |
65 | <tag name="unit" value="microdegrees"/> | 67 | <tag name="unit" value="microdegrees"/> |
66 | </elem> | 68 | </elem> |
67 | <elem name="lonmax" type="Tensor.int32" multiplicity="1" > | 69 | <elem name="lonmax" type="Tensor.int32" multiplicity="1" > |
68 | <comment>Maximum value of the longitude.</comment> | 70 | <comment>Maximum value of the longitude. Valid range is -180,000,000 <= lat <= 180,000,000.</comment> |
69 | <tag name="unit" value="microdegrees"/> | 71 | <tag name="unit" value="microdegrees"/> |
70 | </elem> | 72 | </elem> |
71 | 73 | ||
72 | <elem name="altmin" type="Tensor.int32" multiplicity="1" > | 74 | <elem name="altmin" type="Tensor.int32" multiplicity="1" > |
73 | <comment>Minimum value of the altitude.</comment> | 75 | <comment>Minimum value of the altitude. Valid range is +- 1,000,000,000 cm.</comment> |
74 | <tag name="unit" value="microdegrees"/> | 76 | <tag name="unit" value="cm"/> |
75 | </elem> | 77 | </elem> |
76 | <elem name="altmax" type="Tensor.int32" multiplicity="1" > | 78 | <elem name="altmax" type="Tensor.int32" multiplicity="1" > |
77 | <comment>Maximum value of the altitude.</comment> | 79 | <comment>Maximum value of the altitude. Valid range is +- 1,000,000,000 cm.</comment> |
78 | <tag name="unit" value="microdegrees"/> | 80 | <tag name="unit" value="cm"/> |
79 | </elem> | 81 | </elem> |
80 | 82 | ||
81 | </struct> | 83 | </struct> | ... | ... |
... | @@ -40,9 +40,6 @@ | ... | @@ -40,9 +40,6 @@ |
40 | <elem name="bounds" multiplicity ="0..1" type="GeoSpatial.BoundingBox" > | 40 | <elem name="bounds" multiplicity ="0..1" type="GeoSpatial.BoundingBox" > |
41 | <comment>Optional bounding box, which the records are contained.</comment> | 41 | <comment>Optional bounding box, which the records are contained.</comment> |
42 | </elem> | 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> | 43 | </struct> |
47 | 44 | ||
48 | 45 | ||
... | @@ -53,6 +50,12 @@ | ... | @@ -53,6 +50,12 @@ |
53 | --> | 50 | --> |
54 | <struct name="DataSet" type="GeoSpatial.Object" rttkey="GeoSpatial.ObjectType.IlpTestDataSet"> | 51 | <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> | 52 | <comment>DataSet comprises one or more surveys to use as analysis test records.</comment> |
53 | <elem name="filter" multiplicity ="0..1" type="Filter" > | ||
54 | <comment> | ||
55 | Optional filter specifies which test data records and observations should be used for testing. If not | ||
56 | specified, all test data will be used. | ||
57 | </comment> | ||
58 | </elem> | ||
56 | <elem name="uuidData" multiplicity ="0..*" type="UUID" > | 59 | <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> | 60 | <comment>Zero or more UUIDs identifying the survey test data to include in this data set.</comment> |
58 | </elem> | 61 | </elem> |
... | @@ -86,6 +89,24 @@ | ... | @@ -86,6 +89,24 @@ |
86 | <comment>Date and time the test specification was modified.</comment> | 89 | <comment>Date and time the test specification was modified.</comment> |
87 | </elem> | 90 | </elem> |
88 | 91 | ||
92 | <elem name="extendedResults" multiplicity="0..1" type="bool"> | ||
93 | <comment> | ||
94 | Specifies whether to provide extended test result records with state and velocity fields. By | ||
95 | default, this is false. This is typically used with GNSS data analysis, indoor analysis will rarely use | ||
96 | these fields. If not specified, it is assumed false, providing only standard results. | ||
97 | </comment> | ||
98 | </elem> | ||
99 | |||
100 | <elem name="cutoff" multiplicity="0..1" type="int32" > | ||
101 | <comment> | ||
102 | Specifies the cutoff in number of standard deviations from the mean error. The default | ||
103 | is 1000, which means any results more than 1000 standard deviations from the mean are | ||
104 | are outliers and not considered in calculation of the summary statistics. This will include | ||
105 | all data in most well formed cases. Values of 5 are typical when using cutoff. | ||
106 | to include even the worst data. | ||
107 | </comment> | ||
108 | </elem> | ||
109 | |||
89 | <elem name="contact" multiplicity ="0..1" type="GeoSpatial.ContactInfo" > | 110 | <elem name="contact" multiplicity ="0..1" type="GeoSpatial.ContactInfo" > |
90 | <comment>Optional contact information.</comment> | 111 | <comment>Optional contact information.</comment> |
91 | </elem> | 112 | </elem> |
... | @@ -93,6 +114,8 @@ | ... | @@ -93,6 +114,8 @@ |
93 | <elem name="datasets" multiplicity="0..*" type="DataSet"> | 114 | <elem name="datasets" multiplicity="0..*" type="DataSet"> |
94 | <comment>Dataset specifications to process.</comment> | 115 | <comment>Dataset specifications to process.</comment> |
95 | </elem> | 116 | </elem> |
117 | |||
118 | |||
96 | </struct> | 119 | </struct> |
97 | 120 | ||
98 | <!-- | 121 | <!-- |
... | @@ -101,27 +124,30 @@ | ... | @@ -101,27 +124,30 @@ |
101 | ************************************* | 124 | ************************************* |
102 | --> | 125 | --> |
103 | <struct name="ResultRecord" > | 126 | <struct name="ResultRecord" > |
104 | <comment>Result Record contains detailed results of position calculation and information relative to truth.</comment> | 127 | <comment>Result Record contains detailed results of position calculation and information relative to truth. Optional fields will be included when |
128 | the Specification.extendedResults is true.</comment> | ||
105 | 129 | ||
106 | <elem name="index" type="uint32" multiplicity="1" /> | 130 | <elem name="index" type="uint32" multiplicity="1" /> |
107 | <elem name="epoch" type="datetime" multiplicity="1" /> | 131 | <elem name="epoch" type="datetime" multiplicity="1" /> |
108 | <elem name="resultcode" type="ResultCode" multiplicity="1" /> | 132 | <elem name="resultcode" type="ResultCode" multiplicity="1" /> |
109 | <elem name="status" type="HPE.ProcessingStatus" multiplicity="1" /> | 133 | <elem name="status" type="HPE.ProcessingStatus" multiplicity="1" /> |
110 | <elem name="source" type="string" multiplicity="1" /> | 134 | <elem name="source" type="string" multiplicity="1" /> |
111 | <elem name="stateTruth" type="HPE.StateVector" multiplicity="1" /> | ||
112 | <elem name="stateEst" type="HPE.StateVector" multiplicity="1" /> | ||
113 | <elem name="stateUncert" type="HPE.StateVector" multiplicity="1" /> | ||
114 | <elem name="stateErr" type="HPE.StateVector" multiplicity="1" /> | ||
115 | <elem name="llaTruth" type="GeoSpatial.PositionECEF" multiplicity="1" /> | 135 | <elem name="llaTruth" type="GeoSpatial.PositionECEF" multiplicity="1" /> |
116 | <elem name="llaEst" type="GeoSpatial.PositionECEF" multiplicity="1" /> | 136 | <elem name="llaEst" type="GeoSpatial.PositionECEF" multiplicity="1" /> |
137 | <elem name="enuUncert" type="GeoSpatial.XYZVector" multiplicity="1" /> | ||
117 | <elem name="enuErr" type="GeoSpatial.XYZVector" multiplicity="1" /> | 138 | <elem name="enuErr" type="GeoSpatial.XYZVector" multiplicity="1" /> |
118 | <elem name="enuEstVel" type="GeoSpatial.XYZVector" multiplicity="1" /> | ||
119 | <elem name="enuErrVel" type="GeoSpatial.XYZVector" multiplicity="1" /> | ||
120 | <elem name="veracity" type="float32" multiplicity="1" /> | ||
121 | <elem name="floor" type="float32" multiplicity="1" /> | 139 | <elem name="floor" type="float32" multiplicity="1" /> |
140 | <elem name="floorTruth" type="float32" multiplicity="1" /> | ||
122 | <elem name="floorUncert" type="float32" multiplicity="1" /> | 141 | <elem name="floorUncert" type="float32" multiplicity="1" /> |
123 | <elem name="floorErr" type="float32" multiplicity="1" /> | 142 | <elem name="floorErr" type="float32" multiplicity="1" /> |
124 | <elem name="floorLabel" type="string" multiplicity="1" /> | 143 | <elem name="floorLabel" type="string" multiplicity="1" /> |
144 | <elem name="veracity" type="float32" multiplicity="1" /> | ||
145 | <elem name="enuVelEst" type="GeoSpatial.XYZVector" multiplicity="0..1" /> | ||
146 | <elem name="enuVelErr" type="GeoSpatial.XYZVector" multiplicity="0..1" /> | ||
147 | <elem name="stateTruth" type="HPE.StateVector" multiplicity="0..1" /> | ||
148 | <elem name="stateEst" type="HPE.StateVector" multiplicity="0..1" /> | ||
149 | <elem name="stateUncert" type="HPE.StateVector" multiplicity="0..1" /> | ||
150 | <elem name="stateErr" type="HPE.StateVector" multiplicity="0..1" /> | ||
125 | <elem name="miscdata" type="json" multiplicity="0..1" /> | 151 | <elem name="miscdata" type="json" multiplicity="0..1" /> |
126 | </struct> | 152 | </struct> |
127 | 153 | ||
... | @@ -134,22 +160,24 @@ | ... | @@ -134,22 +160,24 @@ |
134 | <comment>Calculated statistics for the associated the results.</comment> | 160 | <comment>Calculated statistics for the associated the results.</comment> |
135 | 161 | ||
136 | <elem name="count" type="uint32" multiplicity="1" /> | 162 | <elem name="count" type="uint32" multiplicity="1" /> |
163 | <elem name="outliers" type="uint32" multiplicity="1" /> | ||
137 | <elem name="cep50" type="float32" multiplicity="1" /> | 164 | <elem name="cep50" type="float32" multiplicity="1" /> |
138 | <elem name="cep68" type="float32" multiplicity="1" /> | 165 | <elem name="cep68" type="float32" multiplicity="1" /> |
139 | <elem name="cep95" type="float32" multiplicity="1" /> | 166 | <elem name="cep95" type="float32" multiplicity="1" /> |
140 | <elem name="cepmax" type="float32" multiplicity="1" /> | 167 | <elem name="cepmax" type="float32" multiplicity="1" /> |
141 | <elem name="rmsuncert" type="float32" multiplicity="1" /> | 168 | <elem name="rmsuncert" type="float32" multiplicity="1" /> |
142 | <elem name="rmserr" type="float32" multiplicity="1" /> | 169 | <elem name="rmserr" type="float32" multiplicity="1" /> |
143 | <elem name="meanState" type="HPE.StateVector" multiplicity="1" /> | 170 | <elem name="rmsEnuErr" type="GeoSpatial.XYZVector" multiplicity="1" /> |
144 | <elem name="meanStateErr" type="HPE.StateVector" multiplicity="1" /> | 171 | <elem name="rmsEnuUncert" type="GeoSpatial.XYZVector" multiplicity="1" /> |
145 | <elem name="meanEnuErr" type="GeoSpatial.XYZVector" multiplicity="1" /> | ||
146 | <elem name="meanEnuUncert" type="GeoSpatial.XYZVector" multiplicity="1" /> | ||
147 | <elem name="meanEnuVel" type="GeoSpatial.XYZVector" multiplicity="1" /> | ||
148 | <elem name="meanEnuVelUncert" type="GeoSpatial.XYZVector" multiplicity="1" /> | ||
149 | <elem name="meanEnuVelErr" type="GeoSpatial.XYZVector" multiplicity="1" /> | ||
150 | <elem name="meanFloor" type="float32" multiplicity="1" /> | 172 | <elem name="meanFloor" type="float32" multiplicity="1" /> |
151 | <elem name="rmsFloorUncert" type="float32" multiplicity="1" /> | 173 | <elem name="rmsFloorUncert" type="float32" multiplicity="1" /> |
152 | <elem name="rmsFloorErr" type="float32" multiplicity="1" /> | 174 | <elem name="rmsFloorErr" type="float32" multiplicity="1" /> |
175 | <elem name="meanEnuVel" type="GeoSpatial.XYZVector" multiplicity="0..1" /> | ||
176 | <elem name="rmsEnuVelUncert" type="GeoSpatial.XYZVector" multiplicity="0..1" /> | ||
177 | <elem name="rmsEnuVelErr" type="GeoSpatial.XYZVector" multiplicity="0..1" /> | ||
178 | <elem name="meanState" type="HPE.StateVector" multiplicity="0..1" /> | ||
179 | <elem name="rmsStateErr" type="HPE.StateVector" multiplicity="0..1" /> | ||
180 | |||
153 | </struct> | 181 | </struct> |
154 | 182 | ||
155 | <!-- | 183 | <!-- |
... | @@ -160,16 +188,8 @@ | ... | @@ -160,16 +188,8 @@ |
160 | <struct name="ServiceResults" type="GeoSpatial.Object" rttkey="GeoSpatial.ObjectType.IlpTestResultSet"> | 188 | <struct name="ServiceResults" type="GeoSpatial.Object" rttkey="GeoSpatial.ObjectType.IlpTestResultSet"> |
161 | <comment>Specification for an ILP analysis test data result set.</comment> | 189 | <comment>Specification for an ILP analysis test data result set.</comment> |
162 | 190 | ||
163 | <elem name="records" type="ResultRecord" multiplicity="0..*"> | ||
164 | <comment>The estimated position result records.</comment> | ||
165 | </elem> | ||
166 | |||
167 | <elem name="stats" type="Statistics" multiplicity="1"> | ||
168 | <comment>Statistics for the result set.</comment> | ||
169 | </elem> | ||
170 | |||
171 | <elem name="confidence" type="float32" multiplicity="1" > | 191 | <elem name="confidence" type="float32" multiplicity="1" > |
172 | <comment>Confidence for the result records. Typically this will be .6872, but will report the confidence specified by the input.</comment> | 192 | <comment>Confidence for the result records. Typically this will be one standard deviation (0.6872) but will report the confidence specified by the input.</comment> |
173 | </elem> | 193 | </elem> |
174 | 194 | ||
175 | <elem name="uriService" multiplicity = "1" type="Tensor.uri"> | 195 | <elem name="uriService" multiplicity = "1" type="Tensor.uri"> |
... | @@ -179,6 +199,14 @@ | ... | @@ -179,6 +199,14 @@ |
179 | </comment> | 199 | </comment> |
180 | </elem> | 200 | </elem> |
181 | 201 | ||
202 | <elem name="stats" type="Statistics" multiplicity="1"> | ||
203 | <comment>Statistics for the result set.</comment> | ||
204 | </elem> | ||
205 | |||
206 | <elem name="records" type="ResultRecord" multiplicity="0..*"> | ||
207 | <comment>The estimated position result records.</comment> | ||
208 | </elem> | ||
209 | |||
182 | </struct> | 210 | </struct> |
183 | 211 | ||
184 | <!-- | 212 | <!-- | ... | ... |
-
Please register or sign in to post a comment