Sparx Systems Forum
Enterprise Architect => General Board => Topic started by: mr nobody 11 on November 10, 2022, 04:06:51 am
-
Hello everyone,
I recently started using EA and creating my own MDG technologies. Sorry in advance if I make a mistake to explain my problem.
I created my profile packages including my meta-models with stereotype attributes. One of my stereotyped element generalizes the sysML::block which extends UML::Class. I want to create an element with corresponding icon in a custom toolbox. To do that, I followed the given steps in EA specifications. However, when I open my custom diagram, inside the toolbox, my element name is not shown properly.(Normally it shows the name given as initial value to corresponding attribute). Instead, it shows the path as name.
It does not happen to the other elements those directly extend something. It only happened to the element that generalizes the sysML::block. I wrote (UML::Class) inside the parenthesis instead of sysML::block, otherwise it gives an error. and I checked that there are no typo.
Can someone please help me to solve this problem or give a link?
Thank you very much,
mr nobody 11
-
Can you post an image of what the problem is. You can't post directly on this forum, so you have to post it on a public image hosting site (such as imgur.com) and post the link here.
Geert
-
If you're specializing a stereotype from EA's SysML profile, it needs to be "SysML1.4::block". The attribute in the custom toolbox needs to be "YourProfile::YourStereo(UML::Class)". All case-sensitive.
-
If you're specializing a stereotype from EA's SysML profile, it needs to be "SysML1.4::block". The attribute in the custom toolbox needs to be "YourProfile::YourStereo(UML::Class)". All case-sensitive.
I am exactly doing this. I generalized SysML1.4::block with my stereotype. Then my attribute is exactly the same as you said here, and I give it an initial name to be shown in toolbox. The name is not shown and instead it shows MyProfile::MyStereo(UML::Class). I think it is something related with `generalizing`, because everything else is same with other toolbox elements I created and they all work smoothly.
-
Can you post an image of what the problem is. You can't post directly on this forum, so you have to post it on a public image hosting site (such as imgur.com) and post the link here.
Geert
On the following link, I sent you the screenshot of my toolbox of my custom diagram. As you can see there, the name is not shown properly, instead it says Component::Component(UML::Class), and component generalizes SysML1.4::block. I could not find any difference with what KP suggested.
https://ibb.co/bNDc8jv
-
I see, and now a printscreen of your toolbox profile diagram and UML profile diagram
Geert
-
I see, and now a printscreen of your toolbox profile diagram and UML profile diagram
Geert
https://ibb.co/LrWwNr0
https://ibb.co/7tmF6hL
Component stereotype generalizes SysML1.4::block and the second ss shows the attributes I give in my toolbox. SwComponentPort is shown ok while the first attribute's name is not.
-
Your MDG isn't called Component. Or is it??
q.
-
Your MDG isn't called Component. Or is it??
q.
No, it is not called Component. and this part I get an error is a small part of my MDG technology. Everything else works fine. The unique difference for this element is that component does not extends something directly, it generalizes sysML1.4::block which extends UML::Class. I checked couple of times if I make a spelling mistake but it is not the case. My opinion is that there might be some kind of bug or another way to handle this when your certain stereotype generalizes something instead of extending something.
-
and to be more specific. When I drag and drop the element `component::component(UML::class) from my custom toolbox to custom diagram, I get everything I need from the element. There are no other problems with the element. The only problem is that I cannot see it's given name which I defined in the initial value of the corresponding attribute of the stereotype that extend ToolboxPage <<metaclass>>.
-
Thanks everyone for sharing ideas with me. While I am working on my MDG technology, the problem is suddenly solved after I regenerate my MDG technology(it is strange that its maybe 20th time I regenerate the technology).
-
For stereotypes that generalize an existing Stereotype from another profile, I still add the extends relation to the base metaclass (in this case Class) as well.
That helps when adding the stereotype to the toolbox using the profile helper.
This used to be mandatory in a previous version of EA.
Geert
-
Well, in https://ibb.co/7tmF6hL (https://ibb.co/7tmF6hL) you use Component as the MDG name (the one in front). That should be the MDG name.
q.
-
If you're specializing a stereotype from EA's SysML profile, it needs to be "SysML1.4::block". The attribute in the custom toolbox needs to be "YourProfile::YourStereo(UML::Class)". All case-sensitive.
I am not sure I followed what you say qwert, as KP mentioned, isn't it MyProfile::MySterotype()? I do not see MDG name here? what I understand by MDG name is the name of my custom technology. and a MDG technology may contain number of profiles and sterotypes. I do not think naming should be related to the MDG technology name.
-
The name must be yourProfileName::Component (and the brackets in case it's not unique for multi-extensions). But you wrote Component::Component.
q.