Databases in general store current data. However, the capability to maintain temporal data is a crucial requirement for many organizations and provides the base for organizational intelligence. A temporal database has a time dimension and maintains time-varying data (i.e., past, present, and future data). In this article, we focus on the relational data model and address the subtle issues in modeling temporal data, such as comparing database states at two different time points, capturing the periods for concurrent events, and accessing to times beyond these periods, handling multivalued attributes, coalescing, and restructuring temporal data (Gadia 1988, Tansel & Tin, 1997). Many extensions to the relational data model have been proposed for handling temporal data.