Databases Reference
In-Depth Information
The mechanisms by which we check for and enforce tempo-
ral referential integrity constraints are proprietary to Asserted
Versioning, LLC. But one thing is obvious. At some point in the
design process, the data modeler is going to have to declare
TRI relationships; and from a record of those declarations, a
mechanism will have the metadata needed to enforce both sides
of the relationship.
Bi-Temporal Tables and Non-Bi-Temporal
Views
The only physical tables managed by Asserted Versioning are
bi-temporal tables. But on the basis of those bi-temporal tables,
Asserted Versioning also manages two uni-temporal views, and
one non-temporal view. Although we will frequently refer to
them as views, sometimes it will be convenient to refer to them
as tables instead. This is because we are accustomed to manag-
ing the data they contain by means of physical tables.
For example, in the preceding chapter, we reviewed several
types of version tables. Asserted Versioning supports all the
functionality of all those types of version tables, and important
additional functionality as well. But version tables are not a
distinct kind of physical table for which Asserted Versioning
must define both schemas and the code to manage them.
Instead, Asserted Versioning defines one bi-temporal schema,
and manages only that one kind of physical table. Those tables
support uni-temporal versions and uni-temporal assertions,
but it supports them as views. And by means of views, those
tables also support what appear to be conventional, non-
temporal tables.
The rows in uni-temporal version tables (views) have a single
time period associated with them. This is the period from when
the object, as it exists in the world, is as the row describes it to
be, extending to 12/31/9999, or to when the object changes so
that the description no longer applies to it, or to when the exis-
tence of the object is no longer of concern to us.
The rows in uni-temporal assertion tables (views) also have a
single time period associated with them. This is the period from
when they begin to be asserted as true statements, extending to
either 12/31/9999 or to when they cease being asserted as true
statements about what the objects they represent are currently
like. Rows in uni-temporal assertion tables can only describe
what the objects they represent are currently like because, by
definition, such rows have no effective time. Having no effective
 
Search WWH ::




Custom Search