[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[news.eclipse.modeling.gmt.amw] Re: [ATL] what formalism to use to represent model transformation ?

Hi,

As Frédéric said, you can use AMW to represent model transformations in a higher abstraction level. We create different metamodel extensions with the desired structures, e.g., the mapping between classes and structural features, attributes, etc.

I have some precisions about a couple of use cases:

- the tool interoperability use case (http://www.eclipse.org/gmt/amw/usecases/interoperability/) has a relatively complex weaving model that allows to represent several different transformation expressions.

- the metamodel comparison use case (http://www.eclipse.org/gmt/amw/usecases/compare/) has simple kinds of links (equality between elements of the same type). The advantage is that the weaving models are created semi-automatically, and then translated into ATL.

- finally, we have created a simple metamodel extension that has structures very close to the ATL metamodel (called SimpleATL), e.g., rules, input and output elements, and bindings. You can get more information about it at http://wiki.eclipse.org/index.php/AMW#Graphical_development_of_ATL_transformations.

For the time being, we have developed transformations from weaving models into transformation models. We intend to do the opposite (from ATL to a more abstract representation) in a near future.


Regards,

Marcos D. Del Fabro


ps.: I am copying the message to the AMW newsgroup as well.


Frédéric Jouault wrote:
Hi,

 > I have a question non directly related to ATL: What is the most
 > appropriate formalism that can be used to represent a model to model
 > transformation ?
 > What is your experience with this ? Do you use UML ? and how ???

The best complete representation I can think of that would work for any ATL transformation is the ATL textual representation (i.e., the .atl file).


However, several AMW use cases (http://www.eclipse.org/gmt/amw/usecases/) show that model weaving is quite appropriate to visually represent transformations:


- completely: when a weaving extension can be used to represent everything that needs to be represented,

or

- partially: by mapping metamodel classes and structural features, but without detailing complex OCL expressions (you can generate the skeleton of the transformation), or by encoding them textually in the Properties view (which many UML tools do for OCL constraints).


Regards,

Frédéric Jouault