I've been using the <<redefines>> mechanism for a while now to add tagged values to existing ArchiMate 3 stereotypes without interupting the users too much.
Everything looks the same on the surface, but my redefined stereotype is being used instead of the standard ArchiMate stereotype.
This works just fine for elements. Today I got a request to add a tagged value to a number of ArchiMate relations, so I did exactly the same.
I added my redefined stereotypes to the profile and expected it to work; but it didn't.
https://imgur.com/a/Amiv75fWhen adding an ArchiMate_Serving relation for example, I get a vanilla ArchiMate_Serving, and not my redefined one.
When comparing the resulting UML profile XML I can't see any differences between the element redefine, and the connector redefine.
the one for ArchiMate_Serving that doesn't work:
<Stereotype name="ArchiMate_Serving" notes="" bgcolor="-1" fontcolor="-1" bordercolor="-1" borderwidth="-1" hideicon="0" generalizes="ArchiMate3::ArchiMate_Serving" baseStereotypes="ArchiMate3::ArchiMate_Serving" redefines="ArchiMate3::ArchiMate_Serving">
<TaggedValues>
<Tag name="Lifecycle" type="enumeration" description="" unit="" values="TBD,Planned,Phase In,Live,Phase Out,End of Life" default="TBD"/>
</TaggedValues>
</Stereotype>
The one for ArchiMate Node that does work:
<Stereotype name="ArchiMate_Node" notes="" bgcolor="12648384" fontcolor="-1" bordercolor="-1" borderwidth="1" hideicon="0" generalizes="ArchiMate3::ArchiMate_Node" baseStereotypes="ArchiMate3::ArchiMate_Node" redefines="ArchiMate3::ArchiMate_Node">
<TaggedValues>
<Tag name="Lifecycle" type="enumeration" description="" unit="" values="TBD,Planned,Phase In,Live,Phase Out,End of Life" default="TBD"/>
</TaggedValues>
</Stereotype>
Has anyone successfully redefined a connector stereotype before? Any secret magical sauce I'm missing?
Geert