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,[1] and transaction time is hence the most used temporal functionality.[1] 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]
History
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 SQL:2011, it does however not include specific clauses for decision time.
Comparison with valid time and transaction 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.
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
∞
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
See also
Valid time, when an event in a database happened in the real world
^Mario A. Nascimento, Margaret H. Eich, “Decision Time in Temporal Databases”, In Proceedings of the Second International Workshop on Temporal Representation and Reasoning, 1995, pp. 157-162