Databases Reference
In-Depth Information
Time Period Relationships
Along a Common Timeline
Intersects
Excludes
Before
|-----| |-----|
Meets
|-----|-----|
Fills
Overlaps
|----------|
|----------|
Equals
|-----|
|-----|
Occupies
Aligns
During
|-----|
|------------|
Starts
Finishes
|-----|
|------------|
|-----|
|-----------|
Figure 14.1 The Asserted Versioning Allen Relationship Taxonomy.
Many of the Allen relationships are used by the AVF to enforce
TEI and TRI. For example, as we pointed out in Chapter 3, the
[ intersects ] relationship is important because it defines TEI. If
two asserted versions of the same object share even a single
effective time clock tick, within shared assertion time, then they
[intersect], and violate TEI. Otherwise, they don't. The [fills] rela-
tionship is important because it defines TRI. If a TRI relationship
fails, it is because there is no episode of the referenced parent
object which temporally includes, i.e. [fills 1 ], that of the child
version. The [before] relationship is important because it
distinguishes episodes from one another. Every episode of an
object is non-contiguous with every other episode of the same
object, and so one of them must be [before] the other.
As for queries issued by business users, we have found that
many ad hoc queries, and perhaps the majority of them, are
queries about episodes, not about versions. That is, they are
queries that want (i) the begin and end date of the episode and,
for business data, (ii) the last version of past episodes, the current
version of current episodes, or the latest version of future
episodes. Because of the importance of episodes to queries, the
SQL examples in this chapter will select episodes. The last, cur-
rent or latest version contains the business data. The episode
Search WWH ::




Custom Search