Abstract: 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.