Information Technology Reference
In-Depth Information
given after the create keyword. In our case, this rule creates
one Table element from one Class element, which is the only
parameter. This newly created object can be referred to in the
transformation by this (which is why this is specified behind
the type). This rule must be called from another rule for each
Class element that needs to be transformed.
3.4.1. Scheduling of transformation rules
Transformation rules are the smallest units of model
transformations. To transform source models into target
models, several transformation rules are required as well as
an execution ordering. Czarnecky and Helsen name scheduling
of transformation rules the execution ordering of a set of
transformation rules [CZA 06]. Basically the scheduling of
transformation rules is a call graph in the context of routines
to transform models. A call graph is a directed graph that
represents calling relationships between subroutines in a
program. Each node represents a procedure and each edge
(f, g) indicates that procedure f calls procedure g [RYD 79].
Describing the scheduling of transformation rules depends
on the paradigms followed by the model transformation
language chosen to write the transformation rules. Current
modeltransformationlanguagesusewell-knownparadigmsfor
programming languages.The most common paradigms used in
model transformation languages are the declarative and the
imperative paradigms [JOU 05].
In declarative programming, the logic of a computation
is expressed without describing its control flow. Model
transformation languages applying declarative programming,
e.g.ATL [JOU 05] andTefkat [LAW 07],attempt to minimize or
eliminate side effects by describing what the program should
accomplish, rather than describing how to do it. For instance,
the transformation rule in Listing 3.6 expresses what the
transformation does, but it does not provide details about how
Search WWH ::




Custom Search