Graph DB数据加载引擎是否为RDFS模型中具有OWL对称或反向对象属性的插入的三元组创建额外的三元组?
让我们假设下面给出的模型和个体
RDFS模型:
我有两个类:男性和女性,还有一个对象属性“hasMarried”,它的域是男性,范围是女性。“hasMarried”的特征被设置为“对称”。
三元组:
:Male1 rdf:type :Male
:Female1 rdf:type :Female
:男1:哈斯结婚:女1
这里的问题是,当在Ontotext中插入上述三元组时,是否会根据“对称”对象属性的模型定义生成如下所示的额外三元组,
:女1:哈斯结婚:男1
如果上述情况没有发生,SPARQL查询是否会通过推断引用的RDFS模型中的“对称”对象属性来回答以下查询?
Select ?s ?o
其中{ :Female1 :是否结婚?o }
预期答案:
:女1:男1
发布于 2016-05-20 01:21:29
是的,这就是你将要得到的。请注意,在创建存储库时,您将需要owl horst优化规则集( rdfs规则集是不够的)。
发布于 2017-10-03 20:11:41
对于第一个问题:是的,:Female1 :hasMarried :Male1会跟进。
第二个问题: SPARQL查询的WHERE子句不包含?s。对于启用了推理的SPARQL查询Select ?s ?o WHERE { ?s :hasMarried ?o },您应该得到两个答案(:女1,:男1)和(:男1,:女1)
以下两点备注:
RDFS不支持“对称属性”,您需要为example.
:Male1 rdf:type :Female . :Female1 rdf:type :Male:
一般来说,定义两个不同的(可能是不相交的)没有多大意义。属性作为对称属性的属性域和范围。
https://stackoverflow.com/questions/37218373
复制相似问题