1. A method, comprising: calling a constructor to register an interface to a description of a persistent class; accessing the registered interface to determine an internal structure of the persistent class; processing an instance of the persistent class based on the determined internal structure, wherein the instance of the persistent class is a persistent database object; determining, based on the determined internal structure, members of the persistent database object that are filled with default values; storing the persistent database object in a database; reducing storage demands on the database by removing the default values from the persistent database object before the storing of the persistent database object in the database; after the storing of the persistent database object in the database, reading the persistent database object from the database; after the reading of the persistent database object from the database, populating the determined members of the persistent database object with the default values; and defining an index associated with one or more members of the instance based on the determined internal structure; and verifying referential integrity of the instance.