Features Awesome options

Model Query

EMorF can be used to search and retrieve model elements of interest from a model instance. A query for model elements like objects and links, i.e. model patterns, is expressed graphically. For pattern queries with more specific criteria, EMorF supports standard OCL expressions with a well-defined syntax.modelQuery.png


Model Modification

Another application area for EMorF is in-place model transformation which is also known as model modification. For example, it is possible to create and delete model elements or change their attribute values. And once again, all this can be expressed graphically, i.e. there is no need to learn a complex language.modelMod.png


Model Transformation

EMorF is not only well-suited to query and modify one model, it can also be used to develop model-to-model transformations. EMorF allows executing model-to-model transformations in both directions.modelTrans.png


Model Integration

In cases where two models are given, EMorF is able to compute the correspondence mapping between both models, i.e. it can be used to maintain the consistency between models according to the given correspondence rules.


Model Synchronization

If a large model is changed slightly, it is quite uncomfortable to transform the whole model once again from scratch. EMorF is already prepared for incremental model-to-model transformations. Since such incremental model-to-model transformations can be executed in both directions in order to keep both models consistent to each other, we call this kind of application incremental model synchronization.


Eclipse Ready

EMorF is an open source tool build for Eclipse. It comes with several views and editors to ease the development of all kinds of model transformations. And it can be tailored to your needs.


Graphical Syntax

In EMorF you specify rules for model queries, model transformations and model modifications in a graphical editor. The graphical rules have a formal semantics and are declarative, i.e. you describe what should be done and not how to do it.


Interpreter Engine

The graphical rules are precompiled and executed by an interpreter system, i.e. there is no need to generate source code from the EMorF rules. This way, an iterative development process with frequent changes to the model transformation rules is supported. Nevertheless, note that our interpreter engine works both on generated EMF models as well as on dynamic EMF models.


Trace Support

EMorF supports traceability. For each transformation execution a trace model is generated. Using the trace viewer you can retrace the correspondence between model elements. traceViewer.png


Java API

EMorF offers a Java API. You can apply rules on a model straight from Java code. Thereby you can define a custom execution order for model modifications specified with EMorF. javaAPIScreen.png


Test Framework

Do you want to test if the defined model transformation executes like expected? Use the test framework. The Test Framework offers some specific assertion methods.



Do you want to know why the model transformation did not execute like expected? Use the debugger. With the debugger you may follow the execution step by step. debugger.png

© 2012 Solunar GmbH. All Rights Reserved. | Imprint