Models are widely used in software engineering, where the Unified Modelling Language (UML) class diagrams are the top notation to present the core system structure and serves as the main artefact for analysis, design and implementation of the software system. As far as the UML class diagram is created at the different levels of abstraction, fluently modified and used to present different aspects of the system, the software development project may need to manage different versions of the system model presented in that notation. Therefore, it is very important to have an ability to compare different versions of the UML class diagram created for the same system to avoid duplicates, missings and contradictions in the whole system model. In this paper an approach to do such a comparison is being described and tested on a simple example in comparison with some other similar methods. We analyze some of the existing methods and algorithms used for the UML class diagram comparison and offer the new approach on a subject. The approach offered in this paper is based on the evaluation of semantical features of the UML class diagram elements.