f6a1db0d by Michael B. Mathews

Added ILP V1.1.1 and SLAM V1.0.0_alpha API Definitions.

1 parent 79e4c4c9
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 XtensibleInterfaceDefinition.xsd"
7 identity="ReferenceData.xid.xml">
8 <title>SLAM Tile reference data</title>
9 <comment>This file defines the SLAM tile refeence definitions and related data types.</comment>
10
11 <!-- Include all known definitions -->
12 <import ref="https://xid.location.studio/Tensor/V1.0.0/Definitions.xid.xml" local="Definitions.xid.xml" />
13 <import ref="https://xid.location.studio/HPE/V1.1.1/HpeCore.xid.xml" local="HpeCore.xid.xml" />
14 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeGnss.xid.xml" local="HpeGnss.xid.xml" />
15 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeCellular.xid.xml" local="HpeCellular.xid.xml" />
16 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeWiFi.xid.xml" local="HpeWiFi.xid.xml" />
17 <import ref="https://xid.location.studio/ILP/SLAM/V1.0.0_alpha/CommonDefs.xid" local="SLAM/Commondefs.xid.xml" />
18
19 <namespace name="SLAM">
20
21 <using namespace="HPE"/>
22 <using namespace="Tensor"/>
23 <using namespace="HPE.WiFi"/>
24 <using namespace="HPE.Cellular"/>
25
26 <enum name="RefPointValidStatus" type="Tensor.int8" default="Unknown">
27 <comment>Reference Validity status.</comment>
28 <literal name="Unknown" value="0"/>
29 <literal name="valid" value="1"/>
30 <literal name="quarantined" value ="2"/>
31 <literal name="invalid" value="3"/>
32 </enum>
33
34 <enum name="RefPointSyncStatus" type="Tensor.int8" default ="sync_required">
35 <comment>synchronization status of the reference point</comment>
36 <literal name="sync_required" value="0"/>
37 <literal name="in_sync" value="1"/>
38 </enum>
39
40 <enum name="RefPointUpdateStatus" type="Tensor.int8" default ="updated">
41 <comment>update status of the reference point</comment>
42 <literal name="updated" value="0"/>
43 <literal name="update_required" value="1"/>
44 </enum>
45
46 <enum name="RefPointType" type="Tensor.int8" default="undefined">
47 <comment>Specifies the format of the Reference data.</comment>
48 <literal name="undefined" value="0"/>
49 <literal name="RF" value="1"/>
50 <literal name="Cellular" value="2"/>
51 <literal name="Wifi" value="3"/>
52 <literal name="Bluetooth" value="4"/>
53 <literal name="GenericRF" value="5"/>
54 </enum>
55
56 <!--
57 <type name="HashKey" size="16">
58 <comment>16 byte UUID</comment>
59 <lang name="c" type="UUID" include="Tensor/CXMF/uuid.h"/>
60 <lang name="cpp" type="::Tensor::Types::UUID" include="Tensor/Types/uuid.h"/>
61 <lang name="java" type="XidUuid" include="com.comtechtel.tensor.xid.XidUuid"/>
62 <lang name="node" type="XidUuid"/>
63 </type>
64 -->
65
66 <struct name="RefPoint" >
67 <comment>defines the base structure of a reference point</comment>
68 <elem name="type" type="RefPointType" multiplicity="1" rttd="true">
69 <comment>Identifies the format/type of the reference data.</comment>
70 </elem>
71
72 <elem name="id" multiplicity="1" type="HashKey" >
73 <comment>a unique hash of the reference data format and reference point identifier, which is different, depending on the type of the Reference point</comment>
74 </elem>
75
76 <elem name="position" multiplicity="0..1" type="Spheroid" >
77 <comment>the estimated position of the access point</comment>
78 </elem>
79
80 <elem name ="veracity" multiplicity="1" type="Tensor.float32">
81 <comment>The veracity of the reference point, 1= 100% trusted and validated, 0% not trusted at all.</comment>
82 </elem>
83
84 <elem name="validStatus" multiplicity="1" type="RefPointValidStatus">
85 <comment>status of the reference point</comment>
86 </elem>
87 <elem name="validbegin" type="datetime" multiplicity="1">
88 <comment>time stamp of the begining of the valid period</comment>
89 </elem>
90 <elem name="validend" type="datetime" multiplicity="1">
91 <comment>time stamp of the ending of the valid period</comment>
92 </elem>
93 <elem name ="data" type="Tensor.json" multiplicity="0..1">
94 <comment>json formatted data specific to the device</comment>
95 </elem>
96 <elem name="floor" multiplicity ="0..1" type="int8" >
97 <comment>Optional floor identifier, default is zero meaning the ground floor</comment>
98 </elem>
99
100 </struct>
101
102 <!-- ReferencePoint -->
103 <struct name="RFRefPoint" type="RefPoint" rttkey="SLAM.RefPointType.RF">
104
105 <comment>structure defines a reference Point.</comment>
106 <elem name="txpwr" type="Tensor.float32" multiplicity="1">
107 <comment>transmission power</comment>
108 </elem>
109 <elem name="attenuation" type="Tensor.float32" multiplicity="1">
110 <comment> attenuation exponent</comment>
111 </elem>
112 <elem name="freq" type="Tensor.float32" multiplicity="1">
113 <comment> radio frequency of the reference in Hz</comment>
114 </elem>
115
116 </struct>
117
118 <struct name="WifiRefPoint" type="RFRefPoint" rttkey="SLAM.RefPointType.Wifi">
119
120 <elem name="ssid" type="HPE.WiFi.SSID" multiplicity="1">
121 <comment>ssid of the access point</comment>
122 </elem>
123 <elem name ="macaddr" type="MacAddress48" multiplicity="1">
124 <comment>the mac address of the access point</comment>
125 </elem>
126
127 </struct>
128
129 <struct name="BluetoothRefPoint" type="RFRefPoint" rttkey="SLAM.RefPointType.Bluetooth">
130
131 <elem name="ssid" type="Tensor.string" multiplicity="1">
132 <comment>ssid of the access point</comment>
133 </elem>
134 <elem name ="macaddr" type="Tensor.string" multiplicity="1">
135 <comment>the mac address of the access point</comment>
136 </elem>
137
138 </struct>
139
140 <struct name="CellularRefPoint" type="RFRefPoint" rttkey="SLAM.RefPointType.Cellular">
141
142 <elem name ="cid" type="CellId" multiplicity="1"/>
143 <elem name ="antenna" type="AntennaSpec" multiplicity="1"/>
144 </struct>
145
146 <struct name="GenericRFRefPoint" type="RFRefPoint" rttkey="SLAM.RefPointType.GenericRF">
147 <elem name="uri" type="Tensor.uri" multiplicity="1">
148 <comment>identifier that determines the genericRF type and unique identifier. encoded into the hash key</comment>
149 </elem>
150
151 </struct>
152
153 <struct name="RefPointSet">
154 <comment>a set of reference points</comment>
155 <elem name="refpoints" type="RefPoint" multiplicity="0..*" polymorphic="true"/>
156
157 </struct>
158
159 </namespace>
160 </specification>
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 XtensibleInterfaceDefinition.xsd"
7 identity="SurveyApi.xid.xml">
8 <title>SLAM Survey API Specifications</title>
9 <comment>
10 This file defines the SLAM survey API. The survey API is used to bulk load high-definition survey
11 data from one or more probe data sets.
12 </comment>
13
14 <!-- Include all known definitions -->
15 <import ref="https://xid.location.studio/Tensor/V1.0.0/Definitions.xid.xml" local="Definitions.xid.xml" />
16 <import ref="https://xid.location.studio/HPE/V1.1.1/HpeCore.xid.xml" local="HpeCore.xid.xml" />
17 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeGnss.xid.xml" local="HpeGnss.xid.xml" />
18 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeCellular.xid.xml" local="HpeCellular.xid.xml" />
19 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeWiFi.xid.xml" local="HpeWiFi.xid.xml" />
20 <import ref="https://xid.location.studio/ILP/V1.1.1/ApiBase.xid" local="SLAM/ApiBase.xid" />
21 <import ref="https://xid.location.studio/ILP/SLAM/V1.0.0_alpha/CommonDefs.xid" local="SLAM/Commondefs.xid.xml" />
22 <import ref="https://xid.location.studio/ILP/SLAM/V1.0.0_alpha/TileDefinitions.xid" local="SLAM/TileDefinitions.xid.xml" />
23
24 <namespace name="SLAM">
25 <using namespace="HPE"/>
26 <using namespace="Tensor"/>
27
28
29 <!--
30 *******************************************************
31 Survey Submission API
32 *******************************************************
33 -->
34 <interface name="Survey">
35 <comment>Interface for submitting data to ILP. </comment>
36
37 <operation name="Submit">
38 <comment>
39 Interaction submits Survey data.
40 </comment>
41 <input name="input" type="InputBase" sid="0x1030">
42 <elem name="survey" multiplicity="1" type="SurveyData"></elem>
43 </input>
44 <output name="output" type="OutputBase" sid="0x1031">
45 <elem name="id" multiplicity="1" type="Tensor.UUID"/>
46 </output>
47 </operation>
48
49 <operation name="Download">
50 <comment>Downloads survey data given id.</comment>
51 <input name="input" type="InputBase" sid="0x1032">
52 <elem name="id" multiplicity="1" type="Tensor.UUID"/>
53 </input>
54 <output name="output" type="OutputBase" sid="0x1033">
55 <elem name="survey" multiplicity="1" type="SurveyData"></elem>
56 </output>
57 </operation>
58 </interface>
59
60 </namespace>
61 </specification>
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 XtensibleInterfaceDefinition.xsd"
7 identity="TileManagementApi.xid.xml">
8 <title>SLAM Tile Management API Specifications</title>
9 <comment>This file defines the SLAM tile management API.</comment>
10
11 <!-- Include all known definitions -->
12 <import ref="https://xid.location.studio/Tensor/V1.0.0/Definitions.xid.xml" local="Definitions.xid.xml" />
13 <import ref="https://xid.location.studio/HPE/V1.1.1/HpeCore.xid.xml" local="HpeCore.xid.xml" />
14 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeGnss.xid.xml" local="HpeGnss.xid.xml" />
15 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeCellular.xid.xml" local="HpeCellular.xid.xml" />
16 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeWiFi.xid.xml" local="HpeWiFi.xid.xml" />
17 <import ref="https://xid.location.studio/ILP/V1.1.1/ApiBase.xid" local="SLAM/ApiBase.xid" />
18 <import ref="https://xid.location.studio/ILP/SLAM/V1.0.0_alpha/CommonDefs.xid" local="SLAM/Commondefs.xid.xml" />
19 <import ref="https://xid.location.studio/ILP/SLAM/V1.0.0_alpha/ReferenceData.xid" local="SLAM/ReferenceData.xid.xml" />
20 <import ref="https://xid.location.studio/ILP/SLAM/V1.0.0_alpha/TileDefinitions.xid" local="SLAM/TileDefinitions.xid.xml" />
21
22
23 <namespace name="SLAM">
24 <using namespace="HPE"/>
25 <using namespace="Tensor"/>
26
27 <!--
28 *******************************************************
29 Tile Management API
30 *******************************************************
31 -->
32 <interface name="TileManagement">
33 <comment>Interface for submitting a new tile to the DB. </comment>
34 <operation name="DeleteTile">
35 <comment>
36 Interaction to delete a tile.
37 </comment>
38 <input name="input" type="InputBase" sid="0x101b">
39 <comment>defines the input data for DeleteTile operation</comment>
40 <elem name="tileid" type="Tensor.UUID" multiplicity="1" >
41 <comment>element specifies UUID of the the tile</comment>
42 </elem>
43 </input>
44 </operation>
45
46 <operation name="UploadTile">
47
48 <comment>interation to upload a tile</comment>
49 <input name="input" type="InputBase" sid="0x102b">
50 <comment>defines the input data structure for UploadTile operation</comment>
51 <elem name="tile" type="Tile" multiplicity="1">
52 <comment>the tile structure</comment>
53 </elem>
54 </input>
55 </operation>
56
57 <operation name="UpdateTile">
58
59 <comment>interation to update a tile</comment>
60 <input name="input" type="InputBase" sid="0x103b">
61 <comment>defines the input data structure for UpdateTile operation</comment>
62 <elem name="tile" type="Tile" multiplicity="1">
63 <comment>the tile structure</comment>
64 </elem>
65 </input>
66
67 </operation>
68
69 </interface>
70
71 </namespace>
72 </specification>
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 XtensibleInterfaceDefinition.xsd"
7 identity="TileServiceApi.xid.xml">
8 <title>Tile Services API Specifications</title>
9 <comment>This file defines the SLAM tile services API.</comment>
10
11 <!-- Include all known definitions -->
12 <import ref="https://xid.location.studio/Tensor/V1.0.0/Definitions.xid.xml" local="Definitions.xid.xml" />
13 <import ref="https://xid.location.studio/HPE/V1.1.1/HpeCore.xid.xml" local="HpeCore.xid.xml" />
14 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeGnss.xid.xml" local="HpeGnss.xid.xml" />
15 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeCellular.xid.xml" local="HpeCellular.xid.xml" />
16 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeWiFi.xid.xml" local="HpeWiFi.xid.xml" />
17 <import ref="https://xid.location.studio/ILP/V1.1.1/ApiBase.xid" local="SLAM/ApiBase.xid" />
18 <import ref="https://xid.location.studio/ILP/SLAM/V1.0.0_alpha/CommonDefs.xid" local="SLAM/Commondefs.xid.xml" />
19 <import ref="https://xid.location.studio/ILP/SLAM/V1.0.0_alpha/TileDefinitions.xid" local="SLAM/TileDefinitions.xid.xml" />
20
21
22 <namespace name="SLAM">
23 <using namespace="HPE"/>
24 <using namespace="Tensor"/>
25
26 <interface name="TileService">
27 <comment>Interface for tile service. </comment>
28
29 <!-- DownloadTile operation-->
30 <operation name="DownloadTile">
31 <comment>Interaction download a tile</comment>
32 <input name="input" type="InputBase" sid="0x101a">
33 <comment>defines the input data structure for DownloadTile operation </comment>
34 <elem name="tileid" type="Tensor.UUID" multiplicity="1" >
35 <comment>element specifies UUID of the the tile</comment>
36 </elem>
37 </input>
38
39 <output name="output" type="OutputBase" sid="0x102a">
40 <comment>defines the output data for DownloadTile operation</comment>
41 <elem name="tile" type="Tile" multiplicity="0..1" >
42 <comment>element defines the downloaded tile</comment>
43 </elem>
44 </output>
45
46 </operation>
47
48 <!-- FindTilesByBoundingbox operation -->
49 <operation name="FindTilesByBoundingbox">
50 <comment>find tiles</comment>
51 <input name="input" type="InputBase" sid="0x103a">
52 <comment>defines the input data for FindTilesByBoundingbox operation </comment>
53 <elem name="bounding" type="BoundingBox" multiplicity="1">
54 <comment>the bounding box that intersect with tiles</comment>
55 </elem>
56 <elem name="floor" type="Tensor.int16" multiplicity="0..1">
57 <comment>optional floor number for more precise search</comment>
58 </elem>
59 </input>
60
61 <output name="output" type="OutputBase" sid="0x104a">
62 <comment>defines the output data for FindTilesByBoundingbox operation</comment>
63 <elem name="tiles" type="TileSet" multiplicity="0..1">
64 <comment>a set of tiles as the result of the FindTilesByPos operation</comment>
65 </elem>
66 </output>
67 </operation>
68
69 <!-- FindTilesByRefId operation -->
70 <operation name="FindTilesByRefId">
71 <comment>find tiles</comment>
72 <input name="input" type="InputBase" sid="0x103a">
73 <comment>defines the input data for FindTilesByRefId operation </comment>
74 <elem name="refids" type="Tensor.string" multiplicity="1..*">
75 <comment>the bounding box that intersect with tiles</comment>
76 </elem>
77 <elem name="floor" type="Tensor.int16" multiplicity="0..1">
78 <comment>optional floor number for more precise search</comment>
79 </elem>
80 <elem name="signaltype" type="ObservationType" multiplicity="1">
81 <comment>the radio type of the reference points</comment>
82 </elem>
83 </input>
84
85 <output name="output" type="OutputBase" sid="0x104a">
86 <comment>defines the output data for FindTilesByRefId operation</comment>
87 <elem name="tiles" type="TileSet" multiplicity="0..1">
88 <comment>a set of tiles as the result of the FindTilesByPos operation</comment>
89 </elem>
90 </output>
91 </operation>
92
93 <!-- EstimatePosition operation -->
94 <operation name="EstimatePosition">
95 <comment> estimate posiion from a set of Wifi rssi observations</comment>
96 <input name="input" type="InputBase" sid="0x106a">
97 <comment>input for EstimatePosition operation</comment>
98 <elem name="observations" type="ObservationSet" multiplicity="1">
99 <comment>a set of observed rssi values</comment>
100 </elem>
101 </input>
102
103 <output name="output" type="OutputBase" sid="0x107a">
104 <comment>output for EstimatePosition operation</comment>
105 <elem name="pos" type="Shape" multiplicity="0..*" polymorphic="true">
106 <comment>approximate position of the tile</comment>
107 </elem>
108
109 </output>
110 </operation>
111
112 </interface>
113
114 </namespace>
115 </specification>
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 XtensibleInterfaceDefinition.xsd"
7 identity="ApiBase.xid.xml">
8
9 <title>ILP Services API Base Definitions</title>
10 <comment>
11 This document defines the common types API service interface for the ILP and Simultaneous Localization
12 and Mapping (SLAM) services definitions. The service provides access to ILP and SLAM technologies for position
13 calculation for devices and services communicating via standard
14 IP based protocols. The API currently supports XMF and JSON wire formats.
15 </comment>
16
17 <import ref="https://xid.location.studio/Tensor/V1.0.0/Definitions.xid.xml" local="Definitions.xid.xml" />
18 <import ref="https://xid.location.studio/HPE/V1.1.1/HpeCore.xid.xml" local="HpeCore.xid.xml" />
19 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeGnss.xid.xml" local="HpeGnss.xid.xml" />
20 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeCellular.xid.xml" local="HpeCellular.xid.xml" />
21 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeWiFi.xid.xml" local="HpeWiFi.xid.xml" />
22
23 <namespace name="ILP">
24 <using namespace="HPE"/>
25 <using namespace="Tensor"/>
26
27
28 <!--
29 *******************************
30 *InputBase Type Definition
31 *******************************
32 -->
33 <struct name="InputBase" >
34 <comment>Base input fields for operations supporting asynchronous transaction information.</comment>
35 <elem name="directive" multiplicity="0..*" type="NameValue">
36 <comment>
37 A set of directives to influence processing.
38 </comment>
39 </elem>
40
41 <elem name="devid" multiplicity="1" type="string">
42 <comment>
43 Required device identifier, that provides a consistent multi-transaction identifier
44 for a device or equivalent (e.g. service identifier) providing the data. Any errors or issues resulting from processing the data will include this identifier
45 in the system logs, providing traceability. Identifier should be unique.
46 </comment>
47 </elem>
48
49 <elem name="etid" multiplicity="0..1" type="string">
50 <comment>
51 Optional external transaction identifier for the caller to uniquely identify and track
52 the transaction and corresponding results. These identifiers will appear in the
53 ILP system logs for traceability analysis. The format of the transaction identifier is up to the caller
54 and can be anything: e.g. [uuid], [id1.subid0], [numerical], etc. This data is never interpreted by
55 the ILP system.
56 </comment>
57 </elem>
58 </struct>
59
60
61 <!--
62 *******************************
63 *OutputBase Type Definition
64 *******************************
65 -->
66 <struct name="OutputBase" >
67 <comment>Base output fields common to operations supporting asynchronous returning transaction information.</comment>
68 <elem name="devid" multiplicity="0..1" type="string">
69 <comment>
70 Device identifier provided at operation input, provides a consistent identifier
71 for a device or equivalent (e.g. service identifier) providing the data. Any errors or issues resulting from processing the data will include this identifier
72 in the system logs, providing traceability.
73 </comment>
74 </elem>
75
76 <elem name="etid" multiplicity="0..1" type="string">
77 <comment>
78 Optional external transaction identifier for the caller to uniquely identify and track
79 the transaction and corresponding results. These identifiers appear in the
80 ILP system logs for traceability analysis. The format of the transaction identifier is up to the caller
81 and can be anything: e.g. [uuid], [id1.subid0], [numerical], etc. This data is never interpreted by
82 the ILP system.
83 </comment>
84
85 </elem>
86
87 <elem name="resultcode" type="ResultCode" multiplicity="1" >
88 <comment>Result of the operation.</comment>
89 </elem>
90
91 <elem name="errinfo" type="Tensor.string" multiplicity="0..1">
92 <comment>Error information if result was not success.</comment>
93 </elem>
94
95 </struct>
96
97 </namespace>
98 </specification>
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 XtensibleInterfaceDefinition.xsd"
7 identity="IlpApiBase.xid.xml">
8
9 <title>ILP Hybrid Positioning Services API Base Definitions</title>
10 <comment>
11 This document defines the common types API service interface for the IoT Location Platform (ILP).
12 The service provides hybrid position calculation for devices and services communicating
13 via standard IP based protocols. The API currently supports XMF and JSON wire formats.
14 </comment>
15
16 <import ref="https://xid.location.studio/Tensor/V1.0.0/Definitions.xid.xml" local="Definitions.xid.xml" />
17 <import ref="https://xid.location.studio/HPE/V1.1.1/HpeCore.xid.xml" local="HpeCore.xid.xml" />
18 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeGnss.xid.xml" local="HpeGnss.xid.xml" />
19 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeCellular.xid.xml" local="HpeCellular.xid.xml" />
20 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeWiFi.xid.xml" local="HpeWiFi.xid.xml" />
21
22 <namespace name="ILP">
23 <using namespace="HPE"/>
24 <using namespace="Tensor"/>
25
26
27 <!--
28 *******************************
29 *IlpInputBase Type Definition
30 *******************************
31 -->
32 <struct name="IlpInputBase" >
33 <comment>Base input fields for operations supporting asynchronous transaction information.</comment>
34 <elem name="idDevice" multiplicity="1" type="string">
35 <comment>
36 Required device identifier, that provides a consistent multi-transaction identifier
37 for a device or equivalent (e.g. service identifier) providing the data. Any errors or issues resulting from processing the data will include this identifier
38 in the system logs, providing traceability. Identifier should be unique.
39 </comment>
40 </elem>
41
42 <elem name="idTransaction" multiplicity="0..1" type="string">
43 <comment>
44 Optional transaction identifier for the caller to uniquely identify and track
45 the transaction and corresponding results. These identifiers will appear in the
46 ILP system logs for traceability analysis. The format of the transaction identifier is up to the caller
47 and can be anything: e.g. [uuid], [id1.subid0], [numerical], etc. This data is never interpreted by
48 the ILP system.
49 </comment>
50 </elem>
51
52 <!-- THis is future, don't uncomment until design issues resolved. M. Mathews/s. Hines 161130
53 <elem name="urlCallback" multiplicity="0..1" type="string">
54 <tag key="life-cycle" value="future" />
55 <comment>
56 Optional asynchronous callback used to callback client servers during long operations. Not all
57 interfaces may support this.
58 </comment>
59 </elem>
60 -->
61 </struct>
62
63
64 <!--
65 *******************************
66 *IlpOutputBase Type Definition
67 *******************************
68 -->
69 <struct name="IlpOutputBase" >
70 <comment>Base output fields common to operations supporting asynchronous returning transaction information.</comment>
71 <elem name="idDevice" multiplicity="1" type="string">
72 <comment>
73 Device identifier provided at operation input, provides a consistent identifier
74 for a device or equivalent (e.g. service identifier) providing the data. Any errors or issues resulting from processing the data will include this identifier
75 in the system logs, providing traceability.
76 </comment>
77 </elem>
78
79 <elem name="idTransaction" multiplicity="0..1" type="string">
80 <comment>
81 Optional transaction identifier for the caller to uniquely identify and track
82 the transaction and corresponding results. These identifiers appear in the
83 ILP system logs for traceability analysis. The format of the transaction identifier is up to the caller
84 and can be anything: e.g. [uuid], [id1.subid0], [numerical], etc. This data is never interpreted by
85 the ILP system.
86 </comment>
87 </elem>
88
89 <!-- THis is future, don't uncomment until design issues resolved. M. Mathews/s. Hine 161130
90 <elem name="urlCallback" multiplicity="0..1" type="string">
91 <tag key="life-cycle" value="future" />
92 <comment>
93 Optional asynchronous callback used to callback client servers during long operations. Not all
94 interfaces may support this.
95 </comment>
96 </elem>
97 -->
98 </struct>
99
100
101 </namespace>
102 </specification>
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 XtensibleInterfaceDefinition.xsd"
7 identity="IlpAssistanceApi.xid.xml">
8 <title>ILP Assistance Services</title>
9 <comment>
10 This document defines the positioning assistance service interface for the IoT Location Platform (ILP).
11 The service provides assistance data supporting GNSS and other positioning technologies for devices
12 and services communicating via standard IP based protocols. The API currently supports XMF and JSON wire formats.
13 </comment>
14
15 <import ref="https://xid.location.studio/Tensor/V1.0.0/Definitions.xid.xml" local="Definitions.xid.xml" />
16 <import ref="https://xid.location.studio/HPE/V1.1.1/HpeCore.xid.xml" local="HpeCore.xid.xml" />
17 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeGnss.xid.xml" local="HpeGnss.xid.xml" />
18 <import ref="https://xid.location.studio/ILP/V1.1.1/IlpApiBase.xid.xml" local="IlpApiBase.xid.xml" />
19
20 <namespace name="ILP">
21 <using namespace="HPE"/>
22 <using namespace="Tensor"/>
23
24 <!--
25 *******************************************************
26 GnssData input/ouput structure declarations.
27 *******************************************************
28 -->
29 <!-- GnssDataInput structure -->
30 <struct name="GnssDataInput" type="IlpInputBase">
31 <comment>ILP.Assistance.GnssData input request data.</comment>
32
33 <!-- Define internal data structure -->
34 <struct name="RequestSpec">
35 <comment>Specifies the data request for each constellation type.</comment>
36 <elem name ="constellation" type="HPE.Gnss.Constellation" multiplicity="1">
37 <comment>Specifies the constellation of interest.</comment>
38 </elem>
39 <elem name="directive" multiplicity="0..*" type="NameValue">
40 <comment>
41 A set of directives to influence processing.
42 </comment>
43 </elem>
44 <elem name="minId" multiplicity="0..1" type ="uint8" default="0">
45 <comment>
46 Specifies the minimum satellite ID to return constellation data.
47 </comment>
48 </elem>
49 <elem name="maxId" multiplicity="0..1" type ="uint8" default="255">
50 <comment>
51 Specifies the maximum satellite ID to return constellation data.
52 </comment>
53 </elem>
54 <elem name="AssistData" multiplicity="1..*" type ="HPE.Gnss.AssistanceData">
55 <comment>
56 Specifies the types of constellation assistance data to return.
57 </comment>
58 </elem>
59 </struct>
60
61 <!-- Define input elements.-->
62 <elem name="epoch" multiplicity="0..1" type="datetime">
63 <comment>
64 Optional epoch for which the data is valid. Leave unspecified if the current epoch is desired.
65 </comment>
66 </elem>
67
68 <elem name="encoding" multiplicity="0..1" type="EncodingFormat" default="0">
69 <comment>
70 ConstellationData encoding format for the response. This field is carried into
71 GetAssistanceData_output.encCon and GetGnssAlmanacs_output.conData will be encoded
72 in this format. If not specified the "native" format of the protocol is used.
73 </comment>
74 </elem>
75
76 <elem name="location" multiplicity="0..1" type="Shape">
77 <comment>
78 Optional specification of the location to compute assistance data. If not specified
79 all available asistance data will be provided.
80 </comment>
81 </elem>
82
83 <elem name="elmask" multiplicity="0..1" type="int8" default="-90">
84 <comment>
85 Optional, specifies the elevation cutoff mask relative to the current
86 location in degrees. If not specified or -90, all values within the specified satellite ID ranges are returned.
87 </comment>
88 <tag name="unit" value="degrees"/>
89 </elem>
90
91 <elem name="Request" multiplicity="1..*" type="RequestSpec">
92 <comment>Specifies the requested data. One specification is required, multiple can be processed simultaneously.</comment>
93 </elem>
94 </struct>
95
96 <!-- GnssDataOutput structure -->
97 <struct name="GnssDataOutput" type="IlpOutputBase">
98 <comment>ILP.Assistance.GnssData output structure. </comment>
99
100 <elem name="resultcode" multiplicity="1" type="ResultCode">
101 <comment>
102 Result of GnssData operation.
103 If resultcode is not success, encCon and constellation data will not be present.
104 </comment>
105 </elem>
106
107 <elem name="encoding" multiplicity="0..1" type="EncodingFormat" default="0">
108 <comment>
109 Constellation Data encoding format. Data can be provided in a different encoding format
110 than the native protocol format. This is carried over from input.
111 If not present, the data is in the native protocol format (e.g. XMF, JSON).
112 </comment>
113 </elem>
114
115 <elem name="assistdata" multiplicity="0..*" type ="HPE.Gnss.ConstellationData" encoding="encoding">
116 <comment>
117 The list of ConstellationData encoded in the format specified by encoding.
118 </comment>
119 </elem>
120 </struct>
121
122
123 <!--
124 *******************************************************
125 ILP GNSS Assistance Data Service Interface.
126 *******************************************************
127 -->
128 <interface name="Assistance">
129 <comment>Assistance data interface functions.</comment>
130
131 <operation name="Gnss">
132 <comment>Returns caller requested GNSS assistance data.</comment>
133 <input name="Input" type="GnssDataInput" sid="0x1018"/>
134 <output name="Result" type="GnssDataOutput" sid="0x1019"/>
135 </operation>
136
137 </interface>
138
139 </namespace>
140 </specification>
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 XtensibleInterfaceDefinition.xsd"
7 identity="IlpSubmissionApi.xid.xml">
8 <title>ILP Submission API</title>
9 <comment>
10 This document defines a lightweight Observation Submission API for submitting ILP compatible observation
11 data without invoking the full get position operation.
12 </comment>
13
14 <import ref="https://xid.location.studio/Tensor/V1.0.0/Definitions.xid.xml" local="Definitions.xid.xml" />
15 <import ref="https://xid.location.studio/HPE/V1.1.1/HpeCore.xid.xml" local="HpeCore.xid.xml" />
16 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeGnss.xid.xml" local="HpeGnss.xid.xml" />
17 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeCellular.xid.xml" local="HpeCellular.xid.xml" />
18 <import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeWiFi.xid.xml" local="HpeWiFi.xid.xml" />
19 <import ref="https://xid.location.studio/ILP/V1.1.1/IlpApiBase.xid.xml" local="IlpApiBase.xid.xml" />
20
21 <namespace name="ILP">
22 <using namespace="HPE"/>
23 <using namespace="Tensor"/>
24
25
26 <!-- SubmitInput structure definition.
27 Note: all the tags are defined. These have to
28 match CalculateInput tags of the same name.
29 -->
30 <struct name="PositionInfo" type="IlpInputBase" >
31 <comment>Used as ILP.Submission.PositionInfo input.</comment>
32
33 <elem name="state" multiplicity="0..1" type="StateInfo" ord="90">
34 <comment>
35 Optional position information.\n
36 At least one of observations or state is required,
37 otherwise there is insufficient data to process.
38 </comment>
39 </elem>
40
41 <elem name="directive" multiplicity="0..*" type="NameValue" ord="87">
42 <comment>
43 A set of directives to influence processing.
44 </comment>
45 </elem>
46
47 <elem name="encObs" multiplicity="0..1" type="EncodingFormat" default="0" ord="88">
48 <comment>
49 Observation set encoding format. Observations may be passed to the service in
50 an encoding format different than that outer wire format.
51 </comment>
52 </elem>
53
54 <elem name="observations" multiplicity="0..1" type="ObservationSet" encoding ="encObs" ord="89">
55 <comment>
56 Optional Set of observation data encoded in the format specified by encObs.\n
57 At least one of observations or state is required,
58 otherwise there is insufficient data to process.
59 </comment>
60 </elem>
61 </struct>
62
63 <!--
64 *******************************************************
65 Observation Submission API
66 *******************************************************
67 -->
68 <interface name="Submission">
69 <comment>Interface for submitting data to ILP. </comment>
70
71 <operation name="PositionInfo">
72 <comment>
73 Interaction submits position and observation data.\n
74 There is no response besides bearer response codes.
75 </comment>
76 <input name="Input" type="PositionInfo" sid="0x101E"/>
77 </operation>
78 </interface>
79 </namespace>
80 </specification>
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!