This Article 
 Bibliographic References 
 Add to: 
View Operations on Objects with Roles for a Statically Typed Database Language
July/August 2000 (vol. 12 no. 4)
pp. 548-567

Abstract—To deal with the evolution of data and applications and with the existence of multiple views for the same data, the object data model needs to be extended with two different sets of operations: object extension operations, to allow an object to dynamically change its type, and object viewing operations, to allow an object to be seen as if it had a different structure. Object extension and object viewing operations are related in that they are both identity-preserving operations, but different in that object extension may modify the behavior of the original object while object viewing creates a new view for the original object without modifying its behavior. In this paper, a set of object viewing operations is defined in the context of a statically and strongly typed database programming language which supports objects with roles, and the relationships with object extension and role mechanisms are discussed. We then show how the object viewing operations can be used to give the semantics of a higher level mechanism to define views for object databases. Examples of the use of these operations are given with reference to the prototype implementation of the language Galileo 97.

[1] M. Abadi and L. Cardelli, A Theory of Objects. 1996.
[2] S. Abiteboul and A. Bonner, “Objects and Views,” Proc. ACM-SIGMOD Int'l Conf. Management of Data, pp. 238–247, May 1991.
[3] A. Albano, G. Antognoni, and G. Ghelli, “View Operations on Objects with Roles for a Statically Typed Database Language: The Type Rules and the Operational Semantics,” technical report, Dipartimento di Informatica, Universitàdi Pisa, 1998.
[4] A. Albano et al., "An Object Data Model with Roles." Proc. Int'l Conf. Very Large Data Bases, VLDB Endowment Press, Saratoga, Calif., pp. 39-51, 1993.
[5] A. Albano,L. Cardellit,, and R. Orsini,“Galileo: A strongly-typed, interactive conceptual language,” ACM Trans. Database Systems, vol. 10, no. 2, pp. 230-260, June 1985.
[6] A. Albano, M. Diotallevi, and G. Ghelli, “Extensible Objects for Database Evolution: Language Features and Implementation Issues,” Proc. Fifth Int'l. Workshop Data Base Programming Languages (DBPL), Gubbio, Italy, 1995.
[7] A. Albano, G. Ghelli, and R. Orsini, "Fibonacci: A Programming Language for Object Databases," The VLDB J., vol. 4, no. 3, July 1995, pp. 403-444.
[8] F. Bancilhon, S. Cluet, and C. Delobel, "A query language for the O2 object-oriented database system," Proc. Second Int'l Workshop Database Programming Languages, 1990.
[9] E. Bertino, “A View Mechanism for Object-Oriented Databases,” Proc. Third Int'l Conf. Extending Database Technology (EDBT), pp. 136–151, Mar. 1992.
[10] E. Bertino and G. Guerrini, “Objects with Multiple Most Specific Classes,” Proc. Ninth European Conf. Object-Oriented Programming, W. Olthoff, ed., pp. 102–126, 1995.
[11] L. Cardelli and J.C. Mitchell, “Operations on Records,” Math. Structures in Computer Sciences, vol. 1, no. 1, pp. 3–48, 1991.
[12] U. Dayal, "Queries and Views in an Object-Oriented Data Model," Proc. Second Workshop Database Programming Languages, pp. 35-58,Gleneden Beach, Ore., June 1989.
[13] C. Souza dos Santos, “Design and Implementation of an Object-Oriented ViewMechanism,” Proc. 10èmes Journées Bases de Données Avancées, 1994.
[14] C. Souza dos Santos and E. Waller, “The$O_2$Views User Manual—Version 2,” Proc.$O_2$Technology, 1995.
[15] G. Gottlob, M. Schrefl, and B. Rock, "Extending Object-Oriented Systems with Roles." ACM Trans. Information Systems, Vol. 14, No. 3, July 1996, pp. 268-296.
[16] G. Guerrini, E. Bertino, B. Catania, and J. Garcia-Molina, “A Formal Model of Views for Object-Oriented DatabaseSystems,” Theory and Practice of Object Systems (TAPOS), vol. 3, no. 2, pp. 103–125, 1997.
[17] S. Heiler and S.B. Zdonik, Object Views: Extending the Vision," Proc. IEEE Int'l Conf. Data Eng., pp. 86-93, 1990.
[18] W. Kim and W. Kelley, “On View Support in Object-Oriented Database Systems,” Modern Database Systems, W. Kim, ed., pp. 108–129, Reading, Mass.: Addison-Wesley, 1995.
[19] T. Leung, G. Mitchell, B. Subramanian, B. Vance, S Vandenberg, and S Zdonik, “The AQUA Data Model and Algebra,” Proc. Fourth Int'l Workshop Database Programming Languages, pp. 157–175, 1993.
[20] R. Motschnig-Pitrik, “Requirements and Comparison of View Mechanisms for Object-Oriented Databases,” Information Systems, vol. 21, no. 3, pp. 229–252, 1996.
[21] E. Odberg, “Category Classes: Flexible Classification and Evolution in Object-Oriented Databases,” Advanced Information Systems Eng.—Sixth Int'l Conf. (CAISE '94), G. Wijers, S. Brinkkemper, and T. Wasserman, eds., pp. 406–420, June 1994.
[22] A. Ohori and K. Tajima, “A Polymorphic Calculus for Views and Object Sharing,” Proc. ACM SIGACT-SIGMOD Symp. Principles of Database Systems (PODS), pp. 255–266, 1994.
[23] M.P. Papazoglou and B.J. Krämer, “A Database Model for Object Dynamics,” The VLDB J., vol. 6, pp. 73–96, 1997.
[24] C. Parent and S. Spaccapietra, “An Algebra for a General Entity-Relationship Model,” IEEE Trans. Software Eng., vol. 11, no. 7, pp. 634–643, July 1985.
[25] J. Richardson and P. Schwartz, "Aspects: Extending Objects to Support Multiple, Independent Roles," Proc. ACM SIGMOD Int'l Conf. Management of Data, pp. 298-307, 1991.
[26] E.A. Rundensteiner, “MultiView: Methodology for Supporting Multiple Views in Object-Oriented Databases,” Proc. 18th Int'l Conf. Very Large Data Bases (VLDB), pp. 187–198, 1992.
[27] C.S. Dos Santos, S Abiteboul, and C Delobel, “Virtual Classes and Bases,” Proc. Advances in Database Technology—EDBT’94, 1994.
[28] M.H. Scholl, C. Laasch, C. Rich, H.J. Scheck, and M. Tresch, “The COOCON Object Model,” Technical Report 211, Departement Informatik, ETH, Zurich, 1994.
[29] M.H. Scholl, C. Laasch, and M. Tresch, “Views in Object-Oriented Databases,” Proc. Second Int'l Workshop Foundations of Models and Languages for Data and Objects, pp. 37–58, 1990.
[30] M.H. Scholl and H.J. Scheck, “A Relational Object Model,” Proc. Third Int'l Conf. Database Theory (ICDT), S. Abiteboul and P.C. Kanellakis, eds., pp. 89–105, 1990.
[31] M.H. Scholl and H.-J. Schek, “Supporting Views in Object-Oriented Databases,” IEEE Data Eng. Bulletin, vol. 14, no. 2, 1991.
[32] G.M. Shaw and S.B. Zdonik, “An Object-Oriented Query Algebra,” Proc. Second Int'l Workshop Database Programming Languages (DBPL '89), June 1989.
[33] J.J. Shilling and P.F. Sweeny,“Three steps to views: Extending the OO paradigm,” Proc. ACM Conf. on Object Oriented Programming, Systems, Languages, and Applications, pp. 353-361,New Orleans, Louisiana, Oct. 1989, ACM.
[34] R.J. Wieringa, W. De Jonge, and P. Spruit, “Using Dynamic Classes and Role Classes to Model Object Migration,” Theory and Practice of Object Systems, vol. 1, no. 1, pp. 61–83, 1995.
[35] S.B. Zdonik, "Object-Oriented Type Evolution," F. Bancilhon and P. Buneman, eds., Advances in Database Programming Languages, pp. 277-288. ACM Press, 1990.

Index Terms:
Object databases, object data models, objects with roles, object views, database programming languages.
Antonio Albano, Giuseppe Antognoni, Giorgio Ghelli, "View Operations on Objects with Roles for a Statically Typed Database Language," IEEE Transactions on Knowledge and Data Engineering, vol. 12, no. 4, pp. 548-567, July-Aug. 2000, doi:10.1109/69.868907
Usage of this product signifies your acceptance of the Terms of Use.