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)
(Acknowledgement)
Line 72: Line 72:
  
 
==Acknowledgement==
 
==Acknowledgement==
This work has been partially funded by the ["http://flfs.emn.fr/"| the FLFS ANR project] (Families of Language for Families of Systems).
+
This work has been partially funded by the [http://flfs.emn.fr/| the FLFS ANR project] (Families of Language for Families of Systems).
  
 
==References==
 
==References==
 
{{reflist}}
 
{{reflist}}

Revision as of 04:09, 17 November 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.

Use cases

Please find AML applications on the ATL use case 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.

Installation

Prerequisites

AML overlaps of prerequisites of ATL 3.0 which are mentioned here. Therefore, AML requires ATL 3.0 and AMW. To install ATL 3.0 and AMW, download the File:Atl.psf file on your local disk, and then import the projects in Eclipse using : File->Import->Team->Team Project Set

ATL 3.0 requires ANTLR and MDR, please find their installation instructions by clicking here.

Note that the project 'org.eclipse.gmt.weaver' shows compilation problems, this impacts the AMW GUI but not the AML functionalities.

Install AML

  1. Go to the Eclipse bugzilla site
  2. Look for the contribution tagged with the id 295274. To have access to the contribution, you simply need a bugzilla account.
  3. Download the contribution attachment.
  4. Unzipped the file AMLTools.zip in the same workspace of ATL and AMW.


Test AML

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

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.

Acknowledgement

This work has been partially funded by the the FLFS ANR project (Families of Language for Families of Systems).

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