Atlas Transformation Language
Die Atlas Transformation Language (kurz ATL), ist eine Programmiersprache zum Transformieren von Modellen, also zur Durchführung von automatischen Modell-zu-Modell-Transformationen.ATL wurde von ATLAS INRIA & LINA als Antwort auf die Ausschreibung für eine Transformationssprache (QVT Ausschreibung) der Object Management Group (OMG) eingereicht. ATL steht als Eclipse Plug-In mit eine Editor und Debugger zu Verfügung.
ATL ist eine hybride Sprache, d.h. sie vereint Konzepte imperativer und deklarativer Programmierung. Um Abfragen auf Modellen durchzuführen, wird OCL eingesetzt (zum Teil modifziert). Eine Transformation besteht in ATL im Wesentlichen aus einem Satz von Regeln, die einzelne Elemente des Ausgangsmodells in Elemente des Zielmodells überführen.
Eine einfache Transformation in ATL sieht so ausATL User Manual:
module Book2Publication;
create OUT : Publication from IN : Book;
rule Author {
from
a : MMAuthor!Author
to
p : MMPerson!Person (
name <- a.name,
surname <- a.surname
)
}
In dem Beispiel wird ein Ausgangsmodell IN, das konform zu einem Metamodell Buch ist (vereinfacht der Typ des Modells) in ein Modell OUT gemäß dem Metamodell Publication überführt. Die aufgeführte Regel Autor überführt Elemente des Ausgangsmodells vom Typ Author n Elemente vom Typ Person im Zielmodell. Dabei werden die Attribute des Zielelements mit Werten aus dem Ausgangsmodell belegt.
Quellen
Weblinks
[http://www.eclipse.org/m2m/atl/ ATL Website]

