AccessMyLibrary provides FREE access to over 30 million articles from top publications available through your library.
Create a link to this page
Copy and paste this link tag into your Web page or blog:
ABSTRACT
Data modelling languages are used in today's information systems engineering environments. Many have a degree of hype surrounding their quality and applicability with narrow and specific justification often given in support of one over another. We want to more deeply understand the fundamental nature of data modelling languages. We thus propose a theory, based on ontology, that should allow us to understand, compare, evaluate, and strengthen data modelling languages. In this paper we present a method (conceptual evaluation) and its extension (conceptual comparison), as part of our theory. Our methods are largely independent of a specific ontology. We introduce Chisholm's ontology and apply our methods to analyse some data modelling languages using it. We find a good degree of overlap between all of the data modelling languages analysed and the core concepts of Chisholm's ontology, and conclude that the data modelling languages investigated reflect an ontology of commonsense-realism.
Keywords: ontology; ontological analysis; data models; data modelling
INTRODUCTION
Data models have been used in information engineering environments for many decades for the precise purpose of building representations of reality. To date, there have been many different data modelling languages proposed, with the most popular being the Entity-Relationship Model (Chen, 1976) but also including the Functional Data Model (Kerschberg & Pacheco, 1976; Shipman, 1981), the Semantic Data Model (Hammer & McLeod, 1981), NIAM (Nijssen & Halpin, 1989), and Object Modelling Technique (Blaha & Premerlani, 1998). Each new modelling language has often been accompanied with claims of its superiority and at times hype when compared with the others. There has been little beyond opinion to substantiate such claims and yet all notations purport to do similar things. We have two research questions:
Q1: How well do data models represent reality?
Q2: What are the similarities and differences between data modelling languages?
We need a theory to help us answer these questions.
The mature philosophical study of ontology has been used as a source of theory to investigate tools and techniques used in the analysis and design of information systems. A key development in the use of ontology for the study of information systems has been the work of Wand and Weber (Weber, 1997), based on Bunge's ontology (Bunge, 1977, 1979). Part of the focus of this research has been to investigate the representational power of data modelling languages (Green, 1996; Rohde, 1995; Wand, 1996; Wand & Weber, 1989, 1990, 1993; Weber, 1997). Our work is motivated by the search for semantic methods to answer the research questions above. The work of Wand and Weber, while ground breaking, is based on structural comparison of elements of grammar and concludes only presence or absence of a 'construct'. The conclusions drawn are very much based upon whether or not the data modelling language supports the ontological construct.
Our work seeks to develop semantic methods that not only detect the presence or absence of a construct, but also allow us to judge the level of agreement or disagreement between a data modelling language
The contribution of this paper is two-fold. First, we develop qualitative methods: (1) 'the method of conceptual comparison', for conceptually evaluating individual data modelling languages through ontologies and (2) 'the method for conceptual comparison', for comparing a range of data modelling languages with an ontology based on a number of individual evaluations. These methods help answer the two research questions and are detailed in the method section. Our methods are, to some extent, independent of the individual ontology chosen as the basis of comparison. As a by-product we are starting to investigate the dominant ontology within data modelling languages. Secondly, we apply the methods using Chisholm's ontology (Chisholm, 1996) to a representative range of data modelling languages.
We follow this introduction with a deeper discussion relating ontologies and data modelling languages. We then examine the realism assumed in Chisholm's ontology and relate it to that contained within Bunge's ontology (the ontology upon which BWW is based). Following this we describe Chisholm's ontology, which is the ontology used in this study, before describing the methods applied. Finally we present the results and conclude.
RELATING ONTOLOGY AND DATA MODELLING LANGUAGES
We begin by defining ontology and discussing our ontological view of data modelling languages. Our treatment of ontology stems from the philosophical tradition and a good definition of ontology is found in Honderich (1995).
Definition 1-Ontology:
Ontology, understood as a branch of metaphysics, is the science of being in general, embracing such issues as the nature of existence and the categorical structure of reality.... Different systems of ontology propose alternative categorical schemes. A categorical scheme typically exhibits a hierarchical structure, with 'being' or 'entity' as the topmost category, embracing everything that exists". (p. 634)
Any ontology uses technical "expressions" to define what is real and it is these same "expressions" that are used to describe a specific 'state of affairs'. Each expression has meaning and may be defined formally or informally. It is important therefore to distinguish between the labels or words given to each technical expression and the meaning behind that expression. For example individual is a label given to a technical expression in an ontology and has a specific meaning in that ontology. For the purpose of distinguishing expressions from their intended interpretation we will use Term to mean the label used in the ontology and Concept to mean the interpretation that the ontology gives to that term. A concept is defined as follows.
Definition 2-Concept:
"[A] concept is a way of thinking about something--a particular object, or property, or relation, or some other entity." (Dancy & Sosa, 1992):
Now, to describe an ontology we require the following elements:
1. A categorisation of what constitutes reality, and what fundamental categories of things exist. As an example Chisholm presents his categorisation in a taxonomy (shown later in Figure 1).
[FIGURE 1 OMITTED]
2. A set of terms, each associated with a concept that fully defines the term, with which to construct descriptions of 'what there is'.
3. A set of fundamental terms labelling the fundamental categories (in 1) and a means of relating all terms back to those labelling the fundamental categories.
For example, Chisholm's ontology uses the terms individual, attribute, event, relation and set/class, but only individual, attribute and event are fundamental and label categories in Chisholm's taxonomy. Set/class and relation derive their definitions from individual and attribute, and are thus related back to the fundamental categories.
Data modelling languages also use terms to signify modelling elements. For example, the Entity-Relationship Model (Chen, 1976) uses the terms entity, relationship and attribute to signify specific modelling concepts used for modelling information systems. The terms, and their underlying concepts, used to describe a given data modelling language constitute an ontology of the type described above. We claim that the terms and concepts used to define a data modelling language constitute an ontological meta-model for the modelling language.
We can now compare the ontological meta-model for a data modelling language with a philosophical ontology (acting as an external, or reference, ontology) thus yielding a qualitative semantic analysis of the similarity and difference between the world view that can be captured by the data model and that embodied in the ontology.
Concepts are the basis for comparing an ontology with an ontological meta-model for a data modelling language. A concept is expressed using a possession condition.
Definition 3-Possession condition:
A possession condition is "[a] statement which individuates a concept by saying what is required for a thinker to possess it" (Dancy & Sosa, 1992).
Some concepts are compound. A compound concept has a core without which the entire concept is meaningless. In this sense the core of a concept is necessary for the concept's meaning to be intact (Honderich, 1995).
Definition 4-Core Concept:
A core concept is one such that its absence would render the definition of an entire concept meaningless (Milton, 2000; Milton, Kazmierczak, & Keen, 2001).
For example, the concept of a knife would be meaningless without a blade and some handle that fits within the palm of one's hand. If absent, other parts of the concept do not have the effect of rendering the concept meaningless.
By way of example, consider the term entity as used in the Entity-Relationship (ER) model. The concept for this term in ER is "... something which involves information. It is usually identifiable. Each entity has certain characteristics, known as attributes. A grouping of related entities becomes an entity set." (Thalheim, 2000)
Other similar definitions can be found in many texts, including the classical paper by Chen (1976). For data modelling languages, the concept …