Cours complet sur ATL (ATLAS Transformation Language) : les “Matched Rules” (les règles de correspondance), présentation (1/5)
Dans l'article précédent :
https://www.urbanisation-si.com/cours-complet-sur-atl-atlas-transformation-language-le-code-imperatif-atl-linstruction-de-boucle-for
nous avion abordé le code impératif ATL et l’instruction de boucle : for. Voyons à présent une présentation des “Matched Rules” (les règles de correspondance).
Les “Matched Rules” (les règles de correspondance), présentation (1/5)
Elles permettent de spécifier comment les éléments de modèle cible sont générés à partir des éléments de modèle source.
Pour parvenir à cet objectif, une règle de correspondance doit spécifier :
- Quels éléments de modèle source doivent être mis en correspondance
- Le nombre et le type d’éléments générés de modèle cible
- La manière dont ces éléments de modèle cible doivent être initialisés à partir des éléments sources.
La spécification d’une règle de correspondance doit se conformer à la syntaxe suivante :
from
in_var : in_type [in model_name]? [(
condition
)]?
[using {
var1 : var_type1 = init_exp1;
...
varn : var_typen = init_expn;
}]?
to
out_var1 : out_type1 [in model_name]? (
bindings1
),
out_var2 : distinct out_type2 foreach(e in collection)(
bindings2
),
...
out_varn : out_typen [in model_name]? (
bindingsn
)
[do {
statements
}]?
}
- Chaque règle est identifiée par son nom ( rule_name).
- Le nom d’une règle de correspondance est unique dans une transformation ATL.
- Elle est composée de 2 sections obligatoires ( from et to ) et 2 optionnelles (using et do).
- Les variables déclarées dans la portée de la règle ( les patterns d’éléments sources et cibles et les variables ) ont un nom unique. Cette restriction ne s’applique pas aux expressions OCL contenues dans la règle.
"Il n'arrive que rarement de voir un individu, sous la pression d'événements exceptionnels, réviser l'image qu'il a de sa propre intelligence et de ses limites au point de s'ouvrir de nouvelles perspectives sur ce qu'il est capable d'apprendre."
Seymour Papert
Voir aussi :
http://urbanisation-si.wix.com/blog
http://urbanisme-si.wix.com/blog
http://urbanisation-si.wix.com/urbanisation-si
http://urbanisation-si.over-blog.com/
http://rhonamaxwel.over-blog.com/
http://urbanisation-des-si.blogspot.fr/
A découvrir aussi
- Ingénierie Dirigée par les Modèles (IDM) : le tour de passe-passe des transformations de modèles
- Didacticiel ( tutoriel ) Eclipse Sirius ( Obeo Designer Community ) : le digne successeur de GMF le framework le plus complexe du monde !
- Cours complet sur ATL (ATLAS Transformation Language) : Les expressions déclaratives dans OCL / ATL
Inscrivez-vous au site
Soyez prévenu par email des prochaines mises à jour
Rejoignez les 786 autres membres