An object algebra for object-oriented database systems

Reda Alhajj, M. Erol Arkun
1993 ACM SIGMIS Database the DATABASE for Advances in Information Systems  
Although messages can be used to manipulate objects, a query language is still considered a required component of object-oriented database management systems. An object algebra is proposed, as a formal foundation for a query language, that can handle both the state and the behavior of objects. Creation of new objects and introduction of new relationships among objects~classes are also facilitated by the object algebra. The object algebra subsumes the five basic relational algebraic operations
more » ... ile providing several additional powerful ones. Each operand, as well as the result of a query, is a pair of sets: a set of objects and a set of message expressions formed as a sequence of messages accepted by the former set. The result of a query possesses the properties of an operand, thus providing the closure property for operations. Every class has a defined set of objects and derived set of message expressions, thus a class possesses the characteristics of an operand. The result of a query also possesses the characteristics of a class. The superclass/ subclass relationships of a query result with the operands is established to provide persistency to the result as a class, and as a consequence algebraic equivalents of schema evolution functions are developed. Object algebra is as powerful as relational and nested relational algebra. In fact, due to message expressions that serve to handle both stored and derived values, object algebra provides greater computational power.
doi:10.1145/173798.173800 fatcat:nl3z4mwqmbagvbxgpugiis3oq4