ReferenceData.xid.xml
6.74 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
<?xml version="1.0" encoding="UTF-8" ?>
<specification xmlns="https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd"
xmlns:xid="https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd XtensibleInterfaceDefinition.xsd"
identity="ReferenceData.xid.xml">
<title>SLAM Tile reference data</title>
<comment>This file defines the SLAM tile refeence definitions and related data types.</comment>
<!-- Include all known definitions -->
<import ref="https://xid.location.studio/Tensor/V1.0.0/Definitions.xid.xml" local="Definitions.xid.xml" />
<import ref="https://xid.location.studio/HPE/V1.1.1/HpeCore.xid.xml" local="HpeCore.xid.xml" />
<import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeGnss.xid.xml" local="HpeGnss.xid.xml" />
<import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeCellular.xid.xml" local="HpeCellular.xid.xml" />
<import ref="https://xid.location.studio/HPE/CommonDefs/V1.1.1/HpeWiFi.xid.xml" local="HpeWiFi.xid.xml" />
<import ref="https://xid.location.studio/ILP/SLAM/V1.0.0_alpha/CommonDefs.xid.xml" local="SLAM/Commondefs.xid.xml" />
<namespace name="SLAM">
<using namespace="HPE"/>
<using namespace="Tensor"/>
<using namespace="HPE.WiFi"/>
<using namespace="HPE.Cellular"/>
<enum name="RefPointValidStatus" type="Tensor.int8" default="Unknown">
<comment>Reference Validity status.</comment>
<literal name="Unknown" value="0"/>
<literal name="valid" value="1"/>
<literal name="quarantined" value ="2"/>
<literal name="invalid" value="3"/>
</enum>
<enum name="RefPointSyncStatus" type="Tensor.int8" default ="sync_required">
<comment>synchronization status of the reference point</comment>
<literal name="sync_required" value="0"/>
<literal name="in_sync" value="1"/>
</enum>
<enum name="RefPointUpdateStatus" type="Tensor.int8" default ="updated">
<comment>update status of the reference point</comment>
<literal name="updated" value="0"/>
<literal name="update_required" value="1"/>
</enum>
<enum name="RefPointType" type="Tensor.int8" default="undefined">
<comment>Specifies the format of the Reference data.</comment>
<literal name="undefined" value="0"/>
<literal name="RF" value="1"/>
<literal name="Cellular" value="2"/>
<literal name="Wifi" value="3"/>
<literal name="Bluetooth" value="4"/>
<literal name="GenericRF" value="5"/>
</enum>
<!--
<type name="HashKey" size="16">
<comment>16 byte UUID</comment>
<lang name="c" type="UUID" include="Tensor/CXMF/uuid.h"/>
<lang name="cpp" type="::Tensor::Types::UUID" include="Tensor/Types/uuid.h"/>
<lang name="java" type="XidUuid" include="com.comtechtel.tensor.xid.XidUuid"/>
<lang name="node" type="XidUuid"/>
</type>
-->
<struct name="RefPoint" >
<comment>defines the base structure of a reference point</comment>
<elem name="type" type="RefPointType" multiplicity="1" rttd="true">
<comment>Identifies the format/type of the reference data.</comment>
</elem>
<elem name="id" multiplicity="1" type="HashKey" >
<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>
</elem>
<elem name="position" multiplicity="0..1" type="Spheroid" >
<comment>the estimated position of the access point</comment>
</elem>
<elem name ="veracity" multiplicity="1" type="Tensor.float32">
<comment>The veracity of the reference point, 1= 100% trusted and validated, 0% not trusted at all.</comment>
</elem>
<elem name="validStatus" multiplicity="1" type="RefPointValidStatus">
<comment>status of the reference point</comment>
</elem>
<elem name="validbegin" type="datetime" multiplicity="1">
<comment>time stamp of the begining of the valid period</comment>
</elem>
<elem name="validend" type="datetime" multiplicity="1">
<comment>time stamp of the ending of the valid period</comment>
</elem>
<elem name ="data" type="Tensor.json" multiplicity="0..1">
<comment>json formatted data specific to the device</comment>
</elem>
<elem name="floor" multiplicity ="0..1" type="int8" >
<comment>Optional floor identifier, default is zero meaning the ground floor</comment>
</elem>
</struct>
<!-- ReferencePoint -->
<struct name="RFRefPoint" type="RefPoint" rttkey="SLAM.RefPointType.RF">
<comment>structure defines a reference Point.</comment>
<elem name="txpwr" type="Tensor.float32" multiplicity="1">
<comment>transmission power</comment>
</elem>
<elem name="attenuation" type="Tensor.float32" multiplicity="1">
<comment> attenuation exponent</comment>
</elem>
<elem name="freq" type="Tensor.float32" multiplicity="1">
<comment> radio frequency of the reference in Hz</comment>
</elem>
</struct>
<struct name="WifiRefPoint" type="RFRefPoint" rttkey="SLAM.RefPointType.Wifi">
<elem name="ssid" type="HPE.WiFi.SSID" multiplicity="1">
<comment>ssid of the access point</comment>
</elem>
<elem name ="macaddr" type="MacAddress48" multiplicity="1">
<comment>the mac address of the access point</comment>
</elem>
</struct>
<struct name="BluetoothRefPoint" type="RFRefPoint" rttkey="SLAM.RefPointType.Bluetooth">
<elem name="ssid" type="Tensor.string" multiplicity="1">
<comment>ssid of the access point</comment>
</elem>
<elem name ="macaddr" type="Tensor.string" multiplicity="1">
<comment>the mac address of the access point</comment>
</elem>
</struct>
<struct name="CellularRefPoint" type="RFRefPoint" rttkey="SLAM.RefPointType.Cellular">
<elem name ="cid" type="CellId" multiplicity="1"/>
<elem name ="antenna" type="AntennaSpec" multiplicity="1"/>
</struct>
<struct name="GenericRFRefPoint" type="RFRefPoint" rttkey="SLAM.RefPointType.GenericRF">
<elem name="uri" type="Tensor.uri" multiplicity="1">
<comment>identifier that determines the genericRF type and unique identifier. encoded into the hash key</comment>
</elem>
</struct>
<struct name="RefPointSet">
<comment>a set of reference points</comment>
<elem name="refpoints" type="RefPoint" multiplicity="0..*" polymorphic="true"/>
</struct>
</namespace>
</specification>