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 [[Upper and lower bounds|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,[1] 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.[2]
The term decision time was coined by Mario Nascimento and Margaret Eich (1995).[3]
Although the ISO SQL standard has included support for "application-time period tables" (valid time tables) and "system-versioned tables" (transaction tables) since, it does however not include specific clauses for decision time.
In a tritemporal database,[4] 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.
The following is a list of real events that occurred between the 1964 and 1976 United States presidential elections:
Date | Decision maker | Real world event | |
---|---|---|---|
1964-11-03 | Electoral College | Election of 1964 | |
1968-11-05 | Electoral College | Election of 1968 | |
1972-11-07 | Electoral College | Election of 1972 | |
1973-10-10 | Spiro Agnew | Agnew resigns | |
1973-10-12 | Richard Nixon | Nixon nominates Ford | |
1973-12-06 | Congress | Congress confirms Ford | |
1974-08-09 | Richard Nixon | Nixon resigns | |
1974-08-20 | Gerald Ford | Ford nominates Rockefeller | |
1974-12-19 | Congress | Congress confirms Rockefeller | |
1976-11-02 | Electoral College | Election of 1976 |
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:
Valid | Decision | Transaction | ||||||
---|---|---|---|---|---|---|---|---|
President | Vice | From | To | From | To | From | To | |
Johnson | Humphrey | 1965-01-20 | 1969-01-20 | 1964-11-03 | ∞ | 1964-11-10 | ∞ | |
Nixon | Agnew | 1969-01-20 | 1973-01-20 | 1968-11-05 | ∞ | 1968-11-12 | ∞ | |
Nixon | Agnew | 1973-01-20 | 1977-01-20 | 1972-11-07 | ∞ | 1972-11-14 | 1973-10-17 | |
Nixon | Agnew | 1973-01-20 | 1977-01-20 | 1972-11-07 | 1973-10-10 | 1973-10-17 | ∞ | |
Nixon | Agnew | 1973-01-20 | 1973-10-10 | 1973-10-10 | ∞ | 1973-10-17 | ∞ | |
Nixon | (Vacant) | 1973-10-10 | 1977-01-20 | 1973-10-10 | ∞ | 1973-10-17 | 1973-12-13 | |
Nixon | Ford | ∞ | 1977-01-20 | 1973-10-12 | ∞ | 1973-10-19 | 1973-12-13 | |
Nixon | (Vacant) | 1973-10-10 | 1977-01-20 | 1973-10-10 | 1973-12-06 | 1973-12-13 | ∞ | |
Nixon | (Vacant) | 1973-10-10 | 1973-12-06 | 1973-12-06 | ∞ | 1973-12-13 | ∞ | |
Nixon | Ford | ∞ | 1977-01-20 | 1973-10-12 | 1973-12-06 | 1973-12-13 | ∞ | |
Nixon | Ford | 1973-12-06 | 1977-01-20 | 1973-12-06 | ∞ | 1973-12-13 | 1974-08-15 | |
Nixon | Ford | 1973-12-06 | 1977-01-20 | 1973-12-06 | 1974-08-08 | 1974-08-15 | ∞ | |
Nixon | Ford | 1973-12-06 | 1974-08-09 | 1974-10-08 | ∞ | 1974-08-15 | ∞ | |
Ford | (Vacant) | 1974-08-09 | 1977-01-20 | 1974-10-08 | ∞ | 1974-08-15 | 1974-12-26 | |
Ford | Rockefeller | ∞ | 1977-01-20 | 1974-10-20 | ∞ | 1974-08-27 | 1974-12-26 | |
Ford | (Vacant) | 1974-08-09 | 1977-01-20 | 1974-10-08 | 1974-12-19 | 1974-12-26 | ∞ | |
Ford | (Vacant) | 1974-08-09 | 1974-12-19 | 1974-12-19 | ∞ | 1974-12-26 | ∞ | |
Ford | Rockefeller | ∞ | 1977-01-20 | 1974-08-20 | 1974-12-19 | 1974-12-26 | ∞ | |
Ford | Rockefeller | 1974-12-19 | 1977-01-20 | 1974-12-19 | ∞ | 1974-12-26 | ∞ | |
Carter | Mondale | 1977-01-20 | 1981-01-20 | 1976-11-02 | ∞ | 1976-11-09 | ∞ |