let us imagine that we would like to see what would happen if we would move a class A from package P1 to P2, without changing the source code and may be been able to undo the change
Solution A: We could copy the complete model, modify it. (and keep somewhere an history)
Solution B: We could change the model and keep an history of the changes (move A P1 P2).
Solution C: I could cache in each model a timestamp similar to what frederic pluquet did and know at which version modification we are. then for a given changes I could get the model by getting entity at the same level or lower.
Any thoughts on that. I have the impression that solution B is easier.
stef