The expedient of 'property restrictions'

14 Feb 2014

In building ontologies we often find ourselves faced with a fundamental problem ...

Let's imagine that our ontology has still a rather abstract level, in the sense that it already contains many classes and subclasses, but still no instances, no members of those classes (it happens frequently). The fact is that ontologies are made of classes and members of those classes, but also of relationships among these members. Here's the issue: since relations are only only possible among concrete individuals, e.g. between the members of the classes, and not among classes that are only abstract entities, if right now in my ontology I only have classes and no instances, how do I add property/relationships?
The problem is serious, for without relations an ontology would be reduced to the mere class/subclass relationship, so nothing more than is offered by a common relational database. To remedy this situation, the ontology engineer has a very powerful tool: the property restrictions. Nothing esoteric, in essence it is this: instead of saying that the members of a given class C maintain a certain relationship with the members of another class D, we say that our class C is a subclass of an anonymous superclass (we do not need a specific name here), whose members maintain a certain relationship with the members of the class D. In this way, we characterize our class C with a specific property/relation, but we don't explicitly state that C class itself owns that specific property or relation, which would be incongruous, as we know classes by themselves do not maintain relationships. We have just stated that C is a subclass of an anonymous superclass from which it inherits that distinctive property/relation. Sure, it's a gimmick, an artifice, but a very clever and useful one that we utilize all the time. After that it should be said that the ' restrictions ' can be of various kinds: existential, universal, cardinals, etc. . But let's talk about this another time...

To deepen this issue we suggest reading chapter 4 '(Incorporating Semantics) of Semantic Web Programming by John Habeler , Matthew Fisher , Ryan Blace, Andrew Perez- Lopez (Wiley Publishing).