Abstract. This paper addresses the problem of consistency preservation in model-driven software development. Software models typically embody many different views that need to be kept consistent. In the context of consistency within a model, behaviour inheritance consistencies restrict the way the behaviour of a subclass can specialize the behaviour of a superclass. In the context of model evolution, model refactorings restructure a model while preserving its behavioural properties. It is still an open research question how to define behaviour preservation properties for model refactorings. We claim that behaviour inheritance consistencies correspond, in an evolution context, to the preservation of behavioural properties between model versions. To illustrate this claim, we implemented consistency rules and preservation behaviour rules in Racer, a reasoning engine for description logics. We show how the same logic rules can be used to detect behaviour inheritance inconsistencies in a ...