[AMW] weaving "n" metamodels and ATL transformation [message #470303] |
Tue, 30 June 2009 08:55  |
Eclipse User |
|
|
|
Originally posted by: ivanomalavolta.gmail.com
Hi,
I am developing an extension of AMW for metamodel composition
in which the composition operation is expressed through a weaving model
containing a set of composition operators (like matching, overriding,
inheritance, ecc...).
The "signature" of the composition operation is this:
c(MM1, MM2,... MMn) = MMcomposed
The idea behind that is to provide weaving models that compose "n"
metamodels, instead of the usual binary composers.
In the AMW-side everything works well, but I have some problem
specifying the ATL transformation that has to "execute" the composition
operation.
The main problem is that I do not know a priori how many metamodels will
be composed so I cannot develop an ATL transformation like the usual
ones that take as input also the woven models.
My idea is that of creating an ATL transformation with the following
header:
module test;
create OUT : ECORE from IN : AMW;
where OUT is the composed metamodel and IN is the weaving model
specifying the composition.
My question is if it possible to access the woven metamodels'
metaclasses without specifying them in the header of the transformation
That is, can I access the metamodel just by referring to the
corresponding WModelRef metaclass of the basic AMW metamodel?
I hope I have been clear enough!
Thank you,
Ivano
|
|
|
Re: [AMW] weaving "n" metamodels and ATL transformation [message #470306 is a reply to message #470303] |
Wed, 01 July 2009 16:38   |
Eclipse User |
|
|
|
Hello,
this is a quite interesting problem. I have been thinking about it a while
ago, but I didn't go any further.
I think this is a bit of a "hack", since you do not specify explicitly the
input models to be composed. Anyway, it may be a path to be explored (I
would like to see if it works!).
However, the models you refer to are not loaded, because you have only the
XMI-ID saved in the WElementRef elements. You could try to
programmatically load these models.
However, the transformation you write may be quite complex, since you
cannot explicitly use the model elements.
Another option would be to create a HOT (higher-order transformation),
that takes the weaving model as input, and generate an ATL transformation
as output, with the correct headings, as well as the ATL code related.
Regards,
Marcos.
|
|
|
Re: [AMW] weaving "n" metamodels and ATL transformation [message #470308 is a reply to message #470306] |
Thu, 02 July 2009 05:49  |
Eclipse User |
|
|
|
Originally posted by: ivanomalavolta.gmail.com
Hi Marcos,
thank you for the quick reply.
I thought about the HOT too, but it is something like a "free" overhead
of work since I need it just to create the right transformation header..
however it seems to be less hack-ish than the programmatic solution, so
I think I will go for the HOT! :)
I will let you know about my results (maybe also for publishing a new
AMW use case).
Regards,
Ivano
Marcos Didonet Del Fabro ha scritto:
> Hello,
>
> this is a quite interesting problem. I have been thinking about it a
> while ago, but I didn't go any further.
>
> I think this is a bit of a "hack", since you do not specify explicitly
> the input models to be composed. Anyway, it may be a path to be explored
> (I would like to see if it works!).
> However, the models you refer to are not loaded, because you have only
> the XMI-ID saved in the WElementRef elements. You could try to
> programmatically load these models. However, the transformation you
> write may be quite complex, since you cannot explicitly use the model
> elements.
>
> Another option would be to create a HOT (higher-order transformation),
> that takes the weaving model as input, and generate an ATL
> transformation as output, with the correct headings, as well as the ATL
> code related.
>
> Regards,
>
> Marcos.
>
>
>
>
|
|
|
Powered by
FUDForum. Page generated in 0.03303 seconds