Abstract
This paper presents an overview of a novel strongly typed deductive object database language, called Rule-based Object Language, which is being developed at the University of Regina. Rule-based Object Language is a uniform language for defining, querying, and manipulating a database, which integrates important features of deductive databases and object databases. It supports object identity, complex objects, classes, class hierarchies, multiple inheritance with overriding and blocking, and schema definition. It also supports structured values such as functor objects and sets, treating them as first class citizens and providing powerful mechanisms for representing both partial and complete information about sets. Important integrity constraints such as domain, referential, functional dependency, multi-valued dependency, and cardinality are built-in in a uniform framework. Rule-based Object Language directly supports non-first normal form relations and is an extension of the pure valued-oriented deductive languages such as Datalog and LDL (without grouping) and subsumes them as special cases. It supports schema, object, fact and rule queries in a uniform framework. It also supports schema, fact and rule updates.
Similar content being viewed by others
References
Abiteboul, S. (1990). Towards a deductive object-oriented database language, Data and Knowledge Engineering, 5, 263–287.
Abiteboul, S. and Grumbach, S. (1991). COL: A logic-based language for complex objects, ACM TODS, 16, 1–30.
Abiteboul, S. and Hull, R. (1987). IFO: A formal semantic database model, ACM Trans. on Database Systems, 12, 525–565.
Abiteboul, S. and Kanellakis, P.C. (1989). Object identity as a query language primitive, Proc. ACM SIGMOD Intl. Conf. on Management of Data (pp. 159–173). Portland, Oregon.
Albano, A., Ghelli, G. and Orsini, R. (1995). Fibonacci: A programming language for object databases, VLDB Journal, 4, 403–444.
Atkinson, M.P. and Buneman, O.P. (1987). Types and persistence in database programming languages, ACM Computing Surveys, 19, 105–190.
Bal, R. and Balsters, H. (1993). A deductive and typed object-oriented language, In S. Ceri, K. Tanaka, and S. Tsur (Eds.), Deductive and Object-Oriented Databases. Berlin: Springer-Verlag.
Barja, M.L., Fernandes, A., Paton, N.W., Williams, M.H., Dinn, A. and Abdelmoty, A.I. (1995). Design and implementation of ROCK & ROLL: a deductive object-oriented database system, Information Systems, 20, 185–211.
Beeri, C. (1989). Formal models for object-oriented databases, In W. Kim, J.M. Nicolas, and S. Nishio (Eds.), Deductive and Object-Oriented Databases. North-Holland.
Bertino, E. and Montesi, D. (1992). Towards a logical object-oriented programming language for databases. Proc. Intl. Conf. on Extending Database Technology (pp.168–183). Vienna, Austria: Springer-Verlag.
Cacace, F., Ceri, S., Crepi-Reghizzi, S., Tanca, L. and Zicari, R. (1990). Integrating object-oriented data modelling with a rule-based programming paradigm. Proc. ACM SIGMOD Intl. Conf. on Management of Data (pp. 225–236).
Calvanese, D. and Lenzerini, M. (1994). Making object-oriented schemas more expressive. ACM Symp. On Principles of Database Systems (pp. 243–254). Minneapolis, Minnesota.
Carey, M., DeWitt, D. and Vanderberg, S. (1988). A data model and query language for EXODUS. Proc. ACM SIGMOD Intl. Conf. on Management of Data (pp. 413–423). Chicago, Illinois.
Cattell, R. (Ed.) (1996). The Object Database Standard: ODMG-93, Release 1.2. Morgan Kaufmann.
Ceri, S., Gottlob, G. and Tanca, T. (1990). Logic Programming and Databases. Berlin: Springer-Verlag.
Chen, W. and Warren, D.S. (1989). C-logic for complex objects. Proc. ACM Symp. on Principles of Database Systems (pp. 369–378). Philadelphia, Pennsylvania.
Dobbie, G. and Topor, R. (1995). On the Declarative and Procedural Semantics of Deductive Object-Oriented Systems. Journal of Intelligent Information System, 4, 193–219.
Deux, O. et al. The story of O2. IEEE Transactions on Knowledge and Data Engineering, 2,91–108.
Fishman, B. B., Cate, H.P., Chow, E.C., Connors, T., Davis, J.W., Derrett, N., Hoch, C.G., Kent, W., Lyngbaek, P., Mahbod, B., Neimat, M.A., Ryan, T.A. and Shan, M.C. (1987) Iris: An object-oriented database management system. ACM Trans. on Office Information Systems, 5, 48–69.
Housel, B.C., Waddle, V. and Yao, S.B. (1979). The functional dependency model for logical database design. Proc. Intl. Conf. on Very Large Data Bases (pp. 194–208). Rio De Janeiro, Brazil: Morgan Kaufmann Publishers, Inc.
Ishikawa, H., Suzuki, F., Kozakura, F., Makinouchi, A., Miyagishima, M., Izumida, Y., Aoshima, M. and Yamane, Y. (1993). The model, language, and implementation of an object-oriented multimedia knowledge base management system. ACM TODS, 18, 1–50.
Kifer, M., Lausen, G. and Wu, J. (1995). Logical foundations of object-oriented and frame-based languages. Journal of ACM, 42, 741–843.
Kifer, M. and Wu, J. (1993). A logic for programming with complex objects.J. Computer and System Sciences, 47, 77–120.
Kim, W. (1990). Object-oriented databases: Definition and research direction. IEEE Transactions on Knowledge and Data Engineering, 2, 327–341.
Kim, W. (1990). Introduction to Object-Oriented Databases. Cambridge, MA:The MIT Press.
Kuper, G.M. (1990). Logic programming with sets. J. Computer and System Sciences, 41, 44–64.
Lecluse, C. and Richard, P. (1989). The O 2 database programming language. Proc. Intl. Conf. on Very Large Data Bases (pp. 411–422). Amsterdam, The Netherlands: Morgan Kaufmann Publishers, Inc.
Liu, M. (1996). ROL: A deductive object base language. Information Systems, 21, 431–457.
Liu, M., Guo, M. and Yu, W. (1997). The ROL deductive object database system. Submitted for publication.
Liu, M. and Yu, W. (1997). Query processing in the ROL system. Proc. Intl. Database Engineering and Applications Symp (IDEAS '97), Montreal, Canada: IEEE-CS Press.
Lou, Y. and Ozsoyoglu, M. (1991). LLO: A deductive language with methods and method inheritance. Proc ACM SIGMOD Intl. Conf. on Management of Data (pp. 198–207). Denver, Colorado.
Maier, D. (1986). A logic for objects. Technical Report CS/E-86-012, Oregon Graduate Center, Beaverton, Oregon.
Naqvi, S. and Tsur, S. (1989). A Logical Language for Data and Knowledge Bases. Computer Science Press.
Ramakrishnan, R., Srivastava, D. and Sudarshan, S. (1992). CORAL: Control, relations and logic. Proc. Intl. Conf. on Very Large Data Bases (pp. 238–250). Vancouver, British Columbia, Canada:Morgan Kaufmann Publishers, Inc.
Shipman, D.W. (1981). The functional Data Model and the Data Language DAPLEX. ACM Transactions on Database Systems, 6, 140-173.
Srivastava, D., Ramakrishnan, R. and Sudarshan, S. (1993). Coral++: Adding object-orientation to a logic database language. Proc. Intl. Conf. on Very Large Data Bases (pp. 158–170). Dublin, Ireland: Morgan Kaufmann Publishers, Inc.
Ullman, J. (1991). A comparison between deductive and object-oriented databases systems. In C. Delobel, M. Kifer, and Y. Masunaga (Eds.), Deductive and Object-Oriented Databases, Munich, Germany: Springer-Verlag.
Rights and permissions
About this article
Cite this article
Liu, M. An Overview of the Rule-Based Object Language. Journal of Intelligent Information Systems 10, 5–29 (1998). https://doi.org/10.1023/A:1008609906090
Issue Date:
DOI: https://doi.org/10.1023/A:1008609906090