Page tree
Skip to end of metadata
Go to start of metadata

ID:

AIXM-432

target version:

AIXM 5.2

version:

1.0

last updated:

24 OCT 2019

status:

APPROVED


Description

Modify the pattern imposed on ValDistanceVerticalBaseType to allow more than 4 decimals.

Rationale for change

See https://aixmccb.atlassian.net/browse/AIXM-375

Obstacle elevations are sometimes published with decimals - especially in electronic sources. Inherited from AIXM 4.5, the pattern imposed on ValDistanceVerticalBaseType does not allow more than 4 decimals: “((+|-){0,1}[0-9]{1,8}(\.[0-9]{1,4}){0,1})|UNL|GND|FLOOR|CEILING”

Although from an operational point of view it does not make much sense to provide elevation values with millimeter resolution, it is better to not impose resolution limitations in the AIXM schema. The other 'distance' data types do not have such limitations.

Removing this limitation would allow coding the data in AIXM as received from the originator/surveyor, who usually provides between 5-6 decimals. Auditing the data would be easier in terms of traceability.

Impact assessment

There is no impact on existing implementations as the current AIXM 5.1.(.1) data remains fully valid against AIXM 5.2. 

When receiving data from AIXM 5.2 implementations, current AIXM 5.1(.1) systems will have to be able to map back the “vertical distance” elements that have values with more than 4 decimals, as described in the mapping rules further in this document. The mapping is straightforward.

Change Proposal details

The regular expression for ValDistanceVerticalBaseType is modified to allow unlimited decimals.

In the UML model:

  • Modify the ValDistanceVerticalBaseType pattern as follows:
    • ((\+|\-){0,1}[0-9]{1,8}(\.[0-9]{1,}){0,1})|UNL|GND|FLOOR|CEILING

Mapping AIXM 5.1.1 to AIXM 5.2 (forward)

Not applicable.

Mapping AIXM 5.2 to AIXM 5.1.1 (backward)

 [MAPC-06] The following algorithm shall be applied:

  • For each of the following elements values with more than 4 decimals shall be rounded to the nearest (half up) to 4 positions behind the decimal point:
    • AerialRefuellingAnchor/refuellingBaseLevel ,
    • AirportHeliport/fieldElevation
    • AirportHeliport/ fieldElevationAccuracy
    • AirportHeliport/transitionAltitude
    • AirspaceLayer/upperLimit ,
    • AirspaceLayer/lowerLimit ,
    • AirspaceVolume/upperLimit
    • AirspaceVolume/maximumLimit
    • AirspaceVolume/lowerLimit
    • AirspaceVolume/minimumLimit
    • AltitudeAdjustment/altitudeAdjustment ,
    • AngleIndication/minimumReceptionAltitude
    • ApproachAltitudeTable/altitude, 
    • ApproachDistanceTable/valueHAT , 
    • ArrivalLeg/upperLimitAltitude
    • ArrivalLeg/lowerLimitAltitude
    • ArrivalLeg/altitudeOverrideATC ,
    • ArrivalFeederLeg/upperLimitAltitude
    • ArrivalFeederLeg/lowerLimitAltitude
    • ArrivalFeederLeg/altitudeOverrideATC ,
    • CheckpointINS/upperLimit  , 
    • CheckpointINS/lowerLimit  , 
    • CheckpointVOR/upperLimit  , 
    • CheckpointVOR/lowerLimit  ,
    • CircleSector/upperLimit
    • CircleSector/lowerLimit ,
    • DepartureArrivalCondition/minimumEnrouteAltitude ,
    • DepartureArrivalCondition/minimumCrossingAtEnd ,
    • DepartureArrivalCondition/maximumCrossingAtEnd ,
    • DepartureLeg/minimumObstacleClearanceAltitude
    • DepartureLeg/upperLimitAltitude
    • DepartureLeg/lowerLimitAltitude
    • DepartureLeg/altitudeOverrideATC
    • DistanceIndication/minimumReceptionAltitude ,
    • ElevatedCurve/elevation ,
    • ElevatedPoint/elevation ,
    • ElevatedSurface/elevation
    • EquipmentUnavailableAdjustmentColumn/visibilityAdjustment
    • FlightRestrictionLevel/upperLevel
    • FlightRestrictionLevel/lowerLevel
    • FinalLeg/upperLimitAltitude
    • FinalLeg/lowerLimitAltitude
    • FinalLeg/altitudeOverrideATC ,
    • Glidepath/rdh
    • Glidepath/rdhAccuracy
    • HoldingAssessment/upperLimit
    • HoldingAssessment/lowerLimit
    • HoldingPattern/upperLimit
    • HoldingPattern/lowerLimit
    • HoldingUse/instructedAltitude
    • InitalLeg/upperLimitAltitude
    • InitalLeg/lowerLimitAltitude
    • InitalLeg/altitudeOverrideATC 
    • IntermediateLeg/upperLimitAltitude
    • IntermediateLeg/lowerLimitAltitude
    • IntermediateLeg/altitudeOverrideATC 
    • Minima/altitude
    • Minima/height
    • Minima/militaryHeight
    • Minima/radioHeight
    • MissedApproachGroup/alternateClimbAltitude
    • MissedApproachLeg/heightMAPT
    • MissedApproachLeg/upperLimitAltitude
    • MissedApproachLeg/lowerLimitAltitude
    • MissedApproachLeg/altitudeOverrideATC
    • NavigationArea/minimumCeiling
    • NavigationSystemCheckpoint/upperLimit  , 
    • NavigationSystemCheckpoint/lowerLimit  , 
    • ObstacleAssessmentArea/assessedAltitude ,
    • ObstacleAssessmentArea/slopeLowerAltitude ,
    • Obstruction/minimumAltitude
    • RouteSegment/upperLimit
    • RouteSegment/lowerLimit
    • RouteSegment/minimumObstacleClearanceAltitude
    • RouteSegment/minimumEnrouteAltitude
    • RouteSegment/minimumCrossingAtEnd
    • RouteSegment/maximumCrossingAtEnd
    • RunwayDirection/elevationTDZ
    • SectorDesign/terminationAltitude
    • SegmentLeg/upperLimitAltitude,  
    • SegmentLeg/lowerLimitAltitude,  
    • SegmentLeg/altitudeOverrideATC  
    • StandardLevel/verticalDistance
    • SurveillanceRadar/verticalCoverageAltitude
    • UnplannedHolding/authorizedAltitude
    • VisualGlideSlopeIndicator/minimumEyeHeightOverThreshold


  • Add an annotation.Note associated to the affected feature
    • purpose=“OTHER:BACKWARD_MAPPING”;
    • propertyName = affected property
    • translatedNote.LinguisticNote.note= “Value has been rounded. Original value is:  [original value].”


Mapping example

Maping example to be added...


(Note: for mapping test data see: https://github.com/aixm/mapping_52_511/tree/master/AIXM-xxx

AIXM 5.2AIXM 5.1(.1)
  ...





...



  • No labels