1

我观察到,当使用 StaticRDFSReasoner 或仅使用 RDFSReasoner 时,如果我有这样的模式(TURTLE Notation):

 ex:A a rdfs:Class;
       
      rdfs:subClassOf ex:B, ex:C . 

像这样的数据,具有 A 类的实例“a”:

ex:a a ex:A .

然后我只得到一个推断的 Triple :

ex:a a ex:B . 

但是由于 A 应该是 B 类和 C 类的交集的近似值,所以我也应该得到以下 Triple inferred :

ex:a a ex:C . 

因为“a”应该是 B 类和 C 类的成员。

我在这里查看了 Reasoner 的实现,但仍然无法弄清楚为什么它不起作用:

https://github.com/dotnetrdf/dotnetrdf/blob/master/Libraries/dotNetRDF/Query/Inference/RDFSReasoner.cs

也许这里有人可以帮助我为什么这不起作用。如果我切换 B 和 C 的顺序,则推断出“a”是 C 类的成员。

4

0 回答 0