Ce n'est pas un système de génération de code à partir d'UML, c'est un cran au dessus au niveau de l'abstraction.
UML est dans un statut batare(non péjoratif ici), c'est à la fois un langage qui est au niveau métamétamodèle et au niveau métamodèle.
ATL permet de passer d'un modèle conforme à un MétaModèle d'un langage à un autre modèle conforme à un autre Métamodèle de langage en spécifiant la transformation.
Donc ATL prend en entrée un métamodèle spécifié dans un fichier ecore et un modèle conforme à ce métamodèle spécifié lui dans un fichier XMI.
Ce que l'on obtient donc est un fichier XMI qui est le modèle conforme au langage cible.
Ce même fichier xmi peut ensuite être tranformé par une extraction TCS vers un fichier texte si le langage est textuel par exemple.
Donc on peut créer une transformation Java->UML ou UML->Java mais se limiter à cette vision d'ATL est extrêmement réducteur, cette transformation est d'ailleurs disponible sur le Zoo d'ATL avec une transformation pour avoir la représentation d'UML dans un fichier DOT par exemple.
Enfin pour spécifier un métamodèle on le définit généralement en KM3, plus facile à manipuler qu'un fichier ecore qui est du xml.
De ce fichier KM3 on génère le fichier ecore correspondant.
Pour le modèle deux solutions, on peut peupler le xmi à la main ou alors on définit un fichier TCS qui va nous servir à l'injection pour obtenir un xmi conforme.
[^] # Re: Ca a l'air vachement bien
Posté par kbiger . En réponse à la dépêche Sortie de ATL 2. Évalué à 2.
UML est dans un statut batare(non péjoratif ici), c'est à la fois un langage qui est au niveau métamétamodèle et au niveau métamodèle.
ATL permet de passer d'un modèle conforme à un MétaModèle d'un langage à un autre modèle conforme à un autre Métamodèle de langage en spécifiant la transformation.
Donc ATL prend en entrée un métamodèle spécifié dans un fichier ecore et un modèle conforme à ce métamodèle spécifié lui dans un fichier XMI.
Ce que l'on obtient donc est un fichier XMI qui est le modèle conforme au langage cible.
Ce même fichier xmi peut ensuite être tranformé par une extraction TCS vers un fichier texte si le langage est textuel par exemple.
Donc on peut créer une transformation Java->UML ou UML->Java mais se limiter à cette vision d'ATL est extrêmement réducteur, cette transformation est d'ailleurs disponible sur le Zoo d'ATL avec une transformation pour avoir la représentation d'UML dans un fichier DOT par exemple.
Enfin pour spécifier un métamodèle on le définit généralement en KM3, plus facile à manipuler qu'un fichier ecore qui est du xml.
De ce fichier KM3 on génère le fichier ecore correspondant.
Pour le modèle deux solutions, on peut peupler le xmi à la main ou alors on définit un fichier TCS qui va nous servir à l'injection pour obtenir un xmi conforme.
J'espère avoir été clair (j'ai un doute :) )