Granularity is an integral feature of both anchored (e.g., 25 October 1995,
July 1996) and unanchored (e.g., 3 minutes, 6 hours 20 minutes, 5 days) te
mporal data. In supporting temporal data that is specified in different gra
nularities, numerous approaches have been proposed to deal with the issues
of converting temporal data from one granularity to another. The emphasis,
however, has only been on granularity conversions with respect to anchored
temporal data. In this paper we provide a novel approach to the treatment o
f granularity in temporal data. A granularity is modeled as a special kind
of unanchored temporal primitive that can be used as a unit of time. That i
s, a granularity is modeled as a unit unanchored temporal primitive. We sho
w how unanchored temporal data is represented, give procedures for converti
ng the data to a given granularity, provide canonical forms for the data, a
nd describe how operations between the data are performed. We also show how
anchored temporal data is represented at different granularities and give
the semantics of operations on anchored temporal data.