【发布时间】:2013-12-11 12:17:54
【问题描述】:
这是Get all nodes in a transitive relation的扩展
是否可以使用 SPARQL 获取两个传递节点之间的所有传递节点?我试图从这个站点和 answer-semanticweb 中挖掘出来,但如果路径的长度没有按照Can JENA ARQ show property path details 中的建议定义,目前似乎是不可能的。但是从Joshua Tayloranswer到第一个问题,我看到了一线希望。
[已编辑]我提供了我的数据样本的图片以显示问题的严重程度:
[已编辑] 我想找到:a 和:h 之间的路径,结果应该是四个结果:a -> b -> c -> d -> h.a -> b -> c -> e -> h.a -> f -> h。 a -> g -> h.
[已编辑] 在评论中使用 Joshua Taylor 的解决方案,我将每个节点分组为单个结果,这是迄今为止我针对此问题获得的最接近的解决方案。
【问题讨论】:
-
我投票决定关闭这个问题,因为正如所写,它与您引用的问题重复,因为您没有真正解释您的问题实际上有何不同或显示您尝试过的内容,即您是否尝试过修改其他查询以解决您的问题?
-
@RobV 我同意,并且还投票决定以重复身份关闭。 FJE,我很高兴您发现较早的答案很有帮助,但是完全不清楚您在这里尝试做什么,而这些答案中尚未涵盖。您所要求的只是
:a :eastOf* ?mid . ?mid :eastOf* :e的解决方案,不是吗?这会将?m绑定到:a、:c和:e。 -
@FJE 你可能也会觉得这很有帮助:Calculate length of path between nodes?。
-
@JoshuaTaylor 和 RobV,我编辑了我的问题。我希望解释足够清楚。