Panel
titlePage Table of Content

Table of Contents
maxLevel2

Introduction


In AIXM 5.1.x vertical dimensions of obstacles can be coded as the vertical extent of each obstacle part and the elevation on top of each part:

  • the vertical extent is the vertical distance from the bottom to the top of the part itself; on a single part obstacle the vertical extant is the height from the ground to the top of the obstacle. It is coded in the VerticalStructurePart.verticalExtent attribute.
  • the elevation is the MSL elevation of the topmost point of each part. Depending on the part's geometry, the elevation is coded in ElevatedSurface.elevation attribute for polygons, in the ElevatedCurve.elevation attribute for line obstacles or in the ElevatedPoint.elevation attribute for line obstacles.


Info
titleAIXM 5.2 Change
Currently it is not possible to code the height of an obstacle part above ground. Since the coding of heights is required by the ICAO Annex 15 and the industry standards (RTCA/EUROCAE DO-276 /ED-98) an AIXM change request is already in progres to fix this issue.


This specification explains, how obstacle elevations and heights shall be coded in AIXM.


Height versus Elevation


With regard to vertical dimensions of obstacles, the current AIXM 5.1(.1) model allows coding for each VerticalStructurePart:

  • the elevation (MSL) at the top of the obstacle part, using the VerticalStructurePart.horizontalProjection choices (ElevatedPoint, ElevatedCurve, ElevatedSurface)
  • the vertical dimension of each obstacle part, using the VerticalStructurePart.verticalExtent property

Info
titleWorkaround to determine obstacle height

As stated above the current model does not have an attribute that could be used directly for coding the height of the obstacle (AGL). However:

  • for obstacles that have a single VerticalStructurePart, the height (AGL) is equal to the VerticalStructurePart.verticalExtent (assuming that the obstacle sits on the ground and it is not floating in the air)
  • for obstacles that have multiple parts, the height (AGL) of the obstacle as a whole may be deduced in most cases using the following algorithm:
    1. identify the VerticalStructurePart that has the maximum top elevation (MSL, at the top) - let's call it "max elevation". This is also the overall obstacle maximum elevation at the top.
    2. identify the VerticalStructurePart that has the minimum base elevation, by subtracting its verticalExtent from its elevation (MSL) at the top - let's call it 'min base elevation'
    3. the difference between 1 (max elevation) and 2 (min base elevation) will give the overall vertical extent of the obstacle, which is also equal to its overall height (AGL)

Once the model provides an attribute for obstacle height it is recommended to code the height directly rather than to apply the above workaround.

Single Part Obstacles


A single part obstacle is a vertical structure that is coded as only one part,

  • A single part obstacle can have the shape of a point (e.g. an antenna), a line (e.g. a fence) or a polygon (e.g. a forest). However, being a single part obstacle, it can have only one vertical extend/elevation.
  • The top elevation of the obstacle is encoded with the corresponding horizontalProjection of its part element.
  • The height of the obstacle is encoded as verticalExtent of the verticalStructurePart. Since the vertical structure can have only one vertical extent, the obstacle height is the same for all points even in line or polygon obstacles.
  • The unit of measurement is required and shall be coded as an attribute of the elevation element.
  • In relation to the elevation a verticalDatum and a verticalAccuracy may be coded in addition


Point Obstacle (e.g. antenna)


Line Obstacle (e.g. fence)

Info
titleNote
If the illustrations are not displayed correctly displayed, please try to use another browser (Firefox issue)

Polygon Obstacle (e.g. forest)

Multi-Part Obstacles


A multi-part obstacle is a vertical structure that is composed from multiple parts.

  • For each part the top elevation shall be encoded with the corresponding horizontalProjection of its part element
  • For each part the verticalExtent may be encoded.
  • The unit of measurement is required and shall be coded as an attribute of its element (elevation repectively verticalExtent)
  • In relation to the elevation a verticalDatum and a verticalAccuracy may be coded in addition.

The example blow demonstrates the coding of

  • the elevations P1 and P2 of the building and the elevation of the antenna on top
  • the vertical extents P1 and P2 of the building and the antenna on top

Please note that the heights P1 and P2 above ground currently cannot be coded. Coding of heights will be enabled with the introduction of AIXM 5.2


Coding Rules


Include Page
Data verification rules for obstacle location and geometry
Data verification rules for obstacle location and geometry

Coding Examples

Code Block
languagexml
titleExample 1. Elevation - Single Part Obstacle
linenumberstrue
collapsetrue
		<aixm:VerticalStructure gml:id="uuid.5f68d835-828c-4ccd-91b7-791058d9dd4d">
			<gml:identifier codeSpace="urn:uuid:">5f68d835-828c-4ccd-91b7-791058d9dd4d</gml:identifier>
			...
					<aixm:part>
						<aixm:VerticalStructurePart gml:id="V-af4ee6d6">
							...
							<aixm:horizontalProjection_location>
								<aixm:ElevatedPoint srsName="urn:ogc:def:crs:EPSG::4326" gml:id="p1121">
									...
									<!-- elevation required by PANS-AIM Table A6-2 "Elevation" and ENR 5.4,AD 2/3.10 -->
									<aixm:elevation uom="M">150</aixm:elevation>
									<aixm:verticalDatum>EGM_96</aixm:verticalDatum>
									<aixm:verticalAccuracy uom="M">30</aixm:verticalAccuracy>
								</aixm:ElevatedPoint>
							</aixm:horizontalProjection_location>
							...
Code Block
languagexml
titleExample 2: Elevation -Multi Part Obstacle
linenumberstrue
collapsetrue
		<!-- POINT ON SURFACE: roof mounted antenna (Vertical Segmentation: 2 parts)-->
		<aixm:VerticalStructure gml:id="uuid.15c2c2ba-c5f2-47b5-9ada-1964d51b82c0">
			<gml:identifier codeSpace="urn:uuid:">15c2c2ba-c5f2-47b5-9ada-1964d51b82c0</gml:identifier>
			...
					<aixm:part>
						<aixm:VerticalStructurePart gml:id="vsp0007-1">
							...
							<aixm:horizontalProjection_surfaceExtent>
								<aixm:ElevatedSurface srsName="urn:ogc:def:crs:EPSG::4326" gml:id="ep0007-1">
									<gml:patches>
										<gml:PolygonPatch>
											<gml:exterior>
												<gml:Ring>
													<gml:curveMember>
														<gml:Curve gml:id="c4567">
															<gml:segments>
																<gml:GeodesicString>
																	<gml:posList>55.5243055555556 -24.64125833333333 
																		55.5201388888889 -24.63178888888889 
																		55.5211666666667 -24.63032222222222 
																		55.5251944444444 -24.63868888888889 
																		55.5243055555556 -24.64125833333333</gml:posList>
																</gml:GeodesicString>
															</gml:segments>
														</gml:Curve>
													</gml:curveMember>
												</gml:Ring>
											</gml:exterior>
										</gml:PolygonPatch>
									</gml:patches>
									...
									<aixm:elevation uom="M">168</aixm:elevation>
									<aixm:verticalDatum>EGM_96</aixm:verticalDatum>
									<aixm:verticalAccuracy uom="M">30</aixm:verticalAccuracy>
								</aixm:ElevatedSurface>
							</aixm:horizontalProjection_surfaceExtent>
							...
						</aixm:VerticalStructurePart>
					</aixm:part>
					<aixm:part>
						<aixm:VerticalStructurePart gml:id="vsp0007-2">
							...
							<aixm:horizontalProjection_location>
								<aixm:ElevatedPoint srsName="urn:ogc:def:crs:EPSG::4326" gml:id="VID000005">
									<gml:pos>55.52416667 -24.63888889</gml:pos>
									...
									<aixm:elevation uom="M">191</aixm:elevation>
									<aixm:verticalDatum>EGM_96</aixm:verticalDatum>
									<aixm:verticalAccuracy uom="M">30</aixm:verticalAccuracy>
								</aixm:ElevatedPoint>
							</aixm:horizontalProjection_location>
							...
Code Block
languagexml
titleExample 3: Multi Part Obstacle with same elevation of all parts (e.g. power line)
linenumberstrue
collapsetrue
		TBD
Code Block
languagexml
titleExample 3: Multi Part Obstacle with different elevations (e.g. cable car)
linenumberstrue
collapsetrue
		TBD