Object persistence is facilitated by introducing persistent agents to act
as bridges between the programming model and the database model. Persistent agents
are instantiated on a per-class basis and are responsible for mapping their class
to a suitable database related. Methods are defined for the persistent agent to
specify database-specific properties and optimization hints.