To develop and apply programming languages and formal methods techniques to model-driven development.
A transformation contract is a specification of a model transformation. It relates a source and a target metamodel and specifies constraints over such a relation.