next up previous
Next: Derived Constructs Up: A Reference Data Previous: A Reference Data

Basic Constructs

Database schemas are specified in this reference data model in terms of objects that are qualified by attributes and are classified in classes. A subset of the attributes associated with a class is usually specified as the identifier for the objects in the class. A class can be specified as the specialization (subclass) of other classes; a specialization class inherits the attributes of all its (direct and transitive) superclasses. Subclass-superclass relationships can be used for organizing classes in class hierarchies. Examples of classes are shown in figure 1.

  
Figure 1: Diagrammatic Representation of Classes of Objects

Attributes take values from classes of values, and can be simple or consist of a tuple of simple attributes. An attribute can be single-valued, set-valued, or list-valued. A simple attribute is associated with either a single class of values or a union of such classes. A tuple attribute (e.g., (left_fragment, right_fragment) of Connection in figure 1) consists of several component simple attributes, where each component attribute is associated with a single class of values or a union of classes. Depending on the type of its class of values, an attribute can be primitive or abstract: a primitive attribute take values from a controlled class of enumerated atomic values or ranges of values, or a class of atomic values of predefined data types; an abstract attribute takes values from a class or union of classes of objects (e.g., owns of Person in figure 1).

Attributes are characterized by null and inverse constraints. Null constraints refer to whether an attribute can have null (empty set) values. Inverse constraints regard pairs of abstract non-derived attributes and express object cross referencing: if an abstract attribute A of class (e.g., owner of Contig_Map in figure 1) is defined as the inverse of abstract attribute B of class (e.g., owns of Person in figure 1), then for every instance x of and every instance y of , if y is a value of then x is also a value of .



next up previous
Next: Derived Constructs Up: A Reference Data Previous: A Reference Data



VMMarkowitz@lbl.gov
Jul 13, 1995