Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

AM3/Ant Tasks

< AM3
Revision as of 06:54, 31 January 2007 by Frederic.jouault.univ-nantes.fr (Talk | contribs) (added references to ATL extractor example)

< To: ATL
< To: AM3

This page describes the ant tasks provided by AM3.

am3.loadModel

Description

This task is used to load a model. This model may be a terminal model or a metamodel. The metametamodels are typically not loaded with this task since they come bundled with a model handler.

Parameters specified as attributes

Attribute Description Required Default value
name Name of model in task context Yes None
metamodel Name of metamodel in task context Yes None
path Path of file to load Yes None
modelHandler Model handler of loaded model No EMF

Parameters specified as nested elements

Examples

<am3.loadModel modelHandler="EMF" name="News" metamodel="MOF" path="/org.eclipse.am3.zoos.atlantic/News.ecore" />
<am3.loadModel modelHandler="EMF" name="IN" metamodel="KM3" path="/org.eclipse.am3.zoos.atlantic/Amble.km3">
 <injector name="ebnf">
  <param name="name" value="KM3" />
 </injector>
</am3.loadModel>
<am3.loadModel name="myXML" metamodel="XML" path="/test/testQuery.xml">
 <injector name="xml" />
</am3.loadModel>

am3.saveModel

Description

This task is used to save a model.

Examples

<am3.saveModel model="myXML" path="/test/opop.xml">
 <extractor name="xml" />
</am3.saveModel>
<am3.saveModel model="news_model" path="/test/news.ecore" />
<am3.saveModel model="IN" path="/test/MyKM3.km3">
 <extractor name="ebnf">
  <param name="format" value="KM3.tcs"/>
  <param name="indentString" value=" "/>
  <param name="serializeComments" value="false"/>
 </extractor>
</am3.saveModel>

Example using an ATL extractor, executing query to generate a text file (from the build folder of the Atlantic Raster Zoo):

<am3.saveModel model="target" path="${targetModel}">
 <extractor name="atl">
  <param name="queryPath" value="${targetPath}build/DOT2Text.atl"/>
 </extractor>
</am3.saveModel>

am3.atl

Description

The purpose of this task is to execute an ATL transformation. The models used by a transformation are referenced by their IDs as defined at their loading time (see AM3_Ant_Tasks#am3.loadModel).

There is an exception for metametamodels, which are typically already available from the model handler. A metametamodel is referenced by a string composed of a percent character (i.e. '%') followed by the name of the model handler. For instance: '%EMF' refers to Ecore and '%MDR' refers to MOF 1.4.

Parameters specified as attributes

Attribute Description Required
path Path of ATL transformation to run Yes
allowInterModelReferences Boolean value that determines whether or not references between different EMF models are possible No

Parameters specified as nested elements

inModel

Attribute Description Required
name Name of model in transformation context Yes
model Name of model in task context Yes

outModel

Attribute Description Required
name Name of model in transformation context Yes
model Name of model in task context Yes
metamodel Name of metamodel in task context Yes
path Name of the output file (mainly needed for filename extension) Yes

library

Attribute Description Required
name Name of library in transformation context Yes
path Path of library Yes

Examples

<am3.atl name="/AMMA-Tools/TCS2Problem.atl">
 <inModel name="IN" model="metamodel.tcs"/>
 <inModel name="TCS" model="TCS"/>
 <inModel name="MM" model="metamodel.km3"/>
 <inModel name="KM3" model="KM3"/>
 <inModel name="Problem" model="Problem"/>
 <library name="KM3Helpers" path="/AMMA-Tools/KM3Helpers.asm" />
 <library name="strings" path="/AMMA-Tools/strings.asm" />
 <outModel name="OUT" model="metamodel.pbs" metamodel="Problem"/>
</am3.atl>

Launch configuration information

In the launch configuration of your ant script, you should select the option "Run in the same JRE as the workspace" in the tab "JRE".

Back to the top