Database Reference
In-Depth Information
two arguments of the constraint must be equal. This ensures that a fact type traversal includes
all and only those roles in the fact type.
A fact type reading may be derived by inserting the names of its object types into the
placeholders in one of its predicate readings. The non-derived uniqueness constraint on
FactTypeReading is of FactType ensures that a fact type reading provides a value-based
way to identify a fact type. Let p1 = (r1, r2, r3) denote the predicate underlying the fact
type read as Person has Rank in Sport when the roles are traversed in the order (r1, r2, r3). In
this case, the predicate reading is “ … has … in … ”. The alternative fact type reading Person
in Sport has Rank uses the predicate reading “
… in … has … ” and traverses the roles in the
in Sport has Rank uses the predicate reading “
order (r1, r3, r2).
For modeling, one reading is enough for each fact type. For conceptual queries that
navigate via predicate readings, n readings are suffi cient (one staring at each role). This
metaschema goes well beyond what is suffi cient, allowing users complete freedom to express
fact types in as many ways as they wish. Although the metaschema for fact type readings
appears complex, the user experience is simple and fl exible, since users can specify any
convenient reading depending on how they want to navigate through n-aries. If a less-user
friendly approach is adopted, where only one reading per n-ary is allowed, the metaschema
can of course be drastically simplifi ed.
Figure 8: A basic metaschema for ORM constraints
Search WWH ::




Custom Search