Author Topic: Tagged values  (Read 149 times)

qwerty

  • EA Guru
  • *****
  • Posts: 8956
  • Karma: +136/-123
  • I'm no guru at all
    • View Profile
Tagged values
« on: December 01, 2017, 09:47:55 pm »
I was pointed to this by a recent question in StackOverflow: tagged values do no longer exist in the UML 2.5 specs. The only real mention is on p. 205
Quote
When a Stereotype is applied to a model element, the values of the Properties have traditionally been referred to as tagged values.
That's it!

Now, what would that mean to EA? A concept that is used vastly in MDG does basically not exist in UML. How does that fit?

q.

P.S. Also, there is a constraint regarding stereotypes on p.278
Quote
/profile : Profile [1..1]{}
which EA obviously ignores.
« Last Edit: December 01, 2017, 09:53:03 pm by qwerty »

Uffe

  • EA Practitioner
  • ***
  • Posts: 1070
  • Karma: +81/-5
  • Flutes: 1; Clarinets: 1; Saxes: 5 and counting
    • View Profile
Re: Tagged values
« Reply #1 on: December 01, 2017, 10:28:07 pm »
I was pointed to this by a recent question in StackOverflow: tagged values do no longer exist in the UML 2.5 specs. The only real mention is on p. 205
Quote
When a Stereotype is applied to a model element, the values of the Properties have traditionally been referred to as tagged values.
That's it!

Now, what would that mean to EA? A concept that is used vastly in MDG does basically not exist in UML. How does that fit?

Well, they're actually mentioned in 19.2.3 as well. But that's neither here nor there.

The point is that the term "tagged value" may be considered obsolete, but the concept is most definitely not. It actually says as much at the beginning of same paragraph.

Quote from: UML 2.5, 12.3.3.4
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.

Stereotypes may have properties. Says so right there. The rest is just a clarification that what this version of the specification refers to as properties and property values, is what has traditionally been referred to as tag definitions and tagged values, respectively.

So no. Tagged values have not been removed from the standard. They're referred to as property values, and function the same as before.


/Uffe
My theories are always correct, just apply them to the right reality.

qwerty

  • EA Guru
  • *****
  • Posts: 8956
  • Karma: +136/-123
  • I'm no guru at all
    • View Profile
Re: Tagged values
« Reply #2 on: December 02, 2017, 05:17:59 am »
So "tagged values" are now "stereotype properties". That somehow makes sense. Shouldn't EA get its wording aligned with the UML specs?

However, that still leaves the question: what are those "free tagged values" which should be "stereotype properties"? Which stereotype do they belong to? And the same with the "free stereotypes" which, according to the specs, should belong to a profile.

q.

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 7730
  • Karma: +165/-21
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Tagged values
« Reply #3 on: December 02, 2017, 05:42:25 pm »
So "tagged values" are now "stereotype properties". That somehow makes sense. Shouldn't EA get its wording aligned with the UML specs?

However, that still leaves the question: what are those "free tagged values" which should be "stereotype properties"? Which stereotype do they belong to? And the same with the "free stereotypes" which, according to the specs, should belong to a profile.

q.

In UML 2.5 and 2.4.1 (maybe earlier as well, I didn't check) there is no such thing as a "free tagged value" or a "free stereotype".
A tagged value is always a property of a stereotype, and a stereotype always belongs to exactly one profile.

EA has historically allowed these floating tags and stereotypes, and it does still today, but if you use them your model won't be completely UML compliant.
In some of the xmi formats, stereotypes and tagged values are all mentioned at the end. In this format they have to be part of a profile, so EA invents a "default" profile to store them all.

Geert

qwerty

  • EA Guru
  • *****
  • Posts: 8956
  • Karma: +136/-123
  • I'm no guru at all
    • View Profile
Re: Tagged values
« Reply #4 on: December 02, 2017, 06:23:41 pm »
Which finally means: EA is NOT UML compliant. It allows to pollute a model with stereotypes and tagged values that don't relate to a profile. Partially you can prohibit "free stereotype" creation by turning on EA security. But TVs still lurk around without control.

q.

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 7730
  • Karma: +165/-21
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Tagged values
« Reply #5 on: December 02, 2017, 08:18:34 pm »
I don't think so.
I think "UML compliant" means that you can model UML according to the specification, and with EA you can.
There are loads of non UML things you can do with EA (databases, wireframes, BPMN,...) but that doesn't negate the fact that you can model UML Compliant models as well.

Now it would be good if there was some kind of option, similar to Strict Connector Syntax,  that would enforce all the rules of a given modeling language. That would really be a great feature (and much more needed then things like "Instant Chat", or "Charts" or, ...).

Geert


qwerty

  • EA Guru
  • *****
  • Posts: 8956
  • Karma: +136/-123
  • I'm no guru at all
    • View Profile
Re: Tagged values
« Reply #6 on: December 03, 2017, 01:18:28 am »
That's basically what I meant. EA's half baken restrictions to have compliant models are worth nothing if you otherwise can bypass the UML specs and create "something". There are a couple of concepts in EA which do not (or no longer) make sense. Like the View-restrictions (better have stereotypes), the stereotypes per se and the connected TVs. Those concepts should be streamlined - with strong view to the UML specs.

But what am I talking here?  :P

q.