|
Abstract : |
Object-oriented databases (OODBs) are believed to more naturally reflect the behavior and organization of real world objects. However, OODBs are mostly concerned about only the static aspects of object modeling. While real world objects typically may be multi-perspectived and evolve over time by changing classification and behavior, contemporary OODB models typically regard objects as instances of classes in such a way that classification (and thus behavior) is fixed at the time of creation. This paper introduces the notion of an object role to denote a particular perspective of an object, corresponding to a class for which it is an instance. Roles may be dynamically added and removed from objects to reflect the way real world objects classify and evolve over time, and simultaneously change behavior. A category class is a special class which is associated with a predicate, and in this way describe constraints on how objects may evolve, as well as how objects may automatically gain and discard roles based on various criteria. 1, |