18 JUL 2019
The multiplicity of the following <<choice>> classes is reduced to 0...1 in the UML model, in order to align it with the XML Schema: GuidanceFacility, MarkingElement, VerticalStructurepartGeometry.
Rationale for change
Because of a bug in the UML to XSD script, there is a discrepancy between the UML 5.1(.1) model and XSD schema. When a class had a relationship to a <<choice>> element that has 0..* multiplicity, the corresponding XSD <choice> was generated by the scripts unspecified multiplicity, therefore equal to one. This has affected the following AIXM 5.1(.1) elements:
- Procedure isBasedOn 0…* guidanceFacility (<<choice>> GuidanceService)
- MarkingElement isFor 0…* extent (<<choice>> MarkingExtent)
- VerticalStructurePart isRepresentedAs 0…* horizontalProjection (<<choice>> VerticalStructurePartGeometry)
The UML to XSD generation script are being corrected for this bug and the AIXM XSD needs to be realigned with the AIXM UML model. This can be done either by correcting the UML model or the XML Schema. The analysis of the three model areas affected by this discrepancy indicates that:
- Only one Guidance Facility is typically provided for SID, STAR or InstrumentApproachProcedure, therefore no real need to allow multiple occurrences of the GuidanceService <<choice>> element;
- The MarkingElement is already multi-occurring, therefore no real justification for a multi-occurrence of the MarkingExtent <<choice>> element;
- It is not justified to allow multiple geometries for the same part, that would overcomplicate the model. Therefore, no need for multi-occurring <<choice>> VerticalStructurePartGeometry.
In conclusion, the XML Schema multiplicity is considered sufficient for these elements and the UML model is corrected accordingly.
This change has no impact on the XML Schema, therefore there is no impact on implementations.
Change Proposal details
In the UML model:
- For the association Procedure isBasedOn GuidanceService, change the multiplicity of the guidanceFacility into 0...1;
- For the association MarkingElement isFor MarkingExtent, change the multiplicity of the extent into 0...1;
- For the association VerticalStructurePart isRepresentedAs VerticalStructurePartGeometry, change the multiplicity of the horizontalProjection into 0...1.
Mapping AIXM 5.1.1 to AIXM 5.2 (forward)
Mapping AIXM 5.2 to AIXM 5.1.1 (backward)
|AIXM 5.2||AIXM 5.1(.1)|