1
我已经完成了一个家族树。我还定义了传递属性:childOf。现在我想让SPARQL Query给我所有家庭成员之一的所有后代。我该怎么做?由于猫头鹰:查询中的TransitiveProperty
我已经完成了一个家族树。我还定义了传递属性:childOf。现在我想让SPARQL Query给我所有家庭成员之一的所有后代。我该怎么做?由于猫头鹰:查询中的TransitiveProperty
如果您的三重存储支持OWL推理和已经定义了你childOf
属性为传递(应该不是它的方式被称为descendantOf
!),那么它应该所有相关节点之间直接推断childOf
性能。所以,它应该是足够的查询像这样(略去了前缀):
SELECT DISTINCT * {
?x :childOf ?y
}
但是,如果你的三联店没有做OWL的推理,就可以实现通过使用SPARQL 1.1属性的路径相同的结果要查询的间接关系:在childOf
后
SELECT DISTINCT * {
?x :childOf+ ?y
}
注意“+”,这意味着该谓词可匹配1次或更多次。有关SPARQL 1.1属性路径的更多详细信息在http://www.w3.org/TR/sparql11-property-paths/。