Source: Software Centre of Excellence, Rolls-Royce Div. ( Dave Banham)
The very last paragraph of section 126.96.36.199 states "An AssociationClass cannot be a generalization of an Association or a Class." However, there appear to be no constraints specified for AssociationClass (11.8.2) or Generalization (9.9.7), or GeneralizationSet (9.9.8) to formalize the intent of this statement.
To be clear, does this statement mean that an AssociationClass cannot be a Generalization's general or specific property? If so, why not?
I think there are two cases to consider:
1. Redefinition/subsetting of the association class' end properties results in the need to subset the association class;
2. Classifying the association class into subtypes through specialization;
Case 1 would naturally lead to the specializations of the AssociationClass being AssociationClasses (because an association is being used to redefine the association that is typed by the more general AssociationClass).
Case 2. would naturally lead to the specializations of the AssociationClass being Classes (because no new associations are being specified). Although, in reality, instances of these subtype classes are, by inheritance, instances of their general AssocaitionClass.
Case 2 also makes me think of power types. Can an association class be a power type? If it can then that may well provide a workaround for case 2.
Reported: UML 2.5.1 — Wed, 24 Apr 2019 14:33 GMT
Updated: Wed, 12 Jun 2019 15:37 GMT