Henshin
Henshin is a state of the art model transformation language for the Eclipse Modeling Framework. Henshin supports both direct transformations of EMF single model instances (endogenous transformations), and translation of source model instances into a target language (exogenous transformations).
Install / Use
/learn @eclipse-henshin/HenshinREADME
Henshin is an in-place model transformation language for the Eclipse Modeling Framework (EMF). It supports direct transformations of EMF model instances (endogenous transformations), as well as generating instances of a target language from given instances of a source language (exogenous transformations). Its main features are:
Basic transformation definition and execution
- Rule-based transformation paradigm with units for managing control flow of rules
- Graphical and textual syntax, based on a transformation meta-model
- Native support for endogenous transformations; support of exogenous transformations via traces
- Efficient in-place execution of transformations using a dedicated interpreter with debugging support
Analysis
- A performance profiler to identify slow spots
- Support for conflict and dependency analysis
- State space analysis for verification
Advanced rule definition
- Support for rule variants
- Support for automated rule generation
- Support for generating application conditions from OCL constraints
Integration with other tools
- Integration with Xtext
- Support for massive parallel rule execution using Apache Giraph
Resources
- Official website
- Installation instructions
- Getting started
- Wiki with comprehensive documentation
- Examples
- FAQ
- Release Notes
- Projects that use Henshin
