Figure R.41 - Association Class Specification Meta-Model : Class diagram
Created: |
3/28/2022 3:51:09 PM |
Modified: |
6/8/2022 7:00:31 AM |
Project: |
|
Author: |
broth |
Version: |
22.0 |
Advanced: |
|
ID: |
{8E0FA191-F311-455b-9542-0E38D68BE187} |
The specification of this association is simple, because it assumes no history when an instance of a Base Station Controller’s association (SupportedBy) to a Mobile Switching Center is changed from one instance of a Mobile Switching Center to another. Otherwise the specification for the association would be an *-*, which means the specification for an association class (entity) should be introduced into the meta-model, as shown in Figure As.04 – Association Class Specification.<br/>The model shown in the figure provides the capability to define a specification for an association class or not. The 0,1 multiplicity from AssociationSpecification to RootEntityType defines this capability.<br/>It should be kept in mind that another meta-modeling option is to not add the association between AssociationSpecification and RootEntityType. The equivalent support could be provided by adding an instance of RootEntityType that represents a class, rather than an association class. This instance would be related to the two instances of the RootEntityTypes involved in the *-* association by creating two instances of AssocationSpecification. In modeling, this represent what is often referred to as an intersection or link entity, which represents the resolution of a *-* association.<br/>The association meta-model is only part of the solution to support the dynamic addition of associations. Application functionality, including user interfaces, must also be developed. A representative set of insights into functionality, excluding user interface details, will be described next.<br/>An application could provide the capability (user interface and logic) to add instances of associations when adding an instance of a RootEntity. This capability would determine if the RootEntityType that describes the RootEntity has any related instances of AssociationSpecification. The dynamicAttrAssoc attribute of RootEntityType would be used to determine this.<br/>Implementing the meta-model to support the dynamic addition of classes and subclasses, both implicit and explicit, means that inheriting associations must be supported. For existing SID entities, this should be handled by transformation of the information model to the data model by rolling down the super-classes.<br/>Application logic can be employed to support inheriting associations by copying instances of AssociationSpecifications and AssociationRoleSpecifications to subclasses for dynamically added classes and subclasses, both implicit and explicit. If copying, rather than true inheritance, is provided, then the ability to change the properties (attributes) of the specifications (Association and AssociationRole) of the subclasses should be prevented by the application to avoid inconsistencies. When an instance of an entity is created/updated the application can ask if an instance of an association must/may be added/updated.<br/>