SCHEMAL(ID:5966/sch002)


Language for conceptual schemas


References:
  • Frost RA and Whittaker S "A step towards the automatic maintenance of the semantic integrity of databases" pp124-133 view details Abstract: A database should be an accurate model of that part of the universe which it represents. However, this is rarely achieved. Errors in the data occur for a variety of reasons. Various techniques have been developed to reduce such errors and/or to detect them when they occur. Some of these techniques are concerned with checking that the data is 'sensible', i.e. that is complies with certain constraints which are derived from our knowledge of the semantics of that part of the universe which is represented by the data. Such constraints are called semantic integrity constraints; an example is: 'no-one may be their own father'. Ideally, a database implementor should be able to specify a set of semantic constraints and then let the system enforce them automatically. Some progress has been made towards this ideal. However, the constraint definition languages which have been developed tend to by syntactically complex, and the enforcement of constraints is often carried out in an ad hoc manner. An alternative approach is proposed in this paper. We present a simple constraint definition language, SCHEMAL, and show how constraints expressed in it can be enforced automatically. We describe in detail the algorithm which is used to enforce SCHEMAL constraints. The methods has been fully implemented at the University of Strathclyde.
          in The Computer Journal 26(2) May 1983 view details
  • Frost, RA "SCHEMAL: yet another conceptual schema definition language" pp228-234 view details Abstract: Before a database system can be designed, the designer needs to know something of the application area. In particular, he/she needs to know aspects of reality are to be represented by data in the database. A description of the application area which contains such information is called a conceptual schema. Conceptual schemas are often written in English, if at all. However, there are good reasons why a more simple and more formally defined language should be used. One of these reasons is that formally defined conceptual schemas can be used to perform some of the database management tasks automatically. Surprisingly such use of conceptual schemas is not common. Most existing schema definition languages have been designed to facilitate the specification of schemas rather than the subsequent use of these schemas as integral parts of database systems. In this paper we present a new language, called SCHEMAL, which differs in this respect from most existing languages. SCHEMAL is simple and somewhat limited in its expressive power. However, SCHEMAL schemas can be used: (i) to identify inconsistencies in the user's view of the slice of reality in which he/she is interested, (ii) to automatically maintain the semantic integrity of the database. There is also good reason to believe that SCHEMAL schemas can be used automatically to infer implied data from data held explicitly in the database
          in The Computer Journal 26(3) 1983 view details