[gme-users] RE: [udm-users] MetaGME / UDM UML Connection issue
Akos Ledeczi
akos.ledeczi at vanderbilt.edu
Wed Apr 20 17:18:14 CDT 2005
That's an oversight aka bug. BTW, option 2 is not legal UML... Akos
Matthew J. Emerson wrote:
> Actually, it looks like style 2 below screws up the code generated by
> the BONExtender, not just the UDM framework. Why isn’t it disallowed
> by constraint in MetaGME?
>
> --Matt
>
> ------------------------------------------------------------------------
>
> *From:* Matthew J. Emerson
> *Sent:* Wednesday, April 20, 2005 10:24 AM
> *To:* udm-users; gme-users
> *Subject:* [udm-users] MetaGME / UDM UML Connection issue
>
> I’m having an issue with connections in these two metamodeling languages.
>
> In MetaGME, if you need multiple classes to be associated through the
> same kind of connection, there are two ways to specify it. The first
> is to use inheritance to group together those types which play the src
> role and those types which play the dst role (*style 1*):
>
> The other way to do it is to reuse the association class (*style 2*):
>
> Both of these are perfectly legal in MetaGME and result in the same
> GME paradigm. However, the second style is not legal in UDM-style UML.
> Here’s the UML generated with MetaGME2UML:
>
> Notice the duplicated role names. The UDM code generator apparently
> counts on the role names being unique to avoid namespace collisions.
> It’s possible to change the role names by hand to be unique, but I
> would probably run into another problem because MetaGME2UML writes
> changes into the ‘General Preferences’ field of each Connection:
>
> I suspect that the role names in the MetaGME metamodel must correspond
> to the role names in the UML metamodel in order to use the MGA backend
> with UDM. I haven’t looked at the UDM source code, but I doubt it’s
> set up to search for multiple sName / dName pairs for each Connection
> in the GME registry.
>
> Not knowing this, I’ve built a large, complicated metamodel which uses
> style 2 about 15 times. I thought everything was peachy until I
> decided I wanted to do something with UDM…and I ran into this gotcha.
> Somehow this discrepancy between the MetaGME and UDM UML needs to be
> addressed, but it’s not obvious which language should change: MetaGME
> or UDM UML. Should we limit the expressiveness of MetaGME using a
> constraint so people don’t run into trouble with UDM, or should UDM
> step up and support everything which can be expressed in MetaGME?
>
> Maybe it would be best to change the MetaGME2UML interpreter to be
> more intelligent about how it handles connections so that neither UDM
> nor MetaGME has to change. Somehow that interpreter should recognize
> the use of style 2 and converts it automatically to style 1. This
> would be really easy if MetaGME2UML were a GReAT transformation.
>
> Matt Emerson
>
> ISIS-Vanderbilt University
>
>------------------------------------------------------------------------
>
>_______________________________________________
>gme-users mailing list
>gme-users at list.isis.vanderbilt.edu
>http://list.isis.vanderbilt.edu/mailman/listinfo/gme-users
>
>
More information about the gme-users
mailing list