Cover Pages Logo SEARCH
Advanced Search
ABOUT
Site Map
CP RSS Channel
Contact Us
Sponsoring CP
About Our Sponsors

NEWS
Cover Stories
Articles & Papers
Press Releases

CORE STANDARDS
XML
SGML
Schemas
XSL/XSLT/XPath
XLink
XML Query
CSS
SVG

TECHNOLOGY REPORTS
XML Applications
General Apps
Government Apps
Academic Apps

EVENTS
LIBRARY
Introductions
FAQs
Bibliography
Technology and Society
Semantics
Tech Topics
Software
Related Standards
Historic

This work has been partially supported by the National Science Foundation under Grant No MCS­82­10193. A later version of this material appeared in IEEE Software Vol.2, No.1, January 1985, pp.63­73.

Note: This excerpted portion of Alexander Borgida's document has been extracted from the Postscript source, available on the URL ftp://ftp.cs.rutgers.edu/pub/borgida/CML-features.ps.gz as of 2001-01-25 Please use the canonical document accessible from this location to see the entire text of the article.


[Summary]

A computer system which stores, retrieves and manipulates information about some portion of the real world can be viewed as a model of that domain of discourse. There has been considerable research recently on languages which allow one to capture more of the semantics of the real world in these computerized Information Systems ­­ research which has variously been labelled as Semantic Data Modeling, Semantic Modeling or Conceptual Modeling. This review paper presents a list of the features which appear to distinguish these languages from those traditionally used to describe and develop database­intensive applications, and considers the motivation for these features as well as the potential advantages to be gained through their use. The paper, which is intended for those familiar with current data processing practices, also compares in greater detail four programming languages which incorporate semantic modeling facilities, and discusses some of the methodologies and tools for Information System development based on these languages.

1. Introduction

The term "Information System" (and the acronym IS) is used in this paper to refer to any computer system which is intended to assist a class of users in the task of maintaining and accessing a pool of information on some aspect of a "real world" domain. We follow tradition here by restricting our attention to "formatted data", in contradistinction with free natural language text, pictures or continuous signals The view that in an IS

             the symbol system in the computer is a model of the real world

has been noted and examined by numerous researchers (e.g., [Abrial 74], [Biller 77], [Langefors 77], [Tsichritzis & Lochovsky 81]) and much of the work on "conceptual modeling" (abbreviated CM henceforth) takes this as a fundamental tenet. It is important to note that the IS must model the user's conceptualization of the application domain, not the designer's independent perception, nor should it be a model of the way data is stored in the computer.

Given this assumption, what ought to be in a conceptual model of some universe of discourse? Adopting a rather naive mentalistic philosophy, the mental world is often seen as populated by conceptual objects/entities, which have associated descriptions and are inter­related in meaningful ways; furthermore, activities occur over time, with resulting changes in inter­relations; all of these are subject to constraints, which define the terms and/or distinguish "reality" from other possible worlds (e.g., a person can have only two parents). In this paper we wish to survey several languages which purport to allow the description of an IS in a manner which models the real­world enterprise more naturally and directly than has been the case traditionally. The goal of this approach is to facilitate

  • the design and maintenance of the IS, by adopting a vocabulary which is more appropriate for the problem domain, and by structuring the IS description as well as the description process;

  • the use of the IS, by making it easier for the user to interpret the data stored, and thus obtain information.

The remainder of the paper is structured as follows: We first summarize some problems with traditional IS development languages in Section 2. Then, in Sections 3 and 4, we present some of the facilities for modeling the static and dynamic aspects of an enterprise which distinguish Conceptual Modeling Languages (CMLs henceforth). Finally, we consider some aspects of novel methodologies for IS development which are based on the use of CMLs, as well as computer tools supporting them.

There is currently an extensive and growing literature on "semantic data models", often concerned only with modeling the information to be stored in the database. Since we cannot hope to give appropriate attention to all of them in this paper, and since their semantics are notoriously vague, we have chosen to explicitly consider mainly those CMs which have been incorporated into programming languages, and thus are more likely to be properly defined and support the full description of an IS, including its activities. The specific languages to be discussed will be ADAPLEX [Adaplex 83], (based on the Semantic Hierarchy Model [Smith & Smith 77] and Daplex [Shipman 81]), DIAL [Hammer & Berkowitz 80] (based on SDM [McLeod 78]), GALILEO ([Albano et al 83], [Albano 83]) and TAXIS ([Mylopoulos et al 80], [Wong 81]). In addition, we will occasionally refer to some conceptual models which are important for historic reasons, such as Abrial's Binary Model ( [Abrial 74]), Chen's Entity­Relationship model ([Chen 76]), and Codd's extension to the relational model RM/T ([Codd 79]).

The appendix of this paper contains a brief summary of the fundamental features of each language together with an example which has been expressed in each of them. The example was meant to illustrate the special features of these languages and their relative strengths and weaknesses. The appendix concludes with a comparison of the 4 languages along several dimensions of possible interest.

2. The traditional approach

Sections 2-6 are omitted in this excerpt.

2 The traditional approach
3 Semantic Modeling of Objects/Entities and Associations/Relationships
4 Modeling dynamic aspects of the enterprise in CMLs
5 IS design methodologies and Conceptual Models
6 Computer aids associated with CMLs

7. Conclusions

To summarize the advantages of CMs from the users' point of view, note again that the usefulness of an IS depends on two general factors:

  1. the accuracy and completeness of the information stored (i.e., how well it models reality), and

  2. the accessibility of the information to the user.

CMs facilitate user access to information by:

  • modeling directly the entities and activities in the world

  • using the notion of attribute to access directly from one object all relevant related objects, rather than having to navigate storage­related access paths or computed joins

  • supporting the manipulation of groups of entities through set­oriented operators, multi­valued attributes, and appropriate conventions

  • providing uniform access to generic as well as specific information usually found in the database.

By incorporating more world semantics, CMs also help control the accuracy of the information.

From the point of view of IS developers, CMs advocate an approach which emphasizes the modelling of the real­world enterprise, as opposed to consideration of implementation issues, and support it by providing a vocabulary specifically suited for this purpose. Furthermore, the abstraction hierarchies supported by the CML features as well as the associated automated tools help the designer in the task of gathering, structuring and maintaining the IS description. [...]

Remaining sections (including bibliography and appendices) omitted.


Table of Contents

1 Introduction
2 The traditional approach
3 Semantic Modeling of Objects/Entities and Associations/Relationships
4 Modeling dynamic aspects of the enterprise in CMLs
5 IS design methodologies and Conceptual Models
6 Computer aids associated with CMLs
7 Conclusions
I  Further details of four CMLs, including an example 
I.1 An example
I.1.1 The example in ADAPLEX
I.1.2 The example in GALILEO
I.1.3 A Taxis description
I.1.4 The example in DIAL
I.2 A short note on approaches to implementing CMLs

Prepared by Robin Cover for The XML Cover Pages archive. See "Conceptual Modeling and Markup Languages."


Globe Image

Document URL: http://xml.coverpages.org/borgida85Excerpt.html