Я использую Jena Fuseki 3.13.1 (с OWLFBRuleReasoner
), и я установил (загрузил) следующие тройки:
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix f: <http://vleo.net/family#> .
f:Bob f:hasWife f:Alice .
f:Bob f:hasWife f:Alice2 .
f:Alice2 f:hasHusband f:Bob2 .
f:hasWife a owl:FunctionalProperty .
f:hasWife a owl:InverseFunctionalProperty .
f:hasHusband owl:inverseOf f:hasWife .
Теперь, если я запрашиваю и ASK { f:Alice owl:sameAs f:Alice2 }
, я получить истинное значение.
Однако, если я ASK { f:Bob owl:sameAs f:Bob2 }
, я получу ложное! Загружая те же тройки на другого мыслителя (owl-rl), я получаю тройку f:Bob owl:sameAs f:Bob2
, выведенную.
Что здесь происходит?