我是本体新手,有一个关于 OWL 推理的基本问题。这个问题可能看起来很啰嗦,对此感到抱歉..
考虑具有以下公理 (owl:class C1) 和 (owl:class P) 的本体,具有对象属性 (rdfs:domain observes C1)(rdfs:range observes P),以及个体 (rdf:type p P )
然后我通过创建具有限制的类 C2 (rdfs:subClassOf C2 C1) 来限制类 C1(观察 C2 p)
现在,当我创建一个新个体 (rdf:type x owl:Thing)(观察 xp)时,推理器会推断出 (rdf:type x C1)。然而,个体 x 的定义似乎更接近于 C2,所以推理者不应该推断 x 属于 C2 类型吗?
请帮忙!
我正在尝试使用 Jena 框架。