[英]OWL inferencing question
我正在使用Jena语义Web框架版本2.6.3。 我有创建带有猫头鹰推理模型的代码,然后添加了以下三元组:
_:bnode-3 rdf:type owl:Restriction .
_:bnode-3 owl:onProperty :offspringOf .
_:bnode-3 owl:someValuesFrom :Person .
_:bnode-3 rdfs:subClassOf :Person .
_:bnode-3
应该是一个限制类,例如,如果:bob
是:Person
并且断言了以下三个_:bnode-3
,则它将包含:joe
:
:joe :offspringOf :bob .
然后,由于限制类是Person的子类,所以:joe
也将是person。
而且,实际上,这可行。 让我感到困惑的是,在我仅断定这篇文章顶部的4个三元组之后,推断者创建了一个空白节点,即Person。 换句话说,模型中现在包含以下三个元素:
_:b0 rdf:type :Person
我不明白为什么会这么做。 任何帮助理解这一点将不胜感激。
谢谢。 肯特
我不确定为什么推理者会这样做,因为我不是OWL专家-您是否尝试过在jena用户列表中提出您的问题?
他们通常会很快给您答复,他们应该知道您为什么会得到观察到的行为。
注意
我将您的问题重新格式化,因为您的代码示例有些混乱-请不要将Triples写为[ex:subject ex:predicate ex:object]
因为它看起来像Turtle / N3 / SPARQL中的某种语法糖,会导致额外的创建的空白节点不仅限于您想要的节点
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.