Read operations in Concourse support temporality in two ways: temporal queries and temporal reads.
A temporal query evaluates its selection criteria based on the version of data at a previous timestamp. It is possible to perform a temporal query in conjunction with a present-state read.
A temporal read retrieves the version of the data at a previous timestamp. It is possible to perform a temporal read in conjunction with a present-state query.