ID: | AIXM-480 |
target version: | AIXM 5.2 |
version: | 1.0 |
last updated: | 11 OCT 2021 |
status: | APPROVED |
Description
The code list for CodeAltitudeUseType used by the “altitude interpretation” attributes of the SegmentLeg, AirspaceLayer, NavigationSystemCheckpoint and TerminalArrivalAreaSector is modified (naming and definitions), so it is in line with ICAO PANS-OPS Volume I and Volume II (Doc 8168), Sixth Edition, incl. Amdt 9.
Definitions for the following attributes of SegmentLeg class are modified so that they are written in definition style.
- upperLimitAltitude, upperLimitReference,
- lowerLimitAltitude, lowerLimitReference,
- altitudeOverrideATC, altitudeOverrideReference.
Rationale for change
See https://aixmccb.atlassian.net/browse/AIXM-231
The SegmentLeg class has seven attributes that can be used to encode vertical limits:
- upperLimitAltitude, upperLimitReference
- lowerLimitAltitude, lowerLimitReference
- altitudeInterpretation
- altitudeOverrideATC, altitudeOverrideReference
The definitions of some of these attributes are not clear and/or not written in definition style. Some were copied from AIXM 4.5 and refer to attributes that do not have the same name in AIXM 5.1(.1).
A procedure leg may have both:
- procedure altitude/heights ("A specified altitude/height flown operationally at or above the minimum altitude/height and established to accommodate a stabilized descent at a prescribed descent gradient/angle in the intermediate/final approach segment.") and
- minimum obstacle clearance altitudes ("The minimum altitude for a defined segment that provides the required obstacle clearance.")
For the final leg, the MOCA becomes OCA and it is encoded using the Minima class. For departure legs, an additional MOCA attribute is defined by the model, although it might also be relevant for other leg types.
The altitudeInterpretation list of values is also confusing. For example, the coded values ABOVE_LOWER is defined as "at or above lower", etc. This issue affects all the other attributes in the model that use the same list of values - Airspacelayer.altitudeInterpretation, NavigationSystemCheckpoint.altitudeInterpretation and TerminalArrivalAreaSector.altitudeDescription.
The list of values of the altitudeInterpretation attribute should match the possibilities listed in ICAO PANS-OPS Volume II, Attachment B, 1.2 (see below).
Impact assessment
[FWD_MAP_1:1] Data mapping is possible and no data loss occurs when data is exchanged from a system (A) that uses AIXM 5.1.1 for output towards a system (B) that uses AIXM 5.2 for input.
[BWD_MAP_1:1] Data mapping is possible and no data loss occurs when data is exchanged from a system (B) that uses AIXM 5.2 for output towards a system (A) that uses AIXM 5.1.1 for input.
Change Proposal details
In the UML model:
- Change name and definitions for the following attributes of the SegmentLeg class:
Attribute name | Old definition (AIXM 5.1(.1)) | New definition (AIXM 5.2) |
---|---|---|
upperLimit |
| The upper limit of a procedure altitude/height as defined by ICAO PANS-OPS: “A published altitude/height used in defining the vertical profile of a flight procedure, at or above the minimum obstacle clearance altitude/height where established.” Note: May also be a flight level. |
upperLimitReference |
| A code indicating the reference for the upper limit of a procedure altitude/height. |
lowerLimit |
| The lower limit of a procedure altitude/height as defined by ICAO PANS-OPS: “A published altitude/height used in defining the vertical profile of a flight procedure, at or above the minimum obstacle clearance altitude/height where established.” Note: May also be a flight level. |
lowerLimitReference |
| A code indicating the reference for the lower limit of a procedure altitude/height. |
|
| A code indicating how the vertical limit attributes of a procedure leg should be interpreted. |
altitudeOverrideATC |
| Alternate lowerLimit (depending on the value of the verticalLimitsInterpretation) which has to be authorised by Air Traffic Control |
altitudeOverrideReference |
| A code indicating the reference for the alternate altitude of a procedure altitude/height |
- Change the CodeList CodeAltitudeUseBaseType for the for the altitudeInterpretation attribute of the SegmentLeg class:
Old value name (AIXM 5.1(.1)) | Old definition | New value name (AIXM 5.2) | New definition |
---|---|---|---|
|
| AT_OR_ABOVE | At or above the specified lower limit. |
|
| AT_OR_BELOW | At or below the specified upper limit. |
|
| AT | At the specified lower limit. |
BETWEEN |
| BETWEEN | Between the specified lower and upper limit. |
RECOMMENDED |
| RECOMMENDED | The specified lower limit is recommended. |
|
| EXPECTED | The specified lower limit can be expected but may be modified by ATC. |
|
| BY_ATC | The procedure altitude/height will be assigned at the time of operations by ATC |
OTHER | Other | OTHER | Other |
The following UML class diagram shows the modified attributes and list of values.
Mapping AIXM 5.1.1 to AIXM 5.2 (forward)
[MAPC-00] The following algorithm shall be applied:
For each ArrivalLeg / DepartureLeg / ArrivalFeederLeg / InitialLeg / IntermediateLeg / FinalLeg / MissedApproachLeg / AirspaceLayer / CheckpointINS / CheckpointVOR that has one of the following altitudeInterpretation values and for each TerminalArrivalAreaSector that has one of the following altitudeDescription values:
- Replace “ABOVE_LOWER” with “AT_OR_ABOVE”
- Replace “BELOW_UPPER” with “AT_OR_BELOW”
- Replace “AT_LOWER” with “AT”
- Replace “EXPECT_LOWER” with “EXPECTED”
- Replace “AS_ASSIGNED” with “BY_ATC”
For each ArrivalLeg / DepartureLeg / ArrivalFeederLeg / InitialLeg / IntermediateLeg / FinalLeg / MissedApproachLeg that has one or more of the following child elements:
- Rename upperLimitAltitude into upperLimit
- Rename lowerLimitAltitude into lowerLimit
- Rename altitudeInterpretation into verticalLimitsInterpretation
Mapping AIXM 5.2 to AIXM 5.1.1 (backward)
[MAPC-00] The following algorithm shall be applied:
For each ArrivalLeg / DepartureLeg / ArrivalFeederLeg / InitialLeg / IntermediateLeg / FinalLeg / MissedApproachLeg that has one of the following verticalLimitsInterpretation values and for each AirspaceLayer / CheckpointINS / CheckpointVOR that has one of the following altitudeInterpretation values and for each TerminalArrivalAreaSector that has one of the following altitudeDescription values:
- Replace “AT_OR_ABOVE” with “ABOVE_LOWER”
- Replace “AT_OR_BELOW” with “BELOW_UPPER”
- Replace “AT” with “AT_LOWER”
- Replace “EXPECTED” with “EXPECT_LOWER”
- Replace “BY_ATC” with “AS_ASSIGNED”
For each ArrivalLeg / DepartureLeg / ArrivalFeederLeg / InitialLeg / IntermediateLeg / FinalLeg / MissedApproachLeg that has one or more of the following child elements:
- Rename upperLimit into upperLimitAltitude
- Rename lowerLimi into lowerLimittAltitude
- Rename verticalLimitsInterpretation into altitudeInterpretation
Mapping example
(Note: for mapping test data see: https://github.com/aixm/mapping_52_511/tree/master/AIXM-xxx)
AIXM 5.2 | AIXM 5.1(.1) |
---|---|
... | ... |