

Matching of model elements by ID, where an ID can be any "signature" that uniquely identifies the element within its scope: Ecore ID, XML ID, qualified name, location in model tree, etc.Īmong others, the tool exhibits the following characteristics:.A lightweight, configurable engine for comparing and merging EMF-based models in 2-way and 3-way (with common ancestor) configurations.This is because models, in the EMF sense, are rich data structures constrained by a metamodel and sometimes subject to implicit engineering rules. Have you ever merged models in the past and obtained incorrect, unexpected or inconsistent results? This is what EMF Diff/Merge seeks to prevent. However, it is a much more complex operation than merging source code. Merging models is a common need in model-based activities, not only for version control of models but for model manipulation in general. The EMF Diff/Merge project is part of EMF Context and issues For example: model refactoring, iterative model transformations, bridges between modeling tools, collaborative modeling environments, versioning systems. It is intended to help develop merge-based features that are useful in model-based engineering.

It consists in a diff/merge engine that is designed to prevent data loss and enforce model consistency during merge thanks to consistency rules. The project also provides GUI components and a set of applications. More precisely, it is a technical component that can compare and merge sets of model elements. EMF Diff/Merge is a tool for merging models.
