SPARQL 前缀通配符



我正在尝试编写一个SPARQL查询,该查询将允许我找到可从给定节点访问的所有节点。目前,每个边都有前缀 http://www.foo.com/edge#,并且有 3 个可能的边(使用、扩展、实现)。虽然我可以从"?start (edge:uses |边缘:机具 |edge:extends)* ?reach " 我想将其减少到一个语句,即 edge: 之后的某种通配符,这样如果我添加更多 edge 类型,那么我就不需要扩展查询。这可能吗?

请参阅此SPARQL - 将结果资源限制为某些命名空间

如果您知道它总是在同一个命名空间中,则可以如下所示:

?start ?edge ?reached
FILTER(REGEX(STR(?var), "^http://www.foo.com/edge#"))

最新更新