Community
Participate
Working Groups
It must be ensured that ports and capsule parts have unique names, with respect to any inherited ports and capsule parts. In case the subclass capsule already owns ports and capsule parts that have a name that clashes with any of the inherited ports and capsule parts, then the name of the ports and capsule parts in the subclass should be adjusted, by adding some unique suffix, e.g. '_1', '_2' and so on, to avoid the name clash. Steps to reproduce: 1) Create a UML-RT model based on the "UML-RT for C++" template 2) Create a capsule 3) Create a port and capsule part in this capsule 4) Create a second capsule 5) Create a port and capsule part in the second capsule, which have identical names to the ones in the first capsule 6) Establish a generalization from the second to the first capsule 7) Observe how the second capsule now have ports and capsule parts with identical, clashing names (and that the warning indicator in the properties view for clashing names is shown) Expected result would have been that the names of the port and capsule parts should have been renamed with a unique suffix '_1'. This is partly related to Bug 511777 regarding improvements to the name clash control to also consider the name spaces of any subclasses when changing name of existing (or adding new) elements in the superclass. In the legacy tooling there is a live validation that checks unique names, and even blocks the possibility of creating or naming a port/capsule part in a subclass (or superclass) that introduces a name clash. The aspect of live validation probably should be covered by Bug 492833.
Validation at code gen time, tool validation in Future