Automated Inversion of Attribute Mappings in Bidirectional Model Transformations
نویسندگان
چکیده
Bidirectional model transformations create or update a target model according to a base model and vice versa using a single transformation specification for both directions. Triple graph grammars, for example, define which model elements shall exist and how they should reference each other without repeating information for both directions. They can also copy values of simple-typed attributes, such as enumerations, strings, or numbers. But currently only the identity operator can be easily specified in bidirectional transformation languages: Other attribute mappings either have to be specified for both directions or with a special constraint language. In this paper, we present an approach that inverts attribute transformation expressions that can be written in a simple Java-like syntax. We also present an initial library of 30 operator-specific inverters that result in well-behaved view-update round-trips (GetPut) for all changes. For changes for which wellbehaved update-view round-trips (PutGet) are impossible, we chose inversions that sustain as much information as possible. We realized our inversion approach for a prototypical transformation language that generates Java code. An evaluation using all 103 transformations of the ATL zoo shows that 26% of the LLOC of all non-trivial attribute transformation expressions could be inverted with our initial inverters. This may indicate that many transformation tasks could involve non-trivial attribute transformations that can easily be specified and inverted with our approach.
منابع مشابه
Automated Inversion of Attribute Mapping Expressions for Multi-Model Consistency
Because keeping two models synchronized in a multi-view modeling scenario is a tedious and error-prone task, bidirectional model transformation approaches have been developed to automatically ensure model consistency. Many existing approaches focus on the synchronization of structural aspects, i.e. creating and deleting corresponding meta class instances as well as creating, updating and deleti...
متن کاملUnderstanding bidirectional transformations with TGGs and JTL
In Model-Driven Engineering bidirectional model transformations emerged as an important ingredient to cope with scenarios such as change propagation, synchronization and to keep consistent system views whenever changes occurring on some view have to be propagated over the others. However, bidirectional mappings open a number of intricate issues that have been only partially solved by research. ...
متن کاملAttribute Handling for Bidirectional Model Transformations: The Triple Graph Grammar Case
When describing bidirectional model transformations in a declarative (relational) way, the relation between structures in source and target models is specified. But not only structural correspondences between source and target models need to be described. Another important aspect is the specification of the relation between attribute values of elements in source and target models. However, most...
متن کاملVelocity Inversion with an Iterative Normal Incidence Point (NIP) Wave Tomography with Model-Based Common Diffraction Surface (CDS) Stack
Normal Incidence Point (NIP) wave tomography inversion has been recently developed to generate a velocity model using Common Reflection Surface (CRS) attributes, which is called the kinematic wavefield attribute. In this paper, we propose to use the model based Common Diffraction Surface (CDS) stack method attributes instead of data driven Common Reflection Surface attributes as an input data p...
متن کاملA Study on Properties of Dempster-Shafer Theory to Probability Theory transformations
In this paper, five conditions that have been proposed by Cobb and Shenoy are studied for nine different mappings from the Dempster-Shafer theory to the probability theory. After comparing these mappings, one of the considerable results indicates that none of the mappings satisfies the condition of invariance with respect to the marginalization process. In more details, the main reason for this...
متن کامل