Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - Uffe

Pages: [1] 2 3 ... 30
Suggestions and Requests / Drop element: instantiate contained classifiers
« on: November 10, 2020, 07:36:29 pm »
Hey everybody,

When you drag a classifier element onto a diagram, you can choose whether to drop it as a link, an instance or something context-specific (generalization, partition, etc).

If you elect the instance and the classifier has embedded elements (ports, activity parameters, etc, referred to as "structural elements" in the dialog) you are given the option of creating corresponding embedded elements in the instance. These may be instances of the classifier's embedded elements (action pin), or they may be essentially copies of them (ports).

But if you the classifier contains another classifier, that contained classifier is completely ignored.

I think there should be an option to create instances of contained classifiers.

So if I have a class A and a class A::B, and I drop A onto a diagram and select instance, I can get not just :A but also :A :: :B.
If that makes sense. :)


Suggestions and Requests / MDG Wizard: make checkboxes sortable
« on: October 21, 2020, 05:51:09 pm »

In the MDG Technology Creation Wizard, there are several pages which list content of a certain type (scripts, searches, etc) along with checkboxes allowing you to select or deselect each one for inclusion in the technology. If you are using an existing MTS file, these checkboxes will reflect the selections from that file.

It would be useful to be able to sort these lists by selection status, so that if you have a large number of searches for instance, you can get a quick overview of what is (or will be) included in the technology.


Suggestions and Requests / Reset project GUID
« on: September 30, 2020, 05:10:33 pm »
Hello project admins,

When saving a copy of a project (aka copying a base project), you have the option of resetting GUIDs. However, this resets all GUIDs in the project. There is one which should have its own separate option: the project GUID itself.

I'm not sure where this GUID is stored, but you can retrieve it from the Object Model Api attribute Repository.ProjectGUID.

Now base project copying might not be used that much, but consider project transfers. In a transfer, the project GUID is retained.

Transferring projects can be done for different reasons: backing up the old project, testing something in a throwaway copy, or setting up a new project with most of the contents from the old. If you're setting up a new project you don't want the project GUID to remain, even though you might well want the project to contain the same-GUID model content.

Now resetting GUIDs is a sensitive operation, so I don't think it should be available in the project admin GUI.
Instead, it should be an option during transfer:
  • Do not reset GUIDs (the backup and throwaway cases, as today)
  • Reset project GUID only (the new-project-with-same-content case)
  • Reset all GUIDs
And the checkbox in the Save As dialog should be replaced with a similar set of options.

The default should be to reset the project GUID.

I'm right, right? Makes perfect sense to me.


Suggestions and Requests / Show stereotypes in browser
« on: September 24, 2020, 08:30:39 pm »

There is an option to show or hide stereotype names in the browser window. It would be useful if this were more fine-grained.

At present, you can only switch it on/off globally. I'd like to be able to select
  • Package
  • Diagram
  • Element
  • Embedded element
  • Feature
... sterotype presentation independently of one another. (So checkboxes, not a dropdown list.)

And yes, diagrams do have stereotypes although they're not commonly used. But they're in the metamodel, and should be available for presentation.
Default off, I'd suggest.

It could also be useful to introduce another special attribute to the «metaclass» class in profile models, something like _HideStypeBrowser. This would hide the stereotype name in the browser (regardless of the switches above).
Possibly it could be interpreted in conjunction with the «stereotype» class icon attribute, so that you could only perma-hide a stereotype name in the browser if you have specified an icon for the stereotype.

Kind of thing?


General Board / Forum possibly breached
« on: September 21, 2020, 09:34:52 pm »
Hey guys,

I just received a scam email quoting the address and password I'd used for this forum (though not the forum itself).
It might be a good idea to reset your passwords.


General Board / Partnership and extension development
« on: September 17, 2020, 11:29:59 pm »
Hi everybody,

I'm in the process of developing an extension or two, and to that end I consulted a lawyer to help me write the license agreement. They had a look at the EA EULA and said I might actually need to be a Sparx partner in order to distribute my own third-party extensions.
I sent an e-mail to Sparx marketing, but it's been almost a week now and I haven't even had an acknowledgement that someone's read it.

So: does anyone know of a different (better) way to contact Sparx concerning the partnership program?
I used the address provided on several pages, like the Technology Partners page.

Or, if someone from Sparx would care to enlighten us: is it permitted under the license agreement to manufacture and sell extensions without being a partner?
Sparx responses only on this one, please. Idle speculation into the interpretation of someone else's license agreement is legally meaningless.



Suggestions and Requests / Database schema import: column visibility
« on: September 17, 2020, 09:03:32 pm »

EA's database modelling is not implemented as a UML profile with tagged values to represent what can't be expressed using the built-in metamodel, but rather as a hack which reinterprets certain properties of attributes (= columns) and uses operations in a way that I for one am unable to square with the UML.

Since this is the case, and since visibility doesn't apply to relational databases, wouldn't it be a good idea to make use of attribute visibility in imported database models?
Something along the lines of:
  • Public: foreign keys, and columns used in other tables' foreign keys
  • Protected: primary keys
  • Private: everything else
What purpose would this serve?

Well since the data modeling diagram is not a hack but just another diagram type, it has no special features to reflect the fact that its contents are tables. So you can't choose to just display foreign or primary keys, but you can restrict what "class members" are shown based on visibility.

So with this addition, you could use the "visible class members" feature to choose which categories of column to display: those relevant in the context of other tables (foreign keys and their targets), primary keys, and/or regular data columns.

I think this is a brilliant idea, and not hard to implement either.


Bugs and Issues / DB Schema import radio buttons
« on: September 17, 2020, 05:15:55 pm »

In 15.0.1512, if you fire up the DB schema import dialog there are two radio buttons in the lower right:
  • Synchronize existing classes
  • Import as New objects
When the dialog opens, neither is selected.

The normal way this works in any well-behaved Windows application is that the developer doesn't pick a default but requires the user to make a choice. But not in EA. You can run the dialog with neither button selected. Which behaviour you get is undefined.

Is this still the case in 15.2, can anyone check?



As an MDG technology developer, I want to be able to add the name of document generation templates to the generated output so that I can find which template produces which output when things go wrong. (See? I can do this agile bullsh*t too.)

When generating a document, there should be an additional checkbox "Include Template Names in Report".
An additional line should then be output before and after each template's content.

The template names should be generated as hidden text.

The template line should follow the scheme
[BEGIN|END] <template_type> <template_source>::<template_name>
<template_type> :- [template|<custom_type> fragment]|style sheet|cover page|table of contents]
<custom_type>   :- [custom SQL|custom script|template selector|document script|custom XML]
where <template_source> is either the name of the technology containing the template, or the relevant term as used in the Resources window ("System", "User", etc).

Once the document has been generated, you can switch on hidden text in Word to see the template trace, or switch it off to see the document as generated.

Would save hours of debugging, especially for beginners, thus lowering the adoption threshold. (Oh yes, I am also fluent in managerish and marketese.)


Suggestions and Requests / Support default icons in toolboxes
« on: September 15, 2020, 12:01:42 am »

In MDG technology development, if you specify an icon in an element or connector stereotype definition, that icon will be used in both the browser and the toolbox. You can set a different icon in the toolbox, but crucially, you can't specify that the default icon should be used in the toolbox.

So the support for custom icons looks like this:
  • Default in browser + default in toolbox: supported (don't specify any icon)
  • Default in browser + custom in toolbox: supported (specify an icon in the toolbox, but none in the stereotype)
  • Custom in browser + same custom in toolbox: supported (specify an icon in the stereotype, but none in the toolbox)
  • Custom in browser + different custom in toolbox: supported (specify an icon in the stereotype, and a different one in the toolbox)
  • Custom in browser + default in toolbox: not supported.

There seems to be a simple way to add support for this fifth case: if you add an icon to the toolbox in the normal way (by creating a new stereotype class with the special icon attribute, extending ToolboxItemImage) but leave the icon attribute's value empty, EA could interpret this to mean "use the default icon for the stereotype's metaclass in the toolbox even if there is a custom icon in the stereotype".

This change will not likely break existing toolbox profiles because there can't be many out there who have gone to the trouble of setting up the structure for a custom toolbox icon, but then left it empty.



Bugs and Issues / Start page: recent, pinned and watched
« on: September 10, 2020, 05:45:23 pm »
Hi all,

I had a look at the start page. I guess someone should.

#1: Open and Launch are good. Keep those.

#2: Phraseology. On the page, it's "Open repository", but in the context menus we find
          "Open Project"
          "Pin Connection"
          "Launch" without a noun
          "Remove Selection" (Recent list)
          "Remove" without a noun (Pinned list)
          "Watched Models".
      Pick one.

#3: Middle mouse button should launch the connection in a new session.

#4: It should be possible to show connection strings from the Recent list.
      Right now you can only show them from Pinned.

#5: What is the use case for editing a pinned connection string?
      Why does that case not also apply to a recent one?

#6: Showing the connection string in a tooltip would be nice, instead of having to right-click and select a menu item.
      The menu item could be retained for editing the connection string.

#7: If you Pin a connection in the Recent list, it moves to Pinned. If you then Remove it from there, it does not move back to Recent.
      It should, provided it has been accessed sufficiently recently of course.

#8: If you try to open a connection and it can't be found, EA should offer to remove it from the list.

#9: You can add a recent connection to the Watched list, but not a pinned connection.

#10: If you add a connection to the Watched list, there is no indication that it's on the list.
        If you then right-click the same connection, the menu item Add to Watched List is still enabled but doesn't do anything.

#11: There should be a menu item Remove from Watched List.

#12: The Help button in the Manage Models dialog (which contains the Watched list) doesn't do anything.

#13: The menu items Configure Watched Models and Add to Watched List open a dialog called Manage Models.

This is all on 15.1.1528. I'm waiting for 15.2 to be out of beta (actual, not marketing) before I upgrade.


General Board / EA in China?
« on: August 18, 2020, 01:44:37 am »
Hi everyone,

I ran a Google search for   Sparx EA RefGUID tagged value   and the third hit was from, which seems to host a copy of the entire EA user guide, in English.

If you go to and click EA it'll take you to a landing page that looks nothing like Sparx' own site and is in Chinese, with a few words of English, including "MBSE", "Prolaborate", "Whiteboard Diagram" and "EA15.2 Bate". And 5 people seem to have liked it, presumably on WeChat? Can't tell.

Out of curiosity, is this kosher?

Is EA a preferred UML tool in China or something?
There is a link to which also seems to feature EA prominently.


Hello everyone,

This is me asking a question rather than doing a test implementation to find out how something works for myself.
I don't need suggestions on how to do anything differently, just if someone knows how EA deals with the following situation it'll save me some time.

Let's say I've implemented «somestereotype» which applies to Interface.
Let's say that in a different stereotype I've implemented a tagged value type SomeInterfaceRef of type RefGUID, targeting «somestereotype».

Let us now say that I've built up a model wherein my «somestereotype» Interfaces are structurally located inside Components. So there's a package, with Components, with «somestereotype» Interfaces.
No realizations, no provided/required, just plain ol' structural containment.

If I now want to set/change a SomeInterfaceRef tagged value and hit the ellipsis button to bring up the selection dialog, what will EA do with the Components?
Will EA show the Components but not allow them to be selected?
Or will it filter out the Components and present all the «somestereotype» Interfaces in one long list under the package?

Many thanks,


Automation Interface, Add-Ins and Tools / Profile ID and FQ stereotypes
« on: August 17, 2020, 10:26:14 pm »
Hi there!

When you publish a profile (not an MDG technology), the profile gets an ID, which is a nine-digit hex number with a hyphen thrown in before the last digit. This code is never shown in the GUI, but it is retained when you overwrite the same file.

A) What is it for?
B) Does it have any bearing at all on fully-qualified stereotypes?
C) Or on anything?
D) If you completely replace all contents of the profile, and even the name, and then save it with the same ID, what will happen when that profile gets used in a project where the old one had already been used?
E) If you change the ID of a profile that's in use, what will happen?

(The technology also has an ID, but that is set by the toolsmith, is shown in the technology creation wizard, and has specific, though poorly documented, uses. I'm talking about the profile ID here.)


Bugs and Issues / Current date in shape scripts
« on: August 17, 2020, 07:07:54 pm »
Hey there,

Is there a way to access today's date from within a shape script?
It'd be nice to be able to draw a cross over things which contain a date tag whose value is in the past.

Spanish aunt,


Pages: [1] 2 3 ... 30