Previous Next

Topic and Value necessary statements

We introduced the necessary qualifier earlier to assert necessary, or essential, facts about categories. For example, in the assertion:

(Person which isOwnerOf RoadVehicle)
  necessarily hasAge old.

we are saying that anyone who drives a road vehicle must be old. If we look at such a category in GCE, the criteria hasAge old will appear in the necessary section.

What is not obvious, is that the inverse attribute will also have been qualified in this way. If we browse the category old, the criteria isAgeOf (Person which isOwnerOf RoadVehicle) will be present in the necessary criteria section. We may not always wish this to happen - some extra classification information has been added to the right hand category of the statement. GRAIL provides two special operations topicNecessary and valueNecessary which allow us to specify one-way necessary qualification. Thus we can assert:

(Person which isOwnerOf RoadVehicle)
  topicNecessarily hasAge old.

This would place the necessary qualifier on the left hand category but not the right hand. A similar effect could be achieved by asserting:

old valueNecessarily isAgeOf
  (Person which isOwnerOf RoadVehicle).

As with the necessary qualifier, the relation must be sanctioned to the sensible level in order for the statement to be valid.

The keywords topicNecessary and valueNecessary come from the names for the different parts of a GRAIL statement:

Topic qualifierKeyword Attribute Value

Previous Next
Making the impossible very difficult, ©, All rights reserved