Inform. Printed
.S?srem.\ Vol in the U.S.A.
IO. No.
I, pp. 77-96.
1985
0306-4379185 $3.00 + .oO 198s Pergamon Press Ltd.
A FORMAL FRAMEWORK FOR DESCRIBING AND CLASSIFYING SEMANTIC DATA MODELS ROLF A. STACHOWITZ~ Burroughs Corporation,
Austin Research Center, Austin, TX 78759, U.S.A.
Abstract-The current lack of a classification system for Semantic Data Models (SDMs) is the result of their dependence on standard predicate calculus, which is limited in expressive power. Consequently, many issues in Database Theory cannot adequately be expressed, such as: temporal concepts (before/after insert/update/delete), the triple: true, false, unknown “facts”, existent and non-existent “objects” (null), private and “overlapping” Databases with-potentially-conflicting data, i.e. “possible” and “shared” worlds. The classification framework presented is based on systems of logic with greater expressive power than predicate calculus. In these logics, factual, semantic or intensional, modal, and probabilistic statements can be expressed. Two general classification criteria are established: (a) what can be modelled or expressed in the SDM? (b) what can be derived or deduced in the SDM? The descriptive and classificatory apparatus developed provides a satisfactory framework for representing and explaining the topics above and other theoretical issues, such as “open-world assumption” vs “closed-world assumption”, “null-objects” ~3s “unknown objects”. The individual features are applied to the analysis and comparison of five Database Models, among them Codd’s RM/T and Abrial’s binary model. The adequacy of the criteria is further shown by demonstrating that the descriptive features used by TsichritzisiLochovsky in Data Models are contained (as a proper subset) in the framework. The paper concludes with an outlook on inductive systems. Keyn,ords und Phrase.s: relational data models, semantic data models, formal classification criteria, semantic classification framework, modelling power, deductive power, predicate calculus, manysorted logics, intensional logics, modal logics, entailment logics, declarative logics, procedural logics, meta-language representations, model sets, model systems, null objects, unknown objects, unknown facts, negative facts, possible worlds, integrity constraints, integrity constraint representations.
INTRODUCTION
formalism to reduce the number of “non-sensical” statements. An SDM which is based on a “manysorted logic” does not thereby increase its expressive power: a many-sorted predicate calculus is equivalent to standard predicate calculus. It does not matter for expressive power whether we formulate
Among researchers on Semantic Data Model (SDM) topics there is general agreement about the fact that it is difficult to precisely define what a Semantic Data Model (SDM) is[l, 21. In our opinion, the lack of a classification framework for SDMs is directly attributable to their dependence on standard predicate calculus which is too limited in expressive power to express concepts such as: points in time (before/after insert/update/ delete), asserted “facts”, denied “facts”, and unknown “facts”, existent objects, non-existent “objects” (null), and unknown objects, possible worlds with common, diverging, and conflicting data. The lack of expressive power of standard predicate calculus has given rise to “extended systems”, the result of incorporating additional features in standard predicate calculus. The predominant versions of such extensions are SDMs based on “many-sorted logics”. In a many-sorted logic, co-occurrence prescriptions (sorts or types) can be attached to individuals and predicates of the
Vx(Man(x) + Male(x)) or vx Man Male(x); a many-sorted logic only provides greater expressive ease. We cannot express more with it than with standard predicate calculus, but we can do it more conveniently. The lack of expressive power of predicate calculus has also given rise to the trichotomy of “declarative” vs “procedural” L’S “hybrid” approaches to semantic modelling and knowledge representation. “Obviously”, any respectable database system (DBS) which provides for data creation and modification needs procedures to capture the concepts of previous and current, or current and future DB states.
t Present address: MCC, 9430 Research Boulevard, Echelon Building #I, Suite 200, Austin, TX 78759, U.S.A. 77
R. A. STACHOWITZ
78
The following is an attempt to describe SDMs and DBSs by means of properties of systems of logic more powerful than standard predicate calculus, powerful to an extent that “procedural” statements can be made “declaratively”. The classification framework presented is based on systems of intensional logic (Carnap[3], KaplanM), modal logic (Lewis and Langford[S]), and “entailment” logic (von Wright[6], Anderson and Belnap(71). To these, “probabilistic logic” (Reichenbach[8], von Mises[9], Carnap[lO]) could be added for expert systems and inductive systems. Based on the logical and descriptive terms of such systems, two general classification criteria are established: (a) what can be modelled or expressed in the SDM? (b) what can be derived or deduced in the SDM? We show that the “features” derived from these formalisms provide a satisfactory framework for representing and explaining the problematic topics above and others, such as, for example, the distinction between the so-called “open-world asassumption” of sumption” vs the “closed-world DBs. The article contains the following sections. (1) What is a Model? (2) The Meaning of “Semantics” and “Level” (3) What is an SDM? Why do we want to classify SDMs? (4) Criteria for the Modelling Power of an SDM (5) Criteria for the Deductive Power of an SDM (6) How to Analyze SDMs (7) A Comparison with TsichritzisiLochovsky’s Classification Features (8) The Future of SDMs: Inductive Systems The appendix contains a feature analysis of a few “semantic” DB systems, among them Codd’s RM/T. 1. WHAT IS A MODEL?
It will be helpful for the discussion of some of the subsequent points to briefly explain that version of model which we find most appropriate for SDMs. Tarski, when discussing the concept of truth of a sentence “p”, provided the following example[ll]: Sl. The sentence “it is snowing” is true iff it is snowing. This possibly slightly confusing statement becomes more evident when we realize that the part of the statement in bold type refers to a sentence, the part in italics to a fact. The statement becomes obvious when we assume that a German utters “es schneit”. Then Sl could be rendered as S2: S2. The sentence “es schneit” is true iff it is snowing. It has become standard to call those portions of sentence S2 which are enclosed in quotes, as belonging to the object language of a logical system
and the remainder of statement S2 as belonging to the meta-language, regardless of the actual natural or symbolic language used. Obviously, it is somewhat tedious and often impossible to determine the truth-value of an object language sentence by observing the actual facts. Logicians have, therefore, invented the concept of “truth relative to a model”. Rather than referring to facts, logicians regard a statement as true iff it can be “satisfied” or has a correspondence in a model of the facts. A model is thus a representation of a real world objects, their properties (predicates), and the relations that hold between two or more objects. A particularly powerful method for representing models, now commonly referred to as “modal logic semantics”, was invented by the modal logicians Kripke[l2-141 and Hintikka[lS]. In their rendering-particularly useful for SDM purposes-a model is simply a set of sentences stipulated to correctly describe facts of some world. An object language sentence is regarded as true iff it can be mapped onto the corresponding sentence in the model or model-set. (We shall subsequently use “model” and “model-set” as synonyms.) To clearly distinguish model-set sentences from object language sentences, we could stipulate that model-set sentences be given in French. Then S2 could be rendered as S3: S3. The sentence “es schneit” is true iff “il neige” is a model-set sentence. Note that the meta-language is now about two languages: the object language and the model language . Working with three different natural or symbolic languages in a logical formalism would be conceptually clearer, but also more tedious since it would require the addition of translation or assignment statements. Thus, we shall use the generally accepted convention of enclosing object language sentences in quotes and model language sentences in brackets. (We avoid the standard double brackets “1” and “1” because of their typographical tedium.) To determine, for example, the truth-value of “Father-of (iohn, mary)“, we simply check whether the model contains [Father-of Cjohn, mary)]. If it does, “Father-of (iohn, mary)” is true; if not, false. Of course, we are free to use other conventions for representing model-set sentences. We could thus use a representation closer to that used in relational database theory, as for example,
Representing models by means of sets of sentences has the additional advantage that we can eas-
79
Classifying semantic data models
ily construct models of worlds other than the real world, of so-called possible worlds, as we shall see below. But first we need to discuss the meaning of “semantics”.
2. THE MEANING
OF “SEMANTICS”
AND “LEVEL”
In logic, the terms “meaning” and “semantics” are used ambiguously. They stand for two terms: intensional meaning and extensional meaning. Intensional meaning, which closely corresponds to the term “semantics” as used in linguistic theory, explains a term of a language by means of other terms of the language. The extensional meaning of a term (also called “denotational semantics” or “semantics” in Logic and the Theory of Programming Languages) are the real or abstract objects that are described or denoted by that term. Thus the intensional meaning of “Person” can be defined as Person (=) Human A (Male v Female), the extensional meaning of “Person” can be defined as Person * {Fred Smith, Tom Jones, . . .} or: all the objects in the set Person. Note that the extensional definition of “Person” changes with every death and birth of a human being. The intensional definition of “Person” as a male or female human being stays the same; it is not affected by deaths or births. Simply, it is not affected by facts. Expressions which are intensionally equivalent are also extensionally equivalent, but not vice versa. Thus, the intensional meaning of “the Burroughs ARC-Employee whose office number is 310” is different from the intensional meaning of “the father of Cara Stachowitz”. Their extensional meaning, however, is the same. Both expressions denote the author of this paper. We can roughly state that we deal with “real” meaning when we talk about intensions, we deal with facts when we talk about extensions. Since Kant, the terms most often used to make this distinction are analytic and synthetic. We shall henceforth use “meaning” and “semantics” in its intensional sense. We shall use “extension” or “denotation” or linguistic derivatives of those terms to refer to extensions. Let us next introduce the term “level” as used by Carnap in place of the logical term “order”. [“Level n” thus corresponds to “n-th order”.] A DB normally contains data that pertain to different types of information. Data that give information about “objects of the real world” occur at or belong to the data level, or level 0, the lowest level of the DB. Such data are also called “level 0 data”. Data that provide information about level 0 data are level
1 data; they belong to level 1, or the schema level, of the DB. Data about level 1 data occur at level 2 of the DB, etc., up to as many levels as the DB supports. In DB terminology, data that occur at level n and provide information about data at level n - 1 are also called “meta-data” for the level n- 1 data. Similarly, the data at level n - 1 are called objectdata for the (meta-)data at level n. Thus data at level n are meta-data for the data at level n - 1. and at the same time object-data for the data at level n + I.
This terminology is somewhat unfortunate because of its similarity with the terms “object-language” and “metalanguage” as used in Logic. “Meta-data” and “objectdata” in DB theory belong to the object-language of logical systems; they represent different levels of the same language. It is to be hoped that these DB terms will eventually be replaced by more appropriate terms which invite less confusion. We shall use “meta-dara” and “object-data” as DB terms, and “meta-language” and “object-languuge” as logical terms.
The diverse levels of a DB can easily be recognized from the standard representations of relations by means of tables. In the following graph (intended to represent birthday gifts) _. 1-I
Give 1 Giver
1 Recipient
1 Gift
are level the values in the columns below the v the column 0 data, the values above the -, headings, are level 1 data. It is important to understand that terms which are identical but occur at different levels are distinct, i.e. they are different terms, with different meanings. Thus “height” at level 0 could stand for the name of a person, whereas “height” at level 1 could indicate a dimension. Note also that values like “Give” and “john” are atomic; they represent primitive terms of the DB. Within a system, primitives are formal, i.e. syntactic terms. For a DB, the following Table T- 1’ is just as “meaningful” and correct as the Table T-l above.
We can see that “il” (marked by “+--“) occurs twice in this table; this means that “A” denotes
R. A.
80
STACHOWITZ
(stands for) the same individual. Since such a representation is obviously too formal to be easily intelligible to a human reader, we select the more meaningful representation above with the understanding that every term occurring in a column is intended to be atomic and unique. If we should want to distinguish between two distinct persons with the name John we would represent them by “john;” and “johnj” (where i #j). We also visually distinguish level 0 data from level 1 data; level 0 terms appear completely in lower-case letters; level 1 terms begin with an upper-case character. It is important to realize that we are nevertheless dealing with a formal system: no term has an obvious meaning associated with it. Meaning (intension) is assigned in two ways, explicitly and implicitly. Explicit meaning is stated in the DB or SDM, implicit meaning is assumed to be known. Obviously, a DBS does not “know” the implicit meaning of any term. The implicit meaning of a term X for a DBS is determined by three criteria: identity, distinctness and level. Given two arbitrary terms X and Y, the DBS can determine whether they are identical or distinct and whether they belong to the same level or not. (DBSs which incorporate a many-sorted logic can also distinguish whether two arbitrary terms X and Y belong to the same sort (= type) or not). Clearly, the implicit meaning of a term available to a DBS is minute. To provide more information about the meaning of a term, its meaning must be made explicit to the DBS. The explicit meuning of a term X at level n is determined by the terms at level n+ 1 in whose context X occurs. In other words, all the column headings of the tables in which a particular value X occurs determine the explicit meaning of the value X. Each individual column heading Y partly determines the explicit meaning of the value X, namely the meaning or the role of X in column Y. Thus, in our example above in Table T-l, “john”, “peter”, and “cara”, are Givers; “mary”, “‘john”, and “freckles” are Recipients, and “watch”, “book”, and “wiener” are Gifts. This we can also represent in prefix notation (customary in predicate calculus) as: Giver(iohn) Giver(peter)
Giver(cara) Recipiennmary) Recipienttiohn) Recipient(freckles) Gift(watch) Gift(book) Gift(wiener).
The actual relationships represented in the table above can be rendered in prefix notation as: Give(iohn, mary, watch) Give(peter, john, book) Give(cara, freckles, wiener)
We can now make the term “level” more precise. In an expression of the form X(Y), X belongs to a level which is greater by one than the highest level of any term in Y. Thus, if the highest level of a term in Y is n, then X belongs to level n + 1. Since we know that the parenthesized terms in the prefix-expressions above are of level 0, we can deduce that the terms before the left parentheses are level 1 terms. We stated above that a DB can support several levels. Thus, level 1 terms can also occur as objectdata. Terms represented in tables occur as objectdata when they appear as values below the bold line . (The terms which occur in column headconstitute the metathe ings, above data for the object-data). We shall from now on indicate the level of the terms occurring in column headings of tables by followed by an integer expresmeans of “-” sion to the right of the right-most column. “I+ I” thus stands for “level 2 heading”. (The integer before the plus sign indicates the level of the terms below the column headings). Level 2 terms will also be represented in all upper-case characters (possibly including digits, hyphen and underscore). Thus, the Tables T-2 and T-3 below contain the level 2 terms RT, RELATION, ROLE, TYPE, 3PLACE, ROLE-l, ROLE-2, and ROLE_3, all of which provide semantic information about the level 1 terms in the object-data part of the tables. (We shall call a table a level n table if its objectdata belong to level n. Thus Tables T-2 and T-3 are level 1 tables). T-2
RT
RELATION Give Give Give Give Give Give
ROLE
TYPE
Giver Giver Recipient Recipient Gift Gift
Person Company Person Animal Thing Right
=1+1
(Meta-data) (Object-data)
Classifying semantic data models
81
T-3 3-PLACE
RELATION Give Promise SUPPlY
ROLE-2
ROLE-3
Giver Promissor Supplier
Recipient Promisee Suppliee
Gift Promissum Parts
The columns in Table T-2 provide the information that Give is a RELATION, that Giver, Recipient, Gift are ROLES, and that Person, Company, Animal, Thing, Right are TYPES. The tuples in Table T-2 convey the information that the TYPE of Giver in Give is Person or Company, that the TYPE of
T-4
umn table with the heading “Person” or “Animal”, (c) the Gift in Give must occur in a one-column table with the heading “Thing” or “Right”. Assume the DB contains the following additional tab1es T-4, T-5 and T6:
T-5
Person
=0+1
Animal
cara john mary peter
=1+1
ROLE-1
T-6 =0+1
Thing
freckles
Recipient in Give is Person or Animal, and that the TYPE of Gift in Give is Thing or Right. Similarly, the columns in Table T-3 contain the information that Give, Promise, and Supply are RELATIONs, that Giver, Promissor, and Supplier are ROLE-Is, etc. The rows of Table T-3 state that
=O+l
book watch wiener
By means of these additional tables or meaning rules we can show that the DB correctly accepted the tuples of Table T-l above. (We repeat Table T-l below as T-l” for convenience’s sake. We are also adding to it the information contained in Tables T-2 and T-3).
T-l”
Give
Person Company
Person Animal
Thing Right
+ TYPE, i.e., RM/T DOMAIN information
Giver
Recipient
Gift
=o+
john peter cara -l-i--i
mary john freckles
watch book wiener
the meaning of Giver in the RELATION Give is Role-l, that the meaning of Recipient in Give is ROLE-Z. and that the meaning of Gift in Give is ROLE_3. Note that the semantic information contained in level n tables can also be used by the DBS as conditions for the acceptability of tuples in tables of level n - 1. The level 1 Table T-2 thus also expresses the condition that the ROLE of Giver in Give must be satisfied by a Person or Company, that the Recipient in Give must be a Person or Animal, and that the Gift in Give must be a Thing or Right. To be more precise: (a) the Giver in Give must occur in a one-column table with the heading “Person” or “Company”, (b) the Recipient in Give must occur in a one-col-
I
The new Table T-l” thus closely corresponds to standard RMiT graphs which include our TYPES as RMlT DOMAIN information. The correspondence is not exact, though. To our knowledge, DOMAIN information cannot be connected by logical “or” in RM/T. In other words, only one DOMAIN can be specified per column. We can determine that the Givers are Persons (they occur in Table T-4), the Recipients are Persons or Animals (“freckles” occurs in Table T-S, Animal), and the Gifts are Things (they occur in Table T-6). If we tried to add the tuple Give [cara Imary /freckles1 to Table T-l” to express that cara gave freckles to mary for her birthday, the DB would reject it, since “freckles” does not occur in Table T-6 (Thing) or
82
R. A. STACHOWITZ
Of course, the DBS still needs to “know” what in a one-column table with the heading Right. (So to do with such information. It has to know what far there is no such table in the DB.) INCLUSION, SUB-SET and SUPER-SET mean. Similarly, We shall deal with this topic later when we discuss Give lcara /freckles (bone/ would be rejected, since “bone” does not occur in the second type of criterion, the deductive power of an SDM. any one-column table. We are now ready to give a definition of “Se(Note that in this DB we can express what is mantic Data Model”. called the “existence pre-supposition of individuals”, which is not expressed in standard predicate calculus, but tacitly assumed). With these semantic conditions, it should be ob3. WHAT IS AN SDM? vious that the DB could even provide the error message: Our initial response is: the tuple An SDM is a Database Management System Give (cara (mary /freckles/ which cannot be added to Table T-l”, since “freckles” (a) permits the derivation of not explicitly stored occurs neither in the one-column table headed data (theorems) from data explicitly stored in by Thing nor in the one-column table headed by the DB (axioms), Right, (b) permits the removal of explicitly stored data or more briefly, since “freckles” is not a Thing and which have become derivable (dependent axnot a Right, and similarly, since “bone” does not ioms) from data newly and explicitly added to occur in the DB. the DB, and Recall that we stated above that the meaning for (c) prevents the addition of conflicting data, i.e. a level n term is provided by its meta-data at level maintains the DB consistency or integrity. n + 1. Note, however, that according to this stateIt performs these tasks by means of three comment we would actually not know very much about ponents: the meaning of Person, Company, etc., except for (d) a statement component, the fact that they are TYPES. (e) a derivation rule component (e.g. modus poA DBS provides meaning for terms in two ways: nens), and (a) explicitly, by giving an interpretation-by (f) a deductive component (theorem prover). means of the meta-data-of a level n term in a Though this description captures a considerable level n table, and portion of the nature of SDMs, it is clearly not pre(b) implicitly, by relying on the users’ knowledge cise enough, because such criteria would also be of the meaning of a term at level n. met by any formalism with rules of formation and Terms whose meanings are given implicitly are derivation, such as an arbitrary logical theory with also called primitive terms. Thus, a DB may have axioms and derivation rules (given a theorem-provprimitives at any level. Level n terms are intering component) or even a simple syntactic grammar preted, or are assigned meaning, by level n+ 1 with a set of grammar rules and a production and terms in level n tables. recognition component. It is important to understand that a DBS can only Obviously criteria more precise than these are operate with information that has been made ex- needed. plicit. Assume that Table T-5, which we repeat as If we examine different versions of SDMs, we T-S’, had the heading Dog. observe that they deal with different kinds of information: they deal with concepts (or meaning), T-5’ with facts, with conjectures and probabilities. It ap=O+l pears natural to establish some type of “logical” Dois progression of SDMs based on the following relation between logic, concepts (meaning), facts and i freckles probabilities: what is logically true is also conceptually true, In this case, the tuple what is conceptually true is also factually true, Give [cara (freckles Iwiener what is factually true is also probably true, i.e. would be rejected since “freckles” does not occur with a probability of 1 (or greater than 0). in a one-column table headed by Animal. We know We therefore posit an SDM with the correspondthat a Dog is an Animal, but the DBS does not. At least, not so far. This information has first to be ing components: a logical component, made explicit by means of Table T-7, for example. a conceptual component, T-7 a factual component, and a probabilistic component. =1+1 INCLUSION SUB-SET SUPER-SET Each of these components contains its own set of statements. Statements come in two varieties: Animal Dois
Classifying sema ntic data models
general statements (rules) and specific statements (“facts”). (We outlined such a system in[16].) Such models-each of them with the logical component as the nucleus-would roughly correspond to semantic data models proper (“conceptual” and “semantic” in one sense are synonymous), knowledge-based systems, and expert systems-assuming the last allowed for conjectures or probabilistic statements. We shall show below that an SDM has to support among others negative and unknown facts, known and unknown individuals, real and possible worlds. Taking this for granted, we can now propose a formal definition of “Semantic Data Model”. An SDM is an interpreted logical calculus consisting of a logical formalism and a model. The model contains model-set language translations of all axioms and theorems stated or derivable in the formalism. A proper subset of the model containing translations of only the axioms, i.e. of the non-derivable sentences, is implemented by means of a DBS. The formalism has the following characteristics beyond those of standard first-order predicate calculus: (a) it supports sorts or types, i.e. it is a many-sorted logic ; (b) it supports at least three truth values: True, False, Undetermined; (c) it is a higher-order formalism, at least of order (level) 2, i.e. it supports besides regular individuals and predicates also properties and relations of predicates, as for example, Father-of is IRREFLEXIVE, HAS_CARDINALITY_OF(Father-of,n) HAS_TOTAL_OF(Salary,m) (d) it supports “modal” individuals, such as “worlds” and “points-in-time” both of when an event occurs and when it is entered into the model, (e) it supports existing and non-existing individuals “null objects”), (fl it supports known and unknown individuals. We have determined that an SDM is a DBS which permits the derivation of not explicitly stored information and prevents the addition of incompatible information. For this it makes use of a deductive component with derivation rules which operates on general and specific statements pertaining to the areas of logic, semantics, facts, and conjectures. We shall list below, in Sections 4 and 5, a subset of the specific criteria which will permit us to make this statement more precise. In the meantime let us ask: Why do we want such capabilities in an SDM? Let us first respond to: Why do we want the capability to derive information? The answers are: (I) we can considerably reduce the amount of data that need to be stored in the DB and
83
(2) we may be able to answer queries from the information in the smaller rule component of the DB, rather than having to search through the considerably larger statement component. Assume we have a DB with thousands of entries of the type: il is a woman, il is a person, il is female i2 is a woman, i2 is a person, i2 is female i3 is a woman, i3 is a person, i3 is female
i923 is a man, i923 is a person, i923 is male etc. The addition of the rules: Vx (x is a woman + x is a person A x is female) Vx (x is a man + x is a person A x is male) permits us to derive that anybody who is a woman is also a person and a female, and that a man is also a person and male. The entries il is a person, il is female, etc. i923 is a person, i923 is male, etc. can now be derived by means of these rules and the statements: il is a woman i923 is a man. The additional entries thus become superfluous and can be removed from the DB, resulting in a considerable reduction in the storage requirements of the DB. Let us next respond to: Why do we want to prevent data inconsistency? In most systems of logic, any sentence-true or false-follows from a contradiction. If we want to be able to derive not explicitly stored information, we must prevent contradictory information from occurring in the DB, or else we cannot rely on the correctness of the derived information. Why do we want to classic SDMs? The most obvious response is that there exists no satisfactory system for classifying SDMs. The advantages of having precise criteria for describing and classifying bodies of research areas need hardly be argued. A classification system allows for comparison of conjectures, hypotheses, and theories. It permits us to determine overlaps, divergences, and gaps. It permits us to rank systems and construct more powerful ones by taking and combining-if compatible-the powerful features of individual theories. We argued above that the lack of a formal classification system for SDMs is directly attributable to their dependence on standard predicate calculus. Since this formalism is limited in expressive power, a corresponding formalization of SDMs within the framework of standard predicate calculus is obviously also limited and therefore not sufficiently
84
R. A. STACHOWITZ
useful for explaining the more interesting problems confronting SDMs. Years ago, when working on knowledge-based Mechanical Translation and IR in natural language, we became aware of the existence of certain branches of logic other than the “standard” elementary logic-such as intensional logics, modal logics, and probabilistic logics-which allow one to make statements not expressible in elementary (predicate) logic or only expressible “procedurally” in combination with elementary logic. We wondered whether the properties and power of SDMs would be described and classified according to the features they had in common with such nonstandard logical systems. Our current work on Semantic DBSs has acquainted us with some of their limitations: some systems cannot express that an individual i is a member of both set A and set B, where A is not a subset of B and vice versu. Others have problems expressing the distinction between the truth-values of False and Unknown. We began wondering whether a degree of “semanticity” of SDMs could be based on what could be stated in the model, its modelling power, and what could be derived in it, its deductive power. The following is an eclectic description of certain features extracted from the logics corresponding to the four stipulated components and an attempt at classifying a few DBSs by means of them. 4. CRITERIA FOR THE MODELLING POWER OF AN SDM We select our criteria for classifying and describing SDMs from logical formalisms which generally distinguish between descriptive terms: individual constants, predicate constants, and sentence constants,
and logical terms: variables (for individuals, predicates, sentences), the quantifers V (for all) and 3 (for some), the operators L (iota) and A (lambda), the sign for the element-class relation E (is a), the sentential connectors - (not), A (and), V (or),
-+ (materially implies), f, (materially equivalent), =) (strictly implies), (=) (strictly equivalent), = )) (relevantly implies), (( = )) (relevantly equivalent), = (identical with), 0 compatible with). (Strict implication and strict equivalence occur in modal systems; relevant implication, relevant equivalence and compatibility in Anderson and Belnap’s calculus of Entailment[71). For the analysis and description of SDMs, we separate these terms into those that can be used in connection with simple sentences (universal or specific, asserted or denied) and those that must be used with compound sentences, i.e. with the binary sentential connectors. We would like to argue that the first group of terms reflect what we want to call “the modelling power” of an SDM; and the second, “the deductive power” of an SDM. For the purpose of this paper, it is sufficient to limit ourselves to the following features (terms) which appear adequate to distinguish a number of SDMs with respect to their modelling power: (I) individual constants (2) sentence constants (3) universal statements (and individual variables) (4) negative “facts” (5) unknown facts (6) possible worlds (7) shared worlds. Before we discuss the particular features, the following properties of model-set sentences should be recalled. Model set sentences are atomic and not negated. The truth or falsity of a sentence in the object-language of a system is stated in the meta-language with respect to the corresponding model-set sentence of the model-set-language (or interpretation language). This will be explicated in the discussions of the individual features. Individual constants The following graph shows the relationships between object-language, meta-language, and modelset-language.
where: Predicate constants: P, Q. R Individual constants: 1, 2 Model-sets: Mu T = true F = false PI = “I is a P” ex.: Woman(l) Q2 = “2 is a Q” Man(2) R2,l = “2 is an R of I” Brother-of(2,t)
Classifying semantic data models The graph shows the “facts” that individual 1 is individual 2 is individual 2 is
the model set Ma. Ma contains a Woman, a Man, and a Brother of individual
1.
In model set Ma, the object-language sentence PI is satisfied or true since [Pl] occurs in Ma. This “satisfaction” is expressed in the meta-language by means of T(“Pl”), i.e. the object-language sentence Pl is true in model set Ma. The object-language sentence Ql is not satisfied or False since [Ql] does nor occur in Ma. This Falseness is expressed in the meta-language by means of F(“Ql”), i.e. the object-language sentence Ql is false in model set Ma. We observed that the graph contains constants for individuals and predicates. Individual constants, like “1” and “2”, are names for individuals. Such individual constants, in current DB terminology, are also called “surrogates” and “entities”; RM/T[ 171 uses “kernel entity” for them. The advantages of surrogates, entities, individuals have been sufficiently described elsewhere. We take them for granted here. Negative
“facts”
and unknown facts
As the graph shows, there are two basic methods of representing facts in a DB: by means of a model-set-language representation, or by means of a meta-language representation.
85
There would be no problem with the MSL representation. We simply add [Ql] to Ma. If we used the ML representation in the DB, though, we would fail, since F(“Q1”) is already stored. Adding T( “Ql”) would thus result in a contradiction! This, however, does not argue against the equivalence of the two representation methods. It does show, though, two basic types of DB models[l8]: the “closed-world” model and the “open-world” model. In a closed-world model, every fact is assumed to be known and represented in the DB. In this kind of DB model, data creation, modification, and deletion are not permitted or meaningful. A closedworld model thus reduces to a “query-only” DB. In a closed-world DB, ML and MSL are equivalent: an arbitrary sentence A is either true orfalse. The concept “unknown” cannot be expressed, In an open-world DB, however, a distinction can be made between negative “facts” facts, but only if negative “facts”
and unknown
can be reprei.e. by means of an ML repre-
sented explicitly, sentation. This can easily be shown. Assume we enter information into a closed-world DB at states (or points in time) i, j and k. At state I, we establish that the individual 1 is not the Mother of individual 3. We represent the sequence of states and DB contents by means of the following graph. (We shallas of now-omit the special symbols “” (quote), ‘[‘(left bracket), and ‘1’ (right bracket) to indicate ML or MSL terms since the column headings permit the re-creation of these symbols.).
where: Predicate constants: P = Person, MO = Mother Individual constants: 1, 2, 3 M01,3 = “1 is a Mother-of 3”
These methods appear to be equivalent. The meta-language (ML) representation is more verbose, though, since denials of statements are explicit. Ql is False is represented as F(“Q1”). In the model-set-language (MSL) representation, denials are implicit: Ql is False is represented through the non-occurrence of[Ql]. The ML representation thus appears less efficient from a storage point of view. Consider, however, the different responses a DBS might provide depending on whether denials are represented in ML or MSL fashion. Assume we tried to add “Ql” to Ma with ( 1 T)Ql (Create as True “Ql”) (” J ” stands for “create”).
Note that during states i through k, the ML and MSL representations are isomorphic. This changes, however, at state I when we establish that the individual 1 is not the mother of individual 3: the ML representation contains this fact explicitly: the number of the ML sentences is now four. The number of MSL sentences, however, remains at three since the denial of Mol,3 cannot be made explicit. Assume we query at state m (m 2 I) with (?T)(Mol,3)
or “is individual 1 the Mother of individual 3?” Both ML and MSL models will respond with False: ML, because it contains F(Mol,3): MSL, because it does not contain Mol,3.
R. A. STACHOWITZ
86 If we now query the DBS with (?T)(Mo2,3) or
“is individual 2 the Mother of individual 3?” the MSL model will again respond with False since it does not contain Mo2,3. The ML model, however, will respond with Unknown because neither T(Mo2,3) nor F(Mo2,3) occur in the DB. We repeat: in order to be able to respond “Unknown”, the DBS must be able to express truth or falsity of a sentence explicitly. If denials cannot be made explicit-as in an MSL model-then the distinction between False and Unknown becomes meaningless: we are never able to tell whether the absence of a particular sentence means that it has already been denied or that it has not yet been added (as true) to the DB. In an MSL model, the two responses False and Unknown are equivalent. It makes no sense to distinguish between them. In order to distinguish between True, False, and Unknown, we need to be able to explicitly store denials of sentences, which requires an ML representation. [We shall subsequently assume that the DBS discussed is an ML model, i.e. that denials are made explicit]. Possible worlds and shared worlds
Of the modelling power features, we have now discussed “individual constants”, “negative facts”, and “unknown facts”. We still need to introduce “possible worlds”, “shared worlds”, state“sentence constants”, and “universal ments”. Again, we are using Hintikka’s method for representing systems or collections of models. Assume we have two private DBs which are managed by the same DBS. We represent these two DBs by Ma and Mb in the following graph.
This graph reflects that “PI” and “Q2” are true in Ma, and that “91” is false in Ma. “Pl” and “Ql” are false in Mb, and “Q2” and “P3” are true in Mb. Since this graphical representation is not particularly lucid, we will replace it subsequently by the following type of graph
where parentheses have been removed; False is represented by ‘-’ (before a predicate constant); and True, by the absence of ‘--‘. We can observe that “contradictory” data can be contained in the DBS. After all, “PI” is true and false in the DB. Of course, the sentences are not really contradictory since they belong to different “worlds”, model sets: “Pl” is true in Ma and false in Mb. Such conflicting data occur in most DB-based decision-making systems, where certain “counterfactuals” or “what-ifs” can be assumed and stored with their consequences. They could also occur in “expert systems” where conflicting data, for example on promising oil-drilling sites, could be stored. Such systems can also sharefacts. In our graph, “Q2” is true and “Ql” is false in both Ma and Mb. This could be reflected by stipulating a “shared” model-set SW where “Q2” is True and “Ql” is False. SW and the diverging model-sets Ma and Mb could then be represented as
We can observe that such shared and diverging DBs (and even hierarchies and networks of shared and diverging DBs) can be represented in a natural manner in modal systems with model sets; such systems can capture and represent the concepts of possible worlds and facts common to some or all worlds. Universal statements
Universal statements are desirable for the derivation of data not explicitly stored in the DB. To facilitate the derivation of implicit information, we argue that the DB should be divided into two components. Component 1, the Fact Component, contains atomic ML sentences with individual constants, i.e. sentences of the form: T( “A”) or F( “A”) where “A” is a sentence of the object-language consisting of one n-place predicate constant followed by n individual constants. Component 2, the Rule Component, also contains sentences of the form: T(“A”) and F(“A”), but “A” is (a) a molecular sentence of the object-language consisting of two or more atomic sentences with at least one dyadic logical connector: “A” (“and”), “V” (“or”), “+” (“if-then”), etc., the universal and existential quantifiers “Y” (“for all”), “3” (“for some”), and variables for individual constants ‘&xl’, “y”, “z”, and others, or
87
Classifying semantic data models
(b) an atomic
sentence
with at least one individual
variable.
Such separation into a “fact” component and coupled with a “deductive” “rule” component component (theorem prover with derivation rules) allows considerable reduction in the amount of information that needs to be explicitly stored in the DB. Two examples are represented in the following graph. -
“associative entity” (RMIT), or “concept surrogate” (Abrial and Anderson). We simply regard sentence constants as abbreviations for sentences. S,, for example, could be the abbreviation of Vx(Px+QxARx)
A 3y(QyA-Ry)
“every man is a male and a person, but some males are not persons and some persons are not male”.
Rule Component
DB Facts without Rules
DB Facts wirh Rules
{VXPX} = Md
{Pl, Ql, Rl, P2, Q2, P4) = Md
{Ql, Rl, Q2) = Md
{Ql, RI, F2, Q2, P4, 94, R4) = Me
{Ql,Rl,
{VxPx+
Qx} = Me
We can see that the addition of the rules in the rule component permits a reduction in the number of the sentences in the fact component. Moreover, queries like: “Is individual 1 a P in Md?” (?ZXPl,Md)
can be answered by accessing only the information in the rule component of Md. Similarly, ENTER “5 is a P in Md” ( 1 V(P5,Md)
need not be executed for Md because the sentence follows from the rule in the rule component for Md.
A 3y(RyA-QY)
or
P2, P4,R4} = Me
S2 could abbrevate “E(S,7,1043,10293)” or “tim traded a car with ann for a motor-bike”. In an environnent with possible worlds, the use of sentence constants can result in additional storage reduction since the unabbreviated-and possibly very lengthy-version of a sentence needs to be stored only once, let’s say, in a central repository, without any truth-value indication. Where truth-values and possible worlds need to be specified, the corresponding abbreviations can be used. (Such a repository could be interpreted as a list of object-language sentences, also divisible into “rule statements” and “fact statements”.)
S, :: Vx(Px + Qx A Rx) A 3y(Qy A- Ry) A 3y(Ry A- Qy) s4 :: Vx(Px)
RULES
Sz :: E(8,7,1043,10293) & :: G(9,12,193)
FACTS
Meta-Lge’ Ma = { SI, SZ, SX, -&I Mb = I-S,, .S2, -S3, S41 MC = l-S,, S2, -S3, -S4}
WORLDS
Similar arguments apply to the data in Me. We only need to store a “QS”, if there is no corresponding “P5”. (We are not arguing here that it is always performance efficient to omit the storing of factual data that can be derived.)
It would have to be determined whether the obvious savings in storage space are off-set by the required additional look-up in the sentence repository.
Sentence
Whereas the previous section discussed “what can be expressed by the SDM?“, this section deals with “what can be derived by the SDM?” Againas in the discussion of “expressive power”-we argue that the deductive power of an SDM can also
constants
The last criterion we need to discuss is “sentence constants”. Sentence constants appear in Relational DB theory under names such as “Relation entity” (Chen),
5. CRITERIA
FOR THE DEDUCTIVE POWER OF AN SDM
88
R. A.
STACHOWITZ
be determined by means of purely formal or syntactic criteria. We shall describe the deductive power of an SDM by means of the syntactic structure of the rules in the SDM rule component and the logical connectors occurring in them. We are all familiar with the structure of CF grammar rules: LHS @ RHS or Left-hand side-connector-Right-hand Side. The left-hand side (LHS) consists of exactly one symbol; the right-hand side (RHS) consists of one or more than one symbol. If the RHS contains more than one symbol, the connector between those symbols, concatenation, is normally not explicit, but represented by a blank space. Thus we normally see: A+BC rather than A+B_C where “_” stands for concatenation. The limitation of the LHS to exactly one symbol is not serious. If we want to express B-C+A, we can write instead A+B_C. If we want to express both, we can state this as A-B-C. The case where both RHS and LHS contain more than one term can be handled by representing LHS by means of a sentence constant. We shall call the connectors between LHS and RHS “main connectors”. No special term will be used for the connectors on the RHS. We shall attempt a classification of the “deductive power” of an SDM according to the following sub-criteria. (1) The main connectors used: =,-+, *> =), (=), E, 0 (identity, material implication and equivalence, strict implication and equivalence, is-a, compatibility; we omit relevant implication and equivalence.) (2) The number of terms on the RHS: one or more than one. used on the RHS: A, V, -, (3) The connectors etc. (4) The level of terms on LHS and RHS. (5) The type of terms on the RHS: (a) primitive, atomic, molecular, and (b) individual constant, predicate constant, sentence constant. (We distinguish between “primitive term”, “atomic term”, and “molecular term” in the following way: a primitive term is an undejined term whose meaning is assumed to be known by the user of the SDM; an atomic term is defined as a synonym or alias of a primitive term. If Person is a primitive term, then the rule Human (=) Person defines and creates the atomic term Human; a “molecular term” is also a defined term which occurs on LHS of a rule with the structure
LHS (=) RHS Where RHS consists of more than one term.)
The rule examples lowing order:
will be presented
in the fol-
(a) both LHS and RHS terms are level 0 terms, (b) both LHS and RHS terms are terms of the same level n (n > 0), (c) the LHS term is of a lower level than the RHS term. Level 0 @ Level 0 Let us begin with “regular” individuals first. The only meaningful main connectors between such individuals or terms of level 0 other than numbers and strings appear to be “ = ” (identity), “#” (distinctness), and “0” (compatibility; see the example for rule 4, below). (For numbers and strings, which we ignore here, we have-in addition-the standard arithmetic and lexicographic operators which are-we assumenot stored in the rule component of a DB, though available to the DBS.) LHS@RH& I ij # ik 2 uj = ik 3 uj f ik Irk 4 llj 5 uj f null 6 ij # null
Example
il # i2 u9 = i2 u9 Z il
u9
i3
Translation (john # mary) (the murderer = mary) (the father # john) (the murderer could be fred, is compatible with fred) “null” is distinct from all individuals
SDMs make the tacit assumption that all individuals are distinct. Rule 1 is therefore a default rule which does not need to be made explicit. Unknown individuals and null-“individuals” Note that in rules 2-5, we are stipulating the existence of an additional type of individual (surrogate), the “nameless” or unknown individuals, aindividuals. u-individuals are individuals whose identity is not known. u-individuals are not the of RMIT flavor. An unisame as “null’‘-entities dentified murderer could be an example for a uindividual in a crime DB. All information about the murderer would be associated with his representation, let us say, ~23. When it is finally determined that the butler, represented by i4538, did it (see Kent[l9]), we can either add the rule “~23 = i4538” to the DB or change “~23” to “i4538” wherever it occurs in the DB. Another example for u-individuals: assume a man lost two sisters, “~19” and “u20”, during the Holocaust. The DB may contain very precise information about both of them: name, sex, place and date of birth, last residence, etc. However, the DB does not have the information which permits the establishment of the statement “~19 = i1021 l”, if his sister-i1021 I-“exists” in the DB. Let us repeat: a u-individual denotes an individual whose identity is not known to the DB or the user of the DB.
Classifying semantic data models
u-individuals can be distinguished, they can be counted, and joins can be performed over them. u-individuals are distinct from “null-objects”. Null-objects do not denote an individual (i- or u-) [3]. (Rules 5 and 6.) Null-“objects” are responses (values) returned by the DBS when a query with the definite description X does not denote an i-individual or u-individual. They are pseudo-objects stored in the DB when an attribute is not applicable to some individual. Assume the column Social security number is mandatory in some relation containing information about the individual john. If john has no Ssn, then his Ssn is null. Nulls-if not typed-cannot be distinguished and no joins are,legal over them. Rule 3 could represent the fact that of three possible Fathers in a paternity suit, one, namely john, can be excluded (possibly because of the result of some test). Rule 4 could represent the fact that fred is a suspect in a murder case. Note that the explicit introduction of “unknown object” permits us to conveniently formulate what-allegedly-cannot be stated in relational DBs: john or mary is a teacher. This can be stated by means of the tuples: Teacher(u23) Compatible(u23john) Compatible(u23,mary).
89
“Person”. In other words, “Human” is an alias for “Person” (and vice versa). (Definitions correspond to intensional equivalence in systems of intensional logic, or to dyadic equivalence or relevant equivalence, in certain modal systems. Dyadic equivalence implies strict and material equivalence[7].) Rule 3 states that the relation Parent-of is the inverse of the relation Child-of. This rule type is expressible, for example, in the binary models of Abrial[20] and Anderson[2 11. Rule 4 holds-mostly in a limited fashion-in some DBSs. In these systems, a term like “Man” can only appear once as a LHS term. Thus, the additional rule Man = ) Male cannot be entered once Man = ) Person has been stated. In other words, inclusion is restricted to hierarchies (trees) and cannot be expressed for networks (graphs). Rule 5 states that “Human” and “Earthling” denote members of the same set (extensional equivalence in intensional logics). This is a statement of fact whose truth will pass when humans begin to live on the moon. Rule 6 states the compatibility of Male and Animal: some individuals can be both Male and Animal. The desirability of such a rule is stated in Date[22]. Rule 7 states the incompatibility of Male and Thing: no individuals can be both Male and Thing.
Level n @ Level n
For atomic terms of the same level n (n > O)besides “identity”, “distinctness”, and “compatibility”-only “inverse-of ‘, strict and material implication and their inverses appear meaningful.
Examp!e
LHS,@RHS,(m = n) 1 pj # pk 2 pj(=)pk
PI # P2 P3 (=) P2 p4(=)p5’ PI =)p2 P3 ++ P6 ~7 0 ~8 P7 0 P9
3 pj(=)pk’ 4 pj 5 pj 6pj 7 pj
=)pk ++ pk 0 pk 0 pk
Again Rule 1 establishes that no two terms are identical. This rule holds as a default in the DBSs we know. Rule 2 states a definition. The relation of synonymy holds by definition between “Human” and LHS,,@RHS,(m < n) 1 ij $Cpk
217 Epk 3 pj E Pk 4 pj E Pk
m @ Level n (m < n) We are left now with the case where the terms on LHS and RHS belong to different levels. By vir-
Level
Translation (Man # Person)
(Human (=) Person) (Parent of (=) Chilhof) (Man =) Person) (Human - Earthling) (Male ,: Animal) (Male 0 Thing)
tue of the definition of “level”, no identity or defferent levels. The meaningful main connectors appear to be set-membership and its denial. Rule 1 states that freckles is not a Person. Rule type 2 is limited in the DBSs we know.
Example
Translation
il i2 p2 p3
(freckles +Z Person) (cara E Person) (Person E CLASS) (Father-of E IRREFLEXIVE)
ft E E E
p2 p2 P2 P2
90
R. A.
STACHOWITZ
There you cannot express that a particular individual belongs to two distinct DOMAINS A and B, where A is not a subtype of B and B is not a subtype of A. In other words, set membership can only be stated once for a term of a particular level. Rule type 3 states that (the level 1 term) Person is a member of (the level 2 term) CLASS. Rule 4 states that Father-of is a member of (the level 2 term) IRREFLEXIVE. This rule could be used to prevent a sentence like Father(i9,iB) or john is his own father from being added to a DB. Greater deductive power can be achieved by permitting individual variables in these basic rule types. Thus the rules Father_of(x,y) + Father(x) Father_of(x,y) + Parent(x) Father_of(x,y) -+ Child(y) could express that if x is Father-of y, then x is a Father, x is a Parent, and y is a child. None of the DBSs we list below can state such rules. Even greater deductive power can be obtained by permitting more than one term on the RHS of such rules. Multiple RHS terms can be connected by the logical connectors “A” (“and”) and “V” (“or”), etc.; terms can also be negated by “--‘I. Rather than repeating the rule frames in detail, we shall give a few examples. (1) Man = ) Person A Male (2) Boy =) Person A Male (3) Child =) Person A (Male V Female) (4) Person =) Male V Female (5) Person =) Man V Woman (6) Person ( = ) Human A (Male V Female) (= ) Father_of(x,y) V (7) Parent-of(x,y) Mother_of(x,y) (= ) (Brother_of(x,z) A Par(8) Uncle_of(x,y) ent-..-of(z,yN V (Husband-of(x,t) A Sister_of( t,z) A Parent_of(z,y)) (9) Supplier(x) + City_of(x,london) V City_of(x,paris) The address of all suppliers is london or paris. (10) Supplier_of(x,screw) + Name_of(x,smith) Only smith supplies screws. Rules also function as integrity constraints. Rule 1, for example, prevents Man(i29) from being added to the DB, if “Person(i29) is False” or “Male(i29) is False” are already stored in the DB. Rule 9 prevents the addition of Supplier(i43), if the City of i43 is different from london or paris. Rule 10 prevents the addition of Supplier-of(i92,screws) if the Name of i92 is not smith.
Rules can also be used to state integrity constraints declaratively that are typically stated in the literature by means of procedures. Two of those, taken from Date[22], follow. (1) (SP.QTY=O) -DELETE SP If the value of QTY in a tuple of relation SP is 0, remove that tuple. SP(xyzuu) A u = 0 +
-Qx
Here, x denotes the tuple identifier (associative entity), and Q is the existence predicate. The rule can be read as: if in SP(xyzuv) u = 0, then x does not exist. Standard predicate calculus contains a tacit existence presupposition for individuals. Thus, one of the two sentences -(kim is a Freshman) and (kim is a Freshman) is true, the other false, since Susan is assumed to exist. In logics without existence presupposition, -(kim is a Freshman) and (kim is a Freshman) are both False, if kim does not exist. In such logics, deletion of a tuple with a nonexisting tuple identifier is actually not required since Existence is a pre-requisite for Truth. (2) New-Status > S.Status The “new” value of Status, i.e. after update, in a tuple of relation S must be greater than the old Status, before update. In modal and temporal logics, also in appropriately extended first-order logics, where the concepts of “point in time” (time individuals) and “precedes in time” can be expressed, this constraint can be formulated as: i, <,j, A s(XyZUi) A s(XyZSj) + S>U. This rule can be read as: If time point i, precedes time point j, and S(xyzu) is true at time point it and S(xyzs) is true at time pointj, then s (at timej,) is greater than u (at time i,). We are ready to show how to apply the described modelling and deductive criteria to the classification of SDMs. 6. HOW TO ANALYZE SDMs
As we recall, the criteria we developed for representing the expressive and deductive power of SDMs correspond directly to the descriptive and logical vocabulary of the logics that we used. It appears natural to use these criteria also for the description and classification of SDMs themselves. We perform this in the following manner. For each type of term, descriptive or logical, of an investigated appropriate logic we determine whether this type is reflected in the SDM(s) under discussion. For individuals, we would thus determine whether the SDM supports regular, i.e. identifiable, individuals; whether it supports non-existing individuals and unknown individuals. Does it support
91
Classifying semantic data models or types? Does it support unusual kinds of individuals, like “worlds”, “points-in-time”? For truth-values: Does the SDM represent true facts, false facts, unknown facts? Does the SDM permit the definition of terms by means of others? . . . etc. etc. Each of the criteria used is represented as a feature, the name of a row, in a feature matrix. The SDMs name the columns. We enter “yes” (“no”) in the SDM column, if the SDM supports the row feature (or not), as in the following abbreviated example. Features SDMI SDM2 sorts
I. Individual constants:
identified unknown null
2. Sentence constants 3. Main connector: identity definition implication
Y N N N N N Y
Y N Y Y N Y Y
We can describe an SDM by listing its feature values. We can compare it with another SDM by listing the features they differ in. We can plan a more powerful SDM by merging the columns with “yes” values. Though such a feature analysis is purely formal, i.e. syntactic, it can be used as a “discovery procedure” to obtain new features. Assume two SDMs have the same feature combination, but still different power. One, for example, supports “net” implication; the other, only “hierarchical” implication, i.e. the first can express that a Teaching Assistant is both a Student and a Teacher, the second cannot. This difference in power can be “featurized” resulting in the new features “tree implication”
and “net
implication”.
(For a more detailed example of a feature analysis of some DBSs see the Appendix.) 7. A COMPARISON
WITH TSlCHRITZlSlLOCHOVSKY’S
CLASSIFICATION
FEATURES
In Data Models, Chapter 10, ‘Semantic Network Data Models’[ l] Tsichritzis and Lochovsky (T/L) state that “it is difficult to define exactly what constitutes a semantic network data model”. They do not attempt such a definition, but do list a few properties that such models have or should have. We shall show that the features they list can be subsumed under our formal framework. [ 1] first quote and reject the statement that “any labelled graph connecting nodes by means of arcs can be called a semantic network data model [Hendrix, 1977; Brachman, 1979].“t (Brachman, later in 1979, also rejects
Person /\ Profession .‘A.
T=
Car irrelevant
Superficially, Profession appears to be semantically close to Car. Car can be reached “in two arcs” from Profession. The additional relation “irrelevant” artificially increases the semantic distance between these terms. This still means, though, that Person ” to Profession as it is to is as close “semantically Car. Semantic distance, or better, similarity, can better be measured-using our criteria-by counting the number of common terms in the definitions of A and B. Take, for example, the terms Cow and Woman. The definition of these terms can be represented
graphically
as AAnimate
Human /
1. Animal
Woman.
this claim).
t Brachman, R. J. [I9791 “On the epistemological status of semantic networks,” in Associative Networks (Edited by Findler, N.), Academic Press, New York. Hendrix, G. G. [I9771 “Some general comments on semantic networks,” Proc. 5th Int. Conf. on Artificial Intelligence.
They agree with Woods: “To add semantics to a graph, one has to define carefully what the arcs and the nodes mean and how they are used [Woods, 1975].“$ (Their italics, RST.) They then continue to list a few semantic features: (1) Type vs Token (2) Semantic distance or similarity (3) Partition (4) Hierarchy of Types with PART-OF and IS-A (5) ROLES To show the adequacy of our framework, we shall explain these terms by means of our criteria. (1) Type vs Token The “Type-Token” distinction is represented by the set-membership operator. A token, a level n term, is a member of its type, a level nf 1 term. (2) Semantic distance Semantic distance is used to locate closely related concepts. The semantic distance between two terms A and B is measured by means of the minimum number of arcs that separate A from B in a graph: the smaller the number, the greater the relatedness. Additional irrelevancy arcs may be used between A and B to express that they are not closely related after all.
$ Woods, W. A. [I9751 “What’s in a link? Foundations for semantic networks” in Representation and Understanding (Edited by Bobrow D. G. and Collins, A. M.), Academic Press, New York.
R. A.
92
STACHOWITZ
As we can see, the “semantic distance”-measured in arcs-to-be-traversed-between Cow and Man is the same as for Cow and Woman; the same is true for Bull. Surely, this result is counter-intuitive. If we compare the definitions of the four terms, however, we can easily determine-by counting the number of common terms in the defining parts-that Cow is more related to Woman than to Man, and that Bull is more related to Man than to Woman. Bull Cow Man Woman
= = = =
Anima&-RationalABovineAMale Animal-RationalABovineAFemale Animti Rational AMale Animti Rational AFemale
Note that the “number-of-arcs” criterion results in the same “semantic”, but counter-intuitive, “distance” between Felis and Bovis as for Cow and Bull. Our features establish greater similarity between cow and Bull than between Felis and Bovis. Bull cow Bovis Felis
= = = =
AnimaA-RationalABovineAMale Animal-RationalABovineAFemale Anima/‘-Rational AMale Animti-Rational AFemale
(Note that according to our criteria Man has the same distance to Woman as to Bull. This shows that the graph or the definitions are not complete, and can be solved by adding sub-classes of Human, such as Race: Asian, African, Caucasian. We can also attach a weight to the level of the nodes in the tree (or network) indicating their distance from the root node. Similarly, terms and their denials-like Rational and -Rational-can be weighted more heavily, rather than just counted.) (3) Partition This concept corresponds to the term “subschema”, but is applied to individuals. Partitions can be defined as views that pertain to a particular individual j or set of individuals in S; they can be obtained by joining all or some of the relations which contain the individual j (or individuals in S) over the attributes which contain j (or the individuals in S) as values. and (4) Hierarchy of Types with PART-OF IS-A IS-A in the hierarchy of types corresponds to set-inclusion (strict implication) between two atomic terms of the same level. PART-OF is used imprecisely in SDMs to refer to two distinct concepts: the structure of a relation and the components of an individual. The first meaning of PART-OF corresponds to strict implication of more than one predicate, possibly with two or more arguments.
Every Person must have Name, Rank and Serial-number or In the relation Person, the attributes: Name, Rank and Serial-number must occur can be expressed as: Vx (Person(x) + 3u Name(x,u) Rank(x,v) A 3w Sn(x,w))
Klu
The second meaning of PART-OF corresponds to stating the physical components of any individual in a class-as, for example Every Person must have a head and a body. The head must have eyes, ears, etc. The body must have arms, legs, etc. For a formal rendering and a careful distinction of these two meanings of PART-OF, consult LeSniewski’s calculus of individuals or MerCology (from Greek meros, part)[231. treatment of See also Tarski’s PART_OF[24]. (5) ROLES Roles correspond to implied functors which are applied to tuple identifiers. Vtxyz Give(t,x,y,z)
-+ Giver(t) = x A Recipient(t) = y A Gift(t) = z
can be read as: In the relation Give( t,x,y,z) the Giver in tuple t is x, the recipient in tuple t is y, and the Gift in tuple t is z. (In a paper under preparation, we show that Roles correspond to context-sensitive meaning rules, whereas Domains correspond to context-free meaning rules. In the context Give(x,y,z), x is assigned the meaning Giver; y, the meaning Recipient; and z, the meaning Gift. Roles can be defined by means of lambda abstraction or open sentences. Thus Giver = (AX)(3y 3z [Give(x,y,z)l) and Giver(x) = 3y 3z (Give(x,y,z)) both define the l-place predicate Giver by means of (in the context of) the relation Give).
[l] continue to list additional properties that a semantic network data model should have. These correspond roughly to distinguishing between (a) levels, (b) individual and sentence constants, and sets, (c) types of sets, nodes, and (d) types of assertlons, arcs.
93
Classifying semantic data models Types of Nodes(c.)
Node types can be described by means of a many-sorted logic, a logic which has different “sorts” (types) of individuals. Many-sorted logics facilitate the formulation of integrity constraints. However, their expressive power does not go beyond that of standard predicate calculus. Instead of stating, for example, Vx (Man(x)+Male(x)) a many-sorted
logic could state
VxMan Male(x). Types ofAvcs(d.)
[l] distinguish between arcs that connect or hold between sets, between individuals, and between sets and individuals. Relations that hold between sets are called “binary relations” [STUDENT TAKES COURSE (their representation, RST)]. This corresponds to Vx $(Take(x,y)
+ Student(x) A Course(y))
If individual x Takes individual y, then x is a Student and y is a Course. [II’s “binary relations” correspond to our level I terms whose arguments are individual variables at level 0. (See also Table T-2 in Section 2, for a level 2 rendering of “binary relation”). Relations that hold between individuals are called “assertions” (Takes( I ,2)). This we can read as: individual
1 (a Student) Takes individual Course).
2 (a
“Assertions” correspond to our level 1 terms whose arguments are individual constants at level 0. We can see that [II’s “assertions” are individual tuples of a corresponding “binary relation”. Relations that hold between individuals and sets are called “instantiations” [l E Person]; they represent set-membership. We hope to have shown that the criteria listed by [I] can be represented within the framework we describe. 8.
THE FUTURE OF SDMS: INDUCTIVE SYSTEMS
We have presented a formal framework for describing and classifying SDMs. The developed criteria permit us to discover and measure differences, overlaps, and gaps in compared SDMs. We also claim that such a framework can advantageously be used both for long-range devel-
opment of SDMs and for short-term goals. such as defining interim phases with commercial potential. It seems permissible to ask: What should the long-range goal be? The careful reader may have noticed that not too much was said about probabilistic logic. For more than a decade, we have believed that the almost ideal future SDM will be an inductive system. Imagine an SDM that searches through its database “at night” to find regularities, generalizations and likely conjectures expressible with different degrees of probability. The “next morning”, it proposes them to the user waiting for his rejection, confirmation, or his “that’s interesting; let me look at that some more.” The truly ideal system will even build its own database from the linguistic and logical analysis of text. We are not proposing, though we would like to, that procedural components in such SDMs be replaced by declarative ones. Considering, however, that the future may lie in logic programming, the investigation of the feasibility of such an alternative using more powerful systems of logic might well be worthwhile. However, our ideal-inductive systems-is not affected by the dichotomy “procedural” vs “declarative”. REFERENCES D.
C. Tsichritzis and F. H. Lochovsky: Data Models, Prentice-Hall (1982). 14 M. L. Brodie: Axiomatic definitions for data model semantics, Inform. Systems, 7(2), 183-197 (1973). Study in Se[31 R. Camap: Meaning and Necessity-A mantics and Modal Logic, University of Chicago Press (1956). of Intensional Logic, [41 D. B. Kaplan: Foundations PhD Thesis, University of California, Los Angeles (1964). [51 C. I. Lewis and C. H. Langford: Symbolic Logic, Century, New York (1938). [61 G. H. von Wright: An Essay in Modal Logic. NorthHolland (1951). 171 A. R. Anderson and N. D. Belnap, Jr.: The pure calculus of entailment, J. Symbolic Logic 27, 19-52 [II
(1962).
Univer181 H. Reichenbach: The Theory ofProbability, sity of California, Berkeley (1949). [91 R. von Mises: Probability, Statistics and Truth, Macmillan (1957). Uni[IO1 R. Camap: Logical Foundations ofProbability. versity of Chicago Press (1950). [III A. Tarski: Der Wahrheitsbegriff in den formalisierten Sprachen, Studia Phitosophica 1 (1936). English translation in A. Tarski: Logic, Semantics, Metamathematics: Papers from 1923 to 1938. Oxford (1956). [I21 S. Kripke: Semantical considerations on modal logic, Acta
Philosophica
Fennica
16, 83-94 (1963).
[I31 S. Kripke: Semantical analysis of modal logic 1, Zeitschrift fiir mathematische Logik und Grundlagen der Mathematik 9, 67-96 (1963). [I41 S. Kripke: Semantical analysis of modal logic II, in J. W. Addison, L. Henkin and A. Tarski, eds.: The Theory of Mode/s, North-Holland, 206-220 ( 1966).
94
R. A. ST‘ACHOWITZ
[I51 J. Hintikka: Models for Modalities-Selected
Essays, D. Reidel (1969). [I61 W. P. Lehmann and R. A. Stachowitz: Normalization of Natural Language for Information Retrieval, Final Technical Report, Contract AFOSR 69-1788, Linguistics Research Center, University ofTexas at Austin (1972). [I71 E. F. Codd: Extending the database relational model to capture more meaning, ACM TODS, 4(4), 397-434 (1979). [I81 R. Reiter: On closed world data bases, in H. Gallaire
Features
APPENDIX A ,feature analysis of a few “Semantic” DB systems To show the applicability of the described framework, we are using it to classify a few existing or described relational DBSs. The systems we have in mind are: Codd’s original system, RM; his extended system, RMfI; Abrial’s binary model, ABR; and Anderson’s extended model of Abrial’s, EACL. As the fifth system, we add a hypostatized system, an “ideal” relational DB, possibly the future Burroughs Relational DBS.
RM/T
ABR
EACL
BR
N N N
Y N Y?
Y N Y?
Y N Y?
Y Y Y
2. Sentence constants 3. Universal statements
N N
SOME LIM
SOME N
SOME LIM
Y Y
4. Negative “facts” 5. Unknown facts
N N
N N
Y? Y?
Y? Y?
Y Y
6. Possible worlds 7. Shared worlds
N N
N N
Y? Y?
Y? Y?
Y Y
N N N N LIM
N N LIM N LIM
N LIM N N LIM
N LIM LIM N LIM
Y Y Y Y Y
2. No. of RHS terms: one more than one
N N
LIM N
LIM N
LIM N
Y Y
3. RHS connectors
N N N N
N N N N
N N N N
N N N N
Y Y Y Y
N N LIM
N LIM LIM
N N LIM
N LIM LIM
Y Y Y
Y N N
Y N N
Y N N
Y N N
Y Y Y
1. Individual constants:
1. Main connector:
RM identified unknown null
identity definition implication equivalence set-membership
used: A V combinations
4. Levels of LHS and RHS terms: 0:O n:fl m:n 5. Type of RHS terms: primitive atomic molecular
and J. Minker, eds.: Logic and Data Bases, Plenum Press 55-76, (1978). [19] W. Kent: Data and Reality, North-Holland (1978). [20] J. R. Abrial: Data semantics, in J. W. Klimbie and K. L. Koffeman, eds.: Data Base Management, North-Holland l-60, (1974). [21] T. L. Anderson: The Database Semantics of Time, PhD Thesis, University of Washington (1981). [22] C. J. Date: An Introduction to Database Systems, Vol II, Addison-Wesley (1983). [23] St. Lesniewski: Grundztige eines neuen Systems der Grundlagen der Mathematik, Fundamenta Mathematicae, 14, 1-81 (1929). [24] A. Tarski: Foundations of the geometry of solids, in A. Tarski: Logic, Semantics, Metamathematics: Papers from 1923 to 1938, Oxford (1956). (251 H. Gallaire and J. Minker, eds.: Logic and Data Bases, Plenum Press (1978).
This feature matrix contains too much information to be easily intelligible. We improve its appearance by changing it into a “distinctive feature matrix” in the following fashion: (1) We ignore the column with the hypostatized DBS since it is “ideal”; it contains “Y” in all rows. (This system, from our point of view, is still far from “ideal”; it contains only a subset of the capabilities which we believe a future SDM should have. Of course, this does not argue against our features, but shows only that a smaller subset of the complete feature list is already sufficient to distinguish the DBSs listed.) (2) We also ignore the column pertaining to RM: it contains mostly “N”. In the three rows where it has values other than “N”, it is not distinct from the remaining three systems. (RM only had the capability to express that a term
95
Classifying semantic data models belongs to a DOMAIN, and that certain attributes belong to a particular relation. The “existence” of individuals was implicitly stated by means of “keys” or definite descriptions, rather than by means of surrogates or unique names.) (3) We finally remove all the rows where the three remaining systems have all “Y” or all “N”. The following matrix therefore remains.
case will occur in a DBS when a relation R requires a column “name-of-wife” as an attribute.Inotherwords,Name-of-wifeisPART-OF relation R. (We discuss PART-OF in Section 6.) RM/T’s discussion of a three-valued logic-to cover True, False and Unknown-appears not germane to the issue since it presupposes the capability to explicitly deny a statement in a DB.
RMIT
ABR
Y?
Y?
Y?
SOME LIM
SOME N
SOME LIM
4. Negative “facts” 5. Unknown facts
N N?
Y? Y?
Y? Y?
6. Possible worlds 7. Shared worlds
N N
Y? Y?
Y? Y?
N LIM
INV N
INV LIM
LIM
LIM
LIM
LIM
LIM
LIM
LIM LIM
N LIM
LIM LIM
Distinctive Features 1. Individual constants:
identified unknown null
2. Sentence constants 3. Universal statements
1. Main connector:
identity definition implication equivalence set-membership
2. No. of RHS terms: one more than one 3. RHS connectors
EACL
used: A V combinations
4. Levels of LHS and RHS terms: 0:O n:tl m:n 5. Type of RHS terms: primitive atomic molecular
Because of the modelling and expressive power limitations of the three DBS models, some of our classification criteria become-in effect-“synonymous” when applied to these three systems. We have indicated such synonymy by repeating the same logical connector (E or +) in the last column of the rows where the synonymy occurs. (I) Individual constants: Null RM/T, ABR, and EACL mention “null”, the latter two only briefly. RM/T’s treatment of “null” suffers from the fact that it does not sufficiently distinguish between the three concepts: (a) unknown fact, we do nor know whether John is married or not, (see section 3., “unknown facts”), (b) unknown object (our u-individual), John courted and married his wife while totally drunk. He never saw her again. We know that he is married, but we do nor know the identity of his wife. (c) null “object”, John is not married. His wife is null. This
(2) Sentence constants ABR and EACL use sentence constants in n-place relations where n > 2; they do not use them for 2place relations. RMiT has sentence constants also for 2-place relations, but only if they contain at least two individuals (entities). (3) Universal statements RMiT and EACL are limited in two ways: they do not allow for individual variables, and their universal statements are restricted to inclusion relations between two primitive terms in a hierarchy (and their inverses). ABR has no generalization hierarchy. (4) Negative “facts” Both ABR and EACL allow for explicit statement of sentence denials. Their treatment is, however, not very elegant since it involves further decomposition of every single 2-place relation at level n into five 2place relations at level n + 1. Their method becomes excessively laborious when used for n-place relations (n 2 3). (5) Unknown facts (See pt. I, “Null”, above). RM/T’s treatment of
96
R.
A.
.!hACHOWlTZ
“null” includes many points really pertaining to “unknown facts”; we feel justified to give the “grade” of “N?“. ABR and EACL do not mention “unknown” facts. Since both allow for explicit representation of denied statements, the representation of unknown facts-in combination with their possible worlds-is theoretically within the modelling power of these systems. (6) Possible worlds Both ABR and EACL support possible worlds. Unfortunately, the term they use for it, “Context”, is also used for “Program Environment”. The “possible world” context is therefore(?) only scantily described. (7) Shared worlds Both ABR and EACL support shared worlds, called “global context”. The argument under (6) also .. appttes. We can now deal with the properties of the rule components. We need to mention that of the three systems only RMff with its Catalog explicitly supportsa rule component which is distinct from the fact component. ABR and EACL mention “meta-classes” and “meta-relations” but do not distinguish between facts and rules. (1) Main connector (a) definition In our opinion, the capability to define new terms is the most important property for any SDM. ABR and EACL have only a very limited definition capability: they can define the inverse of a relation. RM/T has none. (b) implication (see pt. 3, “Universal Statements”. above).
(c) set-membership In ABR and EACL, explicit set-membership for individuals is limited to one set. Additional setmembership is derived by means of the inclusion relation in hierarchies. We were not able to determine whether RMiT is limited in the same fashion. (2) Number of RHS terms: one Rules in RM/T, ABR, and EACL are limited to set-membership, implication, and (only for ABR, EACL) inverses. (3) RHS connectors used The matrix contains no distinctive features for this point. (4) Levels of LHS and RHS terms Rules in RM/T, ABR, and EACL are limited to set-membership (m:n, m < n), implication (n:n, n > O), and (only for ABR, EACL) inverses (n:n, n > 0). (5) Type of RHS terms The matrix contains no distinctive features for this point. This classification in terms of our features is not quite fair to these systems, especially to those described by Abrial and Anderson. The latter two systems allow for individuals which are programs. They are thus combinations of “declarative” and “procedural” systems. All the distinctions that we made “declaratively” can theoretically also be made “procedurally”. Procedural systems could thus express logical, semantic, temporal and other declarative statements by means of programs. A similar though somewhat weaker argument can be made about the procedural capabilities embedded in RM/T’s DML.