This paper proposes an extension of the relational data model for incorporating temporal semantics of the real world into a database. In this temporal relational model (TRM), the attributes are categorized as synchronous and asynchronous. This categorization leads to the notions of temporal dependency and time normal form. The imposition of time normal form avoids redundancy and retrieval and update anomalies. New relational algebra operations for this model are also discussed. A temporal query language called tsql, which is a superset of sql, has been proposed to retrieve information from time-varying relations. tsql has several new features, which provide extremely powerful query processing capabilities for time-varying relations. The model and the language have numerous applications, where data in their historical form are important.