Encontrando o caminho mais curto com a consulta SPARQL
Eu estou tentando entender as limitações computacionais da consulta SPARQL e gostaria de saber como escrever uma consulta que determinará se há um caminho direcionado entre dois objetos.
Eu sei uma maneira de fazer isso por um caminho de comprimento específico:
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
Existe uma maneira de procurar por qualquer caminho de comprimento em uma única consulta? Isso é impossível com o SPARQL?