A SERVICE OF

logo

Persistence Glossary
The terms used by the persistence system are largely based upon the Unified Modeling Language
(UML) terminology. For background information, please consult the UML documentation at
http://www.rational.com/uml/.
Association
Associations are bi-directional semantic connections. Put another way, they represent the rela-
tionship between two separate objects (UML Classes). Objects within an association are com-
pletely independent, though they may be linked together. Data may be passed in either or both
directions, and more than one association may exist between two classes. In UML diagrams,
associations are represented as links (lines between the two objects).
An example of an association is the relationship between a user and a group. From the level
of object modeling, the two classes involved are User and Group and there is a many-to-many
association between them. In this case, the association is one of membership. That is, a user "is
a member of" a group.
See Also: Composite.
Attributes
Attributes are data fields that represent some property of the containing object that is shared by
all instances of the object’s class. Attributes normally have names (e.g., "Address") and Types
(e.g., "String" or "Boolean"). An example of this would be the "Address" of a "User."
See Also: Property.
Composite
A Composite Relationship (also known as a "Composition") is a special kind of association in
which one class cannot exist without another. That is, the object strongly owns its parts and if
the object is deleted, its parts must also be deleted. The multiplicity at the parent object end
must be 1..1 or 0..1. An example of a composite relationship is a key with a keyboard. The key
is useless without the keyboard; if you remove the keyboard, you are also removing the key.
Composite associations are useful for modeling relationships between objects where a contained
object cannot exist outside its container object.
An example specific to the WAF is the composition between Parties and WAF Objects. A Party
cannot exist without thecorresponding WAFObject. If theWAFObject is deleted, the Party must
also be deleted. The multiplicity holds because each Party has exactly one related WAF Object.
See Also: Association.
Derived Associations
Derived Associations are exactly like Associations, except that they have one or more levels of
indirection. That is, if A is associated with B, and B is associated with C, then A has a Derived
Association with C.
See Also: Association.
Data Object
A Data Object is any persistent entity within a relational database that is exposed to the appli-
cations as an object. An example is a row within the "users" table. It is important to realize that
Data Objects are not the same as Domain Objects, and that they actually have a many-to-many
relationship. See Section 9.2 Beginning With Data Objects and for more information.
See Also: Domain Object.