Relational met aanswers Amihai Motro Computer Science Department, University of Southern California, University Park, Los Angeles, CA 900890782 ABSTRACT
A metaanswer is a set of statements that assert various properties of an answer to a database uery. These statements may qualify the validity or the completeness o the answer, or they may characterize the answer abstractly. Metaanswers add meaning and insight to standard database answers. We describe an extension to the relational database model for representing properties of the stored data, and for computing metaanswers from these representations.
1
INTRODUCTION An important aspect that distinguishes an intelligent database system from a standard database system is the ability to recognize the intentions of users and cooperate with them towards realizing these intentions. There are various forms of cooperation, and a rough classification is to disting~ishbetween cooperation that addresses user errors and cooperation aimed at improving the answers issued by the system. Two examples of the first kind of cooperation are methods for interpreting inputs that are unparsable (due to either syntactic or semantic problems , and methods for recognizing erroneous presuppositions about the omain of discourse (and either correct them or just point them out). Examples of the second kind of cooperation include methods for avoiding empty answers by providing answers to related queries, and methods that provide additional information that is assumed to be of interest to the user.
d
This work was supported in part by NSF Grant No. IFU8609912 and by an Amoco Foundation Engineering Faculty Grant.
RELATIONAL METAANSWERS
[Ch.
In the last example, the additional information volunteered by the system may be of two kinds: data and knowledge. When evaluating queries on a particular topic, the system may broaden them automatically to include additional data. For example, the answer to a bibliographic query on the titles of articles that concern a particular topic might also report articles that concern a related topic, and perhaps also the names of the authors (thus, in terms of the relational model, the answer was broadened to include additional rows, as well as additional information might not be new the answer. For example, the
correct queries, by volunteering additional knowledge about the answer. This paper is organized as follows. The remander of this section outlines the general approach and discusses related research. Section 2 describes the view inference problem in relational databases, and explains how this problem can be applied towards our urpose. Section 3 details a solution to the view inference problem, and ection 4 concludes with an example and a brief summary.
d
1.1.
The Approach
Our approach is to assume that information concerning various properties of the.stored data is available (metainformation).. This information is then used to infer various properties of each answer issued by the system (metaanswer). This approach is implemented by extending the relational model to represent the metainformation in special relations (metarelations), and by extending the relational a1 ebra operations to metarelations. When a query is presented to the atabase, it is performed both on the relations, resulting in an answer, and on the metarelations, resulting in a metaanswer. The metainformation includes statements of three kinds: 1. Constraints: definitions of conditions that are satisfied by the stored data. 2. Validity: definitions of subsets of the database that are guaranteed to include only valid information. 3. Completeness: definitions of subsets of the database that are guaranteed to include complete information. The first kind of metainformation corresponds to standard integrity constraints, which are formulas in predicate logic that assert required relationships among the data values. The other two kinds of meta
8
151
RELATIONAL METAANSWERS
373
information relate the contents of the stored data to the "real worldn. Metaanswers include statements of four kinds: 1. Constraints: definitions of conditions that are satisfied by the answer. 2. Containments: definitions of subsets of the database that are contained in the answer in their entirety. 3. Validity: definitions of subsets of the answer that are guaranteed to be valid. 4. Completeness: definitions of subsets of the answer that are guaranteed to be complete. As an informal example assume a bibliography database of journal articles, and assume that its metainformation states that every article published in ACM journals is included (completeness), that the accuracy of all articles published since 1980 has been verified (validity), that articles published in ACM journals prior to 1970 are available only on film (constraint), and that the author of all articles from Mountebank University is always Charl A. Tan (constraint). Consider now a query about the articles by Charl A. Tan that appeared in ACM journals. The answer issued by the database will be accompanied by a metaanswer stating that 1. The answer is certified to include all such articles (completeness). 2. The answer is certified to be accurate only for articles published since 1980 (validity). 3. The articles in the answer that were published prior to 1970 are available only on film (constraint . 4. The answer contains all the artic es ever written by Mountebank University authors (containment). Such a metaanswer provides assurances on the quality of the answer, as well as additional insight into its properties.
I'
1.2. Related Work The work described here is based on two previous works in the areas of database integrity Motro, 1989a) and intensional answers (Motro, 1989b). We review t ese areas briefly with emphasis on these two works. The primary concern of users of any information system is the integrityof its answers. This concern may be divided into two parts: (1) Is the answer valid? and (2) Is it answer complete? For example, w h w a user consults a biblio raphic database for articles by Charl A. Tan, he is concerned with t e validit of the information he receives (is the information provided on eaci article correct?), as well as about its completeness (are there any other articles by this particular author
6
%
RELATIONAL METAANSWERS
[Ch.
that were not listed?). Hence, answers have integrity, if they contain the whole truth (completeness) and nothing but the truth (validity . Until recently, all efforts to enhance the integrity of relational atabases have been within the framework of integrity constraints. In general, integrity constraints are formulas in predicate calculus that express relationships that must be satisfied by the database (Date, 1986). Assuming that initially a database satisfies the constraints, thereafter update requests are accepted only if they do not violate any of the constraints. Such constraints enhance the integrity of a database (and hence the integrity of its answers), but they cannot ensure it. Thus, in our previous example, it is not possible to express integrity constraints that ensure that the information about articles published since 1980 is valid, or that all articles in ACM journals are included. A new model of integrity was then introduced by this author (Motro, 1989a). This model is based on new kinds of integrity constraints, called validity constraints and completeness constraints. A validity constraint asserts that a particular subset of the database is guaranteed to be valid, and a completeness constraint asserts that a particular subset of the database is guaranteed to be complctc. Thc validity and complctcncss constraints are then used to infer the validity and completeness of each answer issued by the database. The concept of information validity is related to the "standard" integrity constraints. Indeed, standard integrity constraints are a specific kind of validity constraints (Motro, 1989a). The concept of information completeness is related to the Closed World Assumption (CWA) (Reiter, 1978). Under this assumption, a database contains all the occurrences of data that it attempts to model. More accurately, the CWA states that if a fact is not included in the database and cannot be inferred from it), then it is false. The CWA is usual y made on the database as a whole. In practice, however, this assumption is not realistic, as most databases include at least some information that is possibly incomplete. In other words, in reality the CWA can only be made on some subsets of the database. An intensional answer to a query is a set of characterizations of the set of database values that satisfy the query the eztensional answer). Intensional answers provide users with ad i tional insight into the nature of standard extensional answers. Recently, several research contributions have been concerned such issues. While each adopts a different approach, all share a common goal, which is to answer queries more abstractly. Assuming a logicbased data model, Cholvy and Demolombe (1986) are interested in providing answers to queries that are independent of a particular set of facts; i.e., answers that are derived only from the rules. The authors define a constructive derivation process that computes such answers. One of the problems they consider is how to avoid
d
\
$
RELATIONAL METAANSWERS answers that are "irrelevantn. Pirotte and Ebelants (1989) follow this eneral approach, but distinguish between two kinds of intensional inkrmat ion: inference rules and integrity constraints. They then show how integrity constraints can be used to filter out inadequate intensional statements from the answer, producing simpler and more informative intensional answers. Also in the environment of logic databases, Imielinski 1987) argues that rules should be allowed to occur in the answer to t(he query. This is shown to be beneficial both from the conceptual and the com utational point of view. As an example, assume database predicates %each(x,y), denoting that professor x can teach course y , and Group(x,z), denoting that professors x and z belong to the same research group. And assume a rule that requires that professors from the same grou be able to teach the same courses. Then a query "Who can teach t e Database coursen may be answered intensionally by "Everybody in Smith's groupn. Exhaustive enumeration of this answer will be erformed upon request. Corella 1984) notes that while research on nowledge representation produce much work on the derivation of taxonomies of concepts, at times, concepts are also essential in responses to queries. The author defines a formal model of retrieval based using taxonomies of conce ts. Roughly, a concept is a unary predicate over a given domain, an a taxonomy is a finite tree of concepts, where the concept described by each node is subsumed by the concept described by its parent, and the union of sibling concepts is equal to their parent conce t. Shum and Muntz (1988a, 1988b) also note that answers that are ex austive enumerations of individual objects are not always the most efficient or the most effective means of information exchange. In the first paper they are concerned with implicit representation of answers through concise expressions that involve both concepts and individuals. For example, an acceptable answer to the query "Who earns more than $30,000?" is "All engineers except Smith". In the second paper they are concerned with providing aggregate responses, where preciseness is sacrificed for conciseness. An example would be an answer such as "90/120 engineers 20/30 managers". In both cases they assume, like Corella, the availability of taxonomies that encompass all concepts and individuals. Finally, this author (Motro, 1989b) describes a model in which standard integrity constraints are used to derive intensional answers of two kinds, called constraints and containments. A constraint defines a condition that is satisfied by the entire answer. A containment defines a subset of the database that is contained in its entirety in the answer.
1
d
1
f
!,
+
RELATIONAL METAANSWERS
376
2. 2.1.
[Ch.
THE VIEW INFERENCE PROBLEM
Preliminaries
We assume the following definition of a relational database (Maier, 1983). A relation scheme R is a finite set of attributes Al, . . . ,A,. With each attribute A; a set of values Di, called the domain of A;, is associated (domains are nonempty, finite or countably infinite sets). A relation on the relation scheme R is a subset of the product of the domains associated with the attributes of R. A database scheme R is a set of relation schemes R1,. ..,R,,. A database instance D of the database scheme R is a set of relations Rl(D), .. . ,R,,(D), where each Ri(D) is a relation on the relation scheme &. A view V is an expression in the relation schemes of R that defines a new relation scheme, and for each database instance D defines a unique relation on this scheme denoted V(D). In this paper we consider views that are defined by conjunctive relational calculus etpressions (Ullman, 1982). Using domain relational calculus, expressions from thls family have the form:
.
{al, ,an 1 (3bi). .(%)$I
A . . .A
$,,,I
Where the $s may be of two kinds: 1. membership: (cl, . .. ,+) E R, where R is a database relation (of arity p), and the cs are either as or bs or constants. 2. comparative: dl 8d2, where dl is either an a or a b, d2 is either an a or a b or 'a constant, and 8 is a comparator (e.g., <, <, >,
2 , =, #).
In particular, each a and each b must appear at least once among the cs. We refer to such views as conjunctive views. While this family is a strict subset of the relational calculus, it is a powerful subset. The family of conjunctive relational calculus expressions is precisely the family of relational algebra expressions with the operations product, selection and projection (where the selection expressions are conjunctive . The attributes that participate in the selection predicate will be cal ed selection attributes, and the attributes that participate in the projection will be called projection attributes. Views may have a particular roperty. In this paper we consider only properties that are preserve by conjunctive views. That is, if a set of views has a property, then any conjunctive view of these views will retain this property.
1
l
15 I
2.2.
RELATIONAL METAANSWERS
377
The Problem
Consider this general problem in relational databases: Given a query and a set of database views that possess a particular property, what views of the answer possess this property? This situation is shown in Figure 1: Rl,. . ,R, are the database relations, K,. ,V, are the views with a property, and Q is the query. Recall that we assume that views of Vl, . . . ,V, will also have the property. Therefore, every view of Q which is also a view of K , . . ,V, is a view of the answer that has the property. A is such a view.
.
..
.
7
A
. . . v,
6
R1
a
.
.
.
.
.
.

.
.
.
,
Q
R,

Figure 1: A General Problem
2.3.
Applications
By selecting the particular property possessed by the views, different applications can be derived. In this paper we discuss three particular view pro erties: validity, com leteness and emptiness. A fourth property, wit[ application to data ase access authorization, was described elsewhere (Motro, 1989~). The application of the view inference problem to the properties of validity and completeness is straightforward. Given a set of views that are asserted to contain only valid information, the s stem will infer for each answer it issues views that are guaranteed to e valid. Similarly, given a set of views that are asserted to include complete information,
g
t
RELATIONAL METAANSWERS
378
[CIl.
the system will infer for each answer it issues views that are guaranteed to be complete. The property of emptiness expresses standard database integrity constraints. Assume integrity constraints of the form "for all 5, if a(2) then p(qn l . This statement may be rewritten as "the set of values 5 for which a(?) is true and @(Z)is false is empty. Therefore, constraints may be expressed as database views whose property is that they are always empty. Given a set of views that that are asserted to be empty, the system will infer for each answer it issues views of the answer that must be empty; that is, integrity constraints that hold over the answer. These three properties correspond to three of the four kinds of metaanswers discussed in Section l .l. The fourth kind, containmcnts, will be discussed later. ;
3. 3.1.
METAPROCESSING
The Approach
Our solution to the view inference roblem is to represent the definitions of the given views in speciaf relations, called metarelations, whose structure mirrors the actual relation. Standard algebraic operations (product, selection and projection) are extended to these metarelations. When a query is resented to the databnse systcm, it is pcrfornlcd both on the actual re ations, resulting in an answer, and on the metarelations, resulting in definitions of views of the answer that inherit the particular property of the given views. This approach is illustrated by the commutative dia ram shown in Figure 2. The horizontal lines describe the relationships etween metarelations and relations, and the vertical lines describe query processing and metaprocessing. The solid lines describe the current situation: the metarelations R' define views of the database relations R that have a given property, and the relation A is derived from R to answer query Q. The dashed lines describe our method: uery processing is extended to manipulate also R', to yield the metare ation A', that defines views of answer A with the given property. ,
:
P
%
P
3.2.
Met aRelations
The representation of conjunctive views in metarelations recalls the representation of QBE queries in skeleton tables (Zloof, 1977). la and p are s d e relational calculus ucprebsions with free variables 5.
RELATIONAL METAANSWERS
Figuie 2: Metaprocessing For each relation R a metarelation R' is defined. The scheme of R' is identical to the scheme of R, except for an additional attribute called PROPERTY. Also, an auxiliary relation is defined: COMPARISON = (X,COMPARE,YThe metarelations will be used t6 store membership formulas o views. Their tuples will be referred to as metatuples. Comparative formulas will be stored in the relation COMPARISON. Consider a view
.
.
A formula rl, of the kind (q,.. ,%) E R is first modified so that the cs that are as are suffixed with *, and the cs that are variables (i.e., as that appear only once in the whole expression are replaced with ank). Hence, each component of the modified formula is either a constant, or a variable, or a blank and each may be suflixed by *. This tuple is prefixed with a value that indicates the property of the corresponding view, and is stored in R'. A formula $Jof the kind dl 8 d2, where 8 is not =, is transformed to the tuple (dl, 8, d2) and stored in the auxiliary relation COMPARISON. If 6 is =, then d l occurrences of dl in the other formulas are substituted with d2. Finally, we assume that variable names are not shared among views. For our examples, we assume a simple biblio raphic database, whose scheme is shown in Figure 3. The semantics o ARTICLE.AUTHOR and AUTHORNAME are similar, and the semantics of ARTICLE.JOURNAL and JOURNAL.NAME are similar. The attribute MEDIUM takes values F (film only), P (paper only), and B (both In the following examples, the values V, C, and E are used, respective y, to designate the properties of validity, completeness and emptiness. These examples correspond to the metainformation in the intuitive example presented in Section 1.l.
f
1.
RELATIONAL METAANSWERS
380
[Ch.
Figure 3: Scheme of a bibliographic database
r:
Let M1 be a com leteness view describing the title and author of articles published in CM journals:
, 1 (3bi)(3b2)(3b3) b,b3) E ARTICLE
{a1 a2
( a l , a 2 , bl,
A ( b l , A C M ) E JOURNAL)
M1 is represented with two metatuples: ( C , *, *, x l , U , U ) E ARTICLE' (C, x l , ACM) E JOURNAL'
Let M2 be a validity view describing the title, author and year of articles published since 1980: ( ~ 1 a2, , a3
1 (3b1)(3h)
( a l , a2, bl, as,
h ) E ARTICLE
A
a3
2 1980)
M2 is represented with two metatuplea: (V, *, *, U , x2*, U ) E ARTICLE' ( x ~2,1980) , E COMPARISON
Let M3 be an empty view describing tho title. of srticlea pollial~ed d ~vrrilahlennly rrtr f i t 1 1 1 ( i . ~ , , in ACM journals rlor to 1970 ~ n not artleles published n ACM journals prior to 19'10 are available only on film):
P
{a (a,
1 (34)(3h)(3b3)(3b4)
h,h,b3, b 4 ) E ARTICLE b3 < 1970 A b4 f F)
A
(h,ACM) E JOURNAL A
M3 is represented with four metatuples:
( E , *, U , 23, 24, za) E ARTICLE' ( E , 23, ACM) E JOURNAL' (24, <, 1970) E COMPARISON (25, #, F) E COMPARISON
151
RELATIONAL METAANSWERS
38 1
Let M4 be an empty view describing the titles of articles from Mountebank University by authors other than Char1 A. Tan (i.e., Charles A. Tan is the author of all articles from Mountebank University):
{ a I (3bi )(3bz)(363)(3b4) (a,bi, bz, b3, b4) E ARTICLE A (bi, M B U ) E AUTHOR A bl # CAT) M4 is represented with three metatuples:
(E, *, 26, U ,U , U ) E ARTICLE' (E, z6,M B U ) E AUTHOR' (26,
3.3.
#, CAT) E COMPARISON
MetaOperations
Definition 1: Assume that R' and S' are metarelations that define views of R and S. The product of R' and S', denoted R' x S', is defined as follows. For every pair r and s of metatuples (having the same property P ) from R' and S', respectively,
R' x S' includes the metatuple: Definition 2: Assume that R' is a metarelation that defines views of R. Let X denote a primitive selection predicate i.e., either R! B c, or R: B Ri). The selection from R' by predicate A, denoted CA(R'),is defined as follows. Consider first the case A = R; Oc, and let r be a metatuple from R',
Denote by p the selection predicate expressed by ri by *, then ax(Rt)includes the metatuple:
2.
If r; is suffixed
where r: represents X I\ p. Consider now the case X = R.8 R j , and let r be a metatuple from R',
=If ri is blank, then p is true.
RELATIONAL METAANSWERS
382
[ ~ h .
Denote by C( the selection predicate expressed by r; and rj. If ri and r j are both suffixed by *, then ux(Rf) includes the metatuple:
where ri and r$ represent A h p. Definition 3: Assume that Rf is a metarelation that defines views of R. The projection of R' that removes its i'th attribute, denoted T ~  ~ , ( R ' is ) , definkd as follows. For every metatuple r from R',
If r; is U (possibly suffixed with *), then T ~  ~ ; ( Rincludes ') the metatuple:
Intuitively, the metaproduct is the product of the metarelatidns, with the restriction that only metatuples with the same property are matched. Metaselection selects a metatuple only if the selection attribute is in the projected attributes the metatuple is modified to incorporate the selection condition). hi etaprojection retains a metatuple only if the projection attribute is not in the selection attributes (the metatuple is modified to remove the projection attribute).
3.4.
Discussion
These definitions were shown (Motro, 1989a) to be "correctn, in the sense that the metaproduct defines views that would be obtained by applying the product to the views defined in the original metarelations 3* the metaselection defines views that would be obtained by applying t6e selection to the views defined in the original metarelation; the metaprojection defines view that would be obtained by applying the rojection to the views defined in the ori inal metarelation. formall ,let D be an instance of this data ase, let r, s, and p be as in these de nitions, and let r(D), s(D), and q(D) denote, respectively, the relations defined by the metatuples r, s and q. Then
X
f
product : q(D) = r(D) x s(D). selection : q(D) = u.xr(D). projection : q(D) = nR&(r(D)). 'Recall that the metl~productdoes not match views with different properties.
RELATIONAL METAANSWERS Also, these metaoperations were shown (Motro, 1989a, preserve each of the view properties that are relevant to this completeness, validity, emptiness). Formal1 , let D be an instance of this database, let r, s , and q be as in these de! i nitions, and let r(D), s(D), and q(D) denote, respectively, the relations defined by the metatuples r, s and q. Then product: if r(D) and s(D) have a property, then q(D) has this property. selection: if r(D) has a property, then q(D) has this property. projection: if r(D) has a property, then q(D) has this property. These two results may be summarized as follows. Assume a database scheme R and views V with a property. Let Q be a conjunctive query against this database. Let S be the relational algebra expression that implements Q. Let S' be the relational algebra expression obtained from S by substitutin every reference to R with a reference to R'. S operates on the actu database relations to yield the answer A. S' operates on the metarelations to yield the metarelation A' of views of A. Then, the views in A' possess the same property. This result guarantees that metatuples in A' are views of A that have the property. However, some metatuples may still share variables with metatuples outside A', and are therefore not expressible entirely within A'. Such views are avoided if S' is modified so that all products are performed first, and their result is pruned to retain only those meta tuple3 that do not share variables with other metatuples. Also, it advanta eous to perform selections before projections (Motro, 1989a). Altoget er, S' is transformed to a sequence of products, followed by selections, and ending with projections. This simple strate y for implementing conjunctive queries is not necessarily the most e cient. However, we note that the efficiency is not so essential for metarelations, because they are relatively small. For the actual relations, where efficiency is essential, a different strategy may be implemented. The result guarantees that the method for generating integrity constraints is sound, but it does not guarantee that it is complete. That is, this method generates views of the result that indeed have the property, but does not necessarily generate all such views. A method that would guarantee completeness would undoubtedly be of a different complexity altogether. However, for our purpose here, to provide knowledge about database answers, completeness is not an absolute requirement. Yet, several simple refinements were developed, that generate additional desirable views (Motro, 1989a). Metaprocessing uses validity constraints, completeness constraints, and standard constraints which are stated on the database i.e., views of the database that are valid, complete or empty) to infer v idity con
f
g
d
1
384
RELATIONAL METAANSWERS
[Ch.
straints, completeness constraints and standard constraints that may be stated on the answer. In Section 1.1 we mentioned a fourth type of inferred information, called containments. These are definitions of views of the database that are contained in the answer in their entirety. The process by which these views are derived is a simple extension of metaprocessing (Motro, 1989a).
4.1. Example In the database described in Section 3.2 consider the followin query to retrieve the titles of articles by Charles A. Tan that appeare in ACM journals. This query is defined in the following view:
f
{a I (3bi)(3b2)(3b3) (a, CAT, bl, bl, b3) E ARTICLE I\ (bl, ACM) E JOURNAL) The metaprocessing of this query will result in a metaanswer with four metatuples, whose interpretation is that the accompanying answer is certified to include all such articles; that it is certified to be accurate only for articles published since 1980; that the listed articles published prior to 1970 are available only on film; and that the answer contains all the articles ever written by Mountebank University authors 4.
4.2.
Summary
We presented an extension to the relational database model, in which properties of the stored data (metainformation) are stored in a metadatabase, and each standard uery is also processed in the metadatabase to derive metainformation t at is applicable to the standard answer (metaanswer). This model is currently being implemented as a "frontendn interface to a standard relational database system. In this system, called Panorama, users will define metainformation with appropriate view statements and the system will insert automatically the appropriate metatuples into the metarelations. In response to a query statement, the user will receive the usual extensional answer, accompanied by inferred metainformation in the form of view statements. Thus, the
1
'The metaprocessing of this query involved several minor refinements that were not discussed in thie paper.
RELATIONAL METAANSWERS metarelations and metatuple notation would be completely transparent, with all usersystem communication done with customary query lan uage statements. Carious problems need further investigation and we mention here two examples. Currently, the methods handle only conjunctive views (metainformation and queries). Work is underway on extensions that will handle more general views; for example, views with disjunctions and views with a regate functions. A difficult problem ia how to identify the metain ormation that is relevant to a query. For example, consider a query to list all the articles by Charles A.. Tan. While it is true that this set of articles satisfies the constraint that those published in ACM journals prior to 1970 are available only on film, this information may be irrelevmt. These issues were discussed further in two previous papers (Motro, 1989a, 1989b).
P
REFERENCES Cholvy, L. and Demolombe, R. (1986). Querying a rule base. In Proceedings of the First International Conference on Expert Database Systems (Charleston, South Carolina, April 14 , pages 365371. Corella, F. (1984). Semantic retrieval and levels o abstraction. In Proceedings of the First International Workshop on Expert Database Systems (Kiawah Island, South Carolina, October 2427), pa es 91114. Date, J. (1986). An Introduction to Database Systems, Volume I (Fourth Edition . Addison Wesley, Reading, Massachusetts. Imielinski, T. (1987i Intelligent query answenq in rule based systems. Journal of Logic Programming, 4(3):229257. Maier, D. (1983). The Theory of Relational Databases. Computer Science Press, Rockville, Maryland. Motro, A. (1989a . Integrity = validity completeness. ACM Transactions on atabase Systems, 14(4):480502. Motro, A. (1989b). Using integrity constraints to provide intensional responses to relational queries. In Proceedings of the Fifteenth International Conference on Very Large Data Bases (Amsterdam, The Net herlands, August 2225), pages 237246. Motro, A. 1989~).An access authorization model for relational databases ased on algebraic manipulation of view definitions. In Proceedings of the IEEE Computer Society Fifth International Conference on Data Engineering (Los Angeles, California, February 610), pages 339347. Pirotte, A. and Roelants, D. (1989). Constraints for improving the generation of intensional answers in a deductive database. In Proceedings of the IEEE Computer Society Fifth International
1
8.
d
6
+
RELATIONAL METAANSWERS
386
[Ch. 151
Conference on Data Engineering (Los Angeles, California, Februdata bases. In Logic and Databases, for extenInternational Conference on Ezpert Database Systems (Tysons Corner, Virginia, April 2527 , pages 257273. Shum, C. D. an Muntz, R. 1988b). An informationtheoretic study on a regate responses. n Proceedings of the Fourteenth Int ernationa Conference on Very Large Data Bases (Los Angeles, California, August 2529, pages 479490. Ullman, J. D. (1982). nnciples of Database Systems. Computer Science Press, Rockville, Maryland. Zloof, M. (1977). Quer byExample: a database language. IBM Systems Journal, 16[4):324343.
4
d
I