Skip to main content

Notice: This Wiki is now read only and edits are no longer 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"

Line 1: Line 1:
 +
{{Backlink|AMW}}
 +
{{Backlink|ATL}}
 +
 
[[Image:AmlLogoV2.png|right]]
 
[[Image:AmlLogoV2.png|right]]
  
Line 5: Line 8:
 
AML allows to express matching strategies which compute equivalences between models. Equivalences (also known as mappings, correspondences) can leverage essential model management tasks, among them, model transformation generation. AML is implemented on top of [http://www.eclipse.org/m2m/atl/ ATL] and [http://www.eclipse.org/gmt/amw/ AMW].
 
AML allows to express matching strategies which compute equivalences between models. Equivalences (also known as mappings, correspondences) can leverage essential model management tasks, among them, model transformation generation. AML is implemented on top of [http://www.eclipse.org/m2m/atl/ ATL] and [http://www.eclipse.org/gmt/amw/ AMW].
  
AML extends the fundamental stated in [http://www.eclipse.org/gmt/amw/usecases/matching the AMW matching use case]. There, a matching strategy is a chain of transformations. Each transformation:  
+
AML extends [http://www.eclipse.org/gmt/amw/usecases/matching the AMW matching use case]. There, a matching strategy is a chain of transformations. Each transformation:  
 
* instruments a type of heuristic,  
 
* 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,
+
* 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. Equal models conform to an extension of the AMW core metamodel.
+
* and, yields an ''Equal model''. Each ''Equal model'' basically contains a set of equivalences and conforms to an extension of the AMW core metamodel.
  
 
==AML Architecture==
 
==AML Architecture==
Line 19: 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 transformation 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.
  
* The AMW GUI allows users to manually refine equal models.
+
* 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, model integration.
+
* HOTs take computed ''Equal models'' and generate ATL transformations. Each HOT adresses an application domain, e.g., model adaptation.
  
 
==Use cases==
 
==Use cases==
Line 34: Line 37:
 
==Documentation==
 
==Documentation==
  
* [https://gforge.inria.fr/plugins/scmsvn/viewcvs.php/*checkout*/Publications/2009/garces-jouault-cointe-bezivin_idm09.pdf?rev=9&root=atlantic-zoos The AML paper] presents the DSL constructs, this can help you to develop matching strategies in AML.  
+
* The AML paper <ref>[https://gforge.inria.fr/plugins/scmsvn/viewcvs.php/*checkout*/Publications/2009/garces-jouault-cointe-bezivin_idm09.pdf?rev=9&root=atlantic-zoos</ref> presents the DSL constructs, this can help you to develop matching strategies in AML.  
* The AML demo shows how to get working an AML project.
+
* [http://www.eclipse.org/m2m/atl/usecases/modeladaptation/demo/AMLEdited_1024x720.htm The AML demo] shows how to get working an AML project.
  
 
==Installation==
 
==Installation==
Line 56: Line 59:
  
 
Before posting, you should check if your question is not already answered in the newsgroup.
 
Before posting, you should check if your question is not already answered in the newsgroup.
 +
 +
==References==
 +
{{reflist}}

Revision as of 10:07, 13 November 2009

< To: AMW
< To: ATL

AmlLogoV2.png

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

AML allows to express matching strategies which compute equivalences between models. Equivalences (also known as mappings, 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 equivalences 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 how to get working an AML project.

Installation

Prerequisites

To install ATL 3.0 and AMW from the CVS. Please find the ATL installation instructions by clicking here, and the AMW instructions here.

Install AML

You need to download an aml.psf file on your local disk, and then you import projects in Eclipse using : File->Import->Team->Team Project Set

Test AML

As explained in the ATL installation instructions,

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.

References

Back to the top