All mainstream database systems lack support for
temporal metadata, and instead store only the most
recent data. Consequently, they can only manage
temporal data in an ad hoc manner -- oftentimes not
effectively. Yet there are countless application
domains that need temporal data. This book offers a
much-needed solution: It includes a bitemporal
relational data model, based on nested relations, as
well as its algebra and calculus languages for
expressing queries. The fundamental construct for
representing temporal data is a bitemporal atom; a
value, its validity period, and the time this data
was recorded in the database. The concept of
'context' defines different views of bitemporal data.
BtSQL, a simple bitemporal variation of the SQL, is
introduced. The book also provides a prototype
implementation, which demonstrates the feasibility of
the proposed approach in an object-relational
database system. Researchers and practitioners in
database development will find this book useful. It
can be used as a textbook in advanced database
courses -- particularly in application domains where
temporal metadata can greatly leverage the value of
the data as it is stored and utilized.