Cours - PowerPoint PPT Presentation

1 / 17
About This Presentation
Title:

Cours

Description:

ATLAS group (INRIA & LINA), University of Nantes, France. http://www.sciences.univ-nantes.fr/lina/atl/ Model transformation with ATL 2005 ATLAS Nantes ... – PowerPoint PPT presentation

Number of Views:62
Avg rating:3.0/5.0
Slides: 18
Provided by: JeanB7
Category:
Tags: cours | lina

less

Transcript and Presenter's Notes

Title: Cours


1
Model transformation with ATL The ATLAS
Transformation Language ATLAS group (INRIA
LINA), University of Nantes, France http//www.sci
ences.univ-nantes.fr/lina/atl/
2
Contents
  • The ATLAS Transformation Language (ATL)
  • Model Transformation
  • Model Transformation with ATL
  • Declarative ATL
  • Imperative ATL
  • The ATL Execution Engine Architecture
  • Concepts
  • Advantages
  • ATL Virtual Machine Architecture
  • ATL Development Tools (ADT)

3
Contents
  • The ATLAS Transformation Language (ATL)
  • Model Transformation
  • Model Transformation with ATL
  • Declarative ATL
  • Imperative ATL
  • The ATL Execution Engine Architecture
  • Concepts
  • Advantages
  • ATL Virtual Machine Architecture
  • ATL Development Tools (ADT)

4
Model transformation
  • Each model conforms to a metamodel.
  • A transformation builds a target model (Mb, here)
    from a source model (Ma, here).
  • A transformation is a model (Mt, here) conforming
    to a metamodel (MMt here).

conformsTo
transformation
5
Model transformation with ATL(ATLAS
Transformation Language)
  • A declarative language to specify simple
    transformation patterns simply
  • With imperative constructs to make sure complex
    patterns can always be specified

conformsTo
transformation
6
Declarative ATL
  • A declarative transformation rule is matched
    against a source pattern
  • For each match, the rule is executed its target
    pattern is created
  • There are few constraints on ordering because
    navigation on target models is prohibited.
  • The following elements can appear in any order
  • Transformation rules
  • Elements of target patterns
  • Property initialization in target pattern
    elements
  • There are three kinds of matched rules
  • Standard rules are executed once per match
  • Lazy rules are executed each time their source
    pattern is referenced from another rule
    (especially useful for tree traversal)
  • Unique lazy rules are executed at most once and
    only if their source pattern is referenced at
    least once

7
Imperative ATL
  • Imperative rules are called they have parameters
    instead of a source pattern ( procedures)
  • They can have a target pattern instead of
    imperative code
  • There can be one entrypoint and one endpoint
    called rules, executed before and after
    declarative rules (a la awk)
  • Imperative blocks
  • Are composed of statements
  • Can appear in both matched and called rules

8
Contents
  • The ATLAS Transformation Language (ATL)
  • Model Transformation
  • Model Transformation with ATL
  • Declarative ATL
  • Imperative ATL
  • The ATL Execution Engine Architecture
  • Concepts
  • Advantages
  • ATL Virtual Machine Architecture
  • ATL Development Tools (ADT)

9
The ATL Execution Engine Architecture concepts
  • ATL is specified as a two-part metamodel
  • The structural part defines rules, source and
    target patterns, imperative blocks, etc.
  • The navigation part is based on OCL 2.0
  • A textual concrete syntax is specified using TCS
  • Text ATL can be parsed to its corresponding model
  • An ATL model can be serialized to text
  • ATL transformations are models which specify
    operations on models
  • They can be loaded and serialized by model
    handlers (EMF, MDR, etc.) or projectors
  • They drive the execution of operations on other
    models performed using model handlers
  • An ATL model can be executed
  • It is first compiled to ATL bytecode a
    model-oriented instruction set
  • The ATL Virtual Machine executes this bytecode

10
The ATL Execution Engine Architecture advantages
  • Different model handlers can be used to deal with
    basic model operations (XMI loading and
    unloading, element creation and deletion,
    property assignment, etc.)
  • Different languages can run on top of the VM
  • ATL
  • ATP (ATL Tree Parser) a simple language used to
    bootstrap the ATL compiler
  • Etc.
  • Different source and target formats are supported
  • XMI, using the model handlers
  • Textual representation of models (using TCS)
  • XML documents
  • Binary files,
  • Etc.
  • Several ATL VM can be developed
  • ATLAS ATL VM written in Java for research
  • TNI ATL VM written in CAML for performance

11
The ATL Virtual Machine Architecture
XMI 1.2
XMI 2.0
Text, XML, Binary, etc.
Model repository
The simplest form of a model repository is a
file system.
12
Contents
  • The ATLAS Transformation Language (ATL)
  • Model Transformation
  • Model Transformation with ATL
  • Declarative ATL
  • Imperative ATL
  • The ATL Execution Engine Architecture
  • Concepts
  • Advantages
  • ATL Virtual Machine Architecture
  • ATL Development Tools (ADT)

13
ATL Development Tools (ADT) an Eclipse-based IDE
for ATL
  • ATL perspective and ATL project
  • ATL Code editor
  • Syntax highlighting
  • Outline
  • Error reporting
  • ATL Builder
  • ATL Debugger
  • Source-level debugging
  • Stepping through elementary operations
  • Breakpoints support

14
ATL Development Tools perspective, editor and
outline
15
ATL Development Tools launch configuration
16
ATL Development Tools source-level debugger
17
End of the presentation
  • Thanks
  • Questions?
  • Comments?
  • AMMA_at_lina.univ-nantes.fr
  • ATLAS group, INRIA LINA, Nantes
Write a Comment
User Comments (0)
About PowerShow.com