Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Archived » M2M (model-to-model transformation) » [ATL] ATL 2006 Inheritance Problems
[ATL] ATL 2006 Inheritance Problems [message #12058] Tue, 23 January 2007 15:08 Go to next message
Eclipse UserFriend
Originally posted by: krausa.pst.informatik.uni-muenchen.de

Hello,

first I'd like to say that the rule inheritance feature in ATL 2006 works
very well and is really very usefull for my work (and surely for many
others too)!

But also I'd like to share some observations:

1. In an inheritance hierarchy of matched rules with imperative "do" parts
I would expect that the imperative parts of a super rule as well as of a
sub rule are executed. Accordings to my observations only the imperative
parts of the "leaf" rules are executed, i.e. the rules which have no
further sub rules. Inheritance of the imperative parts would be very
usefull in my opinion.

2. In a sub rule the declarations in the "using" part of a super rule are
not accessible which would also be very usefull.

3. Inheritance does not seem to work for lazy rules (as well as called
rules). The former would be very usefull because in some cases when an
element has to be matched several times, matched rules cannot be used.

Further, it would be interesting when refinement transformations are
possible with ATL 2006 as now I have to stick with ATL 2004 for refinement
transformations.

Thanks very much,

Andreas Kraus (formerly kraus_andreas_uwe in the old ATL mailing list)
Re: [ATL] ATL 2006 Inheritance Problems [message #15681 is a reply to message #12058] Wed, 07 February 2007 20:46 Go to previous message
Eclipse UserFriend
Originally posted by: maher.lamari.lip6.fr

Hi Andreas, Hi all



Thanks for sharing your observations.



First of all I would like to know if there is a document that describes the
inheritance mechanism in the ATL language.



Please, find below two simple rules Rule1 and Rule2. I have the following
observations / questions :



1- The result of execution of this below snippet indicates that both rules
were executed for each match. However, I was expecting that Rule1 will not
be executed because it is abstract.



2- As a second case, let's omit the keyword (abstract), the result of the
execution indicates that both rules were executed and that the target model
contains tables with the 'first exra string'. I was expecting that there
will be only tables with the 'second extra string' because the child rule
changed the value of the property name.





I would like to knwo if what I have expected is wrong ?





Thanks in advance !!





abstract rule Rule1 {



from

c : UMLClass!Class

to

out : RDB2!Table (

name <- c.name +'First Extra String'



)

}



rule Rule2 extends Rule1 {

from

c : UMLClass!Class

to

out : RDB2!Table (

name <- c.name +'Second Extra String'



)

}





Maher,





"Andreas Kraus" <krausa@pst.informatik.uni-muenchen.de> a
Previous Topic:[Announce] EclipseCon 2007 Registration
Next Topic:inject/extract ATL-0.2 file/ATL-0.2 model
Goto Forum:
  


Current Time: Tue Mar 19 08:40:07 GMT 2024

Powered by FUDForum. Page generated in 0.02857 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top