Computing differences (diffs) and merging different versions is wellknown for text files, but for models it is a very young field. Text-based and model-based diffs have different goals and different starting points, because the semantics of their structure is fundamentally different. Text files just contain a list of strings, one for each line, whereas the structure of models is defined by their meta models. There are tools available which are able to compute the diff between two models, e.g. RSA or EMF Compare. However, their diff is not model-independent, i.e. it refers to the models it was created from. We present concepts for model-independent diffs, how it can be created and used. In the end, we present an idea of how the diff could be generalized, e.g. many atomic differences are merged to a new, generalized diff – similar to a patch for text files. The advantage of such a generalized diff is that it is applicable to a higher variety of models.
|Series||D T U Compute. Technical Report|