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"

(New page: ===The AtlanMod Matching Language===)
 
(The AtlanMod Matching Language)
Line 1: Line 1:
===The AtlanMod Matching Language===
+
The AtlanMod Matching Language (AML) is a DSL for expressing matching strategies. A matching strategy allows to compute equivalences between models. Equivalences (also known as mappings, correspondences) can leverage essential model management tasks, e.g., model transformation generation, model differentiation, model merging. AML is implemented on top of ATL and AMW.
 +
 
 +
AML extends the fundamental stated in \ref{ModelMigration}, i.e., a matching strategy is a chain of transformations. Each transformation instruments a matching heuristic, takes as input a set of models (i.e., an equal model and a set of additional models), and yields an equal model. Equal models conform to the AMW core metamodel.
 +
 
 +
AML keeps the declarative flavor of ATL for expressing transformation rules, and adds dataflow programming constructs for describing transformation chains.
 +
 
 +
\ih{The AML Compiler} takes a given AML program and performs the following tasks:
 +
\begin{itemize}
 +
\item Analyze the AML program (syntax and semantic).
 +
\item Generate an ATL transformation for each rule.
 +
\item Translate the dataflow block into an Ant script specifying the transformation chain.
 +
\end{itemize}
 +
 +
Other features of AML are:
 +
Generate model transformations from equal models.
 +
Measure matching strategy accuracy by comparing expected and computed equal models. 
 +
Invoke native Java code.

Revision as of 09:10, 11 November 2009

The AtlanMod Matching Language (AML) is a DSL for expressing matching strategies. A matching strategy allows to compute equivalences between models. Equivalences (also known as mappings, correspondences) can leverage essential model management tasks, e.g., model transformation generation, model differentiation, model merging. AML is implemented on top of ATL and AMW.

AML extends the fundamental stated in \ref{ModelMigration}, i.e., a matching strategy is a chain of transformations. Each transformation instruments a matching heuristic, takes as input a set of models (i.e., an equal model and a set of additional models), and yields an equal model. Equal models conform to the AMW core metamodel.

AML keeps the declarative flavor of ATL for expressing transformation rules, and adds dataflow programming constructs for describing transformation chains.

\ih{The AML Compiler} takes a given AML program and performs the following tasks: \begin{itemize} \item Analyze the AML program (syntax and semantic). \item Generate an ATL transformation for each rule. \item Translate the dataflow block into an Ant script specifying the transformation chain. \end{itemize}

Other features of AML are: Generate model transformations from equal models. Measure matching strategy accuracy by comparing expected and computed equal models. Invoke native Java code.

Back to the top