ID: | AIXM-431 |
target version: | AIXM 5.2 |
version: | 1.0 |
last updated: | 04 JUL 2023 |
status: | APPROVED |
|
---|
Description
The existing AngleIndication and DistanceIndication features become <<object>> classes and are renamed Angle and Distance respectively. As a consequence, relationships with PointReference, SegmentPoint, DesignatedPoint and SignificantPoint are modified/added/deleted. Additional vertical limitation attributes are added in the PointReference class.
Rationale for change
See https://aixmccb.atlassian.net/browse/AIXM-181
As explained in the “AIXM UML to XML Schema Mapping”, AIXM <<feature>> classes are fundamental in AIXM. They can correspond to concrete and tangible real-world objects or to abstract and conceptual items. AIXM Features have properties that can change in time. These properties are encapsulated into classes with stereotype <<object>>, which do not exist independently (outside of a feature).
In the current model, AngleIndication and DistanceIndication are declared as <<feature>>. The following UML class diagrams show their attributes and associations (except association with Note). As the two classes have similar associations, the AngleIndication and DistanceIndication are shown “overlapped”.
Considering their current relationships with PointReference and the SegmentLeg specialisations, the Angle/DistanceIndication exist only when they are used to locate the position of a start/end segment point or as trajectory limitations for a procedure leg. In these cases, they are de-facto “objects” (complex properties of the related features). The only exception is the association “locates DesignatedPoint”, which could theoretically allow to provide fix information for a point, independent from its use as segment point. However, this also has a significant limitation, as the AngleIndication and DistanceIndication are separated features, which cannot be combined to provide a “significant point fix” information. Further more, the circular association Angle/DistanceIndication → (fix) DesignatedPoint ← (locates) PointReference → (isBasedOn) Angle/DistanceIndication could be easily misused for illogical combinations of angle/distance referring to different points.
Many AIXM 5.1 users complain that creating a feature for each AngleIndication and DistanceIndication is an unnecessary complication because they are typically used for a single PointReference or SegmentLeg. In addition, their properties do not give any convenient set of identifying properties, which makes it difficult to select the correct one to use in a given context.
Therefore, it is proposed that AngleIndication and DistanceIndication are replaced with equivalent <<object>> classes, while the current model capabilities are preserved.
Also, the PointReference was missing the possibility to specify a minimum and a maximum usage level, which result from the combination of angle/distance indication and the level at which the navaid signal is available or authorised. These attributes are proposed to be added.
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_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 AIXM UML model,
- Rename the class AngleIndication into Angle and:
- change its stereotype from <<feature>> into <<object>>;
- change the definition of the following attributes:
- angle = “The angle between the bearing and the North reference”;
- angleType = “A code indicating the direction of the zero bearing”
- trueAngle = “The angle between the bearing and the True North reference”;
- delete the association Angle locates (fix) DesignatedPoint
- Rename the class DistanceIndication into Distance and:
- change its stereotype from <<feature>> into <<object>>;
- delete the association Distance locates (fix) DesignatedPoint
- Modify PointReference, as follows:
- Attributes:
- Add minimumReceptionLimit, type ValDistanceVerticalType, definition = ‘The lowest vertical distance required to receive adequate signals from navigational aids used to locate a significant point.”
- Add minimumReceptionLimitReference, type CodeVerticalReferenceType definition = “A code which defines the reference surface for the minimum reception limit.”
- Add maximumAuthorisedLimit, type ValDistanceVerticalType, definition = “The highest vertical distance where a point reference may be used to locate a significant point. ”
- Add maximumAuthorisedLimitReference, type CodeVerticalReferenceType, definition = “A code which defines the reference surface for the maximum authorised limit.”
- Associations
- Delete association PointReference locates DesignatedPoint
- modify the association PointReference isBasedOnAngle Angle as follows:
- change its aggregation mode into “composite” on the PointReference side;
- change the role name on the Angle side into angleReference
- modify the association PointReference isBasedOnDistance Distance as follows:
- change its aggregation mode into “composite” on the PointReference side;
- change the role name on the Distance side into distanceReference
- Attributes:
- In the DesignatedPoint class
- add composition relationship DesignatedPoint isLocatedBy PointReference with
- PointReference role "fix" (definition = "The point reference occurs at (locates) DesignatedPoint."), multiplicity 0..*
- add composition relationship DesignatedPoint isLocatedBy PointReference with
- In the SegmentLeg class:
- modify the association SegmentLeg isLimitedBy Angle as follows:
- change its aggregation mode into “composite” on the SegmentLeg side;
- change the role name on the Angle side into limitingAngle;
- modify the association SegmentLeg isLimitedBy DistanceIndication as follows:
- change its aggregation mode into “composite” on the SegmentLeg side;
- change the role name on the Distance side into limitingDistance;
- modify the association SegmentLeg isLimitedBy Angle as follows:
The following UML class diagram shows the new, modified and deleted model elements for the AngleIndication part:
The following UML class diagram shows the new, modified and deleted model elements for the DistanceIndication part:
Mapping AIXM 5.1.1 to AIXM 5.2 (forward)
The following algorithm shall be applied:
- For each AngleIndication:
- if it has a child element DesignatedPoint, then:
- [MAPC-07] Find the corresponding (referencing) Designated Point and:
- if necessary, apply the “timeSlice alignment” procedure described for this mapping case;
- add PointReference.angleReference.AngleUse.theAngle.Angle descendant elements with the Angle element having:
- gml:identifier value concatenated as value of the DesignatedPoint.gml:identifier and AngleIndication.gml:identifier value
- note: this concatenation will prevent the risk of colliding gml:identifiers for different AngleIndication elements, in case of a circular mapping (AIXM 5.1 -> 5.2 -> 5.1);
- angle, angleType, indicationDirection, trueAngle, cardinalDirection, minimumReceptionAltitude elements and pointChoice_* value copied from the AngleIndication element
- gml:identifier value concatenated as value of the DesignatedPoint.gml:identifier and AngleIndication.gml:identifier value
- if it is referenced by a DepartureLeg, ArrivalLeg, FinalLeg, InitialLeg, IntermediateLeg, MissedApproachLeg, or ArrivalFeederLeg through a child angle element:
- [MAPC-07] Find the corresponding (referencing) DepartureLeg, ArrivalLeg, FinalLeg, InitialLeg, IntermediateLeg, MissedApproachLeg, or ArrivalFeederLeg element and:
- if necessary, apply the “timeSlice alignment” procedure described for this mapping case;
- rename the angle into limitingAngle and:
- remove its xlink:href attribute
- add an Angle child element having:
- gml:identifier value concatenated as value of the *Leg.gml:identifier and AngleIndication.gml:identifier value
- note: this concatenation will prevent the risk of colliding gml:identifiers for different AngleIndication elements, in case of a circular mapping (AIXM 5.1 -> 5.2 -> 5.1);
- angle, angleType, indicationDirection, trueAngle, cardinalDirection, minimumReceptionAltitude elements and pointChoice_* value copied from the AngleIndication element
- gml:identifier value concatenated as value of the *Leg.gml:identifier and AngleIndication.gml:identifier value
- if it is referenced by PointReference
- which may be a descendant of one of the following <<feature>> elements:
- DepartureLeg, ArrivalLeg, FinalLeg, InitialLeg, IntermediateLeg, MissedApproachLeg, or ArrivalFeederLeg
- .endPoint.TerminalSegmentPoint.facilityMakeup.PointReference.facilityAngle
- .startPoint.TerminalSegmentPoint.facilityMakeup.PointReference.facilityAngle
- .arcCentre.TerminalSegmentPoint.facilityMakeup.PointReference.facilityAngle
- FinalLeg
- .visualDescentPoint.TerminalSegmentPoint.facilityMakeup.PointReference.facilityAngle
- RouteSegment
- .start.EnRouteSegmentPoint.facilityMakeup.PointReference.facilityAngle
- .end.EnRouteSegmentPoint.facilityMakeup.PointReference.facilityAngle
- HoldingPattern
- .outboundLegSpan_endPoint.EnRouteSegmentPoint.facilityMakeup.PointReference.facilityAngle
- .outboundLegSpan_endPointTerminalSegmentPoint.facilityMakeup.PointReference.facilityAngle
- .outboundLegSpan_endPoint.AerialSegmentPoint.facilityMakeup.PointReference.facilityAngle
- .holdingPoint. EnRouteSegmentPoint.facilityMakeup.PointReference.facilityAngle
- .holdingPoint.TerminalSegmentPoint.facilityMakeup.PointReference.facilityAngle
- .holdingPoint. AerialSegmentPoint.facilityMakeup.PointReference.facilityAngle
- .holdingPoint.EnRouteSegmentPoint.facilityMakeup.PointReference.facilityAngle
- .holdingPoint.TerminalSegmentPoint.facilityMakeup.PointReference.facilityAngle
- .holdingPoint.AerialRefuellingPoint.facilityMakeup.PointReference.facilityAngle
- .holdingPoint.EnRouteSegmentPoint.facilityMakeup.PointReference.facilityAngle
- .holdingPoint.TerminalSegmentPoint.facilityMakeup.PointReference.facilityAngle
- .holdingPoint.AerialRefuellingPoint.facilityMakeup.PointReference.facilityAngle
- .anchor.AerialRefuellingAnchor.point.AerialRefuellingPoint.facilityMakeup.PointReference.facilityAngle
- .track.AerialRefuellingTrack.point.AerialRefuellingPoint.facilityMakeup.PointReference.facilityAngle
- [MAPC-07] For each <feature> element and the corresponding branch identified above:
- if necessary, apply the “timeSlice alignment” procedure described for this mapping case;
- rename the facilityAngle into angleReference and modify its theAngle child element as follows:
- remove the xlink:href attribute
- add an Angle child element having:
- gml:identifier value concatenated as value of the <feature>*.gml:identifier and AngleIndication.gml:identifier value
- note: this concatenation will prevent the risk of colliding gml:identifiers for different AngleIndication elements, in case of a circular mapping (AIXM 5.1 -> 5.2 -> 5.1);;
- angle, angleType, indicationDirection, trueAngle, cardinalDirection, minimumReceptionAltitude elements and pointChoice_* value copied from the AngleIndication element
- gml:identifier value concatenated as value of the <feature>*.gml:identifier and AngleIndication.gml:identifier value
- remove the AngleIndication element.
- For each DistanceIndication:
- if it has a child element DesignatedPoint, then:
- [MAPC-07] Find the corresponding (referencing) Designated Point and:
- if necessary, apply the “timeSlice alignment” procedure described for this mapping case;
- add PointReference.distanceReference.Distance descendant elements with the Distance element having:
- gml:identifier value concatenated as value of the DesignatedPoint.gml:identifier and DistanceIndication.gml:identifier value
- note: this concatenation will prevent the risk of colliding gml:identifiers for different DistanceIndication elements, in case of a circular mapping (AIXM 5.1 -> 5.2 -> 5.1);
- distance, minimumReceptionAltitude, type elements and pointChoice_* value copied from the DistanceIndication element
- gml:identifier value concatenated as value of the DesignatedPoint.gml:identifier and DistanceIndication.gml:identifier value
- if it is referenced by a DepartureLeg, ArrivalLeg, FinalLeg, InitialLeg, IntermediateLeg, MissedApproachLeg, or ArrivalFeederLeg through a child distance element:
- [MAPC-07] Find the corresponding (referencing) DepartureLeg, ArrivalLeg, FinalLeg, InitialLeg, IntermediateLeg, MissedApproachLeg, or ArrivalFeederLeg element and:
- if necessary, apply the “timeSlice alignment” procedure described for this mapping case;
- rename the distance into limitingDistance and:
- remove its xlink:href attribute
- add a Distance child element having:
- gml:identifier value concatenated as value of the *Leg.gml:identifier and DistanceIndication.gml:identifier value
- note: this concatenation will prevent the risk of colliding gml:identifiers for different DistanceIndication elements, in case of a circular mapping (AIXM 5.1 -> 5.2 -> 5.1);
- distance, minimumReceptionAltitude, type elements and pointChoice_* value copied from the DistanceIndication element
- gml:identifier value concatenated as value of the *Leg.gml:identifier and DistanceIndication.gml:identifier value
- if it is referenced by PointReference
- which may be a descendant of one of the following <<feature>> elements:
- DepartureLeg, ArrivalLeg, FinalLeg, InitialLeg, IntermediateLeg, MissedApproachLeg, and ArrivalFeederLeg
- .endPoint.TerminalSegmentPoint.facilityMakeup.PointReference.facilityDistance
- .startPoint.TerminalSegmentPoint.facilityMakeup.PointReference.facilityDistance
- .arcCentre.TerminalSegmentPoint.facilityMakeup.PointReference.facilityDistance
- FinalLeg
- .visualDescentPoint.TerminalSegmentPoint.facilityMakeup.PointReference.facilityDistance
- RouteSegment
- .start.EnRouteSegmentPoint.facilityMakeup.PointReference.facilityDistance
- .end.EnRouteSegmentPoint.facilityMakeup.PointReference.facilityDistance
- HoldingPattern
- .EnRouteSegmentPoint.facilityMakeup.PointReference.facilityDistance
- .outboundLegSpan_endPointTerminalSegmentPoint.facilityMakeup.PointReference facilityDistance
- .outboundLegSpan_endPoint.AerialSegmentPoint.facilityMakeup.PointReference.facilityDistance
- .holdingPoint. EnRouteSegmentPoint.facilityMakeup.PointReference.facilityDistance
- .holdingPoint.TerminalSegmentPoint.facilityMakeup.PointReference.facilityDistance
- .holdingPoint. AerialSegmentPoint.facilityMakeup.PointReference.facilityDistance
- HoldingAssessment
- .holdingPoint.EnRouteSegmentPoint.facilityMakeup.PointReference.facilityDistance
- .holdingPoint.TerminalSegmentPoint.facilityMakeup.PointReference.facilityDistance
- .holdingPoint.AerialRefuellingPoint.facilityMakeup.PointReference.facilityDistance
- UnplannedHolding
- .holdingPoint.EnRouteSegmentPoint.facilityMakeup.PointReference.facilityDistance
- .holdingPoint.TerminalSegmentPoint.facilityMakeup.PointReference.facilityDistance
- .holdingPoint.AerialRefuellingPoint.facilityMakeup.PointReference.facilityDistance
- AerialRefuelling
- .anchor.AerialRefuellingAnchor.point.AerialRefuellingPoint.facilityMakeup.PointReference. facilityDistance
- .track.AerialRefuellingTrack.point.AerialRefuellingPoint.facilityMakeup.PointReference.facilityDistance
- [MAPC-07] For each <feature> element and the corresponding branch identified above:
- if necessary, apply the “timeSlice alignment” procedure described for this mapping case;
- rename the facilityDistance into distanceReference and modify it as follows:
- remove the xlink:href attribute
- add a Distance child element having:
- gml:identifier value concatenated as value of the <feature>*.gml:identifier and DistanceIndication.gml:identifier value
- note: this concatenation will prevent the risk of colliding gml:identifiers for different DistanceIndication elements, in case of a circular mapping (AIXM 5.1 -> 5.2 -> 5.1);
- distance, minimumReceptionAltitude, type elements and pointChoice_* value copied from the DistanceIndication element
- gml:identifier value concatenated as value of the <feature>*.gml:identifier and DistanceIndication.gml:identifier value
- remove the AngleIndication element.
Mapping AIXM 5.2 to AIXM 5.1.1 (backward)
The following algorithm shall be applied:
- ****Note: see [AIXM-404] Add <<object>> persistent identifiers. It is assumed that, in order to facilitate the backward mapping, the Angle and Distance objects will have their own unique gml:identifier (UUID) value.
- For each Angle element:
- [MAPC-07] Create an AngleIndication <<feature>> element that retains all its child/descendant elements, including the gml:identifier value and:
- copy the parent’s feature validTime and lifetime values for the new AngleIndication feature
- if the parent element is a limitingAngle of a DepartureLeg, ArrivalLeg, FinalLeg, InitialLeg, IntermediateLeg, MissedApproachLeg, or ArrivalFeederLeg:
- rename the parent limitingAngle into angle and:
- copy the value of the Angle.gml:identifier into angle@xlink:href
- delete the Angle element
- if the parent element is an angleReference
- which is the descendant of one of the following <feature> elements:
- DepartureLeg, ArrivalLeg, FinalLeg, InitialLeg, IntermediateLeg, MissedApproachLeg, or ArrivalFeederLeg
- .endPoint.TerminalSegmentPoint.facilityMakeup.PointReference.angleReference
- .startPoint.TerminalSegmentPoint.facilityMakeup.PointReference.angleReference
- .arcCentre.TerminalSegmentPoint.facilityMakeup.PointReference.angleReference
- FinalLeg
- .visualDescentPoint.TerminalSegmentPoint.facilityMakeup.PointReference.angleReference
- EnrouteSegment
- .start.EnRouteSegmentPoint.facilityMakeup.PointReference.angleReference
- .end.EnRouteSegmentPoint.facilityMakeup.PointReference.angleReference
- HoldingPattern
- .outboundLegSpan_endPoint.EnRouteSegmentPoint.facilityMakeup.PointReference.angleReference
- .outboundLegSpan_endPointTerminalSegmentPoint.facilityMakeup.PointReference.angleReference
- .outboundLegSpan_endPoint.AerialSegmentPoint.facilityMakeup.PointReference.angleReference
- .holdingPoint. EnRouteSegmentPoint.facilityMakeup.PointReference.angleReference
- .holdingPoint.TerminalSegmentPoint.facilityMakeup.PointReference.angleReference
- .holdingPoint. AerialSegmentPoint.facilityMakeup.PointReference.angleReference
- .holdingPoint.EnRouteSegmentPoint.facilityMakeup.PointReference.angleReference
- .holdingPoint.TerminalSegmentPoint.facilityMakeup.PointReference.angleReference
- .holdingPoint.AerialRefuellingPoint.facilityMakeup.PointReference.angleReference
- .holdingPoint.EnRouteSegmentPoint.facilityMakeup.PointReference.angleReference
- .holdingPoint.TerminalSegmentPoint.facilityMakeup.PointReference.angleReference
- .holdingPoint.AerialRefuellingPoint.facilityMakeup.PointReference.angleReference
- .anchor.AerialRefuellingAnchor.point.AerialRefuellingPoint.facilityMakeup.PointReference.angleReference
- .track.AerialRefuellingTrack.point.AerialRefuellingPoint.facilityMakeup.PointReference.angleReference
- rename the ancestor angleReference into facilityAngle and:
- copy the value of the Angle.gml:identifier into facilityAngle.AngleUse.theAngleIndication@xlink:href
- delete the Angle element
- If the parent element is an angleReference which is the descendant of a DesignatedPoint:
- Add a fix child element to the newly created AngleIndication that has @rxlink:href value copied from the DesignatedPoint’s gml:identifier’
- [MAPC-02] If the fix.PointReference has other child elements than just the angleReference, then from the three backward mapping options available 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:
- Add an annotation.Note associated with the AngleIndication
- purpose=“OTHER:BACKWARD_MAPPING”;
- LinguisticNote.note = “role: <value of role>, priorFixTolerance: <value of priorFixTolerance>, postFixTolerance: <value of postFixTolerance>, minimumReceptionLimit: <value of minimumReceptionLimit>, minimumReceptionLimitReference: <value of minimumReceptionLimitReference>, maximumAuthorisedLimit: <value of maximumAuthorisedLimit>, maximumAuthorisedLimitReference: <value of maximumAuthorisedLimitReference>, alongCourseGuidance: <value of AngleUse.alongCourseGuidance>”
- Remove the fix object from the DesignatedPoint
- rename the parent limitingAngle into angle and:
- [MAPC-07] Create an AngleIndication <<feature>> element that retains all its child/descendant elements, including the gml:identifier value and:
- For each Distance element:
- Create a DistanceIndication <<feature>> element that retains all its child/descendant elements, including the gml:identifier value and:
- copy the parent’s feature validTime and lifetime values for the new DistanceIndication feature
- if the parent element is a limitingDistance of a DepartureLeg, ArrivalLeg, FinalLeg, InitialLeg, IntermediateLeg, MissedApproachLeg, or ArrivalFeederLeg:
- rename the parent limitingDIstance into distance and:
- copy the value of the Distance.gml:identifier into distance@xlink:href
- delete the Distance element
- if the parent element is an distanceReference
- which is the descendant of one of the following <feature> elements :
- DepartureLeg, ArrivalLeg, FinalLeg, InitialLeg, IntermediateLeg, MissedApproachLeg, and ArrivalFeederLeg
- .endPoint.TerminalSegmentPoint.facilityMakeup.PointReference.distanceReference
- .startPoint.TerminalSegmentPoint.facilityMakeup.PointReference.distanceReference
- .arcCentre.TerminalSegmentPoint.facilityMakeup.PointReference.distanceReference
- FinalLeg
- .visualDescentPoint.TerminalSegmentPoint.facilityMakeup.PointReference.distanceReference
- EnrouteSegment
- .start.EnRouteSegmentPoint.facilityMakeup.PointReference.distanceReference
- .end.EnRouteSegmentPoint.facilityMakeup.PointReference.distanceReference
- HoldingPattern
- .EnRouteSegmentPoint.facilityMakeup.PointReference.distanceReference
- .outboundLegSpan_endPointTerminalSegmentPoint.facilityMakeup.PointReference distanceReference
- .outboundLegSpan_endPoint.AerialSegmentPoint.facilityMakeup.PointReference.distanceReference
- .holdingPoint. EnRouteSegmentPoint.facilityMakeup.PointReference.distanceReference
- .holdingPoint.TerminalSegmentPoint.facilityMakeup.PointReference.distanceReference
- .holdingPoint. AerialSegmentPoint.facilityMakeup.PointReference.distanceReference
- HoldingAssessment
- .holdingPoint.EnRouteSegmentPoint.facilityMakeup.PointReference.distanceReference
- .holdingPoint.TerminalSegmentPoint.facilityMakeup.PointReference.distanceReference
- .holdingPoint.AerialRefuellingPoint.facilityMakeup.PointReference.distanceReference
- UnplannedHolding
- .holdingPoint.EnRouteSegmentPoint.facilityMakeup.PointReference.distanceReference
- .holdingPoint.TerminalSegmentPoint.facilityMakeup.PointReference.distanceReference
- .holdingPoint.AerialRefuellingPoint.facilityMakeup.PointReference.distanceReference
- AerialRefuelling
- .anchor.AerialRefuellingAnchor.point.AerialRefuellingPoint.facilityMakeup.PointReference. distanceReference
- .track.AerialRefuellingTrack.point.AerialRefuellingPoint.facilityMakeup.PointReference.distanceReference
- rename the ancestor distanceReference into facilityDistance and:
- copy the value of the Distance.gml:identifier into facilityDistance@xlink:href
- delete the Distance element
- If the parent element is a distanceReference which is the descendant of a DesignatedPoint:
- DepartureLeg, ArrivalLeg, FinalLeg, InitialLeg, IntermediateLeg, MissedApproachLeg, and ArrivalFeederLeg
- Add a fix child element to the newly created DistanceIndication that has @xlink:href value copied from the DesignatedPoint’s gml:identifier’
- [MAPC-02] If the fix.PointReference has other child elements than just the distanceReference, then from the three backward mapping options available 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:
- which is the descendant of one of the following <feature> elements :
- Add an annotation.Note associated with the AngleIndication
- purpose=“OTHER:BACKWARD_MAPPING”;
- LinguisticNote.note = “role: <value of role>, priorFixTolerance: <value of priorFixTolerance>, postFixTolerance: <value of postFixTolerance>, minimumReceptionLimit: <value of minimumReceptionLimit>, minimumReceptionLimitReference: <value of minimumReceptionLimitReference>, maximumAuthorisedLimit: <value of maximumAuthorisedLimit>, maximumAuthorisedLimitReference: <value of maximumAuthorisedLimitReference>”
- Remove the fix object from the DesignatedPoint
- [MAPC-02] For each PointReference object (that is not the descendant of a DesignatedPoint) that has minimumReceptionLimit and/or minimumReceptionLimitReference and/or maximumAuthorisedLimit and/or maximumAuthorisedLimitReference values, from the three backward mapping options available 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:
- Add an annotation.Note associated with the owner class having
- purpose=“OTHER:BACKWARD_MAPPING”;
- translatedNote.LinguisticNote.note = “minimumReceptionLimit: <value of minimumReceptionLimit>, minimumReceptionLimitReference: <value of minimumReceptionLimitReference>, maximumAuthorisedLimit: <value of maximumAuthorisedLimit>, maximumAuthorisedLimitReference: <value of maximumAuthorisedLimitReference>”>
- rename the parent limitingDIstance into distance and:
- Create a DistanceIndication <<feature>> element that retains all its child/descendant elements, including the gml:identifier value and:
- DepartureLeg, ArrivalLeg, FinalLeg, InitialLeg, IntermediateLeg, MissedApproachLeg, and ArrivalFeederLeg
- which may be a descendant of one of the following <<feature>> elements:
- [MAPC-07] Find the corresponding (referencing) DepartureLeg, ArrivalLeg, FinalLeg, InitialLeg, IntermediateLeg, MissedApproachLeg, or ArrivalFeederLeg element and:
- [MAPC-07] Find the corresponding (referencing) Designated Point and:
- if it has a child element DesignatedPoint, then:
- DepartureLeg, ArrivalLeg, FinalLeg, InitialLeg, IntermediateLeg, MissedApproachLeg, or ArrivalFeederLeg
- which may be a descendant of one of the following <<feature>> elements:
- [MAPC-07] Find the corresponding (referencing) DepartureLeg, ArrivalLeg, FinalLeg, InitialLeg, IntermediateLeg, MissedApproachLeg, or ArrivalFeederLeg element and:
- [MAPC-07] Find the corresponding (referencing) Designated Point and:
- if it has a child element DesignatedPoint, then:
Mapping example
(Note: for mapping test data see: https://github.com/aixm/mapping_52_511/tree/master/AIXM-xxx)
AIXM Input | AIXM Output |
---|---|
Forward AngleDistance ArrivalLeg 5.1.1 input message:AIXMBasicMessage message:hasMember Navaid gml:identifier = dfd04617-c8bd-443b-8290-067ba2e50e14 timeSlice NavaidTimeSlice 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 = VORTAC designator = LNY purpose = TERMINAL location ElevatedPoint gml:pos = 20.7645000 -156.9688889 elevation = 1250 FT message:hasMember DesignatedPoint gml:identifier = bf3264d6-c075-47a3-b0dd-4ecccaffe040 timeSlice DesignatedPointTimeSlice 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 = designator = CHAIN type = ICAO name = CHAIN message:hasMember DesignatedPoint gml:identifier = 505a205f-8682-4f82-8f69-d4eba07a047a timeSlice DesignatedPointTimeSlice 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 = designator = SOBOW type = ICAO name = SOBOW message:hasMember AngleIndication gml:identifier = f7b8682a-cc39-42d4-b9d4-21717d652cb6 timeSlice AngleIndicationTimeSlice 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 = angle = 359.99 minimumReceptionAltitude = 2000 FT fix = #uuid.bf3264d6-c075-47a3-b0dd-4ecccaffe040 pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 message:hasMember DistanceIndication gml:identifier = c692a79d-52d1-447f-805a-da2ab7cab711 timeSlice DistanceIndicationTimeSlice 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 = distance = 12.70 NM minimumReceptionAltitude = 2000 FT fix = #uuid.bf3264d6-c075-47a3-b0dd-4ecccaffe040 pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 message:hasMember AngleIndication gml:identifier = e27696a1-e89e-42b8-9445-13498379b9a9 timeSlice AngleIndicationTimeSlice 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 = angle = 278 minimumReceptionAltitude = 5000 FT fix = #uuid.505a205f-8682-4f82-8f69-d4eba07a047a pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 message:hasMember DistanceIndication gml:identifier = e70733e3-0c42-4f8c-9b7a-e80e1c0ed703 timeSlice DistanceIndicationTimeSlice 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 = distance = 13 NM minimumReceptionAltitude = 5000 FT fix = #uuid.505a205f-8682-4f82-8f69-d4eba07a047a pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 message:hasMember ArrivalLeg gml:identifier = fac34bfc-fc4f-4da7-ad8a-84ee687f41bb timeSlice ArrivalLegTimeSlice 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 = legPath = ARC startPoint TerminalSegmentPoint facilityMakeup PointReference facilityAngle AngleUse theAngleIndication = #uuid.f7b8682a-cc39-42d4-b9d4-21717d652cb6 facilityDistance = #uuid.c692a79d-52d1-447f-805a-da2ab7cab711 pointChoice_fixDesignatedPoint = #uuid.bf3264d6-c075-47a3-b0dd-4ecccaffe040 endPoint TerminalSegmentPoint facilityMakeup PointReference facilityAngle AngleUse theAngleIndication = #uuid.e27696a1-e89e-42b8-9445-13498379b9a9 facilityDistance = #uuid.e70733e3-0c42-4f8c-9b7a-e80e1c0ed703 pointChoice_fixDesignatedPoint = #uuid.505a205f-8682-4f82-8f69-d4eba07a047a arcCentre TerminalSegmentPoint pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 distance = #uuid.e70733e3-0c42-4f8c-9b7a-e80e1c0ed703 ______________________________________________________ Backward AngleDistance ArrivalLeg 5.2 input message:AIXMBasicMessage message:hasMember Navaid gml:identifier = dfd04617-c8bd-443b-8290-067ba2e50e14 timeSlice NavaidTimeSlice 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 = VORTAC designator = LNY purpose = TERMINAL location ElevatedPoint gml:pos = 20.7645000 -156.9688889 elevation = 1250 FT message:hasMember DesignatedPoint gml:identifier = bf3264d6-c075-47a3-b0dd-4ecccaffe040 timeSlice DesignatedPointTimeSlice 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 = designator = CHAIN type = ICAO name = CHAIN fix PointReference minimumReceptionLimit = 0 minimumReceptionLimitReference = MSL maximumAuthorisedLimit = 2000 FT maximumAuthorisedLimitReference = OTHER distanceReference Distance gml:identifier = c692a79d-52d1-447f-805a-da2ab7cab711 distance = 12.70 NM minimumReceptionAltitude = 2000 FT pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 angleReference AngleUse theAngle Angle gml:identifier = f7b8682a-cc39-42d4-b9d4-21717d652cb6 angle = 359.99 minimumReceptionAltitude = 2000 FT pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 message:hasMember DesignatedPoint gml:identifier = 505a205f-8682-4f82-8f69-d4eba07a047a timeSlice DesignatedPointTimeSlice 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 = designator = SOBOW type = ICAO name = SOBOW fix PointReference minimumReceptionLimit = 5000 FT minimumReceptionLimitReference = MSL distanceReference Distance gml:identifier = e70733e3-0c42-4f8c-9b7a-e80e1c0ed703 distance = 13 NM minimumReceptionAltitude = 5000 FT pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 angleReference AngleUse theAngle Angle gml:identifier = e27696a1-e89e-42b8-9445-13498379b9a9 angle = 278 minimumReceptionAltitude = 5000 FT pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 message:hasMember ArrivalLeg gml:identifier = fac34bfc-fc4f-4da7-ad8a-84ee687f41bb timeSlice ArrivalLegTimeSlice 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 = legPath = ARC startPoint TerminalSegmentPoint pointChoice_fixDesignatedPoint = #uuid.bf3264d6-c075-47a3-b0dd-4ecccaffe040 endPoint TerminalSegmentPoint pointChoice_fixDesignatedPoint = #uuid.505a205f-8682-4f82-8f69-d4eba07a047a arcCentre TerminalSegmentPoint pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 limitingDistance Distance gml:identifier = e70733e3-0c42-4f8c-9b7a-e80e1c0ed703 distance = 13 NM minimumReceptionAltitude = 5000 FT pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 ______________________________________________________ Forward AngleDistance DepartureLeg 5.1.1 input message:AIXMBasicMessage message:hasMember Navaid gml:identifier = dfd04617-c8bd-443b-8290-067ba2e50e14 timeSlice NavaidTimeSlice 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 = VORTAC designator = AML purpose = TERMINAL location ElevatedPoint gml:pos = 38.9345939 -77.4667025 elevation = 781 FT message:hasMember AngleIndication gml:identifier = f7b8682a-cc39-42d4-b9d4-21717d652cb6 timeSlice AngleIndicationTimeSlice 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 = angle = 359.99 pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 message:hasMember DepartureLeg gml:identifier = fac34bfc-fc4f-4da7-ad8a-84ee687f41bb timeSlice DepartureLegTimeSlice 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 = legPath = STRAIGHT startPoint TerminalSegmentPoint pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 angle = #uuid.f7b8682a-cc39-42d4-b9d4-21717d652cb6 ______________________________________________________ Backward AngleDistance DepartureLeg 5.2 input message:AIXMBasicMessage message:hasMember Navaid gml:identifier = dfd04617-c8bd-443b-8290-067ba2e50e14 timeSlice NavaidTimeSlice 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 = VORTAC designator = AML purpose = TERMINAL location ElevatedPoint gml:pos = 38.9345939 -77.4667025 elevation = 781 FT message:hasMember DepartureLeg gml:identifier = fac34bfc-fc4f-4da7-ad8a-84ee687f41bb timeSlice DepartureLegTimeSlice 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 = legPath = STRAIGHT startPoint TerminalSegmentPoint pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 limitingAngle Angle gml:identifier = f7b8682a-cc39-42d4-b9d4-21717d652cb6 angle = 110 pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 | Forward AngleDistance ArrivalLeg 5.2 output message:AIXMBasicMessage message:hasMember Navaid gml:identifier = dfd04617-c8bd-443b-8290-067ba2e50e14 timeSlice NavaidTimeSlice 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 = VORTAC designator = LNY purpose = TERMINAL location ElevatedPoint gml:pos = 20.7645000 -156.9688889 elevation = 1250 FT message:hasMember DesignatedPoint gml:identifier = bf3264d6-c075-47a3-b0dd-4ecccaffe040 timeSlice DesignatedPointTimeSlice 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 = designator = CHAIN type = ICAO name = CHAIN fix PointReference distanceReference Distance gml:identifier = c692a79d-52d1-447f-805a-da2ab7cab711 distance = 12.70 NM minimumReceptionAltitude = 2000 FT pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 angleReference AngleUse theAngle Angle gml:identifier = f7b8682a-cc39-42d4-b9d4-21717d652cb6 angle = 359.99 minimumReceptionAltitude = 2000 FT pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 message:hasMember DesignatedPoint gml:identifier = 505a205f-8682-4f82-8f69-d4eba07a047a timeSlice DesignatedPointTimeSlice 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 = designator = SOBOW type = ICAO name = SOBOW fix PointReference minimumReceptionLimit = 5000 FT minimumReceptionLimitReference = MSL distanceReference Distance gml:identifier = e70733e3-0c42-4f8c-9b7a-e80e1c0ed703 distance = 13 NM minimumReceptionAltitude = 5000 FT pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 angleReference AngleUse theAngle Angle gml:identifier = e27696a1-e89e-42b8-9445-13498379b9a9 angle = 278 minimumReceptionAltitude = 5000 FT pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 message:hasMember ArrivalLeg gml:identifier = fac34bfc-fc4f-4da7-ad8a-84ee687f41bb timeSlice ArrivalLegTimeSlice 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 = legPath = ARC startPoint TerminalSegmentPoint pointChoice_fixDesignatedPoint = #uuid.bf3264d6-c075-47a3-b0dd-4ecccaffe040 endPoint TerminalSegmentPoint pointChoice_fixDesignatedPoint = #uuid.505a205f-8682-4f82-8f69-d4eba07a047a arcCentre TerminalSegmentPoint pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 limitingDistance Distance gml:identifier = e70733e3-0c42-4f8c-9b7a-e80e1c0ed703 distance = 13 NM minimumReceptionAltitude = 5000 FT pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 ______________________________________________________ Backward AngleDistance ArrivalLeg 5.1.1 output message:AIXMBasicMessage message:hasMember Navaid gml:identifier = dfd04617-c8bd-443b-8290-067ba2e50e14 timeSlice NavaidTimeSlice 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 = VORTAC designator = LNY purpose = TERMINAL location ElevatedPoint gml:pos = 20.7645000 -156.9688889 elevation = 1250 FT message:hasMember DesignatedPoint gml:identifier = bf3264d6-c075-47a3-b0dd-4ecccaffe040 timeSlice DesignatedPointTimeSlice 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 = designator = CHAIN type = ICAO name = CHAIN message:hasMember DesignatedPoint gml:identifier = 505a205f-8682-4f82-8f69-d4eba07a047a timeSlice DesignatedPointTimeSlice 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 = designator = SOBOW type = ICAO name = SOBOW message:hasMember AngleIndication gml:identifier = f7b8682a-cc39-42d4-b9d4-21717d652cb6 timeSlice AngleIndicationTimeSlice 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 = angle = 359.99 minimumReceptionAltitude = 2000 FT fix = #uuid.bf3264d6-c075-47a3-b0dd-4ecccaffe040 pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 message:hasMember DistanceIndication gml:identifier = c692a79d-52d1-447f-805a-da2ab7cab711 timeSlice DistanceIndicationTimeSlice 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 = distance = 12.70 NM minimumReceptionAltitude = 2000 FT fix = #uuid.bf3264d6-c075-47a3-b0dd-4ecccaffe040 pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 message:hasMember AngleIndication gml:identifier = e27696a1-e89e-42b8-9445-13498379b9a9 timeSlice AngleIndicationTimeSlice 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 = angle = 278 minimumReceptionAltitude = 5000 FT fix = #uuid.505a205f-8682-4f82-8f69-d4eba07a047a pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 message:hasMember DistanceIndication gml:identifier = e70733e3-0c42-4f8c-9b7a-e80e1c0ed703 timeSlice DistanceIndicationTimeSlice 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 = distance = 13 NM minimumReceptionAltitude = 5000 FT fix = #uuid.505a205f-8682-4f82-8f69-d4eba07a047a pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 message:hasMember ArrivalLeg gml:identifier = fac34bfc-fc4f-4da7-ad8a-84ee687f41bb timeSlice ArrivalLegTimeSlice 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 = legPath = ARC startPoint TerminalSegmentPoint facilityMakeup PointReference facilityAngle AngleUse theAngleIndication = #uuid.f7b8682a-cc39-42d4-b9d4-21717d652cb6 facilityDistance = #uuid.c692a79d-52d1-447f-805a-da2ab7cab711 annotation Note purpose = OTHER:BACKWARD_MAPPING translatedNote LinguisticNote note = role:pointChoice_fixDesignatedPoint, minimumReceptionLimit:0, minimumReceptionLimitReference:MSL, maximumAuthorisedLimit:2000 FT, maximumAuthorisedLimitReference: OTHER unknown pointChoice_fixDesignatedPoint = #uuid.bf3264d6-c075-47a3-b0dd-4ecccaffe040 endPoint TerminalSegmentPoint facilityMakeup PointReference facilityAngle AngleUse theAngleIndication = #uuid.e27696a1-e89e-42b8-9445-13498379b9a9 facilityDistance = #uuid.e70733e3-0c42-4f8c-9b7a-e80e1c0ed703 annotation Note purpose = OTHER:BACKWARD_MAPPING translatedNote LinguisticNote note = role:pointChoice_fixDesignatedPoint, minimumReceptionLimit:5000 FT, minimumReceptionLimitReference:MSL pointChoice_fixDesignatedPoint = #uuid.505a205f-8682-4f82-8f69-d4eba07a047a arcCentre TerminalSegmentPoint pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 distance = #uuid.e70733e3-0c42-4f8c-9b7a-e80e1c0ed703 ______________________________________________________ Forward AngleDistance DepartureLeg 5.2 output message:AIXMBasicMessage message:hasMember Navaid gml:identifier = dfd04617-c8bd-443b-8290-067ba2e50e14 timeSlice NavaidTimeSlice 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 = VORTAC designator = AML purpose = TERMINAL location ElevatedPoint gml:pos = 38.9345939 -77.4667025 elevation = 781 FT message:hasMember DepartureLeg gml:identifier = fac34bfc-fc4f-4da7-ad8a-84ee687f41bb timeSlice DepartureLegTimeSlice 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 = legPath = STRAIGHT startPoint TerminalSegmentPoint pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 limitingAngle Angle gml:identifier = f7b8682a-cc39-42d4-b9d4-21717d652cb6 angle = 110 pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 ______________________________________________________ Backward AngleDistance DepartureLeg 5.1.1 output message:AIXMBasicMessage message:hasMember Navaid gml:identifier = dfd04617-c8bd-443b-8290-067ba2e50e14 timeSlice NavaidTimeSlice 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 = VORTAC designator = AML purpose = TERMINAL location ElevatedPoint gml:pos = 38.9345939 -77.4667025 elevation = 781 FT message:hasMember AngleIndication gml:identifier = f7b8682a-cc39-42d4-b9d4-21717d652cb6 timeSlice AngleIndicationTimeSlice 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 = angle = 359.99 pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 message:hasMember DepartureLeg gml:identifier = fac34bfc-fc4f-4da7-ad8a-84ee687f41bb timeSlice DepartureLegTimeSlice 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 = legPath = STRAIGHT startPoint TerminalSegmentPoint pointChoice_navaidSystem = #uuid.dfd04617-c8bd-443b-8290-067ba2e50e14 angle = #uuid.f7b8682a-cc39-42d4-b9d4-21717d652cb6 |