Notes

1I really loathe writing such legal blurb since it should be obvious. By the way: German Law applies! (Does that change anything?)

2If you read my write-up about MDG creation, which formerly had been placed on Sparx’ community site and is no located on my own server, you may notice that I put things in PIM/PSM rather than CIM/PIM as in this book. The reason is that at time of writing the article I had a different focus on abstraction than this time. The issue with MDGs is that you just need a two-tier architecture to describe it while the systems you describe fit best with a three-tier matching the MDA exactly. So it’s a bit a matter of taste where to sort in a MDG.

3In former EA version you indeed needed to edit the file manually in certain cases. Luckily the need for that has gone in recent EA versions.

4I’m not sure since which EA release this is possible. AFAIK it was V10. If it does not work you need to export the package as XMI and import it at the new location with Strip GUIDs.

5The chosen type string is more for readability. alias is always interpreted to have string contents. So the type could also be left at the default int or set to blank. This applies for all system-defined attributes.

6Obviously some rare elements are not listed as I remember from various threads on the forum. If the forum search does not work for you (you are not the only one here) just post a new question and hope for one of the helpful Sparxians to answer.

7It’s a bit unlucky that the id of the MDG itself is also called CBM. This is hard to avoid coincidence.

8Yes. That’s simple with just two toolboxes. But you’re going to have much more and with each the chance for a typo is increased.

9After EA has been installed newly.

10I know the example does not make sense. But I usually have stereotypes Deprecated and TBD (to be done) which simply color the stereotyped element. See also chapter Multiple Metaclasses.

11I remember this behavior as inconsistent in the past. So I’m happy this has been fixed.

12See also my Shape Script book.

13See also my book Inside EA

14Note that the % wild card operator must be * if you use EAP files.

15I’m not a SQL guru. So please excuse me not adding an example here.

16Probably it would be a nice idea to create an add-in that allows to manipulate the definitions with a simple form. Anyone to go for that?

17https://notepad-plus-plus.org

18Adjust the column widths as you like.

19The reason for choosing Class is that Motor and Gear <<extend>> the metatype Class.

20See also the detailed description of this column in section Further fields in the QL definition below.

21Eventually you will encounter that EA throws an error for connectors not being UML compliant. I have not tested this, but I guess so. There is an option (again don’t ask me where since I keep forgetting it all time) which turns off strict checking to silence such messages.

22See also my Shape Script book.

23It can also be found in the example model.

24I know it looks broken :-)

25As a consequence ternary etc. will override the secondary stereotype shape. Unfortunately there is no rule as to which they are ordered so you can not assume anything than being random. Luckily I seldom had the need to assign more than the secondary stereotype to anything that I came across so far.

26For test purpose you can use the bike icon from the downloaded resources. Ugly, but ok for testing.

27In the picture I used a shorter path since the real path is too wide to be shown.

28I will elaborate on _metatype in a future issue of this book.

29See also my book Inside EA

30These menu positions tend to change with each EA release. You might need to poke around in any non-V12 version.