13
A Consensus Glossary of Temporal Database Concepts* Christian S. Jensen James Clifford Ramez Elmasri Shashi I<. Gadia Pat Hayes Sushi1 Jajodia (editors) Curtis Dyreson Fabio Grandi Wolfgang K&fer Nick Kline Nikos Lorentzos Yamzis Mitsopoulos Angelo Montanari Daniel Nonen Elisa Peressi Barbara Pernici John F. Roddick Nandlal L. Sarda Maria Rita Scalas Arie Segev Richa.rd T. Snodgrass Mike D. Soo Abdullah Tansel Paolo Tiberio Gio Wiederhold Abstract This document contains definitions of a wide range of con- cepts specific to and widely used within tempoml databases. In addition to providing definitions, the document also in- cludes sepamte explanations of many of the defined concepts. Two sets of criteria are included. First, all included concepts were required to satisfy four relevance criteria, and, second, the naming of the concepts was resoloed using a set of evalua- tion criteria. The concepts are grouped into three categories: concepts of general database interest, of temporal database interest, and of specialized interest. This document is a di- gest of a fall version of the glossary’. In addition to the material included here, the full version includes substantial discussions of the naming of the concepts. The consensus effort that lead to this glossary was initi- ated in Early 1992. Earlier status documents appeared in March 1993 and December 1992 and included terms pro- posed after an initial glossary appeared in SIGMOD Record in September 1992. The present glossary subsumes all the previous documents. It was lnost recently discussed at the “ARPA/NSF International Workshop on an Infrastructure for Temporal Databases, ” in Arlington, TX, June 1993, and is recommended by a significant part of the temporal database community. The glossary meets a need for creating a higher degree of consensus on the definition and naming of tempoml database concepts. 1 Introduction A technical language is an important infrastructural com- ponent, of any scientific community. To be effective, such a language should be well-defined, intuitive, and agreed-upon. This document contains recommended definitions and names for a wide range of concepts specific to temporal databases *Correspondence may be directed to the electronic mail distribu- tion, tdbglossaryQcs.arizona.edu, or to the editor, C. S. Jensen, at Aalborg University, Datalogi, Fr. Eajers Vej 7E, DK-9220 Aalborg 0, Denmark, cs j@iesd .auc .dk. The affiliations and e-mail addresses of the many contributors may be found in a separate section at the end of the document. ‘The full version of the glossary is available via anonymous ftp from cs.arizona.edu where it may be found in the tsql directory along with other material related to t,he ongoing glossary initiative. It is also available as Technical Report R 93-2035 (November 1993) from Aalborg University. that are well-defined, well understood, and widely used. The proposal meets a need for creating a higher degree of con- sensus on the definition and naming of central concepts from within the field. The use of inconsistent terminology ad- versely affects the accessibility of the literature-to mem- bers of the community as well as others-and has an adverse effect on progress. This document is a digest of a full version of the glossary. The full version does not contain any additional definitions, but include.. discussions of the particular choices of namesfor the concepts. Thus, when several different names were pre- viously used for a concept, the alternatives are enumerated and discussed. The history of this document (and its full version) may be described as follows. An initial glossary of temporal database concepts arose from e-mail discussionswhen appropriate tkr- minology was considered for the book Temporal Databases: Theory, Design, and Implementation, edited by A. Tansel, J. Clifford, S. Gadia, S. Jajodia, A. Segev, and R. Snod- grass, from Benjamin/Cummings Publishers. That glossary also appeared in t*heSeptember 1992 issue of the ACM SIG- MOD Record. The effort continued, independently of the book, and the community was invited to submit proposals to an open mailing list. As results, status documents ap- peared in December 1992 and in March 1993. In June 1993, a complete document of the 100 glossary entries proposed to date was discussedamong 44 temporal database researchers at the “ARPA/NSF International Workshop on an Infras- tructure for Temporal Databases,” in Arlington, TX, with the goal of obtaining a widely agreed upon glossary. An ed- itorial board has since supervised a revision of the glossary baaed on the input from the workshop. The present glossary is a digest of the result. Each individual who contributed significantly to the glossary effort is a coauthor of this doc- ument . The document is organized as follows. The next section first lists four relevance criteria for concepts, then lists nine evaluation criteria for the naming of concepts. Finally, the structure of a glossary entry for a.concept is explained. The next three sections constitute the main body of the glossary and contain glossary entries for concepts. The first includes entries for concepts that are expected to be of interest to researchers within the general database area. The second covers concepts tha.t are expected to be of general interest 52 SIGMOD RECORD, Vol. 23, No. 1, March 1994

A Consensus Glossary of Temporal Database Concepts

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A Consensus Glossary of Temporal Database Concepts

A Consensus Glossary of Temporal Database Concepts*

Christian S. Jensen James Clifford Ramez Elmasri Shashi I<. Gadia Pat Hayes Sushi1 Jajodia (editors)

Curtis Dyreson Fabio Grandi Wolfgang K&fer Nick Kline Nikos Lorentzos Yamzis Mitsopoulos Angelo Montanari Daniel Nonen Elisa Peressi Barbara Pernici

John F. Roddick Nandlal L. Sarda Maria Rita Scalas Arie Segev Richa.rd T. Snodgrass Mike D. Soo Abdullah Tansel Paolo Tiberio Gio Wiederhold

Abstract

This document contains definitions of a wide range of con- cepts specific to and widely used within tempoml databases. In addition to providing definitions, the document also in- cludes sepamte explanations of many of the defined concepts. Two sets of criteria are included. First, all included concepts were required to satisfy four relevance criteria, and, second, the naming of the concepts was resoloed using a set of evalua- tion criteria. The concepts are grouped into three categories: concepts of general database interest, of temporal database interest, and of specialized interest. This document is a di- gest of a fall version of the glossary’. In addition to the material included here, the full version includes substantial discussions of the naming of the concepts.

The consensus effort that lead to this glossary was initi- ated in Early 1992. Earlier status documents appeared in March 1993 and December 1992 and included terms pro- posed after an initial glossary appeared in SIGMOD Record in September 1992. The present glossary subsumes all the previous documents. It was lnost recently discussed at the “ARPA/NSF International Workshop on an Infrastructure

for Temporal Databases, ” in Arlington, TX, June 1993, and is recommended by a significant part of the temporal database community. The glossary meets a need for creating a higher degree of consensus on the definition and naming of tempoml database concepts.

1 Introduction

A technical language is an important infrastructural com- ponent, of any scientific community. To be effective, such a language should be well-defined, intuitive, and agreed-upon. This document contains recommended definitions and names for a wide range of concepts specific to temporal databases

*Correspondence may be directed to the electronic mail distribu-

tion, tdbglossaryQcs.arizona.edu, or to the editor, C. S. Jensen, at Aalborg University, Datalogi, Fr. Eajers Vej 7E, DK-9220 Aalborg 0,

Denmark, cs j@iesd .auc .dk. The affiliations and e-mail addresses of the many contributors may be found in a separate section at the end

of the document. ‘The full version of the glossary is available via anonymous ftp from

cs.arizona.edu where it may be found in the tsql directory along

with other material related to t,he ongoing glossary initiative. It is

also available as Technical Report R 93-2035 (November 1993) from Aalborg University.

that are well-defined, well understood, and widely used. The proposal meets a need for creating a higher degree of con- sensus on the definition and naming of central concepts from within the field. The use of inconsistent terminology ad- versely affects the accessibility of the literature-to mem- bers of the community as well as others-and has an adverse effect on progress.

This document is a digest of a full version of the glossary. The full version does not contain any additional definitions, but include.. discussions of the particular choices of names for the concepts. Thus, when several different names were pre- viously used for a concept, the alternatives are enumerated and discussed.

The history of this document (and its full version) may be described as follows. An initial glossary of temporal database concepts arose from e-mail discussions when appropriate tkr- minology was considered for the book Temporal Databases: Theory, Design, and Implementation, edited by A. Tansel, J. Clifford, S. Gadia, S. Jajodia, A. Segev, and R. Snod- grass, from Benjamin/Cummings Publishers. That glossary also appeared in t*he September 1992 issue of the ACM SIG- MOD Record. The effort continued, independently of the book, and the community was invited to submit proposals to an open mailing list. As results, status documents ap- peared in December 1992 and in March 1993. In June 1993, a complete document of the 100 glossary entries proposed to date was discussed among 44 temporal database researchers at the “ARPA/NSF International Workshop on an Infras- tructure for Temporal Databases,” in Arlington, TX, with the goal of obtaining a widely agreed upon glossary. An ed- itorial board has since supervised a revision of the glossary baaed on the input from the workshop. The present glossary is a digest of the result. Each individual who contributed significantly to the glossary effort is a coauthor of this doc- ument .

The document is organized as follows. The next section first lists four relevance criteria for concepts, then lists nine evaluation criteria for the naming of concepts. Finally, the structure of a glossary entry for a. concept is explained. The next three sections constitute the main body of the glossary and contain glossary entries for concepts. The first includes entries for concepts that are expected to be of interest to researchers within the general database area. The second covers concepts tha.t are expected to be of general interest

52 SIGMOD RECORD, Vol. 23, No. 1, March 1994

Page 2: A Consensus Glossary of Temporal Database Concepts

wit.hin t,empora.l databases only. The third covers the re- maining concepts of more specialized interest. Finally, the a.ffilia.tions and e-mail addresses of the aut.hors are listed, and an indes is included on the last pa.ge.

2 Relevance and Evaluation Crite- ria for the Glossary

2.1 Relevance Criteria for Concepts

It. has been at,tempt,ed to name only concepts tha.t fulfill the followiug four requirements.

Rl

R2

R.3

R4

The concept, must he specific to temporal databases. Thus, concepts used more generally are excluded.

The concept must be well-defined. Before att,empting t.o name a concept, it is necessary to a.gree on the definition of the concept itself.

The concept must be well understood. We have at.- tempted to not name a concept if a. clear understanding of the appropriateness, consequences, and implications of the concept is missing. Thus, we avoid concepts from research areas that are currently being explored.

The concept must be widely used. We have a.voided concepts used only sporadically within the field.

2.2 Evaluation Criteria for Naming Con- cepts

Below is a list of criteria for what is a good name. Contrib- utors have been encouraged to reference these criteria when proposing glossary entries. The criteria, are sometimes con- flicting, making the choice of names a difficult and challeng- ing task. While the list is comprehensive, it is not complete.

El

E2

E3

I34

E5

E6

The naming of concepts should be orthogonal. Parallel concepts should have parallel names.

Names should be easy to write, i.e., they should be short or possess a short acronym, should be easily pronounced (the name or its acronym), and should be appropriate for use in subscripts and superscript,s.

Already widely accepted names are preferred over new names.

Names should be open-ended in the sense that the name of a concept should not prohibit t.he invention of a. par- allel name if a parallel concept is defined.

The creation of homographs and homonyms should be avoided. Names with an already accepted meaning, e.g., an informal meaning, should not be given an additiona. meaning.

The naming of concepts should be conservative. No name is better than a bad name.

E7

ES

New na.mes should be consistent, with relat.ed aud a.lrea.d\

esisting and accepted names.

Names should be intuitive.

E9 Na.mes should be precise.

2.3 Structure of the Glossary

The following template is used for presenting the concepts of t,lie glossary.

Nrrme-the chosen name of t.he concept is usecl as the head- ing.

Definition-the definition of the concept.

E~~lallutio?I-further exploration of the definition and its consequences, including exemplification; this section is optional.

The full version extends the template with these items.

Previously Used Names-list of previously used names.

Discussion of Naming-reasons for the particular choice of name (aud concept) and reasons for not selecting previ- ously used names (and concepts).

Na.mes of concepts that are defined in the glossary are typeset. with a special font. For example, valid time and

transaction time have entries in the glossa.ry. The special font. is only used for the first occurrence of a name in a subsection of a glossary entry, and only if the entry of the name n1a.y be found in the current section or in an earlier section. To locate a. particular glossary entry, use t,he index at the end of the document.

3 Concepts of General Database In- t erest

3.1 Valid Time

Definition

The valid time of a fact is the time when the fact is true in the modeled reality. A fact may have associated any number of instants and time intervals, with single instants and inter- vals being important special cases. Valid times are usually supplied by the user.

3.2 Transaction Time

Definition

A database fact is stored in a database at some point in time, and after it is stored, it is current until logically deleted. The transaction time of a database fact is the t,ime when the fact is current in the database and may be re- trieved. Transaction times are consistent with the serial- ization order of the transactions. Transaction-time values cannot be later than the current tra.nsaction time. Also, as it, is impossible to change the past, transaction times can- not. be changed. Transaction times may be implement.ed

SIGMOD RECORD, Vol. 23, No. 1, March 1994 53

Page 3: A Consensus Glossary of Temporal Database Concepts

using transaction commit times, and a.re system-generated and -supplied.

3.3 User-defined Time

Definition

CJser-defined time is an uninterpreted attribute domain of date and time. User-defined time is parallel to domains such as “money” and integer- unlike transaction time and

valid time, it has no special query language support. It may be used for attributes such a.s “birth day” and “hiring da.te.”

3.4 Temporal Data Type

Definition

The user-defined temporal data type is a time representation specially designed to meet the specific needs of the user. For example, the designers of a database used for class scheduling in a school might be based on a “Year:Term:Day:Period” for- mat. Terms belonging to a. user-defined temporal data type get the same query la.nguage support as’do terms belonging to built-in temporal data types such as the DATE data t.ype.

3.5 Valid-time Relation

Definition A o&d-time relation is a relation with exactly one system supported valid time. There are no restrictions on how valid times may be incorporated into the t,uples; e.g., the valid- times may be incorpora.ted by including one or more ad- ditional valid-time attributes in t.he rela.tion schema, or by including the valid-times as a component of the values of the application-specific attributes.

3.6 Transaction-time Relation

Definition

A ttnnsaction-time relation is a relation with exa.ctly one sys- tem supported transaction time. .4s for valid-time relations,

there are no restrictions as to how transaction times may be incorporated into the tuples.

3.7 Snapshot Relation

Definition

Relations of a conventional relational database system incor- porating neither va.lid-time nor transaction-time timestamps a.re snapshot relations.

3.8 Bitemporal Relation

Definition

A bitemporal relation is a. rela.tion with exactly one system supported valid time aad exactly one system- supported transaction time. As for valid-time relations and transaction-time relations, there a.re no restrictions as to how either of these temporal dimensions may be incorporated into t,he tuples.

Explauatiou in the a.dopt*ed definition. “bi” refers t,o the esistence of esactly two times. An alternative definition stat,es that a bitemporal relation has one or more system- supported valid times and one or more system-support,ed transaction times. In this definition. “bi” refers to the ex- istence of exactly two types of t,imes.

Most rela.tions involving both valid and transaction time a.re bitempora.1 a.ccording to both definitions. Being the most restrictive, the a,dopted definition is the most desirable: It is t.he tightest fit, giving the most precise characterization.

The definition of bitempora.1 is used as the basis for applg- ing bitemporal as a modifier to other concepts such as “quer! language.” This a.dds more import.ant. reasons for preferring the adopted definition.

Independently of the precise definition of bitempora.1, a. query language is bitemporal if and only if it supports any hitemporal relation, see Section 3.9. With the adopted de6 nition, most4 query langua.ges involving both valid and trans- action time may be charact,erized as bitemporal. With t.he a.lternative definition, query language.. that are bitempora.1 under the adopted definition are no longer bitemporal. This is a serious drawback of the a.lt.ernative definition. It, excludes the possibility of nan~ing langua.ges that may be precisely named using the adopted definition. With t,he a.lternat.ive definition, those query langua.ges have no (precise) name. Wha.t we get is a. concept and name (bitemporal query la.n- guage) for which there is currentJy little or no use.

Also, note t*hat a query language that is bitemporal wit.11 the a.lternative definition is also bibemporal with regard t.o t.he adopted definition (but the adopted definition does 1101 provide a precise charact,erization of this query langua.ge). Thus, the restrictive definition of a bitemporal relation re- sults in a non-restrictive definit,ion of bitemporal query lan- guage (and vice-versa,).

We choose tSo name rela.tions as opposed t.o databases beca.use a. database ma.y contain several types of relations. Thus, na.ming relations is a more general approach.

3.9 Snapshot, Valid- and Transaction-time, and Bitemporal as Modifiers

The definitions of how “snapshot .” “va.lid-time,” “tmns- action-time,” and “bitemporal” apply to relations provide the basis for applying these modifiers to a. range of other concepts. Let t be one of snapshot.. valid-time, transaction- time, a,nd hitemporal. Twenty derived concepts are defined as follows.

relational database An E relational database contains one or more E relations.

relational algebra An I relational algebra. has relations of type x as basic objects.

relational query language An t relational query lan- guage manipulates any possible x relation. Had we used “some” instead of “any” in t,his definition, t.he defined concept would be very imprecise.

54 SIGMOD RECORD, Vol. 23, No. 1, March 1994

Page 4: A Consensus Glossary of Temporal Database Concepts

supports the specification of constraints on any 5’ rela- tion.

data model An t data model has a.11 1: query langua.ge and Explanation

Da.ta models may represent a time line by a sequence of uon-

decomposable, consecutive time interva.ls of identical dura- tion. These intervals are termed chronons. A data. model will

t.ypically leave the particular chronon duration unspecified, to be fixed la.ter by the individua.1 applica.tions, within the restrictions posed by the implementation of t,he data. model.

DBMS An 2 DBMS supports an c data model.

The two model-independent terms, data model and DBMS, may he replaced by more specific terms. For ex- ample, “data model” may be replaced by 9elational data model” in “bitemporal da.ta model.”

3.14 Time Interval

The nouns that have been modified above are not spe- cific to temporal da.tabases. Nouns specific to t.empora.1 databases, such as instant, chronon, interval, element, aad

span, may be modified by “valid-time,” “transaction-time?” and “bitemporal.”

Definition

A tzme mterual is the time between two inst.al1t.s. ln a system t,hat supports a time line composed of chronons, a.11 int.erva.1 may be represented by a. set of contiguous chronons.

3.10 Temporal as Modifier

Definition

3.15 Temporal Element

Definition

The modifier temporal is used to indicate that the modified concept concerns some aspect of time.

-3.11 Temporal Database

Definition

A temporal element is a. finite union of n-dimensiona.l time intervals. Special cases of temporal elements include valid-time elements, transaction-time elements. and bitempo- rvll elements. They a.re finite unions of valid-time int,ervnls. transaction-time intervals, and bitemporal intervals, respec- tively.

.4 temporul database supports some aspect of time, not counting user-defined time.

Explanation

3.12 Instant

Observe that tempora.1 elements are closed under t.he set t.he- oretic operations of union, intersection and complementa- tion. Temporal elements a.re often used as t,imesta.mps. A temporal element may be represented by a set, of chronons.

Definition

An instant is a time point on an underlying time axis. 3.16 Span

Definition

Explanation

Various models of time have been proposed in the philosoph- ical a.nd logical literature of time. These view time, a.mong ot*her things, as discrete, dense, or continuous. Intuitively, the insta.nts in a discrete model of time are isomorphic to the natural numbers, i.e., there is the notion that every instant has a unique successor. Instants in the dense model of time a,re isomorphic to (either) the real or rational numbers: be- tween any two instants there is always another. Continuous models of time are isomorphic to the real numbers, i.e., both dense and a.lso, unlike the rational numbers, with no “gaps.”

A spun is a directed dura.tion of time. A duration is a.11 amount of time with known length, but no specific starting or ending instants. For example, the dura.tion “one week” is known to ha.ve a, length of seven da.ys, but can refer t,o any block of seven consecutive days. A spa.n is either posi- tive, denoting forwa.rd motion of time, or negat,ive, denoting backwa.rds motion in time.

3.17 Timestamp

Definition

In a data model that supports a time line using chronons

(isomorphic to the natural numbers or a subset thereof), an instant is represented by a chronon. A single chronon ma,y t,herefore represent multiple instants.

A timestamp is a time value associated with some ol,ject,,

e.g., an a.ttribute value or a tuple. The concept may be spe- cialized to valid timestamp, transaction timestamp, interval timestamp, instant timestamp, bitempora.l-element times- tamp, etc.

3.13 Chronon

Definition

3.18 Lifespan

Definition

In a dat,a model, a one-dimensional chronon is a non- decomposable time interval of some fixed, minimal duration. An n-dimensional chronon is a non-decomposable region in n,-dimensiona. time. Important specia.1 types of chronons in- clude valid-time, transaction-time, and bitemporal chronons.

The lifespan of a database object is the t,ime over which it. is defined. The valid-time lifespan of a database object. refers t.o the time when the corresponding object exist,s in the mocl- eled rea.lity, whereas the transaction-time lifespan refers to t,he time when the database object is current, in t,he dat,abase.

SIGMOD RECORD, Vol. 23, No. 1, March 1994 55

Page 5: A Consensus Glossary of Temporal Database Concepts

If the object (aktribute, t;uple, rela.tion) has a.n associa.ted timestamp then the 1ifespa.n of tJ1a.t ot>ject is the value of the t.imesta.mp. If components of an object are timestamped, then the lifespan of t,he oblect is det.ermined by the particular data model being employed.

3.19 Calendar

Definition

A calendar provides a human irkerpretation of time. As such, calendars ascribe meaning to temporal va.lues where t,he particular meaning or int,erpretation is relevant to the user. In particular, calendars determine the ma.pping between human-meaningful time values a.nd an underlying time-line.

Explanation

Calendars are most often cyclic, allowing human-meaningful time values to be expressed succinctly. For example, dates in the common Gregorian calendar may be expressed in the form <month day, year> where each of the fields month, day, and year cycle as time passes.

3.20 Transaction-timeslice Operator

Definition

The transaction timeslice operator may be applied to a.ny relation with transaction time t,imesta.mps. It takes as one argument the relation and as a second argument, a. transaction-time element whose greatest, value must not, ex-

ceed the current transaction time. It returns the argument, relation reduced in the transaction-time dimension to just those times specified by the transa.ction-time argument.

Explanation

Several types of transaction-timeslice operators are possible. Some may restrict the type of the time argument to intervals

or instants. Some operat.ors may, given an instant as time argument., return a snapshot relation or a valid-time relation when applied to a transaction-time or a bitemporal relation,

respectively; other operators may alwa.ys return a result re- lation of the same type as the argument. rela.tion.

3.21 Valid-timeslice Operator

Definition

The valid timeslice operator may be applied to a.ny relation with valid time timestamps. It takes as one argument the relation and as a second a.rgument a valid-time element. It returns the argument relation reduced in the valid-time di- mension to just those times specified by the valid-time argu- ment .

Explanation

Several types of valid-timeslice operators are possible. Some may restrict the type of the time argument to intervals or instants. Some operators may, given an instant as time a.rgu- ment, return a snapshot relation or a transaction-time relation

when applied to a valid-time or a. bitemporal relation, respec-

tively; other opera.tors may always return a. result. relation of the sa.me t,ype as the a.rguinent. relation.

3.22 Schema Evolution

Definition

A database syst,em supports schen~.o ezloltltion if it, permits modification of the database schema. without. the loss of es- tant da.ta. No support) for previous schemas is required.

3.23 Schema Versioning

Definition

A database system accommodates scl~ema versioning if it allows the querying of all da.ta, both retrospectively and prospectively, through user-definable version interfa.ces.

Explanation

While support for schema versioning implies the support for schema evolution, t,he reverse is not true. Support, for schema versioning requires that a history of changes be maintained to enable the retention of past. schema definitions.

3.24 Event

Definition

.411 event is an instantaneous fact, i.e., somet.hing occurring at a.n instant. An event is sa.id to occur a.t a. chronon t if it

occurs at any instant. during t.

3.25 Event Occurrence Time

Definition

The event occurrence time of an event, is t.he valid-time instant at which the event occurs in t,he rea.l-world.

3.26 Spatiotemporal as Modifier

Definition

The modifier spatiotemporul is used to indicat.e that the mod- ified concept concerns simultaneous support. of some aspect of time and some aspect of space, in one or more dimensions.

3.27 Spatial Quantum

Definition

A spatial quantum (or simply quantum, when the sense is clear) is the shortest distance (or area or volume) of space supported by a spatial DBMS-it is a nondecomposable re- gion of space. It can be associated with one or more dimen- sions. A particular unidimensional quantum is an interval of fixed length along a single spatial dimension. A particu- lar three-dimensional quantum is a fixed-sized, lo&ted cubic volume of space.

SIGMOD RECORD, Vol. 23, No. 1, March 1994

Page 6: A Consensus Glossary of Temporal Database Concepts

3.28 Spatiotemporal Quantum 4.4 Fixed Span

Definition Definition

A span is fixed if it. possesses the special property that it,s durat,ion is independent of the context.

A spatiotemporul quantum. (or simply quantum, when the sense is clear) is a. non-decomposable region in two, three, or four-space, where one or more of the dimensions are spa- tia.1 and the rest, at least one, are temporal. Explanation

4 Concepts of General Temporal Database Interest

4.1 Absolute Time

Definition

As aa example of a fixed span, “one hour” always, indepen- dently of t.he context, has a. duration of GO minutes (dis- counting leap seconds). To see that not a.11 spans are fixed,

consider “one month,” an example of a, variable span in the Gregorian calendar. The duration of this span ma.y be any of 28, 29, 30, and 31 da.ys, depending on the context.

The modifier absolute indicates that, a specific valid time at,

a given timestamp granularity is associated with a fact. Such a time depends neither on the valid time of another fact nor on the current time, now.

4.5 Variable Span

Definition

A span is variable if its dura.tion is dependent on the context,.

Explanation Explanation

Examples are: “Mary’s salary was raised on March 30, 1993” and “Jack was killed on 10/12/1990.”

Notice that absolute times are associated with chronolog- ‘ically definite statements only.

4.2 Relative Time

Any span is either a fixed span or a variable span. An obvious example of a variable span is “one month,” the duration of which may be any of 28, 29, 30, and 31 days, depending on the context, Disregarding the intricacies of leap seconds, the span “one hour” is fixed because it always, independently of the context, has a duration of GO minutes.

Definition

The modifier nzlative indicates that the valid time of a fact is rela.ted to either the valid time of another fact or the current time, nozu.

4.6 Bitemporal Interval

Definition

Explanation

The relationship between times can be qualitative (before, after, etc.) as well as quantitative (3 days before, 397 years after, etc.).

A &temporal interval is a. region in two-space of valid time

and transaction time, with sides parallel to the a.xes. When associated in the database with some fact, it identifies when that, fact, recording that something was t.rue in rea.lity dur- ing the specified interval of valid time, was logically in the database during the specified interval of transaction time.

Examples are: “Mary’s sala.ry was raised yesterday,” “it happened sometime last week, ” “it. happened within 3 days of Easter, ” “the Jurassic is sometime after the Triassic,” and “the French revolution occurred 397 years after the discovery of America.”

A bitemporal interval can be represented with a non- empty set of bitemporal chronons.

4.7 Spatiotemporal Interval

Notice that both chronologically indefinite and definite st,atements can involve relative times.

4.3 Temporal Expression

Definition A tempoml expression is a synta.ctic construct used in a query that evaluates to a temporal value, i.e., an instant,

a time interval, a span, or a temporal element.

A spatiotem.poml interval is a. region in n-space, where a.t least one of the axes is a spatial dimension and the remaining axes are temporal dimensions, with the region having sides that are parallel to a.11 axes. When associa.ted in the dat.abase with some fact, it identifies when and where tha.t fact was true.

A spatiotemporal interval can be represented by a non- empty set of spatiotemporal quanta.

Explanation

All approaches to temporal databases allow relational expres- sions. Some only allow relational expressions, and thus they are unisorted. Some allow relational expressions, temporal expressions, a.nd also possibly boolean expressions. Such ex- pressions may be defined through mutual recursion.

4.8 Spatiotemporal Element

Definition

A spatiotemporal element consists of a finite union of spatiotemporal intervals. Spatiotemporal elements are closed under the set theoretic operations of union, intersection a.nd complementation.

SIGMOD RECORD, Vol. 23, No. 1, March 1994 57

Page 7: A Consensus Glossary of Temporal Database Concepts

4.9 Snapshot Equivalent/ Weakly Equivalent

Definition

Thus the set of tuples in snapshots of z and the set of tuples

in snapshots of y are required to be identical. This is required only when each tuple has some non-empty snapshot.

Informally, two tuples are snapshot equivalent or weakly quruafent if the snapshots of the tuples at all times axe iden- tical.

Explanation

Let temporal relation schema R have n time dimen- sions, Di, i = 1, . . . , n, and let ri, i = 1, . . . , n be cor- responding timeslice operators, e.g., the valid timeslice and

transaction timeslice operators. Then, formally, tuples t and y are snapshot equivalent if

The concept of value equivalent t,uples has been shaped t,o be convenient when addressing concepts such as coalescing,

normal forms, etc. The concept is distinct from related no-

tions of the normal form SGlNF and nzergeable tuples. Phrases such as “having the same visible a.ttribute va.lues”

and “ha.ving duplica.te va.lues” have been used previously.

Vtl E DI . .Vt, E D,,( 4.13 Coalesce

r;“. (. . (Tt’, (x)) . . .) = rL(. . . (r/*(y)) . .)) .

Similarly, two relations are snapshot equivalent or weakly equivalent if at every instant their snapshots are equal. Snap- shot equivalence, or weak equivalence, is a binary relation that can be applied to tuples and to relations.

Definition

The coalesce operation takes as argument a set of value-equivalent tuples and returns a single tuple which is snapshot equivalent with the argument set of tuples.

Explanation

4.10 Snapshot-Equivalence Preserving Op- erator/Weakly Invariant Operator

Definition

Coalesce is an example of a snapshot-equivalence preserving

operation which reduces the cardinality of a set of argument tup1es.

A unary operator F is snapshot-equivalence preserving or ,weakly invariant if relation v is snapshot equivalent, or weakly equivalent, to P’ implies F(r) is snapshot equivalent, or weakly equiva.lent, to F(r’). This definition may be ex- t,ended to operators that accept two or more argument rela- t.ion inst,ances.

The concept of coalescing has found widespread use in connection with data models where tuples are associat,ed with interval-valued timestamps. In such models, two or more value-equivalent tuples with consecutive or overlapping times- tamps typically are required to be or ma.y be repla.ced by a single, value-equivalent tuple with an interval-va.lued times- tamp which is the union of the timesta.mps of the origina. t~ples.

4.11 Snapshot Equivalence Class/ Weak Relation

Definition

4.14 History

Definition A snapshot equzvalence class or weak relation is a set of relation instances that are all snapshot equivalent, or weakly equivalent, to each other.

A history is the temporal representation of an “object” of the real world or of a database. Depending on the object. we can have attribute histories, entity histories, relationship histories, schema histories, transaction histories, etc.

4.12 Value Equivalence Definition Explanation

Informally, two tuples on the same (temporal) relation schema are value equivalent if they have identical non- timestamp attribute values.

“History” is a general concept,, intended in the sense of “train of events connected with a person or thing”.

To formally define the concept, let temporal relation schema R have n time dimensions, D;, i = 1, . . , n, and let ?, i = 1,. . , n be corresponding timeslice operators, e.g., the valid timeslice a.nd transaction timeslice operators. Then t,uples 2 and y are value equivalent if

31 E DI . . .3t, E D,+“,(. . . (rt’, (z)) . . .) # 0) A 31 E DI . . .3s, E Dn(r;“(.. .(+(y)), . .) # 0)

In the realm of temporal databases, the concept of his- tory is intended to include multiple time dimensions as well as the data models. Thus we can have valid-time

histories, transaction-time histories, bitemporal histories, user-defined time histories, etc. However, multi-dimensional histories can be defined from mono-dimensional ones (e.g. a. bitemporal history can be seen as the t,ransaction-time his- tory of a valid-time history).

U Vt,EDl...vIt,ED” rt(..Yg;(z))...) =

U kn (. . (Ti, (y)) . . .) . VSlED,.. Vs.,ED, Sn

Formally or informally, the term “history” has been often used in many temporal database papers, also t#o explain other terms. For instance, salary history, object history; transac- tion history are all expressions used in t,his respect.

58 SIGMOD RECORD, Vol. 23, No. 1, March 1994

Page 8: A Consensus Glossary of Temporal Database Concepts

4.15 History-oriented

Definition A temporal DBMS is said t&o he history-oraented if:

1. It supports history unique identifica.tion (e.g. via time- invariant keys, surrogat,es or OIDs):

2. The integrity of histories as fir&-class objects is inherent in the model, in the sense that history-related integrity constraints might be expressed and enforced, and the data manipulation language provides a mechanism (e.g., history va.ria.bles and qua.ntification) for direct reference t,o olqt-ct-l~isto7~tes;

4.16 History Equivalent

Definition

Two objects are history eguiualent if their histories are shapshot equivalent. History equivalence is a binary relation that can be applied to objects of any kind (of the real world or of a database).

Explanation

Unlike value equivalence which concerns only explicit- attribute values and completely disregards time, history equivalence implies a common evolution along with time (im- plicitly assumes equality of timestamps as well as explicit- a,ttributes values).

4.17 Temporal Interpolation

Definition

The derivation of the value of a history a.t. a chronon for which a value is not explicitly stored ii1 t.he database, is referred to as ternpoml interpolatiota. This derivation is typically expressed as a function of preceding and/or succeeding (in time) values of the history.

Explanation

This concept, is important for large hist.ories (in particular, for continuous scientific data) where da.ta is collected only for a subset of the chronons in the hist,ory, or where all chronons contain data, but interpolation is used as a form of com- pression. The alternative ilame of temporal derivation will apply if the definition is extended to encompass cases where the derivation is not based on interpolation, but on other computations or rules.

4.18 Gregorian Calendar

Definition

The Gregorian calendar is composed of 12 months, named in order, January, February, March, April, May, June, July, Au- gust, September, October, November, and December. The 12 months form a yea.r. A year is either 365 or 366 days in length, where the extra da.y is used on “leap years.” Leap years are defined as yea.rs evenly divisible by 4, with centesi- ma1 years being excluded, unless that yea.r is divisible by 400. Each month has a fixed number of days, except for February,

the length of which varies by a. day depending on whether or not. the particular yea.r is a. leap year.

4.19 Calendric System

Definition

A calendric system is a collection of calendars. Each ca.l-

enda.r in a ca.lendric system is defined over contiguous and non-overlapping intervals of an underlying time-line. Cal- endric systems define the human interpretation of time for a particular loca.le as different calendars may be employed during different intervals.

4.20 Physical Clock

Definition

A physical clock is a physical process coupled with a method of measuring tha.t process. Although the underlying physical process is continuous, the physical clock measurements are discrete, hence a physical clock is discrete.

Explanation

A physical clock by itself does not measure time; it only measures the process. For instance, the rota.tion of the Earth measured in so1a.r days is a. physical clock. Most physical clocks a.re based on cyclic physica. processes (such as the rotation of the Ea.rth).

4.21 Time-line Clock

Definition

In the discrete model of time, a. time-line clock is a set. of physical clocks coupled with some specification of when each physical clock is authoritative. Each chronon in a time-line clock is a chronon (or a regu1a.r division of a. chronon) in an identified, underlying physical clock. The time-line clock

switches from one physical clock to t,he next at a synchroniza.- tion point. A synchronization point correlates two, distinct physical clock measurements. The time-line clock must be anchored at, some chronon to a unique physical state of the universe.

Explanation

A time-line clock glues t,ogether a sequence of physical clocks

to provide a consistent, clear semantics for a discrete time- line. A time-line clock provides a clear, consistent semantics for a discret,e time-line by gluing together a. sequence of phys- ical clocks. Since the range of most physical clocks is limited, a time-line clock is usually composed of many physical clocks. For instance, a tree-ring clock can only be used to date past, events, and the a.tomic clock can only be used to date event.s since the 1950s.

4.22 Time-line Clock Granularity

Definition

The time-line clock glnnzdarity is the uniform duration of each chronon in t,he time-line clock.

SIGMOD RECORD, Vol. 23, No. 1, March 1994 59

Page 9: A Consensus Glossary of Temporal Database Concepts

4.23 Begimhg 4.28 Temporal Selection

Definition Definition

The time-line supported by any temporal DBMS is. by ne- cessity, finite and therefore has a smallest aud largest, rep- resentable chronon. The distinguished va.lue begznning is a specia.1 va.lid-time instant preceding the sma.llest chronon on the valid-time line. Beginning has no transaction-time se- mantics.

Facts are ext.ract,ed from a. tempora.1 data.base by means of tenlpo& selection when the selection predicate involves the times associa.ted with t.he fa.ct,s.

The generic concept of t,emporal selection may be special- ized to include valid-time selection, transaction-time selec- tion, and bitemporal selectzon. For exa.mple, in valid-time selection, fa& are selected based on the va.lues of their as- sociat.ed valid times.

4.24 Forever

Definition

The distinguished value forever is a. specia.1 valid-t,ime instant

following the largest. chronon on t-he valid-time line. Forever has no transaction-time semantics.

4.29 Temporal Projection

Definition

In a query or upda.te stat,ement, temporul prqjection pairs the computed facts with t*heir associa.ted times, usually derived from the associated times of t,he underlying facts.

4.25 Initiation

Definition

The distinguished value initiation, associated with a. rela- tion, denotes the time instant when a relation was created. “Initiation” is a value in the domain of transaction times and has no valid-time semantics.

The generic notion of temporal projection may be applied to various specific time dimensions. For example, valid-time projection associat,es with derived facts the times at. which they are valid, usually based on t.he valid t.imes of the under- lying facts.

Explanation

While almost all t,empora.l query languages support temporal projection, the flexibility of t.hat support varies greatly.

4.26 Timestamp Interpretation

Definition

In the discrete model of time, the tirnestaln.p interpretation gives the meaning of each timestamp bit pa.ttern in terms of some time-line clock chronon (or group of chronons), tha.t is, the time to which each bit pattern corresponds. The times- tamp interpretation is a many-to-one function from time-line clock chronons to timestamp bit pa.tterns.

In some languages, temporal projection is implicit and is based the intersection of the times of t,he underlying facts. Other languages have specia.1 constructs to specify t*einporal projection.

The name has alrea.dy been used ext.ensively in the liter- ature. It. derives from the retrieve cla.use in Quel as well as the SELECT clause in SQL. which both serve the purpose of the relational algebra, operator projection, in addition to allowing the specification of derived a.ttribute values.

4.27 Timestamp Granularity 4.30 Temporal Natural Join

Definition Definition

In the discrete model of time, the timestamp granularity is the size of each chronon in a timestamp interpretation. For example, if the timestamp granularity is one second, then the duration of each chronon in the timestamp interpretation is one second (and vice-versa).

Explanation

Each time dimension has a separate timestamp granular- ity. A time, stored in a database, must be stored in the timestamp granularity regardless of the granula.rity of that time (e.g., the valid-time date January lst, 1990 stored in a database with a valid-time timestamp granularity of a second must be stored as a particular second during that day, perhaps midnight January lst, 1990). If the context is clear, the modifier “timestamp” may be omitted, for ex- ample, “valid-time timestamp gra.nularity” is equivalent to “valid-time granularity.”

A temporal natural join is a. binary operator that generalizes the snapshot natura.1 join t,o incorporate one or more time dimensions. Tuples in a. tempora.1 na.tural join a.re merged if t.heir esplicit join attribute values ma.tch, and they a.re temporally coincident in the given time dimensions. As in the snapshot natural join, the relation schema resulting from a temporal natural join is the union of the explicit attribute values present in both operand schemas, along with one or more timestamps. The value of a result timestamp is the temporal intersection of the input time&amps, that is, the instants contained in both.

4.31 Temporal Dependency

Definition Let X and Y be sets of explicit attributes of a temporal rela- tion schema, R. A te@oral functional dependency, denoted

X % I’, exists on R if, for all instances r of R, all snapshots of 1‘ sa.tisfy the functional dependency .X -+ Z..

60 SIGMOD RECORD, Vol. 23, No. 1, March 1994

Page 10: A Consensus Glossary of Temporal Database Concepts

Note that, more specific notions of temporal functional dependency exist, for valid-time, transaction-time, bitemporal,

and spatiotemporal relations. Also observe that using the template for temporal functional dependencies, temporal multivalued dependencies may be defined in a straight- forward mamler.

Finally, the notions of temporal keys (super, candidate, primary) follow from the notion of temporal functional de- pendency.

Explanation Temporal functional dependencies are generalizations of con- ventional functiona. dependencies. In the definition of a tem- poral functional dependency, a temporal relation is perceived as a collection of snapshot relations. Each such snapshot of any extension must satisfy the corresponding functional de- pendency.

4.32 Temporal Normal Form Definition A pair (R, F) of a temporal relation schema R and a set of associated temporal functional dependencies F is in tempo?xd Boyce-&Id nomaal form (TBCNF) if

VXqY EF+(Y&~-VX-TR)

where F+ denotes the closure of F and X and Y are setas of attributes of R.

Similarly, (R, F) . IS in temporal third normal form (T3NF)

if for all non-trivial temporal functional dependencies X 4 2’ in F+, X is a temporal superkey for R or each attribute of 2’ is part of a minimal temporal key of R.

The definition of temporul fourth normal form (T4NF) is similar to that of TBCNF, but. also uses t,emporal multival- ued dependencies.

4.33 Time-invariant Attribute Definition A tim.e-tnuariant attribute is an attribute whose value is con- strained to not change over time. In functional terms, it is a constant-valued function over time.

4.34 Time-varying Attribute Definition A time-oarying attribute is an attribute whose value is not constrained to be constant over time. In other words, it may or may not change over time.

4.35 Temporally Homogeneous Definition A temporal tuple is temporally homogeneous if the lifespan

of a.11 attribute values within it are identical. A temporal relation is said to be temporally homogeneous if its tuples are temporally homogeneous. A temporal database is said to be temporally homogeneous if all its relations are tempo- rally homogeneous. In addition to being specific to a type of

object (tuple, reMon. dakbase), homogeneity is also spe- cific to some time dimension, as in *‘temporally homogeneous in the valid-time dimension” or “temporally homogeneous in the transaction-time dimension.”

Explanation The motivat,ion for homogeneity a.rises from the fa.ct. t,ha.t no timeslices of a homogeneous relation produce null va.lues. Therefore a homogeneous relational model is the temporal counterpa.rt of the snapshot relational model wit.hout nulls. Cert,ain da.ta models assume temporal homogeneity. Models that employ tuple timest.amping rather than attribut,e-va.lue timest.amping are necessarily temporally homogeneous-onl\ temporally homogeneous relations are possible.

4.36 Temporal Specialization Definition Tempo& specialization denotes the restriction of the int.er- relationship between otherwise independent (implicit or es- plicit) timestamps in relations. An example is a relaBion where facts are always inserted after they were valid in re- ality. In such a relation, the transaction time would always be after the valid time. Temporal specialization may be ap- plied to relation schemas, relation insta.nces, a.nd individual tuples.

Explanation Data models exist where relations are required to be special- ized, and tempora.1 specializations often constit,ute important. semantics about temporal relations t,hat mar be utilized for. e.g., query optmlization and processing purposes.

4.37 Specialized Bitemporal Relationship Definition A temporal relation schema eshibit,s a specialized bitern- porn1 relationship if all instances obey some given specia.l- ized relationship between the (implicit or explicit) valid and transaction times of the stored facts. Individual instances and tuples may also exhibit specialized bitempora.1 relationships. As the transaction times of t.uples depend on when relations are updated, updates may a.lso be characterized by special- ized bitemporal relationships.

4.38 Retroactive Temporal Relation Definition A temporal relation schema including at least valid time is retroactive if each stored fact of any instance is always va.lid in the past. The concept may be applied to t.emporal rela.tion instances, individual tuples, and to updates.

4.39 Predictive Temporal Relation Definition A t,emporal relation schema including at least valid time is

predictive if each fact of any relation instance is valid in the future when it is being stored in the relation. The concept.

SIGMOD RECORD, Vol. 23, No. 1, March 1994

~_~~ ~_~-~ ~~~.~~~~

61

Page 11: A Consensus Glossary of Temporal Database Concepts

may be applied t,o t,emporal relation insta.nces, individua.1 tuples, aud to updates.

4.40 Degenerate Bitemporal Relation

Definition

A bitempora.1 relation schema. is degenerate if updates t.o its relation instances are made immediately when something changes in reality, with the result that the values of the valid and transaction times are identical. The concept may be ap- plied t*o bitemporal relation instances, individual tuples, and to updates.

4.41 Time Indeterminacy

Definition Information that is time indeterminate can be characterized as “don’t know when” information, or more precisely, “don’t

know ezuctly when” information. The most common kind of time indeterminacy is valid-time indeterminacy or user- defined time indeterminacy. Transaction-time indeterminacy is rare because transaction times a.re always known exactly.

Explanation Often a. user knows only approximately when an event hap- pened, when a.n interval began a.nd ended, or even t,he du- ra,tion of a span. For instance, she may know that an event. happened “between 2 PM and 4 PM ,” “on Frida.y,” “some- time last week,” or “around the middle of the month.” She ma,y know that a airplane left “on Friday” and arrived “on Sturday.” Or perhaps, she has information tha,t suggests tha.t a. graduate student takes “four to fifteen” yea.rs to write a dissertation. These are examples of time indeterminacy.

5 Concepts of Specialized Interest

5.1 Valid-time Partitioning

Definition Valid-time partitioning is the partit.ioning (in the mathemak- ical sense) of the valid time-line into valid-time elements. For each valid-time element, we associate an interval of the valid time-line on which a cumulative aggregate may then be applied.

Explanation To compute the aggregate. first partition the time-line into valid-time elements, then a.ssocia.te an interva.1 with each valid-time element, assemble the tuples valid over each in- terval, and finally compute the a.ggregate over each of these sets. The value at any instant is the value computed over the partitioning element that contains that instant.

The reason for the assoctated interval with ea,ch tamporal element is tha.t we wish to perform a partitzon of the valid time-line, and not exclude certain queries. If we exclude computing the aggregate on overlapping intervals, we exclude queries such as “Find the average salary paid for one year before ea.& hire.” Such queries would be excluded because the one-yea.r intervals before each hire might, over1a.p.

Partitioning the time-line is a useful ca.pabi1it.y for aggre- gates in tempora.1 databases.

One example of &id-time part,itioning is t.o divide t,lle t,ime-line into years, based on the Gregorian ca.lendar. The11 for ea.ch year, compute the count. of the t.uples which overlap that. year.

There is no existing term for this concept. There is no partitioning attribute in valid-time partit,ioning, since t.he pa.rtitioning does not depend on a.ttribute va.lues, but iust,ead

on valid- times. Valid-time partitioning may occur before or after value

partitioning.

5.2 Dynamic Valid-time Partitioning

Definition In dynamic wlid-time partitioning the valid-t,ime elements used in the partitioning are determined solely frdm t,he timestamps of the rela,tion.

Explanation One example of dynamic valid-time partitioning would be to compute the average value of an attribute in a. relation (say the salary attribute), for the previous year before the stop-time of each tuple. A technique which could he usecl to compute this query would be for each t,uple, find all t.uples valid in the previous year before the stop-t,ime of the tupk in question, and combine these tuples into a. set.. Finally. compute the average of the salary at.tribute va.lues in each set.

It may seem inappropriate to use valid-t,ime elements in-

stea.d of intervals, however there is no reason to exclude valid- time elements. Perhaps the elements are the int.ervals during which the relation is constant.

5.3 Static Valid-time Partitioning

Definition In static tdicf-time purtitioniny t,he valid-time elements used

are determined solely from fixed points on a, calendar, such as the start of each year.

Explanation Computing the ma.ximum salary of employees during each month is an example which requires using static valid-t.imr pa.rkit,ioning. To compute t*his information, first, divide the time-line into valid-time elements where each element rep- resents a separate month on, say, the Gregorian calendar. Then, find the tuples valid over each valid-time element, a.nd compute the maximum aggregate over the members of each set.

5.4 Valid-time Cumulative Aggregation

Definition In cumulative aggregation, for each valid-time element of the valid-time partitioning (produced by either dynamic or

static valid-time partitioning), the a,ggregate is applied to a.11 t,uples associated with that va.lid-time element.

SIGMOD RECORD, Vol. 23, No. 1, March 1994

Page 12: A Consensus Glossary of Temporal Database Concepts

The value of the a.ggregate at any instant is t,he value computed over the part,itioning element tha.t conta.ins that instant.

Explanation One example of cumulative aggregation would be find the total number of employees who had worked at some point for a company. To compute this value at t,he end of each calendar yea.r, then, for each year, define a. va.lid-time element

which is valid from the beginning of t.ime up to the end of that year. For each va,lid-time element, find a.11 tuples which overlap tha.t element, and fina.lly, count the nuinber of tuples in each set.

Instantaneous aggregation may be considered to be a de-

generate case of cumulative aggregation where the partition is per chronon and the associated interval is that chronon.

5.5 Instantaneous Aggregation Definition In instantaneous aggregation, for each chronon on t.he valid

time-line, the aggregate is applied to all tuples valid at that instant.

5.6 Temporal Modality Definition Temporal modality concerns the wa.y according to which a fact originally associated with a chronon or interval a.t a. given granularity distributes itself over the corresponding chronons

at finer granularities or within the interval at, the same level of gra.nularity.

Explanation We distinguish two basic tempora.1 modalities, namely some- times and always.

The sometimes temporal modality sta.tes t.ha.t the relevant fact is true in at least one of the corresponding chronons at

the finer granularity, or in at, least one of the chronons of the interval in case an interval is given. For instance: “The light was on yesterday a,fternoon,” meaning that it, was on at least for one minute in the a.fternoon (assuming minutes as chronons).

The always temporal modality states t,hat the relevant fact is true in each corresponding chronon at the finer granula.rity. This is the case, for instance, of the sentence: “The shop remained open on a Sunday in April 1990 all the da.y long” with respect to the chronon granularity of hour.

This issue is relate to attributes varying within t,heir va- lidity intervals.

5.7 Macro-event Definition

A macro-event is a wholistic fact with duration, i.e., some- thing occurring over an interval taken as a whole. A macro- event is said to occur over an interval I if it occurs over the set of contiguous chronons representing I (considered as a whole).

Contributors

An alpha.betica.1 list.ing of names, afGlia.tions. and e-ma,il ad- dresses of t,he contributors follows.

J. Clifford, Information Systems Dept.., New York [Jni-

versity, jclifforais-4.stern.nyu.edu; R.. Elnxxsri, Corn- puter Science Engineering Dept., University of Texas a.t, Ar- lington elmasriQcse . uta. edu; S. Ii. Ga.dia, Computer Sci- ence Dept., Iowa State University, gadiaQcs. iastate. edu; P. Hayes, Beckman Institute, PhayesQcs.uiuc.edu;S.Jajo- dia., Dept. of Information & Software. George Mason Univer- sity, jajodiaQsitevax. gmu. edu; C. Dyreson, Comput,er Sci- ence Dept., University of Arizona., curtisQcs. arizona. edu; F. Grandi, University of Bologna, Italy, f abioQdeis64. - cineca.it; W. IGfer, IBn4 Almaden R.esearch Cen- ter, kaef erQalmaden. ibm. corn N. Iiline, Computer Sci- ence Dept., University of Arizona., klineQcs. arizona. edu; N. Lorentzos, Informatics La.borat,ory, Agricultural Uni- versity of Athens, eliopQisosun. ariadne-t . gr; Y. Mit,- sopoulos, Informatics Laborat,ory, Agricultura.1 University of Athens; A. Montana.ri, Dip. di Mat,ematica e Informatica.. Universitb di Udine, Italy, montanariQuduniv. cineca. it; D. Nonen, Computer Science Dept., Concordia Uni- versity, Canada, danielQcs. concordia. ca; E. Peressi. Dip. di Ma.tematica e Informatica, Universiti di Udine, Ita.ly, peressiQudmi5400. cineca. it; B. Pernici, Dip. di Ma.tematica e Informatica.. Universitb di Udine, Italy, perniciQipmel2 .polimi. it; J. F. Roddick, School of Com- puter and Information Science, University of South Aus- tralia. roddickQunisa.edu. au; N. L. Sarda, Computer Sci- ence and Eng. Dept., Indian Instit,ute of Technology, Bom- bay, India, nlsQcse. iitb. ernet . in; M. R. Scalas, Univer- sity of Bologna, Italy, ritaQdeis64.cineca.it; A. Segev, School of Business .4dm. and Computer Science Re- search Dept., University of California., segevQcsr . lb1 . gov; R. T. Snodgrass, Computer Science Dept.., University of

Arizona, rtsQcs. arizona. edu; M. D. Soo, Computer Sci- ence Dept., University of Arizona., SOOQCS . arizona. edu; A. Tansel, Bernard M. Baruch College, Cit.?; Univer- sity of New York uztbbQcunyvm. cuny.edu; I’. Tiberio, University of Bologna, Italy, tiberioQdeis64. cineca. it; G. Wiederhold, ARPA/SISTO a,nd %anford Ilniversity, gioQDARPA.MIL.

SIGMOD RECORD, Vol. 23, No. 1, March 1994 63

Page 13: A Consensus Glossary of Temporal Database Concepts

Index

absolute time, 57

beginning, GO bitemporal interval, 57 bitempora.1 relation, 54

calendar, 5G calendric system, 59 chronon, 55 coalesce, 58

degenerate bitemporal relation, 62 dynamic valid-time partitioning, 62

element, temporal, 55 event, $6 event occurrence time, 56

fixed span, 57 forever, 60

granularity, time-line clock, 59 granularity, timestamp, 60 Gregorian calendar, 59

history, 58 history equivalent, 59 history-oriented, 59 homogeneous, temporally, 6 I

initiation, 60 instant, 55 instantaneous aggregation, 63 interval, time, 55

lifespan, 55

macro-event, 63

physical clock, 59 predictive temporal relation, 61

quantum, spatiotemporal, 57 quantum, spatial, 56

relative time, 57 retroactive temporal relation, 61

schema evolution, 56 schema versioning, 56 snapshot equivalence class, 58 snapshot equivalent, 58 snapshot relation, 54 snapshot, valid- and transaction-time, and bitemporal as

modifiers, 54 snapshot-equivalence preserving operator, 58 span, 55 spatial quantum, 56 spat,iotemporal as modifier, 56 spatiotemporal element, 57

spatiotemporal interval, 57 spatiotemporal quantum, 57 specialized bitemporal relationship, 6 1 sta.tic valid-time partitioning, 62

temporal as modifier, 55 temporal data type, 54 temporal database, 55 t.emporal dependency, 60 temporal element, 55 temporal expression, 57 temporal interpolation, 59 temporal modality, 63 temporal natural join, GO temporal normal form, 61 temporal projection, 60 t,emporal selection, 60 temporal specialization, 61 t,emporally homogeneous, 61 time indeterminacy, 62 time interval, 55 time-invariant attribute, 61 time-line clock, 59 time-line clock granulaiity, 59 time-varying attribute, 61 timestamp, 55 time&amp granularity, 60 t,imestamp interpretation, GO transaction time, 53 transaction-time relation, 54 transaction-timealice operator, 56

user-defined time, 54

valid time, 53 valid-time cumulative aggregation, 62 valid-time pa,rtitioning, 62 valid-time relation, 54 valid-timeslice operator, 56 value equivalence, 58 variable span, 57

weak relation, 58 weakly invariant operator, 58 weakly equivalent, 58

64 SIGMOD RECORD, Vol. 23, No. 1, March 1994