<
From version < 5.1 >
edited by Alexander Schulz-Rosengarten
on 2013/12/16 11:19
To version < 6.1 >
edited by Alexander Schulz-Rosengarten
on 2013/12/18 16:12
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,3 +1,113 @@
1 1  = KTM - KIELER Transformation Mapping =
2 2  
3 -content coming soon
3 +
4 +
5 +
6 +
7 +{{toc maxLevel="2" minLevel="2"/}}
8 +
9 +----
10 +
11 +== Overview ==
12 +
13 +
14 +
15 +This subproject provides a tracing mechanism for arbitary model-elements across multiple model transformations, based on EMF.
16 +
17 +The main propose of KTM is to allow information transfer between abstract models and their resultant transformed models.
18 +
19 +----
20 +
21 +== Transformation Tree Model ==
22 +
23 +
24 +
25 +To offer a mapping between model-elements during multiple transformations KTM introduces a model called TransformationTree to represent these relations.
26 +
27 +It is based on an EMF-Metamodel.
28 +
29 +
30 +
31 +<metamodel>
32 +
33 +
34 +
35 +The structure of the model can be separated into two parts.
36 +
37 +First part is a tree of transformations.
38 +
39 +Each Model-Class is a representation of a concrete model which is transformed. So models are nodes and ModelTransformations are edges.
40 +
41 +Thus the Model representing the root-model of a tree is also the root of a concrete TransformationTree-Model.
42 +
43 +Second part is object mapping.
44 +
45 +Concrete models contain EObjects as their elements, which are representend by Element-Class in TransformationTree metamodel.
46 +
47 +The Elements of two models are connected with ElementTransformations-Class to model their
48 +
49 +origination relationship in corresponding model transformation.
50 +
51 +
52 +
53 +An abstract example of an instance of this model:
54 +
55 +
56 +
57 +<exmaple_tree>
58 +
59 +----
60 +
61 +== Extensions ==
62 +
63 +
64 +
65 +Two classes are provided by this project to extend functionality of the core model.
66 +
67 +
68 +
69 +TransformationMapping (JavaDoc)
70 +
71 +
72 +
73 +The main propose of this class is generation of a Object mapping during transformation process.
74 +
75 +Therefor it provides different functions for incremental registering of single parent child relations beween EObjects.
76 +
77 +Furthermore, the extension allows to extract the mapping and check completeness of mapped elements against content of transformed models.
78 +
79 +
80 +
81 +TransformationTreeExtensions (JavaDoc)
82 +
83 +
84 +
85 +This class proived all functionalities to easily traverse and search in a TransformationTree.
86 +
87 +Furthermore, it allows to modify trees by creating, deleting or appending new transformations and transformed models.
88 +
89 +
90 +
91 +----
92 +
93 +
94 +
95 +== Implementation Details ==
96 +
97 +
98 +
99 +All references to EObjects are references to a copy of the original EObject. This allows to represent immutable mapping. To reidentify corresponding EObjects TransformationTreeExtensions provides search funtions and matching functionality.
100 +
101 +
102 +
103 +Models in TransformationTrees may be transient.
104 +
105 +This indicates that all references to EObjects in all Elements of the transient model are removed.
106 +
107 +Thus these models can't be source of a new appended tranformation and can not be associated with it's orginal model.
108 +
109 +The main propose of this feature is to improve scalability of TransformationTrees by removing unneccessary references to internal model, but preserve traversing funtionality of the ObjectMapping.
110 +
111 +== Example ==
112 +
113 +coming soon
Confluence.Code.ConfluencePageClass[0]
Id
... ... @@ -1,1 +1,1 @@
1 -8651473
1 +8651475
URL
... ... @@ -1,1 +1,1 @@
1 -https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/KIELER/pages/8651473/Transformation Mapping (KTM)
1 +https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/KIELER/pages/8651475/Transformation Mapping (KTM)