Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Archived » M2M (model-to-model transformation) » [ATL] Using EMF for translation
[ATL] Using EMF for translation [message #44237] Mon, 04 June 2007 22:16 Go to next message
Eclipse User
Originally posted by: browngr3.msu.edu

Hello,

First some background: I am working on a project that is supposed be
used to convert from XMI-encoded UML produced by a tool such as ArgoUML
to an arbitrary target language. Target languages include Java and
Promela for the Spin model checking tool. I am right now in the
research/design phase. I want to use ATL for part of this process.

While I'm working on planning this project, I am learning about EMF.
What it looks like is that EMF would support conversion of class
diagrams from UML.

For some of the transformations that we are interested in, we need to
use information inn UML state diagrams.

Do you know of a way/method/technology that maintains that state diagram
information in the EMF? Would it make more sense to eschew the use of
EMF and instead use MDR to translate the UML to MOF for further
processing with ATL and TCS?

This is a rather important thing, as our most important target languages
is probably Promela.

Thanks for any help,

Greg Brown
Re: [ATL] Using EMF for translation [message #44919 is a reply to message #44237] Wed, 06 June 2007 18:50 Go to previous message
Frédéric Jouault is currently offline Frédéric Jouault
Messages: 572
Registered: July 2009
Senior Member
Hello,

> First some background: I am working on a project that is supposed be
> used to convert from XMI-encoded UML produced by a tool such as ArgoUML
> to an arbitrary target language. Target languages include Java and
> Promela for the Spin model checking tool. I am right now in the
> research/design phase. I want to use ATL for part of this process.

This kind of scenario is indeed within the scope of model transformation
with AMMA/ATL. I am mentioning AMMA here, and not only ATL, because you
generally need other AMMA components: TCS for projections, AM3 to chain
transformations (e.g., with ant tasks), etc.

As a matter of fact, although model transformation is key to any model
engineering approach, it is rarely enough because your source and target
rarely both reside in the model engineering technical space (i.e., you
need more than XMI input and output).


> While I'm working on planning this project, I am learning about EMF.
> What it looks like is that EMF would support conversion of class
> diagrams from UML.

Note that, although XMI is an interchange standard, there are many
incompatible versions (and implementations) of it. Therefore, for some
UML tools, it may not be possible to directly load the diagrams in EMF.

However, using projection techniques (e.g., the XML injector and ATL
transformations), it is always possible, even if it is sometimes a bit
more complex than simply relying on EMF XMI reader.

Moreover, for some UML tools of which EMF cannot read the output, MDR
may be used. For instance, the Poseidon UML tool uses MDR. Therefore,
any model created with it is compatible with the ATL MDR driver.

I know that the ArgoUML developers had planned to use MDR, but I do not
know whether they have done so yet. If it is the case, then you may want
to use MDR to read ArgoUML models. Please let us know about this issue
if you investigate it for your work ;-).


Because it is possible to use MDR for source models and EMF for target
models (or any other driver for that matters), you can choose precisely
how you want to handle your models.


> For some of the transformations that we are interested in, we need to
> use information inn UML state diagrams.
>
> Do you know of a way/method/technology that maintains that state diagram
> information in the EMF?
> Would it make more sense to eschew the use of
> EMF and instead use MDR to translate the UML to MOF for further
> processing with ATL and TCS?

State diagrams, as well as any other diagrams, are normally stored in
the same XMI file, and can therefore be transformed in the same way
class diagrams are.

You may want to have a look at, for instance, the following ATL scenario:
http://www.eclipse.org/m2m/atl/atlTransformations/#UMLSD2STM D

Other scenarios also deal with other parts of UML.


You usually do not need to use MDR because of ATL, which works
independently of the actual model handler. As I said above, you may
however need MDR to read (or write) some XMI files incompatible with EMF.



Moreover, you may want to have a look at Topcased
(http://topcased-mm.gforge.enseeiht.fr/website/index.html) and Papyrus
(http://www.papyrusuml.org/), two UML tools based on the UML2 Eclipse
plugin (based on EMF).


> This is a rather important thing, as our most important target languages
> is probably Promela.

I do not expect you to encounter any big issue with such a scenario.

Please let us know about your progress on this project, as we are quite
interested about it, and as we might also be able to help ;-). You may
also want to consider publishing your scenarios as ATL use cases
(http://www.eclipse.org/m2m/atl/usecases/) once you get them working.


Best regards,

Frédéric Jouault
Previous Topic:[ATL] Standalone ATL execution with UML
Next Topic:[ATL] New ATL use case: QVT to ATL Virtual Machine Compiler
Goto Forum:
  


Current Time: Thu Oct 02 10:38:02 GMT 2014

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

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