Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Introduction

Two typical cases exist:

  • an airspace that is fully derived from other existing airspace, which have their own operational reason to exist as separate airspace. For example, a control area (CTA) that is defined by the union of all its sectors
  • an airspace that is composed by a number of 'Parts', which do not have any operational meaning taken in isolation. However, these parts may still be coded as individual Airspace elements. 
Info
titleNote

The previous AIXM 4.5 version did not offer the possibility to aggregate two ore more AirspaceVolume with their own horizontalProjection and vertical limits. Thus, the only possibility was to code each such volume as an independent Airspace (of type PART) and to apply an aggregation operation afterwards;

Airspace Aggregation - Copying Geometry vs. Referencing

There are two methods to define

Referencing other operational airspace volumes

  • by copying the geometry,
  • or by referencing.

Combinations of both for defining one airspace geometry are possible.

Copying Geometry

The first method consists in effectively copying the geometry of the referenced Airspace as local AirspaceVolume.

Note
titleNote
Note that this might be a recursive operation, as the referenced Airspace might have more than one AirspaceVolume and some or even all these could also depend on the geometry of other Airspace.

This method might be appropriate for applications that need to provide fully digested geometrical data for direct consumption (e.g. graphical visualization, spatial calculations). The disadvantage of this method is that the referenced geometry might also change in time. This is not a problem when the aggregation is used for the provision of SNAPSHOT data (valid at a time instant), but it might become problematic when providing BASELINE data (which is valid for a period). Future changes of the geometry of referenced airspace needs to be propagated to the AirspaceVolume of the aggregated airspace. The advantage is that this method provides complete geometrical data for the aggregated Airspace and does not require further calculations by the client system.

For this method, the AirspaceGeometryComponent class is used to define the aggregation, and the Surface class to define the lateral limits of the child airspace (viz. the copies of the lateral limits of the 'parent airspace').

The figure below illustrates a simple copying of geometry, using as an example the BRUSSELS TMA, which is a union of two parts: TMA one and TMA two:

Image Removed

There is an additional option here. Instead of coping the geometry of the existing parts, the parts may be defined as integral part of the geometry of the child airspace. In this case, the parent airspace does not exist as own instance of the airspace feature.

Image Removed

Referencing

The second method is limited to referring to another airspace, but without effectively copying the geometry of that Airspace as own AirspaceVolume.

This method might be appropriate for data provision between synchronized databases, such as between a local and a regional database, and it is equivalent to the approach of the previous AIXM 4.5 version (which is not based on GML). The disadvantage of this method is that the client needs to eventually retrieve the geometry of the referenced Airspace and do the geo-spatial calculations that are necessary in order to effectively get the actual geometry of the current Airspace in a GML usable form. The advantage is that it preserves a true association with the composing Airspace.

For this method, the AirspaceGeometryComponent class and the AirspaceVolumeDependency class are used to define the aggregation. The Surface class may not be used!

Image Removed

The AirspaceVolumeDependency class defines the relationship between the geometry of an AirspaceVolume and the geometry of another (parent) Airspace.

The dependency attribute will be used to define, if only the horizontal limits of the "parent" airspace(s) shall be considered or also the vertical limits (i.e. the full geometry).

The figure below illustrates a simple referencing, again using as example the BRUSSELS TMA with its two parts: TMA one and TMA two.

Image Removed

The coding example below provides a XML fragment of a case like shown above for the fictitious TMA MAGNETTO (example is also part of the AIP Data Set - Specimen (DONLON)).

Code Block
languagexml
title//aixm:AirspaceTimeSlice[@gml:id='ASE_MAGNETTO_TMA']
linenumberstrue
collapsetrue
<aixm:AirspaceTimeSlice gml:id="ASE_MAGNETTO_TMA">

The AirspaceVolumeDependency class defines the relationship between the geometry of an

airspace with more than one airspace volume:

AirspaceVolume and the geometry of another (parent) Airspace.

The dependency attribute will be used to define, if only the horizontal limits of the "parent" airspace(s) shall be considered or also the vertical limits (i.e. the full geometry).

The figure below illustrates a simple referencing, again using as example the BRUSSELS TMA with its two parts: TMA one and TMA two.

Image Added

The coding example below provides a XML fragment of a case like shown above for the fictitious TMA MAGNETTO (example is also part of the AIP Data Set - Specimen (DONLON)).

Code Block
languagexml
title//aixm:AirspaceTimeSlice[@gml:id='ASE_MAGNETTO_TMA']
linenumberstrue
collapsetrue
<aixm:AirspaceTimeSlice gml:id="ASE_MAGNETTO_TMA">
					          <gml:validTime>
						            <gml:TimePeriod gml:id="uuid.820fdbbb-55d4-4f45-9d59-d770e5faec95">
							              <gml:beginPosition>2017-07-01T00:00:00Z</gml:beginPosition>
							              <gml:endPosition indeterminatePosition="unknown"/>
						            </gml:TimePeriod>
					          </gml:validTime>
					          <aixm:interpretation>BASELINE</aixm:interpretation>
					          <aixm:sequenceNumber>2</aixm:sequenceNumber>
					          <aixm:correctionNumber>0</aixm:correctionNumber>
					          <gml<aixm:validTime>featureLifetime>
						            <gml:TimePeriod gml:id="uuid.820fdbbb5e9c790e-55d4b91b-4f454182-9d59946d-d770e5faec95145b6e0196de">
							              <gml:beginPosition>2017beginPosition>2002-0711-01T0030T00:00:00Z</gml:beginPosition>
							              <gml:endPosition indeterminatePosition="unknown"/>
						            </gml:TimePeriod>
					          </gmlaixm:validTime>featureLifetime>
					          <aixm:interpretation>BASELINE<type>TMA</aixm:interpretation>type>
					          <aixm:sequenceNumber>2<designator>EAMM</aixm:sequenceNumber>designator>
					          <aixm:correctionNumber>0<name>MAGNETTO</aixm:correctionNumber>name>
					        	  <aixm:featureLifetime>class>
						        	    <gml:TimePeriod	<aixm:AirspaceLayerClass gml:id="uuid.5e9c790e-b91b-4182-946d-145b6e0196deacl123123">
							        	      <gml:beginPosition>2002-11-30T00:00:00Z</gml:beginPosition>		<aixm:classification>C</aixm:classification>
							        	      <gml:endPosition indeterminatePosition="unknown"/>
			</aixm:AirspaceLayerClass>
				        	    </gmlaixm:TimePeriod>class>
					          </aixm:featureLifetime>	<aixm:geometryComponent>
						            <aixm:type>TMA</aixm:type>AirspaceGeometryComponent gml:id="uuid.4344f989-50b4-4cb0-9920-870ccd89429f">
							              <aixm:designator>EAMM<operation>BASE</aixm:designator>operation>
							              <aixm:name>MAGNETTO<operationSequence>1</aixm:name>operationSequence>
							           	   <aixm:class>theAirspaceVolume>
								        	        	<aixm:AirspaceLayerClassAirspaceVolume gml:id="acl123123uuid.59160a8e-a015-42ed-8346-34bc65436a72">
				  					      	  		<aixm:classification>C</aixm:classification> 				        	  	</aixm:AirspaceLayerClass><aixm:contributorAirspace>
				        	  </aixm:class>
						        	<aixm:geometryComponent> 						            <aixm:AirspaceGeometryComponentAirspaceVolumeDependency gml:id="uuid.4344f98943a4e8ff-50b47995-4cb0492c-9920aa8f-870ccd89429f50ef2c29b679">
											              <aixm:operation>BASE</aixm:operation>
							              <aixm:operationSequence>1<dependency>FULL_GEOMETRY</aixm:operationSequence>dependency>
											              <aixm:theAirspaceVolume> 								                <aixm:AirspaceVolumetheAirspace gmlxlink:idhref="urn:uuid.59160a8e:0df377fe-a015dd53-42ed4d60-8346b6c4-34bc65436a726546ef31d26b"/>
										                  <aixm:contributorAirspace>  </aixm:AirspaceVolumeDependency>
										                    <aixm:AirspaceVolumeDependency gml:id="uuid.43a4e8ff-7995-492c-aa8f-50ef2c29b679"></aixm:contributorAirspace>
											                </aixm:AirspaceVolume>
							              <aixm:dependency>FULL_GEOMETRY<</aixm:dependency>theAirspaceVolume>
											            </aixm:AirspaceGeometryComponent>
					          <aixm</aixm:theAirspace xlink:href="urn:uuid:0df377fe-dd53-4d60-b6c4-6546ef31d26b"/>
										geometryComponent>
					          <aixm:geometryComponent>
						            </aixm:AirspaceVolumeDependency>
	 <aixm:AirspaceGeometryComponent gml:id="uuid.e8995bfd-8f47-401e-84d5-81154957ad53">
								                  <<aixm:operation>UNION</aixm:contributorAirspace>operation>
								                <<aixm:operationSequence>2</aixm:AirspaceVolume>operationSequence>
							              </aixm<aixm:theAirspaceVolume>
								            </aixm:AirspaceGeometryComponent>
    <aixm:AirspaceVolume gml:id="uuid.a91c0703-1a24-4c0a-a97b-f7a77ae6cdf2">
								   	       </aixm:geometryComponent> 					          <aixm:geometryComponent>contributorAirspace>
										                    <aixm:AirspaceGeometryComponentAirspaceVolumeDependency gml:id="uuid.e8995bfd28854643-8f47aca8-401e46e6-84d5a199-81154957ad5357bf0d02a6e2">
											              <aixm:operation>UNION</aixm:operation>
							               <aixm:operationSequence>2<dependency>FULL_GEOMETRY</aixm:operationSequence>dependency>
											              <aixm:theAirspaceVolume> 								                <aixm:AirspaceVolumetheAirspace gmlxlink:idhref="urn:uuid.a91c0703:010d8451-1a24d751-4c0a4abb-a97b9c71-f7a77ae6cdf2f48ad024045b"/>
										                  <aixm:contributorAirspace>  </aixm:AirspaceVolumeDependency>
										                    <aixm:AirspaceVolumeDependency gml:id="uuid.28854643-aca8-46e6-a199-57bf0d02a6e2"></aixm:contributorAirspace>
											                </aixm:AirspaceVolume>
							              <aixm:dependency>FULL_GEOMETRY<</aixm:dependency>theAirspaceVolume>
											            </aixm:AirspaceGeometryComponent>
					          <aixm</aixm:theAirspace xlink:href="urn:uuid:010d8451-d751-4abb-9c71-f48ad024045b"/>
										geometryComponent>
				        </aixm:AirspaceTimeSlice>
...
          </aixm:AirspaceVolumeDependency>
			<aixm:AirspaceTimeSlice gml:id="ASE_MAGNETTO1_TMA_P">
						                  </aixm:contributorAirspace><gml:validTime>
								            <gml:TimePeriod gml:id="uuid.cd76b225-8e1d-4827-b892-e86c68168e9b">
							   </aixm:AirspaceVolume>           <gml:beginPosition>2017-07-01T00:00:00Z</gml:beginPosition>
							              </aixm:theAirspaceVolume> <gml:endPosition indeterminatePosition="unknown"/>
						            </aixmgml:AirspaceGeometryComponent>TimePeriod>
					          </aixmgml:geometryComponent>validTime>
					        </aixm:AirspaceTimeSlice>
...
<aixm:AirspaceTimeSlice gml:id="ASE_MAGNETTO1_TMA_P">  <aixm:interpretation>BASELINE</aixm:interpretation>
					          <aixm:sequenceNumber>2</aixm:sequenceNumber>
					          <aixm:correctionNumber>0</aixm:correctionNumber>
					          <gml<aixm:validTime>featureLifetime>
						            <gml:TimePeriod gml:id="uuid.cd76b2254c1e9902-8e1dd3fb-48274041-b89280ff-e86c68168e9b34e6a9ac0936">
							              <gml:beginPosition>2017beginPosition>2010-0711-01T00:00:00Z</gml:beginPosition>
							              <gml:endPosition indeterminatePosition="unknown"/>
						            </gml:TimePeriod>
					          </gmlaixm:validTime>featureLifetime>
					          <aixm:interpretation>BASELINE<type>TMA_P</aixm:interpretation>type>
					          <aixm:sequenceNumber>2<designator>EAMM1</aixm:sequenceNumber>designator>
					          <aixm:correctionNumber>0<name>MAGNETTO TMA PART 1</aixm:correctionNumber>name>
					          <aixm:featureLifetime>geometryComponent>
						            <gml<aixm:TimePeriodAirspaceGeometryComponent gml:id="uuid.4c1e9902dbcb9ad5-d3fb2008-40414644-80ffbecb-34e6a9ac09364d01dbacc27e">
							              <gml:beginPosition>2010-11-01T00:00:00Z</gml:beginPosition><aixm:theAirspaceVolume>
								                <gml<aixm:endPositionAirspaceVolume indeterminatePositiongml:id="unknown"/uuid.ba335f05-5fff-47f4-81e5-de8df2fa8263">
									            </gml:TimePeriod>
      <aixm:upperLimit uom="FL">460</aixm:upperLimit>
									           <       <aixm:upperLimitReference>STD</aixm:featureLifetime>upperLimitReference>
									                  <aixm:type>TMA_P<lowerLimit uom="FL">210</aixm:type>lowerLimit>
									                  <aixm:designator>EAMM1<lowerLimitReference>STD</aixm:designator>lowerLimitReference>
									          <aixm:name>MAGNETTO TMA PART 1</aixm:name>
        <aixm:horizontalProjection>
							 			         <aixm:geometryComponent> 						            <aixm:AirspaceGeometryComponent<aixm:Surface xsi:type="aixm:ElevatedSurfaceType" gml:id="uuid.dbcb9ad5d635cbc1-200883ff-4644490d-becb8451-4d01dbacc27e7aca0ef6a842">
											                      <aixm<gml:theAirspaceVolume>patches>
												                <aixm:AirspaceVolume gml:id="uuid.ba335f05-5fff-47f4-81e5-de8df2fa8263">
        <gml:PolygonPatch>
												                   <aixm:upperLimit uom="FL">460</aixm:upperLimit>        <gml:exterior>
												                  <aixm:upperLimitReference>STD</aixm:upperLimitReference>            <gml:Ring>
												                  <aixm:lowerLimit uom="FL">210</aixm:lowerLimit>
									                         <aixm:lowerLimitReference>STD</aixm:lowerLimitReference><gml:curveMember>
									  			                <aixm:horizontalProjection> 										                    <aixm<gml:SurfaceCurve xsi:type="aixm:ElevatedSurfaceType:CurveType" srsName="urn:ogc:def:crs:EPSG::4326" gml:id="uuid.d635cbc1258c16e0-83ff5f2c-490d4101-8451aabb-7aca0ef6a842536f58c38eb5">
											  	                    <gml:patches>
												                        <gml:PolygonPatch>segments>
												                           <gml:exterior> 												                              <gml:Ring>GeodesicString>
												                                             <gml:curveMember>posList>51.99333333333333 -6.0005
												52.45333333333333 -5.869333333333333
												52.81666666666667 -5.89 53.53333333333333
												-5.981666666666667 53.89333333333333
												-5.937833333333333 53.905 -6.0038333333333334
												53.916666666666664
												-6.099333333333333</gml:posList>
												                                       <gml:Curve xsi:type="aixm:CurveType" srsName="urn:ogc:def:crs:EPSG::4326" gml:id="uuid.258c16e0-5f2c-4101-aabb-536f58c38eb5">
 </gml:GeodesicString>
														                                       <gml</gml:segments>
												                                          <gml:GeodesicString></gml:Curve>
												                                 </gml:curveMember>
												                              <gml:posList>51.99333333333333 -6.0005</gml:Ring>
												52.45333333333333 -5.869333333333333                           </gml:exterior>
												52.81666666666667 -5.89 53.53333333333333                        </gml:PolygonPatch>
												-5.981666666666667 53.89333333333333
												-5.937833333333333 53.905 -6.0038333333333334
												53.916666666666664
												-6.099333333333333</gml:posList>                      </gml:patches>
												                    </aixm:Surface>
									                     </gmlaixm:GeodesicString>horizontalProjection>
												                                       </gmlaixm:segments>AirspaceVolume>
												                        </aixm:theAirspaceVolume>
						            </gmlaixm:Curve>AirspaceGeometryComponent>
												          </aixm:geometryComponent>
				        </aixm:AirspaceTimeSlice>
...
<aixm:AirspaceTimeSlice gml:id="ASE_MAGNETTO2_TMA_P">
					          </gml<gml:curveMember>validTime>
												            <gml:TimePeriod gml:id="uuid.ee0a0e78-614e-419e-aebb-57829fd26699">
							                <<gml:beginPosition>2017-07-01T00:00:00Z</gml:Ring>beginPosition>
												              <gml:endPosition indeterminatePosition="unknown"/>
						            </gml:exterior>TimePeriod>
												                        </gml:PolygonPatch>validTime>
											          <aixm:interpretation>BASELINE</aixm:interpretation>
					           </gml:patches>
					<aixm:sequenceNumber>2</aixm:sequenceNumber>
					                    <<aixm:correctionNumber>0</aixm:Surface>correctionNumber>
									                  </aixm:horizontalProjection><aixm:featureLifetime>
								                </aixm:AirspaceVolume><gml:TimePeriod gml:id="uuid.61902c93-3b1c-4969-90f1-c2422a31f9a2">
							            	  </aixm:theAirspaceVolume><gml:beginPosition>20010-11-01T00:00:00Z</gml:beginPosition>
							             </aixm:AirspaceGeometryComponent>
 <gml:endPosition indeterminatePosition="unknown"/>
						            </aixmgml:geometryComponent>TimePeriod>
					          </aixm:AirspaceTimeSlice>
...
<aixm:AirspaceTimeSlice gml:id="ASE_MAGNETTO2_TMA_P">featureLifetime>
					          <aixm:type>TMA_P</aixm:type>
					          <gml:validTime><aixm:designator>EAMM2</aixm:designator>
						          <aixm:name>MAGNETTO TMA <gml:TimePeriod gml:id="uuid.ee0a0e78-614e-419e-aebb-57829fd26699">
PART 2</aixm:name>
							              <gml:beginPosition>2017-07-01T00:00:00Z</gml:beginPosition><aixm:geometryComponent>
							            <aixm:AirspaceGeometryComponent  <gml:endPosition indeterminatePosition="unknown"/gml:id="uuid.bbeaa329-9239-4e4f-86e3-95400d7ca76d">
							              </gml<aixm:TimePeriod>theAirspaceVolume>
								          </gml:validTime>
	      <aixm:AirspaceVolume gml:id="uuid.fe954643-af04-4334-bd7f-fe969273a9a9">
									                  <aixm:interpretation>BASELINE<upperLimit uom="FL">460</aixm:interpretation>upperLimit>
									          <aixm:sequenceNumber>2</aixm:sequenceNumber> 					          <aixm:correctionNumber>0<upperLimitReference>STD</aixm:correctionNumber>upperLimitReference>
									            <aixm:featureLifetime> 						            <gml:TimePeriod gml:id="uuid.61902c93-3b1c-4969-90f1-c2422a31f9a2">
<aixm:lowerLimit uom="FL">210</aixm:lowerLimit>
									               	   <gml:beginPosition>20010-11-01T00:00:00Z</gml:beginPosition>
<aixm:lowerLimitReference>STD</aixm:lowerLimitReference>
									                  <gml<aixm:endPosition indeterminatePosition="unknown"/>
horizontalProjection>
										            </gml:TimePeriod>
					        <aixm:Surface    </aixm:featureLifetime>
xsi:type="aixm:ElevatedSurfaceType" gml:id="uuid.b2444276-e335-4106-9a4a-fd5eeb75b41c">
											          <aixm:type>TMA_P</aixm:type>
					            <aixm:designator>EAMM2</aixm:designator><gml:patches>
												          <aixm:name>MAGNETTO TMA PART 2</aixm:name> 					          <aixm<gml:geometryComponent>
PolygonPatch>
												            <aixm:AirspaceGeometryComponent gml:id="uuid.bbeaa329-9239-4e4f-86e3-95400d7ca76d"> 							              <aixm<gml:theAirspaceVolume>exterior>
												                        <aixm:AirspaceVolume gml:id="uuid.fe954643-af04-4334-bd7f-fe969273a9a9">
      <gml:Ring>
												                  <aixm:upperLimit uom="FL">460</aixm:upperLimit> 									                  <aixm:upperLimitReference>STD</aixm:upperLimitReference><gml:curveMember>
												                  <aixm:lowerLimit uom="FL">210</aixm:lowerLimit> 									                 <gml:Curve <aixm:lowerLimitReference>STD</aixm:lowerLimitReference>
xsi:type="aixm:CurveType" srsName="urn:ogc:def:crs:EPSG::4326" gml:id="uuid.84fe3774-a519-4b16-9344-cb311b2c92b5">
												                                      <aixm <gml:horizontalProjection>segments>
												                    <aixm:Surface xsi:type="aixm:ElevatedSurfaceType" gml:id="uuid.b2444276-e335-4106-9a4a-fd5eeb75b41c">
											                         <gml:patches>GeodesicString>
												                        <gml:PolygonPatch> 												                           <gml:exterior>posList>53.876666666666665 -5.863333333333333
												53.89333333333333                              <gml:Ring>
-5.937833333333333
												53.53333333333333 -5.981666666666667
												52.81666666666667                                 <gml:curveMember>
-5.89 52.45333333333333
												                  -5.869333333333333 52.516666666666666
												-5.850666666666667 52.583333333333336
												-5.831666666666667 53.3 -5.755 53.7
												-5.786666666666667 53.718333333333334
												-5.8083333333333336 53.876666666666665
												-5.863333333333333</gml:posList>
												                  <gml:Curve xsi:type="aixm:CurveType" srsName="urn:ogc:def:crs:EPSG::4326" gml:id="uuid.84fe3774-a519-4b16-9344-cb311b2c92b5">                        </gml:GeodesicString>
												                                       <gml</gml:segments>
												                                          <gml:GeodesicString></gml:Curve>
												                                             <gml:posList>53.876666666666665 -5.863333333333333
</gml:curveMember>
												53.89333333333333 -5.937833333333333
                              </gml:Ring>
												53.53333333333333 -5.981666666666667                           </gml:exterior>
												52.81666666666667 -5.89 52.45333333333333
	                        </gml:PolygonPatch>
											-5.869333333333333 52.516666666666666
												-5.850666666666667 52.583333333333336                      </gml:patches>
												-5.831666666666667 53.3 -5.755 53.7
												-5.786666666666667 53.718333333333334
												-5.8083333333333336 53.876666666666665
												-5.863333333333333</gml:posList>
		                   </aixm:Surface>
										                    </aixm:horizontalProjection>
								                      </gmlaixm:GeodesicString>AirspaceVolume>
												                                       </gmlaixm:segments>theAirspaceVolume>
												            </aixm:AirspaceGeometryComponent>
					          </aixm:geometryComponent>
				            </gml:Curve>
												                                 </gml:curveMember>
												                              </gml:Ring>
												                           </gml:exterior>
												                        </gml:PolygonPatch>
											                      </gml:patches>
										                    </aixm:Surface>
									                  </aixm:horizontalProjection>
								                </aixm:AirspaceVolume>
							              </aixm:theAirspaceVolume>
						            </aixm:AirspaceGeometryComponent>
					          </aixm:geometryComponent>
				        </aixm:AirspaceTimeSlice>
More coding
aixm:AirspaceTimeSlice>


More coding examples can be found in the AIP Data Set - Specimen (DONLON).

No.DescriptionXPath Expression

ASE-EX-11

ASE-EX-12

ASE-EX-13

ATS airspace, CTA (Airspace aggregation by copying the geometry), Union of two airspace components

//aixm:AirspaceTimeSlice[@gml:id='ASE_DONLON_CTA'] |

/aixm:AirspaceTimeSlice[@gml:id='ASE_DONLON1_CTA_P'] |

/aixm:AirspaceTimeSlice[@gml:id='ASE_DONLON2_CTA_P']

ASE-EX-14

ASE-EX-15

ASE-EX-16
ATS airspace, TMA,  (Airspace aggregation by referencing), Union of two parts (AirspaceVolumeDependency)

//aixm:AirspaceTimeSlice[@gml:id='ASE_MAGNETTO_TMA'] |

//aixm:AirspaceTimeSlice[@gml:id='ASE_MAGNETTO1_TMA_P'] |

//aixm:AirspaceTimeSlice[@gml:id='ASE_MAGNETTO2_TMA_P']

Using airspace of type 'PART'

There are situations when an airspace is made of several parts and each part is described as an airspace volume with a defined horizontal border and specific vertical limits.

Such airspace parts are modelled using the Airspace.type 'PART'. For airspaces used for ATS provision, it is possible to be more specific by using dedicated types, such as: TMA Part ('TMA-P'), FIR Part ('FIR-P'), CTR Part ('CTR-P'), etc.

Note
titleNote
An airspace of type 'PART' has only a geometrical meaning.

Thus, airspaces of type 'PART' are solely used as an auxiliary device to construct an appropriate airspace geometry of a "real" existing airspace (e.g. a TMA or D-Area). The figure below illustrates how such constructions are used:

Image Added

Steps:


Description
1Define the central circle as Airspace.type 'PART' with a horizontalProjection.
2Define the polygon airspace to be added, as Airspace.type 'PART' with a horizontalProjection.
3Define the polygon airspace to be subtracted as Airspace.type 'PART' with a horizontalProjection.
4Create the derived geometry by 1 + 2 - 3 (using the AirspaceVolumeDependency).
5By defining vertical limits, the 3-dimensional shape of the airspace is finalized.

Using airspace of type 'XXX-P'

On the other side, an airspace of type 'TMA/FIR/CTA/etc.-P' (where P stands for PART) is not necessarily used to define the geometry of a compound airspace, but rather to indicate some specific characteristics of a subsection of a larger airspace. For example, a specific ATS Unit provides services in that airspace part, or different vertical limits are applied. The following figure illustrates such an example:

Image Added

Typically, the name of such airspace parts includes a number (1, 2, 3, etc.), a letter (a, b, c, etc.) or a geographical direction (East, West, North, etc.), for example Ljubliana TMA 1 and Ljubliana TMA 2.

Coding Examples

Coding examples can be found in the AIP Data Set - Specimen (DONLON).

No.DescriptionXPath Expression

ASE-EX-11

ASE-EX-12

ASE-EX-13

ATS airspace, CTA (Airspace aggregation by copying the geometry), Union of two airspace components

//aixm:AirspaceTimeSlice[@gml:id='ASE_DONLON_CTA'] |

/aixm:AirspaceTimeSlice[@gml:id='ASE_DONLON1_CTA_P'] |

/aixm:AirspaceTimeSlice[@gml:id='ASE_DONLON2_CTA_P']

ASE-EX-14

ASE-EX-15

ASE-EX-16
ATS airspace, TMA,  (Airspace aggregation by referencing), Union of two parts
(AirspaceVolumeDependency)

//aixm:AirspaceTimeSlice[@gml:id='ASE_MAGNETTO_TMA'] |

//aixm:AirspaceTimeSlice[@gml:id='ASE_MAGNETTO1_TMA_P'] |

//aixm:AirspaceTimeSlice[@gml:id='ASE_MAGNETTO2_TMA_P']