Upload
tracey-willis
View
221
Download
3
Embed Size (px)
Citation preview
The European Organisation for the Safety of Air Navigation
AIXM 5.1 - UML to XSD
AIXM XML Developers' Seminar
UML to XSD – AIXM 5.1 mapping scripts 2
Content
• Overview of AIXM files
• Mapping rules for Datatypes
• Mapping rules for Features
• Presentation AIXM scripts
• Creation of an extension
UML to XSD – AIXM 5.1 mapping scripts 3
Overview of AIXM files
• The file AIXM_AbstractGML_ObjectTypes.xsd • References ISO19139 Metadata Schema• Defines the base AIXM Feature Constructs
• AbstractAIXMFeatureType / AbstractAIXMFeature
• AbstractAIXMTimesliceType / AbstractAIXMTimeslice
• The file AIXM_DataTypes.xsd contains the mapping of the AIXM datatypes
• The file AIXM_Features.xsd contains the mapping of the AIXM features
includes
GML 3.2
ISO19139
metadataschema
W3C xlink
AIXM 5.1PropertiesWithSchedule(from Schedules)
<<object>>
ContactInformation
name : TextNameTypetitle : TextNameType
(from Address)
<<object>>
FlightRestrictionRoute
priorPermission : CodeYesNoType
<<object>>
0..*
+contact
0..*
hasContactInstructions
FlightRestriction
designator : CodeFlightRestrictionDesignatorType...type : CodeFlightRestrictionTypeinstruction : TextInstructionType
<<feature>>
0..*
+regulatedRoute
0..*
regulatesUseOf
FlightRoutingElement
orderNumber : NoSequenceTypespeed : ValSpeedTypespeedReference : CodeSpeedReferenceTypespeedCriteria : CodeComparisonType
<<object>>
1..*+routeElement 1..*
isSequenceOf
FlightConditionCombination
logicalOperator : CodeFlowConditionOperationType
<<object>>
1+flight
1
appliesToFlight
FlightConditionCircumstance<<object>>
FlightRestrictionLevel<<object>>
0..* +flightLevel0..*
isRestrictedTo
FlightConditionElement
index : NoSequenceType
<<object>>
0..*+element 0..*
hasOperand
0..1
+operationalCondition
0..1
hasCondition
0..*
+flightLevel
0..*
isApplicableAt
FlightConditionElementChoice<<choice>>
1 +flightCondition1
is
UML to XSD – AIXM 5.1 mapping scripts 4
Overview of AIXM files
• AIXM 5.1 Mapping rules explains how to translate the AIXM 5.1 UML model into an XML grammar based on a subset of the Geography Markup Language (GML 3.2)
• Mapping rules are defined for: • AIXM Datatypes• AIXM Features
AIXM 5.1UML
PropertiesWithSchedule(from Schedules)
<<object>>
ContactInformation
name : TextNameTypetitle : TextNameType
(from Address)
<<object>>
FlightRestrictionRoute
priorPermission : CodeYesNoType
<<object>>
0..*
+contact
0..*
hasContactInstructions
FlightRestriction
designator : CodeFlightRestrictionDesignatorType...type : CodeFlightRestrictionTypeinstruction : TextInstructionType
<<feature>>
0..*
+regulatedRoute
0..*
regulatesUseOf
FlightRoutingElement
orderNumber : NoSequenceTypespeed : ValSpeedTypespeedReference : CodeSpeedReferenceTypespeedCriteria : CodeComparisonType
<<object>>
1..*+routeElement 1..*
isSequenceOf
FlightConditionCombination
logicalOperator : CodeFlowConditionOperationType
<<object>>
1+flight
1
appliesToFlight
FlightConditionCircumstance<<object>>
FlightRestrictionLevel<<object>>
0..* +flightLevel0..*
isRestrictedTo
FlightConditionElement
index : NoSequenceType
<<object>>
0..*+element 0..*
hasOperand
0..1
+operationalCondition
0..1
hasCondition
0..*
+flightLevel
0..*
isApplicableAt
FlightConditionElementChoice<<choice>>
1 +flightCondition1
is
AIXM 5.1XSD
AIXM 5.1 Mapping
Rules
The European Organisation for the Safety of Air Navigation
AIXM 5.1 - UML to XSDMapping Rules - Datatypes
UML to XSD – AIXM 5.1 mapping scripts 6
AIXM 5.1 Mapping Rules - Datatypes
• Mapping <<enumeration>>
CodeAirportHeliportType
AD : stringAH : stringHP : stringLS : stringOTHER : string
(from AIXM Data Types)
<<enumeration>>
string(from XMLSchemaDatatypes)
<<XSDsimpleType>>
<simpleType name="CodeAirportHeliportType"> <union> <simpleType> <restriction base="xsd:string"> <enumeration value="AD"> <annotation> <documentation/> </annotation> </enumeration> <enumeration value="AH“/> <enumeration value="HP“/> <enumeration value="LS“/> </restriction> </simpleType> <simpleType> <restriction base="string"> <pattern value="OTHER:\w{2,58}"/> </restriction> </simpleType> </union></simpleType>
UML to XSD – AIXM 5.1 mapping scripts 7
AIXM 5.1 Mapping Rules - Datatypes
• Mapping <<codelist>>
CodeAerialRefuelingPrefixType
AR : string
(from AIXM Data Types)
<<codelist>>
string(from XMLSchemaDatatypes)
<<XSDsimpleType>>
<simpleType name="CodeAerialRefuelingPrefixType_base"> <annotation> <documentation/> </annotation> <restriction base="xsd:string"> <enumeration value="AR"> <annotation> <documentation/> </annotation> </enumeration> </restriction></simpleType><simpleType name="CodeAerialRefuelingPrefixType"> <union memberTypes="aixm:CodeAerialRefuelingPrefixType_base xsd:string"/></simpleType>
UML to XSD – AIXM 5.1 mapping scripts 8
AIXM 5.1 Mapping Rules - Datatypes
• Mapping <<datatype>>
ValDistanceType
<<XSDfacet>> minInclusive : string = 0uom : UomDistanceType
(from AIXM Data Types)
<<datatype>>
decimal(from XMLSchemaDatatypes)
<<XSDsimpleType>>
UomDistanceType
NM : stringKM : stringM : stringFT : stringMI : stringOTHER : stringCM : string
(from AIXM Data Types)
<<enumeration>>
<simpleType name="ValDistanceTypeBase"> <annotation> <documentation/> </annotation> <restriction base="xsd:decimal"> <minInclusive value="0"/> </restriction></simpleType><complexType name="ValDistanceType"> <simpleContent> <annotation> <documentation/> </annotation> <extension base="aixm:ValDistanceTypeBase"> <attribute name="uom" type="aixm:UomDistanceType" use="required"/> </extension> </simpleContent></complexType>
The European Organisation for the Safety of Air Navigation
AIXM 5.1 - UML to XSD Mapping Rules - Features
UML to XSD – AIXM 5.1 mapping scripts 10
AIXM 5.1 Mapping Rules - Features
• AIXM is based on GML• AIXM Features are GML features…• AIXM follows the GML object-property concept.
<AirportHeliport> <!-- feature --> <ElevatedPoint> <!-- object -->
<AirportHeliport> <!-- feature --> <hasReferencePoint> <!-- property --> <ElevatedPoint> <!-- object -->
UML to XSD – AIXM 5.1 mapping scripts 11
AIXM 5.1 Mapping Rules - Features
• For each AIXM Feature in the UML, the following XML schema entities are created:
• FeaturePropertyType• Feature• FeatureType• FeatureTimeSlicePropertyType• FeatureTimeSlice• FeatureTimeSliceType• FeaturePropertyGroup
• AIXM objects are encoded as GML objects. The mapping rule for Objects are the same as the rules for Features except that
• Object do not exist outside of a feature• TimeSlice types and elements are not created
UML to XSD – AIXM 5.1 mapping scripts 12
AIXM 5.1 Mapping Rules - Features
Runway
designator : TextDesignatorTypetype : CodeRunwayTypenominalLength : ValDistanceTypelengthAccuracy : ValDistanceTypenominalWidth : ValDistanceTypewidthAccuracy : ValDistanceTypewidthShoulder : ValDistanceTypelengthStrip : ValDistanceTypewidthStrip : ValDistanceTypelengthOffset : ValDistanceSignedTypewidthOffset : ValDistanceSignedTypeabandoned : CodeYesNoType
<<feature>>
RunwayPropertyTypeRunwayRunwayTypeRunwayTimeSlicePropertyTypeRunwayTimeSliceRunwayTimeSliceTypeRunwayPropertyGroup
<group name="RunwayPropertyGroup"> <sequence> <element name="designator" nillable="true" minOccurs="0"> [………………] <complexType> <simpleContent> <extension base="aixm:TextDesignatorType"> <attribute name="nilReason" type="gml:NilReasonEnumeration"/> </extension> </simpleContent> </complexType> </element> <element name="type" nillable="true" minOccurs="0"> [………………] </sequence></group>
UML properties are mapped into FeaturePropertyGroup
UML to XSD – AIXM 5.1 mapping scripts 13
AIXM 5.1 Mapping Rules - Features
Runway
designator : TextDesignatorTypetype : CodeRunwayTypenominalLength : ValDistanceTypelengthAccuracy : ValDistanceTypenominalWidth : ValDistanceTypewidthAccuracy : ValDistanceTypewidthShoulder : ValDistanceTypelengthStrip : ValDistanceTypewidthStrip : ValDistanceTypelengthOffset : ValDistanceSignedTypewidthOffset : ValDistanceSignedTypeabandoned : CodeYesNoType
<<feature>>
0..1hasSurfaceDescribedBy
+surfaceProperties
0..1
SurfaceCharacteristics
composition : CodeSurfaceCompositionTypepreparation : CodeSurfacePreparationTypesurfaceCondition : CodeSurfaceConditionTypeclassPCN : ValPCNTypepavementTypePCN : CodePCNPavementTypepavementSubgradePCN : CodePCNSubgradeTypemaxTyrePressurePCN : CodePCNTyrePressureTypeevaluationMethodPCN : CodePCNMethodTypeclassLCN : ValLCNTypeweightSIWL : ValWeightTypetyrePressureSIWL : ValPressureTypeweightAUW : ValWeightType
(from Airport/Hel iport)
<<object>>Runway
designator : TextDesignatorTypetype : CodeRunwayTypenominalLength : ValDistanceTypelengthAccuracy : ValDistanceTypenominalWidth : ValDistanceTypewidthAccuracy : ValDistanceTypewidthShoulder : ValDistanceTypelengthStrip : ValDistanceTypewidthStrip : ValDistanceTypelengthOffset : ValDistanceSignedTypewidthOffset : ValDistanceSignedTypeabandoned : CodeYesNoType
<<feature>>
RunwayPropertyTypeRunwayRunwayTypeRunwayTimeSlicePropertyTypeRunwayTimeSliceRunwayTimeSliceTypeRunwayPropertyGroup
<group name="RunwayPropertyGroup"> <sequence> <element name="designator" nillable="true" minOccurs="0"> [………………] <element name="surfaceProperties" nillable="true" minOccurs="0"> <complexType> <complexContent>
<extension base="aixm:SurfaceCharacteristicsPropertyType"> <attribute name="nilReason" type="gml:NilReasonEnumeration"/></extension>
</complexContent> </complexType> </element> [………………]
UML to XSD – AIXM 5.1 mapping scripts 14
AIXM 5.1 Mapping Rules - Features
1
AirportHeliport(from Airport/Hel iport)
<<feature>>+associatedAirportHeliport
0..*1
isSituatedAt0..*
Runway
designator : TextDesignatorTypetype : CodeRunwayTypenominalLength : ValDistanceTypelengthAccuracy : ValDistanceTypenominalWidth : ValDistanceTypewidthAccuracy : ValDistanceTypewidthShoulder : ValDistanceTypelengthStrip : ValDistanceTypewidthStrip : ValDistanceTypelengthOffset : ValDistanceSignedTypewidthOffset : ValDistanceSignedTypeabandoned : CodeYesNoType
<<feature>>Runway
designator : TextDesignatorTypetype : CodeRunwayTypenominalLength : ValDistanceTypelengthAccuracy : ValDistanceTypenominalWidth : ValDistanceTypewidthAccuracy : ValDistanceTypewidthShoulder : ValDistanceTypelengthStrip : ValDistanceTypewidthStrip : ValDistanceTypelengthOffset : ValDistanceSignedTypewidthOffset : ValDistanceSignedTypeabandoned : CodeYesNoType
<<feature>>
RunwayPropertyTypeRunwayRunwayTypeRunwayTimeSlicePropertyTypeRunwayTimeSliceRunwayTimeSliceTypeRunwayPropertyGroup
UML properties are mapped into FeaturePropertyGroup
<group name="RunwayPropertyGroup"> <sequence> <element name="designator" nillable="true" minOccurs="0"> [………………] <element name="type" nillable="true" minOccurs="0"> [………………] <element name="associatedAirportHeliport" type="aixm:AirportHeliportPropertyType" nillable="true" minOccurs="0"> [………………] </sequence></group>
UML to XSD – AIXM 5.1 mapping scripts 15
AIXM 5.1 Mapping Rules - Features
<complexType name="RunwayTimeSliceType"> <complexContent> <extension base="aixm:AbstractAIXMTimeSliceType"> <sequence> <group ref="aixm:RunwayPropertyGroup"/> <element name="extension" minOccurs="0" maxOccurs="unbounded"> <complexType> <sequence> <element ref="aixm:AbstractRunwayExtension"/> </sequence> <attributeGroup ref="gml:OwnershipAttributeGroup"/> </complexType> </element> </sequence> </extension> </complexContent></complexType>
Runway
designator : TextDesignatorTypetype : CodeRunwayTypenominalLength : ValDistanceTypelengthAccuracy : ValDistanceTypenominalWidth : ValDistanceTypewidthAccuracy : ValDistanceTypewidthShoulder : ValDistanceTypelengthStrip : ValDistanceTypewidthStrip : ValDistanceTypelengthOffset : ValDistanceSignedTypewidthOffset : ValDistanceSignedTypeabandoned : CodeYesNoType
<<feature>>
RunwayPropertyTypeRunwayRunwayTypeRunwayTimeSlicePropertyTypeRunwayTimeSliceRunwayTimeSliceTypeRunwayPropertyGroup
AIXMTimeSlice
validTime : TimePrimitiveinterpretation : TimeSliceInterpretationTypesequenceNumber : NoNumberTypecorrectionNumber : NoNumberType
(from AIXM Abstract Feature) The RunwayTimeSliceType encapsulates all the Runway properties that change over time
UML to XSD – AIXM 5.1 mapping scripts 16
Runway
designator : TextDesignatorTypetype : CodeRunwayTypenominalLength : ValDistanceTypelengthAccuracy : ValDistanceTypenominalWidth : ValDistanceTypewidthAccuracy : ValDistanceTypewidthShoulder : ValDistanceTypelengthStrip : ValDistanceTypewidthStrip : ValDistanceTypelengthOffset : ValDistanceSignedTypewidthOffset : ValDistanceSignedTypeabandoned : CodeYesNoType
<<feature>>
RunwayPropertyTypeRunwayRunwayTypeRunwayTimeSlicePropertyTypeRunwayTimeSliceRunwayTimeSliceTypeRunwayPropertyGroup
AIXMTimeSlice
validTime : TimePrimitiveinterpretation : TimeSliceInterpretationTypesequenceNumber : NoNumberTypecorrectionNumber : NoNumberType
(from AIXM Abstract Feature)
AIXM 5.1 Mapping Rules - Features
<element name="RunwayTimeSlice" type="aixm:RunwayTimeSliceType" substitutionGroup="gml:AbstractTimeSlice"/>
RunwayTimeSlice element is of type RunwayTimeSliceType.
UML to XSD – AIXM 5.1 mapping scripts 17
Runway
designator : TextDesignatorTypetype : CodeRunwayTypenominalLength : ValDistanceTypelengthAccuracy : ValDistanceTypenominalWidth : ValDistanceTypewidthAccuracy : ValDistanceTypewidthShoulder : ValDistanceTypelengthStrip : ValDistanceTypewidthStrip : ValDistanceTypelengthOffset : ValDistanceSignedTypewidthOffset : ValDistanceSignedTypeabandoned : CodeYesNoType
<<feature>>
RunwayPropertyTypeRunwayRunwayTypeRunwayTimeSlicePropertyTypeRunwayTimeSliceRunwayTimeSliceTypeRunwayPropertyGroup
AIXMTimeSlice
validTime : TimePrimitiveinterpretation : TimeSliceInterpretationTypesequenceNumber : NoNumberTypecorrectionNumber : NoNumberType
(from AIXM Abstract Feature)
AIXM 5.1 Mapping Rules - Features
<complexType name="RunwayTimeSlicePropertyType"> <sequence> <element ref="aixm:RunwayTimeSlice"/> </sequence> <attributeGroup ref="gml:OwnershipAttributeGroup"/></complexType>
A GML property type containing a FeatureTimeSlice objects is created.
UML to XSD – AIXM 5.1 mapping scripts 18
AIXMTimeSlice
validTime : TimePrimitiveinterpretation : TimeSliceInterpretationTypesequenceNumber : NoNumberTypecorrectionNumber : NoNumberType
(from AIXM Abstract Feature)
1..*1..*
+timeSliceAIXMFeature
identifier : CodeUUIDType
(from AIXM Abstract Feature)
<complexType name="RunwayType"> <complexContent> <extension base="aixm:AbstractAIXMFeatureType"> <sequence> <element name="timeSlice" type="aixm:RunwayTimeSlicePropertyType" maxOccurs="unbounded"/> </sequence> </extension> </complexContent></complexType>
Runway
designator : TextDesignatorTypetype : CodeRunwayTypenominalLength : ValDistanceTypelengthAccuracy : ValDistanceTypenominalWidth : ValDistanceTypewidthAccuracy : ValDistanceTypewidthShoulder : ValDistanceTypelengthStrip : ValDistanceTypewidthStrip : ValDistanceTypelengthOffset : ValDistanceSignedTypewidthOffset : ValDistanceSignedTypeabandoned : CodeYesNoType
<<feature>>
RunwayPropertyTypeRunwayRunwayTypeRunwayTimeSlicePropertyTypeRunwayTimeSliceRunwayTimeSliceTypeRunwayPropertyGroup
AIXMFeature
identifier : CodeUUIDType
(from AIXM Abstract Feature)
AIXM 5.1 Mapping Rules - Features
The Runway feature type is created extending the AbstractAIXMFeatureType with the RunwayTimeSlice object created before.
UML to XSD – AIXM 5.1 mapping scripts 19
Runway
designator : TextDesignatorTypetype : CodeRunwayTypenominalLength : ValDistanceTypelengthAccuracy : ValDistanceTypenominalWidth : ValDistanceTypewidthAccuracy : ValDistanceTypewidthShoulder : ValDistanceTypelengthStrip : ValDistanceTypewidthStrip : ValDistanceTypelengthOffset : ValDistanceSignedTypewidthOffset : ValDistanceSignedTypeabandoned : CodeYesNoType
<<feature>>
RunwayPropertyTypeRunwayRunwayTypeRunwayTimeSlicePropertyTypeRunwayTimeSliceRunwayTimeSliceTypeRunwayPropertyGroup
AIXMFeature
identifier : CodeUUIDType
(from AIXM Abstract Feature)
AIXM 5.1 Mapping Rules - Features
<element name="Runway" type="aixm:RunwayType" substitutionGroup="aixm:AbstractAIXMFeature"> <annotation> <documentation>A defined rectangular area on a land aerodrome/heliport prepared for the landing and take-off of aircraft.Note: this includes the concept of Final Approach and Take-Off Area (FATO) for helicopters. </documentation> </annotation></element>
The Runway feature is then defined by the RunwayType.
UML to XSD – AIXM 5.1 mapping scripts 20
AIXM 5.1 Mapping Rules - Features
Runway
designator : TextDesignatorTypetype : CodeRunwayTypenominalLength : ValDistanceTypelengthAccuracy : ValDistanceTypenominalWidth : ValDistanceTypewidthAccuracy : ValDistanceTypewidthShoulder : ValDistanceTypelengthStrip : ValDistanceTypewidthStrip : ValDistanceTypelengthOffset : ValDistanceSignedTypewidthOffset : ValDistanceSignedTypeabandoned : CodeYesNoType
<<feature>>
RunwayPropertyTypeRunwayRunwayTypeRunwayTimeSlicePropertyTypeRunwayTimeSliceRunwayTimeSliceTypeRunwayPropertyGroup
<complexType name="RunwayPropertyType"> <attributeGroup ref="gml:OwnershipAttributeGroup"/> <attributeGroup ref="gml:AssociationAttributeGroup"/></complexType>
Used for relationship to feature Runway
Provides the xlink:href attribute
The European Organisation for the Safety of Air Navigation
AIXM 5.1 - UML to XSDAIXM Scripts
The European Organisation for the Safety of Air Navigation
AIXM 5.1 - UML to XSDWalkthrough AIXM 5.1 XSD Schemas
The European Organisation for the Safety of Air Navigation
AIXM 5.1 - UML to XSDCreation of an extension
UML to XSD – AIXM 5.1 mapping scripts 24
UML Extension
• A feature or object may be extended by creating a class with the same name as the core AIXM feature and giving it a stereotype <<extension>>.
Airspace
flexibleUse : CodeYesNoTypelevel1 : CodeYesNoTypelevel2 : CodeYesNoTypelevel3 : CodeYesNoType
<<extension>>
Airspace(from Airspace)
<<feature>>
• New classes (features and objects), that do not extend existing AIXM Core classes, can be also created.
Mission
identification : TextDesignatorTypename : TextNameTypeformationCode : CodeMissionFormationType...
<<feature>>
1
0..*
+reason 1
0..*
isExecutedFor
FlightFormation
flightIdentification : TextDesignatorType...numberOfAircraft : NoNumberTypetransitDuration : ValDurationType
<<feature>>
0..*0..* 0..*uses0..*Airspace(from Airspace)
<<feature>>
UML to XSD – AIXM 5.1 mapping scripts 25
UML Extension
• Extensions shall NOT be included in the core AIXM packages
UML to XSD – AIXM 5.1 mapping scripts 26
AIXM 5.1 Mapping Rules - Extensions
• AIXM_Features.xsd is defined in such a way that multiple extensions can be included in the core FeatureTimesliceType
• Features with the stereotype of <<extension>> generates three related elements for that class.• FeatureExtensionPropertyGroup• FeatureExtensionType• FeatureExtension
<complexType name="AirspaceTimeSliceType"> <complexContent> <extension base="aixm:AbstractAIXMTimeSliceType"> <sequence> <group ref="aixm:AirspacePropertyGroup"/> <element name="extension" minOccurs="0" maxOccurs="unbounded"> <complexType> <sequence> <element ref="aixm:AbstractAirspaceExtension"/> […………….]
UML to XSD – AIXM 5.1 mapping scripts 27
AIXM 5.1 Mapping Rules - Extensions
Airspace(from Airspace)
<<feature>>
Airspace
flexibleUse : CodeYesNoTypelevel1 : CodeYesNoTypelevel2 : CodeYesNoTypelevel3 : CodeYesNoType
<<extension>>
AirspaceExtensionAirspaceExtensionTypeAirspaceExtensionPropertyGroup
<group name="AirspaceExtensionPropertyGroup"> <sequence> <element name="flexibleUse" nillable="true" minOccurs="0"> […………….] <element name="level1" nillable="true" minOccurs="0"> […………….] </sequence></group>
UML to XSD – AIXM 5.1 mapping scripts 28
AIXM 5.1 Mapping Rules - Extensions
Airspace(from Airspace)
<<feature>>
Airspace
flexibleUse : CodeYesNoTypelevel1 : CodeYesNoTypelevel2 : CodeYesNoTypelevel3 : CodeYesNoType
<<extension>>
AirspaceExtensionAirspaceExtensionTypeAirspaceExtensionPropertyGroup
<complexType name="AirspaceExtensionType"> <complexContent> <extension base="aixm:AbstractExtensionType"> <sequence> <group ref="easm:AirspaceExtensionPropertyGroup"/> </sequence> </extension> </complexContent></complexType>
A relationship is created with an abstract XML element that acts as the root for all extensions.
UML to XSD – AIXM 5.1 mapping scripts 29
AIXM 5.1 Mapping Rules - Extensions
<element name="AirspaceExtension" type="easm:AirspaceExtensionType“ substitutionGroup="aixm:AbstractAirspaceExtension"/>
Airspace(from Airspace)
<<feature>>
Airspace
flexibleUse : CodeYesNoTypelevel1 : CodeYesNoTypelevel2 : CodeYesNoTypelevel3 : CodeYesNoType
<<extension>>
AirspaceExtensionAirspaceExtensionTypeAirspaceExtensionPropertyGroup
UML to XSD – AIXM 5.1 mapping scripts 30
Focus on AIXM Basic Message
AIXMBasicMessage<<message>>
AIXMFeature
identifier : CodeUUIDType
(from AIXM Abstract Feature)
BasicMessageMemberAIXM<<collectionMemberChoice>>
1..*1..*
hasMember
11
isFeature
Basic Message • is an AIXM 5.1 extension• contains just a collection of
AIXM features