are present as object of rdf:type property of the skolemized resources
This leads to ambiguities when a resources carries multiple rdf:type statements.
The solution would be to narrow down the class selection by only considering descendants of the class/restriction hierarchy, starting from the matching class of the current request.
Some examples follow. AVF stands for AllValuesFrom OWL restriction.
Item is not skolemized since it has no type that is descendant of :AgentContainer.
Topic is skolemized using :Agent used since it is descendant class of :AgentContainer via :AgentItem.
Currently skolemization considers all classes with
ldt:skolemTemplate
that:rdfs:isDefinedBy
the application ontologyrdf:type
property of the skolemized resourcesThis leads to ambiguities when a resources carries multiple
rdf:type
statements.The solution would be to narrow down the class selection by only considering descendants of the class/restriction hierarchy, starting from the matching class of the current request.
Some examples follow.
AVF
stands forAllValuesFrom
OWL restriction.Ontology
Matching
Match:
No match:
Skolemization
Request with one
rdf:type
:Result:
Request with 2 types:
Result:
:PersonItem
used since it is a "child" class ofpersons/ : :PersonContainer
.Request with non-matching item and matching topic type:
Result:
Item is not skolemized since it has no type that is descendant of
:AgentContainer
. Topic is skolemized using:Agent
used since it is descendant class of:AgentContainer
via:AgentItem
.Request with no types:
Result:
No (matching) type => not skolemized.