[AIXM-588] Add height to VerticalStructurePart

[AIXM-588] Add height to VerticalStructurePart

ID:

AIXM-588

target version:

AIXM 5.2

version:

1.0

last updated:

10 JAN 2023

status:

APPROVED


Description

A new height attribute is added to VerticalStructurePart.

Rationale for change

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

For VerticalStructure (obstacle), it is possible to code:

  • the overall elevation at the top of each part
  • the 'vertical extent' of each part

However, the ICAO Annex 15 and the industry standards (RTCA/EUROCAE DO-276 /ED-98) also require the (maximum) height above ground.

The vertical extent is the same as the height for obstacle parts sitting on the ground. However, for parts that are on top of other parts (such as an antenna on top of a building) and for cables/bridges/etc. that do not sit on the ground, the height above ground is different from the vertical extent.

In addition, for cable cars and power lines, it is also required in some States to publish the maximum or minimum height above ground of a section of the cable. This information is used for flying safely in the area of the cable.

Impact assessment

[FWD_1:1] No data mapping is necessary 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_LOSS] Data mapping is possible, but some data would be lost (or converted into Notes) 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, in the class VerticalStructurePart:

  • Add a height attribute with definition “The maximum distance from the top of the vertical structure to the ground underneath (at the same position)”, data type ValDistanceType;

The following UML class diagram highlights the new/modified properties:

Mapping AIXM 5.1.1 to AIXM 5.2 (forward)

  • Not applicable

Mapping AIXM 5.2 to AIXM 5.1.1 (backward)

[MAPC-02] For each VerticalStructurePart that has specified height value:

From the three backward mapping options applicable in this case, the first two (discard the value or use an extension) are straightforward and do not need any further details. The 3rd option (backward mapping into a Note) is detailed in order to provide a complete description of this case and its conversion option. The following mapping into Note algorithm is proposed:

  • Remove the height element
  • Add an annotation.Note associated with the VerticalStructurePart class having:
  • purpose=“OTHER:BACKWARD_MAPPING”
  • LinguisticNote.note=”height: <value of height> <uom>”.

Mapping example

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

AIXM InputAIXM Output
Backward AddHeightVertStructPart 5.2 input
message:AIXMBasicMessage
  message:hasMember
    VerticalStructure
      gml:identifier = 61f799ec-8967-4b07-a346-cdcba581e2fg
      timeSlice
        VerticalStructureTimeSlice
          gml:validTime
            gml:TimePeriod
              gml:beginPosition = 2021-02-25
              gml:endPosition = 2021-04-22
          interpretation = PERMDELTA
          sequenceNumber = 1
          featureLifetime
            gml:TimePeriod
              gml:beginPosition = 2009-01-01T00:00:00Z
              gml:endPosition = 
          type = RECREATIONAL_STRUCTURE
          part
            VerticalStructurePart
              gml:identifier = 61f799ec-8967-4b07-a346-cdcba581e2fh
              designator = GML-CIRCLINGAREA-TS-OAA-OBSTRUCTION-PART-1
              height = 300 FT
          designator = RECREATIONAL_STRUCTURE_1
          placeName = CIRCLINGAREA_RECREATIONAL_STRUCTURE
  message:hasMember
    CirclingArea
      gml:identifier = 61f799ec-8967-4b07-a346-cdcba581e2fe
      timeSlice
        CirclingAreaTimeSlice
          gml:validTime
            gml:TimePeriod
              gml:beginPosition = 2021-02-25
              gml:endPosition = 2021-04-22
          interpretation = PERMDELTA
          sequenceNumber = 1
          featureLifetime
            gml:TimePeriod
              gml:beginPosition = 2009-01-01T00:00:00Z
              gml:endPosition = 
          condition
            ApproachCondition
              finalApproachPath = CIRCLING
          designSurface
            ObstacleAssessmentSurface
              significantObstacle
                Obstruction
                  requiredClearance = 300 FT
                  minimumAltitude = 1564 FT
                  controlling = YES
                  theVerticalStructure =  uuid.61f799ec-8967-4b07-a346-cdcba581e2fg





Backward AddHeightVertStructPart 5.1.1 output
message:AIXMBasicMessage
  message:hasMember
    VerticalStructure
      gml:identifier = 61f799ec-8967-4b07-a346-cdcba581e2fg
      timeSlice
        VerticalStructureTimeSlice
          gml:validTime
            gml:TimePeriod
              gml:beginPosition = 2021-02-25
              gml:endPosition = 2021-04-22
          interpretation = BASELINE
          sequenceNumber = 1
          featureLifetime
            gml:TimePeriod
              gml:beginPosition = 2009-01-01T00:00:00Z
              gml:endPosition = 
          type = OTHER:RECREATIONAL_STRUCTURE
          part
            VerticalStructurePart
              annotation
                Note
                  purpose = OTHER:BACKWARD_MAPPING
                  translatedNote
                    LinguisticNote
                      note = identifier:61f799ec-8967-4b07-a346-cdcba581e2fh:codeSpace=urn:uuid;designator:GML-CIRCLINGAREA-TS-OAA-OBSTRUCTION-PART-1;height:300 FT
          annotation
            Note
              purpose = OTHER:BACKWARD_MAPPING
              translatedNote
                LinguisticNote
                  note = designator:RECREATIONAL_STRUCTURE_1;placeName:CIRCLINGAREA_RECREATIONAL_STRUCTURE
  message:hasMember
    CirclingArea
      gml:identifier = 61f799ec-8967-4b07-a346-cdcba581e2fe
      timeSlice
        CirclingAreaTimeSlice
          gml:validTime
            gml:TimePeriod
              gml:beginPosition = 2021-02-25
              gml:endPosition = 2021-04-22
          interpretation = BASELINE
          sequenceNumber = 1
          featureLifetime
            gml:TimePeriod
              gml:beginPosition = 2009-01-01T00:00:00Z
              gml:endPosition = 
          condition
            ApproachCondition
              finalApproachPath = CIRCLING
          designSurface
            ObstacleAssessmentArea
              significantObstacle
                Obstruction
                  requiredClearance = 300 FT
                  minimumAltitude = 1564 FT
                  controlling = YES
                  theVerticalStructure =  uuid.61f799ec-8967-4b07-a346-cdcba581e2fg