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

Difference between revisions of "AML"

(Installation)
(Install AML from CVS)
 
(13 intermediate revisions by the same user not shown)
Line 22: Line 22:
 
** Generate an ATL transformation for each matching rule.
 
** Generate an ATL transformation for each matching rule.
 
** Translate the modelFlow block into an Ant script specifying the transformation chain.  
 
** Translate the modelFlow block into an Ant script specifying the transformation chain.  
** Integrate ATL transformations from a Library.
+
** Integrate ATL transformations from a Library.  
  
 
* The AML Accuracy component enables to measure the precision, recall, and fscore of a strategy. How? by comparing an computed ''Equal model'' to an expected ''Equal model''.
 
* The AML Accuracy component enables to measure the precision, recall, and fscore of a strategy. How? by comparing an computed ''Equal model'' to an expected ''Equal model''.
Line 29: Line 29:
  
 
* HOTs take computed ''Equal models'' and generate ATL transformations. Each HOT adresses an application domain, e.g., model adaptation.
 
* HOTs take computed ''Equal models'' and generate ATL transformations. Each HOT adresses an application domain, e.g., model adaptation.
 +
 +
* The use of ATL makes it possible to invoke Java code from matching rules.
  
 
==Use cases==
 
==Use cases==
Please find AML applications on the ATL use case page:
+
Please find AML applications on the ATL use cases page:
  
* [http://www.eclipse.org/m2m/atl/usecases/modeladaptation Model Adaptation]
+
* [http://www.eclipse.org/m2m/atl/usecases/ModelAdaptation Model Adaptation]
  
 
==Documentation==
 
==Documentation==
Line 40: Line 42:
 
for Expressing Model Matching. In IDM ’09: Proceedings of the 5ère Journée sur l’Ingénierie
 
for Expressing Model Matching. In IDM ’09: Proceedings of the 5ère Journée sur l’Ingénierie
 
Dirigée par les Modèles, Nancy, France, 2009.</ref> presents the DSL constructs, this can help you to develop matching strategies in AML.  
 
Dirigée par les Modèles, Nancy, France, 2009.</ref> presents the DSL constructs, this can help you to develop matching strategies in AML.  
* [http://www.eclipse.org/m2m/atl/usecases/modeladaptation/AMLEdited_1024x720.htm The AML demo] shows the main AML functionalities.
+
* [http://www.eclipse.org/m2m/atl/usecases/ModelAdaptation/AMLEdited_1024x720.htm The AML demo] shows the main AML functionalities.
  
==Installation==
+
==Install AML from CVS==
  
 
'''Prerequisites'''
 
'''Prerequisites'''
  
AML overlaps of prerequisites of ATL 3.0 which are mentioned [http://wiki.eclipse.org/ATL/User_Guide#Installation here].
+
*''Java and Eclipse''
Therefore, AML requires ATL 3.0 and AMW. To install them, you need to download the [[Image:atl.psf|atl.psf]] file on your local disk, and then import the projects in Eclipse using : ''File->Import->Team->Team Project Set''
+
To know what Java and Eclipse versions you need to install, please check [http://wiki.eclipse.org/ATL/User_Guide#Installation here].
  
ATL 3.0 requires ANTLR and MDR, please find their installation instructions by clicking [http://wiki.eclipse.org/ATL/Developer_Guide#Install_ATL_from_CVS here].
+
*''CVS and SVN''
 +
Make sure your Eclipse version includes the CVS and SVN plugins.
  
Note that the project 'org.eclipse.gmt.weaver' shows compilation problems, this impacts the AMW GUI but not the AML functionalities.
+
*''EMF''
 +
Install [http://wiki.eclipse.org/EMF/Installation#Install_EMF EMF]
 +
 
 +
*''ATL 3.0 and AMW''
 +
The psf file mentioned below points to all the ATL and AMW plugins required by AML.
  
 
'''Install AML'''
 
'''Install AML'''
  
# Go to [https://bugs.eclipse.org/bugs/ the Eclipse bugzilla site]
+
To install AML (as well as ATL and AMW), you need to download the [[Media:aml.psf|aml.psf]] file on your local disk, and then import the projects in Eclipse using : ''File->Import->Team->Team Project Set''
# Look for the contribution tagged with the id 295274. To have access to the contribution, you simply need a bugzilla account. 
+
# Download the contribution attachment.
+
# Unzipped the AML plugin projects (those named org.eclipse.m2m.atl.research.aml.*) in the same workspace of ATL 3.0 and AMW.
+
# Go to the META-INF file of ''org.eclipse.gmt.weaver'', remove the dependency ''org.eclipse.gmt.am3.dsls.km3''.
+
  
 +
Go to the META-INF file of ''org.eclipse.gmt.weaver'', remove the dependency ''org.eclipse.gmt.am3.dsls.km3''. Note that the project 'org.eclipse.gmt.weaver' shows compilation problems, this impacts the AMW GUI but not the AML functionalities.
  
 
'''Test AML'''
 
'''Test AML'''
  
 
Please follow the instructions of the subsection ''Testing'' of [http://wiki.eclipse.org/ATL/Developer_Guide#Install_ATL_from_CVS Install ATL from CVS]
 
Please follow the instructions of the subsection ''Testing'' of [http://wiki.eclipse.org/ATL/Developer_Guide#Install_ATL_from_CVS Install ATL from CVS]
 +
 +
Import to the Runtime workbench the ''AMLLibrary'' project. Download such project by using the [[Media:aml-runtime.psf|aml-runtime.psf]] file.
 +
 +
Finally, we encourage you to look at the [http://www.eclipse.org/m2m/atl/usecases/ModelAdaptation Model Adaptation] use case. This includes a demo showing the main AML functionalities.
  
 
==Questions==
 
==Questions==

Latest revision as of 13:25, 7 December 2009

< To: AMW
< To: ATL

AmlLogoV2.png

The AtlanMod Matching Language (AML) is a Domain Specific Language developed by the AtlanMod team.

AML allows to express matching strategies which compute mappings between models. Mappings (also known as correspondences) can leverage essential model management tasks, among them, model transformation generation. AML is implemented on top of ATL and AMW.

AML extends the AMW matching use case. There, a matching strategy is a chain of transformations. Each transformation:

  • instruments a type of heuristic,
  • takes as input a set of models: the models to be matched (i.e., Left Model and Right Model), an Equal model that refers to Left and Right model, and a set of additional models,
  • and, yields an Equal model. Each Equal model basically contains a set of mappings and conforms to an extension of the AMW core metamodel.

AML Architecture

AML keeps the declarative flavor of ATL for expressing matching rules, and adds dataflow programming constructs for describing transformation chains. Figure 1. shows the AML architecture:

AMLArchitectureV2.png

  • The AML Compiler takes a given AML program and performs the following tasks:
    • Analyze the AML program (syntax and semantic).
    • Generate an ATL transformation for each matching rule.
    • Translate the modelFlow block into an Ant script specifying the transformation chain.
    • Integrate ATL transformations from a Library.
  • The AML Accuracy component enables to measure the precision, recall, and fscore of a strategy. How? by comparing an computed Equal model to an expected Equal model.
  • The AMW GUI allows users to manually refine Equal models.
  • HOTs take computed Equal models and generate ATL transformations. Each HOT adresses an application domain, e.g., model adaptation.
  • The use of ATL makes it possible to invoke Java code from matching rules.

Use cases

Please find AML applications on the ATL use cases page:

Documentation

  • The AML paper [1] presents the DSL constructs, this can help you to develop matching strategies in AML.
  • The AML demo shows the main AML functionalities.

Install AML from CVS

Prerequisites

  • Java and Eclipse

To know what Java and Eclipse versions you need to install, please check here.

  • CVS and SVN

Make sure your Eclipse version includes the CVS and SVN plugins.

  • EMF

Install EMF

  • ATL 3.0 and AMW

The psf file mentioned below points to all the ATL and AMW plugins required by AML.

Install AML

To install AML (as well as ATL and AMW), you need to download the aml.psf file on your local disk, and then import the projects in Eclipse using : File->Import->Team->Team Project Set

Go to the META-INF file of org.eclipse.gmt.weaver, remove the dependency org.eclipse.gmt.am3.dsls.km3. Note that the project 'org.eclipse.gmt.weaver' shows compilation problems, this impacts the AMW GUI but not the AML functionalities.

Test AML

Please follow the instructions of the subsection Testing of Install ATL from CVS

Import to the Runtime workbench the AMLLibrary project. Download such project by using the aml-runtime.psf file.

Finally, we encourage you to look at the Model Adaptation use case. This includes a demo showing the main AML functionalities.

Questions

Questions and comments about AML should take place on the eclipse.modeling.m2m Eclipse newsgroup for the M2M project (more details about this newsgroup there). Please, remember to prefix the subject of your AML-related posts with [ATL][AML].

Before posting, you should check if your question is not already answered in the newsgroup.

Acknowledgements

This work has been partially funded by the the FLFS ANR project and the ASCOLA team.

References

  1. Kelly Garcés, Frédéric Jouault, Pierre Cointe, and Jean Bézivin. A Domain Specific Language for Expressing Model Matching. In IDM ’09: Proceedings of the 5ère Journée sur l’Ingénierie Dirigée par les Modèles, Nancy, France, 2009.

Back to the top