Abstract The quality and integrity of spatial data is very important to support interoperability among different systems. To reach this aim integrity rules defined by the application play an important role (for example, constraints between object classes). In this article, we propose a methodology to define integrity constraints using user level spatial relations between classes of individuals. We will also provide mapping rules from user level relations to geometric level operators to allow the computation of relations. As a case study, we will define the constraints for the class of rivers and some of its specializations.