Title: The AMW project: current state and future plans
1 The AMW project current state and future
plans Marcos Didonet Del Fabro ATLAS Group
(INRIA LINA), Université de Nantes,
France marcos.didonet-del-fabro _at_
univ-nantes.fr PhD student (oct/04
sep/07) Supervisors Jean BĂ©zivin and Patrick
Valduriez
2Outline
- Introduction
- Application scenario
- Weaving model
- Extensible metamodel
- Prototype
- Interpreting weaving models
- Conclusions
- Future work
- Current project state
3Introduction
- AMW (ATLAS Model Weaver)
- Weaving models
- Weavings capture correspondences (links) between
model elements - Correspondences between models
- Traceability
- Mapping between models and a graphical
representation - Merging
- Composition operations
- Transformation specification
- Data integration and translation lt-
4Data integration
- Data integration and translation
- Many different types of models
- Need to interoperate
- Class, relational, Mantis, Bugzilla, Java, C,
Company1, Company2 - Create model transformations
- This process must be efficient
- Match (MMa, MMb) weaving model
- Use of abstract correspondence representations
- Weaving model
- Automates the generation of transformations
- Ma Transform (Mb) - transformation
5Weaving model
- Correspondences as first class entities
- High level and declarative
- Abstracts mapping expressions
- Weavings are not transformations (there is no VM,
debug, etc) - Conforms to a weaving metamodel
- Concatenation, equality, etc.
- Namespaces
Bug tracking tool 2
Bug tracking tool 1
Weaving model
bug_severity
Equality
severity
Concatenation
person.id
assigned_to
person.login
6Weaving metamodel (core)
- Basic link management
- extended
Linking semantics
( one link has N endpoints )
Namespace semantics
7Weaving metamodel extensions
- Extended with different link types
- 1 for bug tracking
- (translate, concatenate)
- 1 for merging models
- (merge, override, inherits)
- 1 for reporting
- (A prints B)
Core metamodel
ExtN
8Create weaving model
- ATLAS Model Weaver prototype
- Eclipse EMF (Eclipse Modeling Framework)
- Manipulation of (meta) models
- Dynamic API
- Allows metamodel flexibility
- automatically generated user interface for
different weaving metamodels - Based on Eclipse contributions (interconnected
plugins)
9AMW example (general aspects)
Plugged panels
Identification mechanism
10Interpreting weaving models
11Production of transformations (data integration
and translation)
- Weavings models created once, different target
languages - Design the transformations metamodels
- Translate a weaving model
- into a transformation model
- Extract the models into their
- textual syntax
- T, T and T are similar!
AMW
T
T
T
model
SQL
XSLT
ATL
text
File .XSL
File .SQL
File .ATL
12Production of transformations
- Declarative generation pattern (higher-order
transformation) - Transform links into transformation expressions
- Link endpoints into bindings
- Provides (transformational) semantics to the
weaving model - Last step
- Execute the produced transformation!
Links
Endpoints
target lt- source
13Conclusions
- Weaving model
- Captures the correspondences (links) between
models - Extensible to different types of links
- Different scenarios
- Control the complexity of the correspondence
model - Higher-order transformations
- Pattern to automatically produce transformations
- Different output models
- Semantics to the weaving model
14Current (and future) work
- Semi automatic generation of weaving models
(matching) - WordNet (synonyms)
- car, automobile
- String proximity
- date_ts, date_submitted
- Structural matching
- Hierarchy similarities (attribute, class)
- Use of new ATL compiler
- (no photo)
15Current work
- AMW available as Eclipse GMT subproject
- http//www.eclipse.org/gmt/amw
- Newsgroup
- In progress
- More examples
- Develop a community
16End
- Thank you
- Questions?
- Comments?
- Links
- ATLAS group
- http//www.sciences.univ-nantes.fr/lina/ATLAS/
- AMMA
- http//www.sciences.univ-nantes.fr/lina/atl/
- AMW
- http//www.eclipse.org/gmt/amw
- ATL
- http//www.eclipse.org/gmt/atl