String 作为sparql查询输入的搜索容器
我有一个SPARQL查询,我使用sgvizlers drucalagraph将其可视化。我想有一个搜索容器,用户可以输入一个音乐艺术家。在查询中,用户目前无法输入音乐艺术家。我想要这部分: 歌曲《猫头鹰》:作者《猫头鹰》:埃里克·克莱普顿 让用户输入一个变量而不是dbpedia:Eric_Clapton,就像现在一样。我该怎么做?以下是我目前的代码:String 作为sparql查询输入的搜索容器,string,variables,search,sparql,sgvizler,String,Variables,Search,Sparql,Sgvizler,我有一个SPARQL查询,我使用sgvizlers drucalagraph将其可视化。我想有一个搜索容器,用户可以输入一个音乐艺术家。在查询中,用户目前无法输入音乐艺术家。我想要这部分: 歌曲《猫头鹰》:作者《猫头鹰》:埃里克·克莱普顿 让用户输入一个变量而不是dbpedia:Eric_Clapton,就像现在一样。我该怎么做?以下是我目前的代码: 通过使用资源的rdfs:label作为查询的输入,可以解决此问题: SELECT distinct ?clapton ?clapton_label
通过使用资源的rdfs:label作为查询的输入,可以解决此问题:
SELECT distinct ?clapton ?clapton_label ?artist ?artistlabel where {
{
{?artist dbpedia-owl:associatedBand ?clapton}
UNION
{?artist dbpedia-owl:associatedMusicalArtist ?clapton}
}
?clapton rdfs:label '<?= ucwords($_GET['query']) ?>'@en.
?clapton rdfs:label ?clapton_label .
?artist rdfs:label ?artistlabel .
} limit 100
您是在问如何在SPARQL中执行查询,还是在draculagraph中实现搜索容器?如果这是前一个问题,那么我将添加类似于“song dbpedia owl:writer?writer?”的内容,而不是“song dbpedia owl:writer dbpedia:Eric_Clapton”?writer dbprop:用户在此处输入的名称。或者使用艺术家标签。如果用户输入Eric Clapton或Clapton,Eric,您将检索该资源。那是你的问题吗?非常感谢你的帮助!我点击了左边的箭头,但无意中又点击了一次。。对不起,我现在有这个代码:选择不同的?克拉普顿?克拉普顿标签?艺术家?艺术家标签在哪里{?艺术家?pred?克拉普顿{?艺术家dbpedia猫头鹰:关联乐队?克拉普顿}联盟{艺术家dbpedia猫头鹰:关联音乐艺术家?克拉普顿}{?克拉普顿rdfs:label@en.}克拉普顿rdfs:标签?克拉普顿标签?艺术家rdfs:标签?艺术家标签。}这解决了你的问题吗?如果有,那么你应该将其作为答案发布,并将其标记为已解决。在您的查询中,我认为最后两条语句是多余的?clapton rdfs:label?clapton_label?艺术家rdfs:标签?artistlabel。如果您以前将标签绑定到@en。