Patent ID: 8812512

Claim:
A temporal relational database and associated data structure and database management software system comprising: computer memory and a computer processor adapted to process data held in the memory; business data and associated time data held in computer memory; and database management software held in computer memory and runable on the processor to interact with the business data; the data structure comprising having the business data and associated time data held in three tables, a first S$ table, a second T$ table and a third E$ table, where: the S$ table (summary table) contains all versions of the all rows of business data, the rows having at least dimensions of transaction time, valid time, and business primary key; the E$ table (event table) holds the valid start of existence and valid end of existence of all rows in the S$ table, avoiding storing end dates of rows in the S$ table, and the rows of the E$ table being dimensional by at least transaction time and business primary key; the T$ table holds the primary key and unique keys of all rows in the S$ table dimensioned by business primary key; and wherein the database management software when run on the processor allows: (i) the entry of new rows in the S$ table with the transaction time being set by the system clock and the valid time and business data being manually entered or read/generated by the processor, entries in the S$, E$ and T$ tables being automatically generated by the database management software; and (ii) allows a user to query the database to select a current view report with valid time now, or a report where both valid time and transaction time are specified by the user, the report showing the values of entities in the S$ table specified by the selected valid and transaction time dimensions; and (iii) a report of entities showing start and end times for entities to be generated, with the actual start and end of existence times being held in the T$ table; and (iv) a valid time history view of values of entities to be obtained, and a transaction time history view of values of entities can be obtained; and wherein referential rules managing values of entities are stored in a referential rule dictionary and control relational aspects of values of the entities.