如何解决SPARQL:从可能的关系列表中找到连接两个实体的关系
我有两组实体entities1
和entities2
,我想从一组特定的关系中识别将两者联系在一起的所有关系。
这可以通过将关系声明为变量来完成:
?entities1 ?relations ?entities2
但是,这会遍历所有可能的关系,因此使查询变得异常缓慢和低效。
这也可以通过使用OR运算符声明所需的关系来完成:
?entities1 (relation1 | relation2 | ... | relation_n) ?entities2
查找所有其中实体1和2通过我们的一种关系链接但没有返回该关系的情况,因此不知道哪个关系正确。
我需要一种从一组指定的关系中查找每个实体之间的关系的方法,然后可以将这些表作为带有标题(entity1,entity2,relation)的表返回。
有什么想法吗?
解决方法
@UninformedUser友善指出,可以使用VALUES
声明一组关系,这意味着可以达到以下预期效果:
VALUES ?relation {:relation1 :relation2 ... :relation_n} ?entities1 ?relation ?entities2 .
感谢您的帮助!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。