Concept-Oriented Model

Concept-Oriented Model

Alexandr Savinov
Copyright: © 2014 |Pages: 10
DOI: 10.4018/978-1-4666-5202-6.ch045
(Individual Chapters)
No Current Special Offers

Chapter Preview



In recent years, we observe a significant expansion of data analytics driven by such factors as very low cost of data acquisition, storage and processing. To make business decisions, users have to carry out complex analysis which is fed by data. Data is fuel and prerequisite for any kind of analysis starting from simple charts and ending with complex data mining processes. However, data analysis is getting more and more difficult with the explosion of data volume and the variety of data sources which differ in their underlying data models, representation formats and conventions.

In order to represent and analyze data from different data sources a unified model is needed. One such model, called the concept-oriented model (COM), is described in this article. COM (2009a) is a general purpose unified data model aimed at describing many existing views and patterns of thoughts currently used in data modeling. As a unified model, its main goal is to significantly decrease differences and incongruities between various approaches to data modeling such as transactional, analytical (Savinov, 2011b), multidimensional (Savinov, 2005a), object-oriented (Savinov, 2011a), conceptual and semantic (Savinov, 2012c). The motivation behind COM and its practical benefits are similar to those for the Business Intelligence Semantic Model (BISM) (Russo, Ferrari, & Webb, 2012) introduced in Microsoft SQL Server 2012. Like BISM, COM also aims at creating a unified model for all user experiences by significantly simplifying typical analysis tasks and facilitating self-service analytics.

The creation of this model was motivated by the following problems which are difficult to solve within traditional approaches:

  • Domain-Specific Identities: Identification in most existing models is based on two approaches: primitive references like oids or surrogates, and identifying properties like primary keys. These approaches do not provide a mechanism for defining strong domain-specific identities with arbitrary structure, and the focus in existing models is made on describing entities. The goal of COM is to make identities and entities equal elements of the model both having some structure.

  • Hierarchical Address Spaces: Most models focus on describing properties of elements without providing containment relation as a basic construct. A typical solution consists in modeling spaces and containment like any other domain-specific relationship. The goal of COM is to model containment as a core notion of the model by assuming that elements cannot exist outside of any space, domain or context.

  • Multidimensionality: There exist numerous approaches to multidimensional modeling which are intended for analytical processing. The problem is that analytical and transactional models rely on different assumptions and techniques. The goal of COM in this context is to rethink dimensions as a first-class construct of the data model which plays a primary role for describing both transactional and analytical aspects.

  • Semantics: Existing models represent data semantics separately from data itself. Normally semantics is supported at the level of conceptual model or using some semantic model. Logical data models have rather limited possibilities for representing semantic relationships and it is a strong limiting factor for the effective use of data. The goal of COM here is to make semantics integral part of the logical data model so that the database can be directly used for reasoning about data.

To solve these problems, COM introduces three main structural principles which distinguish it from other data models and naturally account for various typical data modeling issues:

Key Terms in this Chapter

Duality Principle: Postulates that any element is an identity-entity couple where identity is a value which uniquely represents the associated entity. This principle is a unique distinguishing feature of the concept-oriented model (COM) because most other models manipulate tuples while COM manipulates couples of tuples. In particular, this principle unifies relation modeling and domain modeling.

Order Principle: Assumes that all elements are partially ordered where lesser elements reference their greater elements. Concepts are also partially ordered assuming that lesser concepts specify their greater concepts as field types. This principle plays an important role in COM because it provides several conceptual interpretations: multidimensional, entity-relationship, containment, object role.

Identity Tuple: Is one of two constituents of an element in the concept-oriented model. It is a tuple which is passed by-copy and uniquely represents an entity. An identity without an associated entity (the associated entity is empty) is a value. The structure of identities is described by the identity class of concepts.

Inclusion Principle: Postulates that all elements exist in an inclusion hierarchy where child elements extend their parent. A consequence of this principle is that any element in the hierarchy is uniquely represented by a sequence of identities starting from the root and ending with this element identity. This sequence is called complex identity and is analogous to conventional postal addresses. Inclusion relation among concepts generalizes classical inheritance. Inclusion also unites inheritance, general-specific (IS-A) and containment (IS-IN) relations.

Nested Partially Ordered Set: Is a formal basis of the concept-oriented model. It is defined as a set with strict inclusion and strict partial order relations on its elements which are connected by type constraint. It can be viewed as a nested set where elements are partially ordered or as a partially ordered set where elements are also partially ordered sets.

Concept-Oriented Model (COM): Is a unified approach to data modeling which generalizes several major views on data: relational, multidimensional, object-oriented, conceptual and semantic. It is based on three structural principles: duality, inclusion and partial order.

Entity Tuple: Is one of two constituents of an element in the concept-oriented model. It is a tuple which is represented and passed by-reference where the reference is an associated identity tuple which is not part of this entity. Any entity must have a non-empty identity which however can be inherited from the parent element in the inclusion hierarchy. The structure of entities is described by the entity class of concepts.

Concept: Is a data modeling and programming construct which is defined as a couple of one identity class and one entity class. Concept instances are identity-entity couples. Concepts generalize conventional classes and are used instead of them for declaring types of elements. A concept with the empty identity class is equivalent to a conventional class. A concept with the empty entity class describes values.

Complete Chapter List

Search this Book: