Discussion


The term dynamic is appropriate (as opposed to static) because if the information in the database changes, the grouping intervals may change. The intervals are determined from intrinsic information.

One example of dynamic valid-time grouping would be to compute the average value of an attribute in the relation (say the salary), for the previous year before the stop-time of each tuple. A technique which could be used to compute this query would be for each tuple, find all tuples valid in the previous year before the stop-time of the tuple in question, and combine these tuples into a set. Finally, compute the average of the salary attribute values in each set.

It may seem inappropriate to use valid-time elements instead of intervals, however there is no reason to exclude valid-time elements as the time-line grouping may overlap in either case.

The existing term for this concept does not have an opposing term suitable to refer to dynamic valid-time grouping, and may not distinguish between the two types of valid-time grouping (-E3, +E9). Various temporal query languages have used both dynamic and static valid-time grouping, but have not always been clear about which type of grouping they support (+E1). Utilization of these terms will remove this ambiguity from future discussions.