Information Technology Reference
In-Depth Information
1
2
3
4
5
6
transformation Simpleuml To Rdb
(in srcModel: ClassMetamodel , out dest : RDBMSMetamodel ) ;
main() {
srcModel. objects ()[Class]−>map class2table ();
srcModel. objects ()[ Association]−>map asso2table ();
}
Listing 3.9. Example of a SmartQVT program
3.6.2. ATL
ATL (ATLAS Transformation Language) is a model
transformation language and toolkit currently developed and
maintained by the OBEO company and the AtlanMod team.
It was initiated by the AtlanMod team (previously called
the ATLAS Group) as a part of the AMMA (ATLAS Model
Management Architecture) platform. ATL was developed
to answer the QVT RFP. The language is specified both
as a metamodel and as a textual concrete syntax. ATL
transformations are unidirectional, operating on read-only
sourcemodels,andproducingawrite-onlytargetmodel.During
the execution of a transformation, only the source model is
navigatedandchangesarenotallowed.AnATLtransformation
program is composed of rules that define how source model
elements are matched and navigated to create and initialize
the elements of the target models.
Like QVT, ATL is a hybrid transformation language
that contains a mixture of declarative and imperative
constructs. The preferred style of writing transformation
is declarative, which allows the easy expression of simple
mappings. Imperative constructs are also provided so that
complex mappings can still be specified. The declarative style
of transformation is usually based on specifying relations
between source and target patterns. This can be seen as closer
to the way the MDE developers perceive a transformation.
This style stresses on encoding these relations and hides the
 
Search WWH ::




Custom Search