On Type Systems for Object-Oriented Database Programming Languages

Saved in:
Bibliographic Details
Title: On Type Systems for Object-Oriented Database Programming Languages
Authors: Yuri Leontiev, M. Tamer Özsu, Duane Szafron
Contributors: The Pennsylvania State University CiteSeerX Archives
Source: http://db.uwaterloo.ca/~ddbms/publications/tigukat/compsur.ps.
Publication Year: 1999
Collection: CiteSeerX
Subject Terms: Categories and Subject Descriptors, D.3.2 [Software, Programming Languages|Language Classi cations, D.3.3 [Software, Programming Languages|Language Constructs and Features, H.2.3 [Information Systems, Database Management|Languages, F.3.3 [Theory of Computation
Description: properties in the ODMG Object Model include abstract state and abstract relationships (two-way mappings). Relationships can only be de ned between classes. Abstract behavior is speci ed as a set of operations. Behavior speci cations are novariant in both their argument and return types. The ODMG Object Model supports single dispatch. Several system-de ned parametric container classes are present in the object model, but the user is not allowed to de ne new ones. Type parameters can only be used in property speci cations; operation speci cations can not be parameterized. OQL is a strongly typed query language that provides a possibility of explicit dynamically checked type conversions. Set operations in OQL can only be performed on \compatible types" (types that have the least upper bound). Since the notion of the greatest lower bound is not available in OQL, all set operations use the least upper bound for typing purposes. For example, intersecting a set of students with a set of persons would return a result of type \set of persons" even in the case when the type of students is a subtype of the person type. ODMG/OQL fails all tests except for BROWSER and the union part of the SET test. It should be noted, however, that ODMG/OQL is not a general-purpose database programming language, and therefore its performance on the test suite is not fully indicative of the merits of the ODMG Object Model.
Document Type: text
File Description: application/postscript
Language: English
Relation: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.8.1568; http://db.uwaterloo.ca/~ddbms/publications/tigukat/compsur.ps
Availability: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.8.1568
http://db.uwaterloo.ca/~ddbms/publications/tigukat/compsur.ps
Rights: Metadata may be used without restrictions as long as the oai identifier remains attached to it.
Accession Number: edsbas.51070073
Database: BASE
Description
Abstract:properties in the ODMG Object Model include abstract state and abstract relationships (two-way mappings). Relationships can only be de ned between classes. Abstract behavior is speci ed as a set of operations. Behavior speci cations are novariant in both their argument and return types. The ODMG Object Model supports single dispatch. Several system-de ned parametric container classes are present in the object model, but the user is not allowed to de ne new ones. Type parameters can only be used in property speci cations; operation speci cations can not be parameterized. OQL is a strongly typed query language that provides a possibility of explicit dynamically checked type conversions. Set operations in OQL can only be performed on \compatible types" (types that have the least upper bound). Since the notion of the greatest lower bound is not available in OQL, all set operations use the least upper bound for typing purposes. For example, intersecting a set of students with a set of persons would return a result of type \set of persons" even in the case when the type of students is a subtype of the person type. ODMG/OQL fails all tests except for BROWSER and the union part of the SET test. It should be noted, however, that ODMG/OQL is not a general-purpose database programming language, and therefore its performance on the test suite is not fully indicative of the merits of the ODMG Object Model.