Abstract: A database contains an application program operative with data stored in a records data set (RDS) and a categories data set (CDS). The RDS contains an arbitrarily organized series of RDS entries, each having at least one data field configured for representing data. The CDS contains CDS entries configured for defining the schematic data types and data relationships of the RDS entries. Data is thus isolated from its definition, thereby permitting the underlying schematic form of the database to be changed based on modifications in the CDS, without requiring any actual changes to the schematic structure of the RDS or the underlying database. By virtue of this same isolation, it is also possible to reduce data redundancy with varying levels of granularity and create an object-oriented data model.