I just tried to do the following in Sparx with partial success.
I have 2 classes, ClassA and ClassB. ClassB specializes ClassA, inherits all attributes from ClassA and it started without additional attributes.
ClassA has a number of attributes: attr1, attr2, attr3 and so on.
When I specialised ClassA, I overrode the attribute initialisers for attributes attr2 and attr3 as follows attr2 = AB and attr3 = ZW.
The problems arose when I tried to create an association between ClassB and a 3rd class, ClassC. ClassC has also a number of attributes - e.g. attrA, attrB, attrC and son on. I would really like to create an association with ClassA.attr1, the inherited attribute, and ClassC.attrA in the roles but I cannot because the inherited attribute, attr1, from ClassA does not show up in the drop down list.
The only alternative I can think of is creating an attribute on ClassB which mirrors the attribute on ClassA. I would like this new attribute on ClassB to alias the matching attribute on ClassA.
Other than creating a relationship between both attributes and, perhaps, using an MDG. Can anybody else think about another way to achieve this?