SpatialDefs.xid.xml 3.14 KB
<?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="SpatialDefs.xid.xml">
    <title>GEO Spatial Definitions</title>
    <comment>Definition defines common geo-spatial types..</comment>

  <!-- Include all known definitions -->
  <import ref="https://xid.location.studio/Tensor/V1.0.0/Definitions.xid.xml" local="Definitions.xid.xml" />
  
  
  <namespace name="GeoSpatial">
    <using namespace="Tensor"/>
    
    <!-- 
    *************************************
    * Enumerations 
    *************************************
    -->
    <enum name="CoordRefFrameType" type="Tensor.int8" default="unknown">
      <comment>Enumerations defines the supported coordinate reference frames</comment>
      <literal name="unknown" value="0"></literal>
      <literal name="WGS84" value="1"></literal>
      <literal name="ENU" value="2"></literal>
      <literal name="NED" value="3"></literal>
    </enum>


    <!-- 
    *************************************
    * BoundingBox Definition. 
    *************************************
    -->
    <struct name="BoundingBox" pack="true">

      <comment>defines the bounding box parameters</comment>
      <elem name="latmin" type="Tensor.float64" multiplicity="1" >
        <comment>minimum value of the latitude</comment>
      </elem>
      <elem name="latmax" type="Tensor.float64" multiplicity="1" >
        <comment>maximum value of the latitude</comment>
      </elem>
      <elem name="lonmin" type="Tensor.float64" multiplicity="1" >
        <comment>minimum value of the longitude</comment>
      </elem>
      <elem name="lonmax" type="Tensor.float64" multiplicity="1" >
        <comment>maximum value of the longitude</comment>
      </elem>

      <elem name="altmin" type="Tensor.float64" multiplicity="1" >
        <comment>minimum value of the altitude</comment>
      </elem>
      <elem name="altmax" type="Tensor.float64" multiplicity="1" >
        <comment>maximum value of the altitude</comment>
      </elem>

    </struct>

    <!-- 
    *************************************
    * PositionECEF Definition. 
    *************************************
    -->
    <struct name="PositionECEF" pack="true">
      <comment>A 3D, Earth-centered, Earth-Fixed position in rotational coordinates: latitude (deg.), longitude (deg.), altitude(m)</comment>
      <elem name="lat" type="Tensor.float64" multiplicity="1" >
        <comment>Latitude of the position in degrees.</comment>
      </elem>
      <elem name="lon" type="Tensor.float64" multiplicity="1" >
        <comment>Longitude of the position in degrees.</comment>
      </elem>
      <elem name="alt" type="Tensor.float64" multiplicity="1" >
        <comment>Altitude of the position in meters.</comment>
      </elem>
    </struct>


  </namespace>
</specification>