TU Berlin, TFS



Henshin (Japanese for "transformation") is a development environment supporting the visual modeling and execution of rule-based EMF transformations. The Henshin Editor is based on the Henshin subproject of Eclipse EMFT www.eclipse.org/modeling/emft/) that integrates the Henshin modeling language as Eclipse plug-in.
Henshin supports model transformation "in-place". This means that a transformation does not generate a new model but changes the instance model directly. In Henshin, we define EMF transformation systems that have two basic kinds of elements: graphs (EMF instance models) and transformation units. The simplest transformation unit is a transformation rule consisting of a pre-condition graph (left-hand side LHS) and a post-condition graph (right-hand side RHS). A transformation rule is applied to an EMF instance model by finding the pre-condition graph in the model and replacing it by the post-condition graph. Rule application may be restricted by defining additional application conditions for a rule. More complex transformation units like sequences, IF-THEN-ELSE blocks or counted units are composed from simpler transformation units. A transformation unit is applied by applying its subunits in the predefined order automatically. Using transformation units, complex transformations containing any number of rule applications can be performed.

Visual Multi-View Henshin-Editor

The Visual Henshin Editor provided at this site was developed in a student project (visual languages and tools) at Technische Universität Berlin in 2010, and extended in the bachelor thesis of Johann Schmidt and the master thesis of Angeline Warning, both supervised by Enrico Biermann and Claudia Ermel.
The Henshin-Editor User Manual explains the available visual editors to define EMF transformation systems, i.e. graphs, transformation rules, application conditions and transformation units for complex EMF transformation. Moreover, we explain how transformation rules and units are applied to transform EMF instance models typed over arbitrary EMF models and how EMF graphs are checked for EMF consistency (objects are contained in exactly one container, and there are no containment cycles). Rules can be validated to ensure that their application will never destroy EMF consistency of consistent EMF instance models.

If you have any questions please don't hesitate to contact the Henshin Developer Team.

Henshin-Editor Documentation and Papers on Henshin

Software Requirements and Installation

Now, EMF transformation systems can be defined and applied in the Eclipse Runtime Workbench.


Henshin is subproject of the Eclipse EMFT project. It may be used respecting the Eclipse copyright license (Terms and Conditions of Use for the Eclipse Foundation Web Site ). The Henshin Editor provided on this site is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.