B.J.King@newcastle.ac.uk (Brian King) (02/28/90)
Agreement between object-oriented data models seems as diverse as the number of opinions on what actually object-oriented programming is!! It has been suggested [1] that little consensus exists and that object oriented database systems are predominantly in following groups: 1. object-oriented programming languages with persistance 2. full database systems based on traditional semantic data models 3. data models evolved from the relational model. My questions are:- 1. is anyone aware of any consensus on object-oriented data models and query languages? 2. are there any reports providing a survey of current object-oriented data models and query languages? 3. is there a clear distinction between an object-oriented and semantic data model? Any pointers (or even answers!) would be gratefully received. If there is sufficient interest I will post a summary to the group. Regards Brian JANET : b.j.king@uk.ac.ncl [1] Carey,M.J., et al.,'A Data Model and Query Language for EXODUS' Proc. 1988 ACM SIGMOD Conf., SIGMOD RECORD 17(3), Sept. 88, pp. 413 - 423.
mark@bdblues.altair.fr (Mark James) (03/01/90)
In article <1990Feb28.095810.15619@newcastle.ac.uk> B.J.King@newcastle.ac.uk (Brian King) writes: >It has been suggested [1] that little consensus exists and that object >oriented database systems are predominantly in following groups: Things are probably not *that* bad. It's true that there is no deep agreement on what an object-oriented database is, but then look at all the squabbling between E. F. Codd and those who market relational products, about what a relational database `really' is. Keep in mind that, now that there are half a dozen or so companies producing object-oriented database prototypes, each one wants you to believe that the world was all darkness and chaos before they arrived on the scene. >My questions are:- > >1. is anyone aware of any consensus on object-oriented data models > and query languages? The closest thing to a consensus can be found in D. Maier and S. Zdonik, eds., _Readings in Object-Oriented Database Systems_, Morgan Kaufman, 1990. Read especially the first chapter on OODBMS fundamentals. >2. are there any reports providing a survey of current object-oriented > data models and query languages? You already cited one (M. Carey, D. Dewitt, S. Vandenberg, "A Data Model and Query Language for EXODUS", in _Proc. ACM SIGMOD_ 1988, pp. 413-423). Some others you might try are: S. Abiteboul and P. Kanellakis, "Object Identity as a Query Language Primitive", _Proc. ACM SIGMOD_ 1989. S. Abiteboul and V. Vianu, "Procedural and Declarative Database Update Languages", _Proc. ACM PODS_ 1988, pp. 240-250. F. Bancilhon, S. Cluet, C. Delobel, "A Query Language for an Object-Oriented Database System", in _Proc. DBPL-II Workshop_, 1989. J. Banerjee, W. Kim, K. Kim, "Queries in Object-Oriented Databases", _MCC Tech. Rep._ no. DB 188-87, June 1987. S. Cluet, C. Delobel, C. Lecluse, P. Richard, "Reloop: An Algebra Based Query Language for an Object-Oriented Database System", in _Proc. of the First International Conference on Deductive and Object-Oriented Databases_, Kyoto, December 1989. D. Fischman et al., "Iris: An Object-Oriented Database Management System", in _ACM TOIS_ 5:1:46-49, 1987. D. Maier, J. Stein, A. Otis, A. Purdy, "Development of an Object-Oriented DBMS", _Report CS/E-86-005_, Oregon Graduate Center, April 1986. In addition, about once a week on comp.object, someone asks for (and gets) a bibliographical summary or list of prototypes or products or research projects along these lines. The posted summaries are never very complete, but if you watch them for long enough, you get a pretty good picture as to what is going on. >3. is there a clear distinction between an object-oriented and semantic > data model? A *clear* distinction? Hahahahahahahahahaha...... ### T. Mark James #### opinions, errors etc are my own ### ### mark@bdblues.altair.fr #### "I'm stupid enough to try anything ### +33 (1) 39 63 53 93 #### once." -- The `Bag Man' ################################ Univ. of Washington, 1968
rowley@bath.cs.ucla.edu (Michael T Rowley) (03/01/90)
In article <1990Feb28.095810.15619@newcastle.ac.uk>, B.J.King@newcastle.ac.uk (Brian King) writes: > > 3. is there a clear distinction between an object-oriented and semantic > data model? Most discussion comparing the two techniques I have seen is in describing how object-oriented modeling (OOM) is different from semantic data modeling (SDM). One very general difference is that SDM's do not usually incorporate behavioral specification, whereas OOM's do. Another common distinction that I see is that in OOM's, user defined types are indistinguishable from system defined types. There is also an implicit claim that any built-in semantic modelling capability of an SDM system, can be built on top of an OO system. So an OODBMS can come with a large library of classes for describing many different semantic relationships, but the user can build more if needed. It is questionable, though, whether the claim mentioned above is true. Most SDM systems have powerful mechanisms for the specification and maintenence of arbitrarily complex constraints. These constraints can involve multiple object types, making it difficult to find an object type in which to encapsulate the maintenence of the constraints. As an example, the most basic constraint is that of referential integrety. Because DBMS's are used to model real world objects, and these objects sometimes change or disappear, it must be possible to change or delete objects. The constraint that any pointer must point to a valid object or to Null is difficult to maintain in an OODBMS. (One solution to this approach is to leave a "tombstone" behind when an object is deleted, and to treat a tombstone as a Null). More complicated constraints specify things like - if a Vertex is deleted from a Rectangle, it two adjacent edges shoul be deleted, a new (diagonal) edge should be created, and the Rectangle should be changed to be of object type Triangle. (This change then may trigger other things which relate to an object loosing it's "recangleness" and gaining "triangleness"). Believe me, there are systems that do this (at least in R&D). The solution, I think, is to allow encapsulation in more places than just object type definition. -Mike Rowley
sakkinen@tukki.jyu.fi (Markku Sakkinen) (03/01/90)
In article <1466@inria.inria.fr> mark@bdblues.altair.fr writes: >In article <1990Feb28.095810.15619@newcastle.ac.uk> B.J.King@newcastle.ac.uk (Brian King) writes: > ... >>1. is anyone aware of any consensus on object-oriented data models >> and query languages? > >The closest thing to a consensus can be found in D. Maier and S. >Zdonik, eds., _Readings in Object-Oriented Database Systems_, Morgan >Kaufman, 1990. Read especially the first chapter on OODBMS >fundamentals. Now there is already paper that reflects a much more significant consensus: "The object-oriented database manifesto" from the first international DOOD (deductive and OO databases) conference, held in December in Kyoto. There was in the previous posting (T. Mark Jones) a reference to another paper in the same proceedings. The compilation of Maier and Zdonik can be warmly recommended even to those who have the original papers (in journals and conference proceedings) available. The editors' introductory and summary chapters are concise and helpful. >> ... >>3. is there a clear distinction between an object-oriented and semantic >> data model? > >A *clear* distinction? Hahahahahahahahahaha...... Perhaps one could say that semantic models have mostly concentrated on what Dittrich calls _structural_ object-orientation, and OOPL's on _behavioural_ object-orientation. The great divide probably goes between value-oriented (mostly relational) and identity-oriented data models, as Ullman says in his "Principles of Database and Knowledge-base Systems" (Vol. 1). Of course, extensions of the relational model (and of relational DBMS's) can possibly provide many of the features typically associated with OODBMS's. We may soon have a situation similar to that when relational DB's came into vogue: several vendors of DBMS's based on different data models (hierarchic, restricted network, inverted files, ...) tried to make their products look as relational as possible. Markku Sakkinen Department of Computer Science University of Jyvaskyla (a's with umlauts) Seminaarinkatu 15 SF-40100 Jyvaskyla (umlauts again) Finland SAKKINEN@FINJYU.bitnet (alternative network address)