Decision time

In temporal databases, decision time is the time when a decision was made about a fact stored in a database. It is used to keep a history of decisions about valid times.

In a database table, the start and end time of the decision time interval can be represented by adding two table columns. This interval is closed [ in the lower bound, and open at the upper bound ). When a decision has not been replaced, the end time of the decision is unknown, and it can thus be considered valid "until changed" or infinite (∞).

Valid time and decision time are ways of modeling data, and is not applicable for all types of data, and transaction time is hence the most used temporal functionality. The concept of decision time can for example be used in bitemporal databases (together with valid time instead of transaction time), or in tritemporal databases.

History
The term decision time was coined by Mario Nascimento and Margaret Eich (1995).

Although the ISO SQL standard has included support for "application-time period tables" (valid time tables) and "system-versioned tables" (transaction tables) since SQL:2011, it does however not include specific clauses for decision time.

Comparison with valid time and transaction time
In a tritemporal database, valid times are a history of valid time periods for facts stored in the database. The decision times are a history of decisions about validity times, and transaction times are again a history of decision times. Thus, transaction times are a history of meta-histories ("histories of histories").

Decision time is unconstrained in relationship to valid time, but it must be earlier than the transaction time. For example, the decision time can not be assigned a date in the future.

Example
The following is a list of real events that occurred between the 1964 and 1976 United States presidential elections:

In this example, a constant 7-day delay is assumed between the decision time and the transaction time when the data is committed to the database. Given those conditions, the database would have contained the following information after the election in 1976: Given the 7-day delayed table above, the question "who was president and vice president for the valid time of 1977-01-01" (which given the 7-day delay could provide data for 1976-12-25) would be:


 * Nixon/Agnew when using a decision time and transaction time of 1972-11-14
 * Nixon/(Vacant) when using a decision time and transaction time of 1973-10-17
 * Nixon/Ford when using a decision time and transaction time of 1974-08-08
 * Ford/(Vacant) when using a decision time of 1974-08-08 and transaction time of current
 * Ford/Rockefeller when using a decision time and transaction time of current