【发布时间】:2013-01-17 21:57:45
【问题描述】:
我正在尝试了解 SPARQL 查询的计算限制,我想知道如何编写一个查询来确定两个对象之间是否存在有向路径。
我知道一种针对特定长度路径的方法:
SELECT ?a ?b ?c ?d
WHERE { ?a <http://graphtheory/hasNeighbor> ?b .
?b <http://graphtheory/hasNeighbor> ?c .
?c <http://graphtheory/hasNeighbor> ?d .
FILTER (?a != ?c && ?b != ?d
&& ?a = <http://graphtheory/node/1>
&& ?d = <http://graphtheory/node/2>)
}
LIMIT 10
有没有办法在单个查询中搜索任意长度的路径?这对 SPARQL 来说是不可能的吗?
【问题讨论】:
-
嗨!我正在寻找类似的解决方案,以确定两个节点之间的最短路径长度。你能找到任何解决方案吗?甚至可能使用广度优先或深度优先搜索算法?
标签: graph sparql graph-algorithm shortest-path