My sample profile behaves as I would expect.
[SNIP]
Indeed it does! Having now played with it, I realise that I have made a fundamental misunderstanding of the functionality provided. Now that I understand, I see that it is, indeed, providing the specified functionality for:
Metaclass Descriptionsource.metatype The target element must match the exact stereotype defined at the source.
source.metatype.general The target element may match the exact stereotype used at the source and any concrete (isAbstract=false) generalized stereotypes.
source.metatype.specific The target element may match the exact stereotype used at the source and any concrete (isAbstract=false) specialized stereotypes.
source.metatype.both The target element may match the exact stereotype used at the source and any concrete (isAbstract=false) generalized or specialized stereotypes.
Unfortunately, for us, that doesn't solve the problem of getting away from a large number of specific QuickLinker entries required.
I can't recall if you (or any other Sparxians mentioned) any other special metatypes.
If I extend the profile with
<Stereotype name="D" notes="" generalizes="A" baseStereotypes="A"/>
<Stereotype name="E" notes="" generalizes="D" baseStereotypes="D"/>
I'd like to be able to define the ability to specify relationships between "Ds" and "Bs", "Ds" and "Cs", "Bs" and "Es" and ""Cs" and "Es". Since they all descend from "A",
I thought something like:
Metaclass Descriptionbase.metatype The target element must match the exact stereotype defined at the base.
(not particulalry useful)base.metatype.general The target element may match the exact stereotype used at the source and any concrete (isAbstract=false) generalized stereotypes thereof.
base.metatype.specific The target element may match the exact stereotype used at the base and any concrete (isAbstract=false) specialized stereotypes thereof.
base.metatype.both The target element may match the exact stereotype used at the base and any concrete (isAbstract=false) generalized or specialized stereotypes thereof.
Where the base is the place where the relationship is defined. In this case, "A".
Does that make sense? In our last incarnation, the MDG QuickLinker was managed by an Excel workbook and automation what generated nearly 50,000 valid interactions between metatypes - many of which were merely instances of a more general rule. If we can't significantly cut down on the list, then we might as well stay with the matrix.
Paolo