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.


Messages - Paolo F Cantoni

Pages: [1] 2 3 ... 415
1
Instances of the type.

Where 5 is an instance of int, "" or "value" are instances of string.
So just to be clear...
Technically, when you apply a stereotype to an element, you create an instance of that stereotype, which references the target element (a property). The tag is a slot referencing the property for that element, and the tagged value is zero or more instances of the property type.

Have I got it right now?
Paolo


2
Hey Rich,

After you transfer the project, you need to compact the file.  This will reset the internal counters (MSA's equivalent of sequences).  What's happening is that the counters haven't been updated to show the last record added to the DB, so when you add a new record, there's already a record with that ID.

HTH,
Paolo

3
General Board / Re: Empty tags of a class not shown in diagram
« on: September 19, 2018, 04:20:12 pm »
By here I meant on this forum. If I remember correctly, with the two of us taking slightly different sides.

Yes, tagged values haven't been officially called that since UML 2.0 was released. However, it's still an easier term to use.

Technically, when you apply a stereotype to an element, you create an instance of that stereotype, which references the target element. The tag is a slot referencing the property, and the tagged value is zero or more of the type for the property.
By here I meant at my workplace...  ;)  The discussion being amongst an "Argument" of Architects.

BTW: did you mean: "and the tagged value is zero or more of the value(s) for the property."  If not what's the difference?

Paolo

4
General Board / Re: Empty tags of a class not shown in diagram
« on: September 19, 2018, 09:46:25 am »
It was an intentional change. Probably to clear some unnecessary clutter since there is no value there. (Although we have had some discussions here about whether an empty string is a value)

[SNIP]
nterestingly, we also had the same discussion.
The UML v2.5 specification has exactly 3 occurrences of the term "Tagged Value".

It says...
Just like a Class, a Stereotype may have Properties, which have traditionally been referred to as Tag Definitions. When a Stereotype is applied to a model element, the values of the Properties have traditionally been referred to as tagged values.

So, the things are actually Tags, the Tag Definitions define which values are possible against which Stereotypes.  If the Tag has a value, then that value is known as a Tagged Value.  However, it doesn't seem to preclude a Tag existing, but not having a value.

It seems to me that we've got the terminology wrong (myself included) when we talk about the tag as the tagged value.

Paolo

5
General Board / Re: Disable the abilty to Manage Add-Ins
« on: September 19, 2018, 09:33:27 am »
[SNIP] (it certainly wouldn't stop me  ;D).
[SNIP]
Geert
Yes, but you're Belgian - and not to be trusted!   ;) ;D

Paolo
PS: Almost as bad as the French!

PPS: This is an attempt at Aussie inter-mate humour (see the icon).  It may fail...

6
Bugs and Issues / Re: Bizarre bug in QuickLinker!
« on: September 18, 2018, 07:01:34 pm »
Thanks, Simon,

Food for thought!

Paolo

7
Bugs and Issues / Re: Bizarre bug in QuickLinker!
« on: September 17, 2018, 12:52:49 pm »
It's completely new and doesn't generate anything that earlier versions know to look for.

In terms of backwards compatibility, it will override an existing QuickLinker table if one exists. (If you have a metamodel only stereotypes not mentioned in the metamodel will be taken from the QuickLinker table.) So your technology can include both.
Thanks, Simon, for the clarification.

As I now understand what you've said, we can continue to generate the v13 QuickLinker section and overlay it with the V14 QuickLinker and distribute the one MDG until all our users have converted to v14.  Is that correct?  I am assuming that the new QuickLinker is in a new section.

Paolo

8
Bugs and Issues / Re: Bizarre bug in QuickLinker!
« on: September 17, 2018, 09:44:34 am »
I'm not astonished that Sparx still sticks to that dinosaur format for the QL. However, I wonder why people don't really insist on something more handy that really seem to use it. Go kick their butt. Or the trainer's to send a "feature" request which requires improving (actually I mean replacing) it.

q.
Q, in fact, they did. In v14 you can now model metamodel constraints to control the quicklinker.
A big improvement over the old quicklinker CSV definition.

I did notice however that the new method is not backwards compatible. No quicklinker in v12.1 when defined via meta model in v14.

Geert
Hi Geert,
As I mentioned elsewhere, we're looking to move to the v14 mechanism once we get some time.  We first have to manually reverse engineer our bespoke, handcrafted, MDG.  However, I am now concerned that we will lose backwards compatibility (we're not anticipating moving the users to v14 soon).  Does the v14 method still create the QuickLinker element (to be placed into the MDG file)?  Is it a formatting or a structural problem?

Paolo

9
[SNIP]
... (there are lots of shit architects out there that cause scepticism in business users).
"in titulo, ergo sum" (with apologies to Rene)  (I am thus titled, therefore I must be)

Happy Friday everybody!

Paolo

10
Bugs and Issues / Re: Bizarre bug in QuickLinker!
« on: September 13, 2018, 04:29:40 pm »
You have two choices now ... drink the bottle labelled "DRINK ME" or eat the cake labelled "EAT ME"
I have a litre bottle of Dalwhinnie 15yo Single Malt witing for me...

Paolo

11
Bugs and Issues / Do Package entries work in QuickLinker?
« on: September 13, 2018, 02:14:41 pm »
We wish to create QuickLinker entries for Packages (similar to the
Class,,@Element,,,@Element,,Nesting,Nstng,to,nesting¯,nesting¯,True,True,True,True,Nesting,0,,,,,

e.g.
Package,,@Element,,,@Element,,Nesting,Nstng,to,nesting¯,nesting¯,True,True,True,True,Nesting,0,,,,,

), but they don't seem to work. 

If we stereotype the packages and create the appropriate QuickLinker entry e.g.
Package,Fldr,@Element,,,@Element,,Nesting,Nstng,to,nesting¯,nesting¯,True,True,True,True,Nesting,0,,,,,


The entries work.  Smells like a defect to me...

Reported,
Paolo

12
Bugs and Issues / Bizarre bug in QuickLinker!
« on: September 13, 2018, 01:52:22 pm »
In investigating the use of @Element in the QuickLinker, we accidentally discovered (after many hours tracking) a bizarre bug!

You can comment out a line in the QuickLinker by the use of a leading //

So far so good!  We generate the VAST bulk of our QuickLinker file via an automated process and we sprinkle some comments to help break the extremely large file up into sections - such as:
//,//,·,//,·,·,·,·,·,·,·,·,·,·,·,·,·,·,,,,,

//,//XSD Simple Type,·,//XSD Simple Type,·,·,·,·,·,·,·,·,·,·,·,·,·,·,,,,,


Notice the use of multiple // in the same line!  We've had NO problems with these since we started automating.

We had an entry in the manually managed section of the QuickLinker file concerning @Element:
//@Element,,@Element,,,Class,,Nesting,Nstng,to,nesting¯,nesting¯,True,True,True,True,(Nesting),0,,,,,
 //Doesn't Work!   Source Element type needs to be concrete!
We placed this at the start of the section where we were manually managing the concrete source types such as Activity,,@Element,,,@Element,,Nesting,Nstng,to,nesting¯,nesting¯,True,True,True,True,Nesting,0,,,,,

Class,,@Element,,,@Element,,Nesting,Nstng,to,nesting¯,nesting¯,True,True,True,True,Nesting,0,,,,,

To remind us of the issue.

We had the concrete sources working, and then added the comment.  Sometime later, we found the sources weren't working anymore - although AS USUAL there was NO indication that there was a problem.
After many hours of debugging we tracked it down to:
//@Element,,@Element,,,Class,,Nesting,Nstng,to,nesting¯,nesting¯,True,True,True,True,(Nesting),0,,,,,
 //Doesn't Work!   Source Element type needs to be concrete!
(on the same line)
Will KILL any following lines in the QuickLinker file, whereas
//@Element,,@Element,,,Class,,Nesting,Nstng,to,nesting¯,nesting¯,True,True,True,True,(Nesting),0,,,,,

//Doesn't Work!   Source Element type needs to be concrete!
(on separate lines)

Doesn't!  How Bizarre!!!

Reported,
Paolo

13
No, you can't change the metatypes in a profile.

My only recommendation is to use a template package.
The profile only deals with stereotypes (that's why they're in the <Stereotype></Stereotype> section.  ;)).  But more seriously, the element that you are placing on the diagram and into the model is a null stereotyped instance of the metaclass (not the metaclass).

You're therefore caught in a Catch-22.  You can't define a null stereotype, because the metaclass isn't specified until after the stereotype is identified in the MDG.  IIRC you can't specify multiple entries with the same stereotype.

As Simon says, you have to use a template package to create a null stereotyped holotype therein to specify how to render it.

A million years ago, I asked for the facility to create null stereotyped shapescripts, but to no avail.  It would require a DB change (at least) to change the primary key for t_stereotypes to allow null stereotypes.

Paolo

14
General Board / Re: Create my own custom Diagram
« on: September 13, 2018, 09:36:51 am »
That looks a bit difficult. Is it? Is it something I can do within minutes, hours or days? I don't really want to spend days learning any scripting language.
With MDG profiles, you are NOT scripting, you are God playing with the universe...  ;D  It's a modelling universe specification.  8)
In my experience, worth spending a "couple of days" ;)  Learning about what's going on.

Paolo

15
Is there any way to update a model that was generated from an ODBC source?

I have worked the generated model diagrams and added documentation to entities in the notes and now I want to update the model as it changes in its implementation environment.  I need the import from ODBC to find my existing model and update the entities instead of replacing them and also leave the notes field contents as is.

How can I do this?
We eventually had to create our own process - using a merging DB to allow us to merge the incoming DB structure with the existing model.  The EA process is about reverse engineering NOT synchronisation.  Synchronisation is a LOT harder (and generally the province of "heavy lifting" RDBMS managers - such as Embarcadero ER Studio).  I haven't used the process for many many years, but it took a while to develop.  It's not rocket science, but it is NOT trivial.

Paolo

Pages: [1] 2 3 ... 415