Package com.arsdigita.persistence.metadata

Provides a set of classes to store metadata about data object types and the database schema used to persist data objects.

See:
          Description

Class Summary
Association The Association class is used to link together the properties of two object types.
CompoundType The CompoundType class represents types that are built up from SimpleTypes and other CompoundTypes.
DataType The DataType class represents the type of a persistently stored datum.
DDLWriter DDLWriter
Element The Element class is the abstract base class for functionality common to all metadata classes.
MetadataRoot The MetadataRoot is a singleton class that serves as an entry point for the metadata system.
Model A Model provides a logical namespace for a related set of ObjectTypes and Associations.
ModelElement The ModelElement class represents metadata elements that are components of a Model.
ObjectType The ObjectType class is a specialized form of CompoundType that supports inheritence.
ObjectTypeRegistry Provides a general purpose object type adapter registry, which is aware of the type hierarchy
Property The Property class represents one property of a CompoundType.
SimpleType The SimpleType class is the base class for all the primative DataTypes that the persistence layer knows how to store.
Utilities General static utility methods for the metadata classes.
 

Package com.arsdigita.persistence.metadata Description

Provides a set of classes to store metadata about data object types and the database schema used to persist data objects.

When the system starts up, the persistence layer reads the PDL files into an Abstract Syntax Tree using the files within com.redhat.persistence.pdl.nodes. The Abstract Syntax Tree then populates the classes within this package. These classes are then used by the operational persistence layer (the classes within the com.arsdigita.persistence package) to perform the standard operations.

The resulting structure is a hierarchy as every item that can be represented in PDL extends the Element class. This class stores general information about object models and is able to output itself in the form of a PDL file.

The metadata is divided into Models. These models act as the namespace for all of the metadata information (such as object types, data queries, and data operations). The model itself is composed of ModelElements.

There are two types of ModelElements: Association and DataType. The Association model type holds information for associations between object types. The DataType model contains both CompoundTypes and SimpleTypes.

SimpleTypes are used to represent the primitive DataTypes that the persistence layer knows how to store. For instance, there are SimpleTypes for BigDecimal, Integer, Date, and String as well as many others. These are used for describing Properties as well as Attributes defined within MAP blocks.

A CompoundType can be a ObjectType. ObjectTypes provide specific access special events that act on rows within the tables. Each DataObject contains a single ObjectType and that ObjectType is what contains references to the events allowing the user to easily manipulate data within the database. An ObjectType is made up of Attributes (columns in the database), Associations (mappings between database tables), and Events (A collection of Operations that dictate how information is stored and retrieved within the database).

A QueryType is composed of a set of Operations and Mappings that allow the user to retrieve arbitrary information from the database.


Last modified: $Date: 2003/07/08 $



Copyright (c) 2004 Red Hat, Inc. Corporation. All Rights Reserved. Generated at July 21 2004:2337 UTC