Author Topic: BUG: inconsistent stererotype names  (Read 694 times)

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 5874
  • Karma: +71/-77
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
BUG: inconsistent stererotype names
« on: November 02, 2007, 02:10:27 am »
This one almost wins the prize for the dooziest bug...  Took me an hour to track down why it occurred.

You have a stereotype (from importing an XSD) called XSDsequence.  I want to give it a particular rendering so I go into the Settings|UML... Stereotypes dialog page and make the necessary changes...  I accidentally change the name of the stereotype so I copied and pasted its name from the Notes text.  I press Save and I get the message:
<<XSDsequence >> for class has already been defined.  Do you wish to overwrite it?

Never got that before?  But yes, I want to overwrite it!

Switch back to the diagram, my rendering isn't being applied...  ???  After an hour of trying to figure out why... tests, cursing etc... I notice that in the stereotypes list I have two instances of XSDsequence one for associations and one for classes.  However in the list one renders as XSDsequence and the other as XSDsequen...  ???

How can that be?  The width of the column is just big enough for XSDsequence.  So Why XSDsequen...?  Why is it different?  Expand the column - they look identical!  Open the one that showed XSDsequen... and I find a space on the end!  Remove the space, and everything works!

But, because EA is self-inconsistent all over the place, I got the message above (how many of you spotted the trailing space the first time?). One part of EA says <<XSDsequence >> is the same as <<XSDsequence>>  (hence the message) and most other parts don't - since it isn't.

You have been warned!

Consistency, Consistency, Consistency! TM

[size=10]Using EA in spite of EA, NOT because of it![/size] TM[/color]
Inconsistently correct systems DON'T EXIST!
... Therefore, aim for consistency; in the expectation of achieving correctness....
Helsinki Principle Rules!