0

假设我有一个这样的图表:

:a :isConnectedTo :b
:b :isConnectedTo :c
:c :isConnectedTo :d

如果我在 Stardog v4.1.3 中运行以下查询,它会返回 true

ask {:a :isConnectedTo* :d}

这很好,但我想知道这两种资源之间的路径。请注意,在我的真实案例中,可能存在多条路径,但我只需要其中一条,不一定是最短的一条。

有没有办法用 sparql 实现这一点?

4

1 回答 1

0

我认为这可能特别适合您的情况。让我知道你是否成功。

SELECT ?x ?y ?z WHERE {
    :a :isConnectedTo* ?x .
    ?x ?y ?z .
    FILTER(?y = :isConnectedTo)
    ?z :isConnectedTo* :d .
}
于 2018-09-11T08:00:28.897 回答