272d48d0 by Skip Hines

updated historical specs to work with new code generator

1 parent c34d5251
......@@ -235,7 +235,7 @@
</comment>
<elem name="state" type="StateVector" multiplicity="1"/>
<elem name="covariance" type="CovarianceMatrix" multiplicity="1"/>
<elem name="referenceframe" type="ReferenceFrame" multiplicity="1" default="ReferenceFrame::WGS84"/>
<elem name="referenceframe" type="ReferenceFrame" multiplicity="1" default="ReferenceFrame.WGS84"/>
</struct>
<struct name="Point2D" type="Shape" rttkey="HPE.ShapeType.Point2D">
......@@ -557,7 +557,7 @@
<comment>Azimuth heading of the device in degrees (true North)</comment>
</elem>
<elem name="source" type="StateSource" multiplicity="0..1" default="0">
<elem name="source" type="StateSource" multiplicity="0..1" default="undefined">
<comment>Source field defines the source of the state information. If not specified, value is undefined. Defining the source of the state information
assists the calculation processing by characterizing the nature of the position data relative to associated observations.
</comment>
......
<?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 https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd"
identity="HpeUsage.xid.xml">
<title>HPE Usage Messages</title>
<comment>This file the usage messages produced by the HPE.</comment>
<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/Tensor/V1.0.0/Logging.xid.xml" local="Logging.xid.xml" />
<namespace name="HPE">
<using namespace="Tensor"/>
<using namespace="Logging"/>
<!--Initialization Report Msg-->
<struct name="InitializationReport" type="Logging.UsageMsg" rttkey='"tpf://hpe/initrpt"'>
<comment>
Message captures HPE initialization data.
</comment>
<elem name="state" type="StateInfo" multiplicity="1">
<comment>
State information.
</comment>
</elem>
</struct>
<!--Observation Report Msg-->
<struct name="ObservationReport" type="Logging.UsageMsg" rttkey='"tpf://hpe/obsrpt"'>
<comment>
Message captures HPE observation data for playback purposes and debugging.
</comment>
<elem name="observations" type="ObservationSet" multiplicity="1">
<comment>
Observation Data provided by the caller.
</comment>
</elem>
<elem name="refdata" type="ReferenceDataSet" multiplicity="0..1">
<comment>
Contains reference data provided by the caller.
</comment>
</elem>
<elem name="directive" multiplicity="0..*" type="Tensor.NameValue">
<comment>
A set of directives to influence processing. Unknown directives are ignored.
</comment>
</elem>
</struct>
<!--TaskReport Msg-->
<struct name="TaskReport" type="Logging.UsageMsg" rttkey='"tpf://hpe/taskrpt"'>
<comment>
Message reports processing task result data. Tasks are any computational elem
within the HPE including calculators, converters, estimators.
</comment>
<elem name="taskid" type="string" multiplicity="1">
<comment>
The unique tasks identifier. A source may have multiple tasks, this field assigns
an identifier that uniquely characterizes what the task was that was accomplished.
</comment>
</elem>
<elem name="start" type="datetime" multiplicity="1">
<comment>
The start time at which the processor is used.
</comment>
</elem>
<elem name="duration" type="uint16" multiplicity="1">
<tag name="unit" value="msec"/>
<comment>
The duration of the processing in msec. This is not meant to be a high
resolution duration monitoring, implement a metric counter for precise timing data.
</comment>
</elem>
<elem name="status" type="ProcessingStatus" multiplicity="1">
<comment>The result of the processor use, typically success or failure.</comment>
</elem>
</struct>
<!--Position Report Msg-->
<struct name="PositionReport" type="Logging.UsageMsg" rttkey='"tpf://hpe/posrpt"'>
<comment>
Usage message reports position information produced by HPE.
</comment>
<elem name="position" type="HPE.Spheroid" multiplicity="1">
<comment>The 2D/3D position reported. </comment>
</elem>
<elem name="speed" type="int16" multiplicity="1">
<tag name="unit" value="cm/sec"/>
<comment>The observed speed. O if not known.</comment>
</elem>
<elem name="heading" type="int16" multiplicity="1">
<tag name="unit" value="degrees"/>
<comment>Observed heading relative true north (azimuth).</comment>
</elem>
<elem name="veracity" type="byte" multiplicity="1">
<comment>
Veracity defines the validity of the measurement in the range between 0 and 100.
A high score means the estimate is deemed valid and more reliable than a lower score.
If no veracity scoring is performed, this will have a value of 255
</comment>
</elem>
<elem name="confidence" type="byte" multiplicity="1">
<comment>The estimate confidence. Valid range is 0 to 100</comment>
</elem>
<elem name="calctype" type="string" multiplicity="1">
<comment>
Positioning calculation stereo type specifier (hybrid, cellular, slam, etc.). If not defined set to "".
</comment>
</elem>
<elem name="obstype" type="ObservationType" multiplicity="1">
<comment>The last observation type used to create the estimate.</comment>
</elem>
</struct>
</namespace>
</specification>
......@@ -51,7 +51,7 @@
</comment>
</elem>
<elem name="dynamics" multiplicity="0..1" type="DynamicsProfile" default="0">
<elem name="dynamics" multiplicity="0..1" type="DynamicsProfile" default="undefined">
<comment>
Specifies the dymnamics of the device providing the data. If not specified, the default dynamics is undefined (0).
This parameter optimizes configuration of the estimator to constraint calculations based on the type
......@@ -59,7 +59,7 @@
</comment>
</elem>
<elem name="rankEstimate" multiplicity="0..1" type="EstimateRanking" default="3">
<elem name="rankEstimate" multiplicity="0..1" type="EstimateRanking" default="calcorder">
<comment>
Specifies the sort order of the estimates produced by the hybrid calculation. If not defined, the default value is to sort estimates
based on calculation order (0).
......
<?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 https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd"
identity="IlpApiBase.xid.xml">
<title>ILP Hybrid Positioning Services API Base Definitions</title>
<comment>
This document defines the common types API service interface for the IoT Location Platform (ILP).
The service provides hybrid position calculation for devices and services communicating
via standard IP based protocols. The API currently supports XMF and JSON wire formats.
</comment>
<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" />
<namespace name="ILP">
<using namespace="HPE"/>
<using namespace="Tensor"/>
<!--
*******************************
*IlpInputBase Type Definition
*******************************
-->
<struct name="IlpInputBase" >
<comment>Base input fields for operations supporting asynchronous transaction information.</comment>
<elem name="idDevice" multiplicity="1" type="string">
<comment>
Required device identifier, that provides a consistent multi-transaction identifier
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
in the system logs, providing traceability. Identifier should be unique.
</comment>
</elem>
<elem name="idTransaction" multiplicity="0..1" type="string">
<comment>
Optional transaction identifier for the caller to uniquely identify and track
the transaction and corresponding results. These identifiers will appear in the
ILP system logs for traceability analysis. The format of the transaction identifier is up to the caller
and can be anything: e.g. [uuid], [id1.subid0], [numerical], etc. This data is never interpreted by
the ILP system.
</comment>
</elem>
<!-- THis is future, don't uncomment until design issues resolved. M. Mathews/s. Hines 161130
<elem name="urlCallback" multiplicity="0..1" type="string">
<tag key="life-cycle" value="future" />
<comment>
Optional asynchronous callback used to callback client servers during long operations. Not all
interfaces may support this.
</comment>
</elem>
-->
</struct>
<!--
*******************************
*IlpOutputBase Type Definition
*******************************
-->
<struct name="IlpOutputBase" >
<comment>Base output fields common to operations supporting asynchronous returning transaction information.</comment>
<elem name="idDevice" multiplicity="1" type="string">
<comment>
Device identifier provided at operation input, provides a consistent identifier
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
in the system logs, providing traceability.
</comment>
</elem>
<elem name="idTransaction" multiplicity="0..1" type="string">
<comment>
Optional transaction identifier for the caller to uniquely identify and track
the transaction and corresponding results. These identifiers appear in the
ILP system logs for traceability analysis. The format of the transaction identifier is up to the caller
and can be anything: e.g. [uuid], [id1.subid0], [numerical], etc. This data is never interpreted by
the ILP system.
</comment>
</elem>
<!-- THis is future, don't uncomment until design issues resolved. M. Mathews/s. Hine 161130
<elem name="urlCallback" multiplicity="0..1" type="string">
<tag key="life-cycle" value="future" />
<comment>
Optional asynchronous callback used to callback client servers during long operations. Not all
interfaces may support this.
</comment>
</elem>
-->
</struct>
</namespace>
</specification>
<?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 https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd"
identity="IlpAssistanceApi.xid.xml">
<title>ILP Assistance Services</title>
<comment>
This document defines the positioning assistance service interface for the IoT Location Platform (ILP).
The service provides assistance data supporting GNSS and other positioning technologies for devices
and services communicating via standard IP based protocols. The API currently supports XMF and JSON wire formats.
</comment>
<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/ILP/V1.1.1/IlpApiBase.xid.xml" local="IlpApiBase.xid.xml" />
<namespace name="ILP">
<using namespace="HPE"/>
<using namespace="Tensor"/>
<!--
*******************************************************
GnssData input/ouput structure declarations.
*******************************************************
-->
<!-- GnssDataInput structure -->
<struct name="GnssDataInput" type="IlpInputBase">
<comment>ILP.Assistance.GnssData input request data.</comment>
<!-- Define internal data structure -->
<struct name="RequestSpec">
<comment>Specifies the data request for each constellation type.</comment>
<elem name ="constellation" type="HPE.Gnss.Constellation" multiplicity="1">
<comment>Specifies the constellation of interest.</comment>
</elem>
<elem name="directive" multiplicity="0..*" type="NameValue">
<comment>
A set of directives to influence processing.
</comment>
</elem>
<elem name="minId" multiplicity="0..1" type ="uint8" default="0">
<comment>
Specifies the minimum satellite ID to return constellation data.
</comment>
</elem>
<elem name="maxId" multiplicity="0..1" type ="uint8" default="255">
<comment>
Specifies the maximum satellite ID to return constellation data.
</comment>
</elem>
<elem name="AssistData" multiplicity="1..*" type ="HPE.Gnss.AssistanceData">
<comment>
Specifies the types of constellation assistance data to return.
</comment>
</elem>
</struct>
<!-- Define input elements.-->
<elem name="epoch" multiplicity="0..1" type="datetime">
<comment>
Optional epoch for which the data is valid. Leave unspecified if the current epoch is desired.
</comment>
</elem>
<elem name="encoding" multiplicity="0..1" type="EncodingFormat" default="0">
<comment>
ConstellationData encoding format for the response. This field is carried into
GetAssistanceData_output.encCon and GetGnssAlmanacs_output.conData will be encoded
in this format. If not specified the "native" format of the protocol is used.
</comment>
</elem>
<elem name="location" multiplicity="0..1" type="Shape">
<comment>
Optional specification of the location to compute assistance data. If not specified
all available asistance data will be provided.
</comment>
</elem>
<elem name="elmask" multiplicity="0..1" type="int8" default="-90">
<comment>
Optional, specifies the elevation cutoff mask relative to the current
location in degrees. If not specified or -90, all values within the specified satellite ID ranges are returned.
</comment>
<tag name="unit" value="degrees"/>
</elem>
<elem name="Request" multiplicity="1..*" type="RequestSpec">
<comment>Specifies the requested data. One specification is required, multiple can be processed simultaneously.</comment>
</elem>
</struct>
<!-- GnssDataOutput structure -->
<struct name="GnssDataOutput" type="IlpOutputBase">
<comment>ILP.Assistance.GnssData output structure. </comment>
<elem name="resultcode" multiplicity="1" type="ResultCode">
<comment>
Result of GnssData operation.
If resultcode is not success, encCon and constellation data will not be present.
</comment>
</elem>
<elem name="encoding" multiplicity="0..1" type="EncodingFormat" default="0">
<comment>
Constellation Data encoding format. Data can be provided in a different encoding format
than the native protocol format. This is carried over from input.
If not present, the data is in the native protocol format (e.g. XMF, JSON).
</comment>
</elem>
<elem name="assistdata" multiplicity="0..*" type ="HPE.Gnss.ConstellationData" encoding="encoding">
<comment>
The list of ConstellationData encoded in the format specified by encoding.
</comment>
</elem>
</struct>
<!--
*******************************************************
ILP GNSS Assistance Data Service Interface.
*******************************************************
-->
<interface name="Assistance">
<comment>Assistance data interface functions.</comment>
<operation name="Gnss">
<comment>Returns caller requested GNSS assistance data.</comment>
<input name="Input" type="GnssDataInput" sid="0x1018"/>
<output name="Result" type="GnssDataOutput" sid="0x1019"/>
</operation>
</interface>
</namespace>
</specification>
<?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 https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd"
identity="IlpSubmissionApi.xid.xml">
<title>ILP Submission API</title>
<comment>
This document defines a lightweight Observation Submission API for submitting ILP compatible observation
data without invoking the full get position operation.
</comment>
<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/V1.1.1/IlpApiBase.xid.xml" local="IlpApiBase.xid.xml" />
<namespace name="ILP">
<using namespace="HPE"/>
<using namespace="Tensor"/>
<!-- SubmitInput structure definition.
Note: all the tags are defined. These have to
match CalculateInput tags of the same name.
-->
<struct name="PositionInfo" type="IlpInputBase" >
<comment>Used as ILP.Submission.PositionInfo input.</comment>
<elem name="state" multiplicity="0..1" type="StateInfo" ord="90">
<comment>
Optional position information.\n
At least one of observations or state is required,
otherwise there is insufficient data to process.
</comment>
</elem>
<elem name="directive" multiplicity="0..*" type="NameValue" ord="87">
<comment>
A set of directives to influence processing.
</comment>
</elem>
<elem name="encObs" multiplicity="0..1" type="EncodingFormat" default="0" ord="88">
<comment>
Observation set encoding format. Observations may be passed to the service in
an encoding format different than that outer wire format.
</comment>
</elem>
<elem name="observations" multiplicity="0..1" type="ObservationSet" encoding ="encObs" ord="89">
<comment>
Optional Set of observation data encoded in the format specified by encObs.\n
At least one of observations or state is required,
otherwise there is insufficient data to process.
</comment>
</elem>
</struct>
<!--
*******************************************************
Observation Submission API
*******************************************************
-->
<interface name="Submission">
<comment>Interface for submitting data to ILP. </comment>
<operation name="PositionInfo">
<comment>
Interaction submits position and observation data.\n
There is no response besides bearer response codes.
</comment>
<input name="Input" type="PositionInfo" sid="0x101E"/>
</operation>
</interface>
</namespace>
</specification>
......@@ -29,9 +29,14 @@ This is a public repo containing published XID (Xtensible Interface Definition)
* HPE/CommonDefs/V1.1.1/*
* ILP/V1.1.1/*
These two versions are historical copies that work with the old code generator.
The V1.1.1 versions above were updated for the new code generator.
The changes are related to enum defaults; new code generator requires literal name and does not accept numerical value.
* HPE/V1.1.1_orig/*
* ILP/V1.1.1_orig/*
### Deprecated ###
N/A
### Retired ###
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!