A large set of partial data models is used in designing a large information system. These partial data models provide several complementary views on the system to be developed. This however leads to a need for compositional models that are able to produce a single integrated model. These data models are often described by a class diagram of Unified Modeling Language because it is a very popular modeling language and describing a static view of a system. In this paper, we present syntax and semantics of a class diagram describing a data model. We propose a family of well-formed class diagrams as a domain of class diagram algebra and composition operations as merge and difference operations. We then show that algebraic properties as associativity, commutativity and involutivity are desired for model management to develop a large information system.