1. A method to automatically generate software for an object to relational mapping system, the method including: automatically generating a plurality of classes, iteratively for each class, reading class information; reading meta-data based on the class information; and automatically generating the class based on the meta-data, the plurality of classes to be used in the object to relational mapping system to enable an application program to access data that is persistently stored in a database and accessed by the application program from an instance of a data object class that is included in the plurality of classes.