我在2个DBpedia资源之间获得了这个SPARQL查询:法国和阿尔斯通
select * where{
<http://dbpedia.org/resource/France> ?pre ?obj.
?obj ?pre1 <http://dbpedia.org/resource/Alstom>
}
并且它什么都不返回
但是如果我像这样反转主题和对象:
select * where{
<http://dbpedia.org/resource/Alstom> ?pre ?obj.
?obj ?pre1 <http://dbpedia.org/resource/France>
}
查询返回一些结果..
有没有办法使用UNION合并两个查询?
答案 0 :(得分:0)
根据您的评论,您只需要使用以下语法直接结合:
prefix dbpedia: <http://dbpedia.org/resource/>
select * where{
{
dbpedia:France ?pre ?obj.
?obj ?pre1 dbpedia:Alstom.
}
Union {
dbpedia:Alstom ?pre ?obj.
?obj ?pre1 dbpedia:France
}
}