sparql - DBpedia 中等效的 Wikidata 查询
问题描述
我正在尝试将我的 SPARQL 查询从 Wikidata 转换为 DBpedia(仅用于教育目的),但它不起作用。有人可以帮助我并告诉我我做错了什么吗?谢谢!
SELECT ?musician ?musicianLabel WHERE {
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
?musician wdt:P31 wd:Q5 .
?musician wdt:P136 ?genre .
FILTER(?genre IN (wd:Q383982, wd:Q206159))
}
GROUP BY ?musician ?musicianLabel
ORDER BY ASC(?musicianLabel)
在职的
...并在http://lod.openlinksw.com/sparql
SELECT ?musician WHERE {
?musician a <http://dbpedia.org/resource/Person> .
?musician <http://dbpedia.org/resource/Genre> <http://dbpedia.org/resource/Genre> .
FILTER(<http://dbpedia.org/resource/Genre> IN (<http://dbpedia.org/resource/Psychedelic_Pop>, <http://dbpedia.org/resource/Psychedelic_Rock>))
}
GROUP BY ?musician
ORDER BY ASC(?musician)
不工作
解决方案
我不确定你为什么从改编的查询中删除标签......试试这个(结果)
SELECT DISTINCT ?musician ?musicianlabel
WHERE
{ ?musician a <http://dbpedia.org/ontology/Person> .
?musician <http://dbpedia.org/ontology/genre> ?genre .
OPTIONAL { ?musician <http://www.w3.org/2000/01/rdf-schema#label> ?musicianlabel .
FILTER ( LANGMATCHES ( LANG ( ?musicianlabel ), 'en' ) )
}
FILTER (?genre IN ( <http://dbpedia.org/resource/Psychedelic_pop> ,
<http://dbpedia.org/resource/Psychedelic_rock>
)
)
}
ORDER BY ASC ( ?musician )
推荐阅读
- javascript - 在 Illustrator 的查找和替换脚本中使用正则表达式
- angular - 如果条件不起作用,则角度 HTTP POST 方法
- regex - 正则表达式:捕获字符串并忽略特定模式
- css - CSS 缩放图像并居中对齐
- c# - 防止浏览器(Chrome)自动填充用户名登录文本框
- c# - 这可以在 NUnit 测试中使用 CefSharp.WinForms 吗?
- python - 类型对象“购物车”在 django 网站中没有属性“对象”
- python - 如何在单独的线程中安全地修改类属性并将它们返回?
- java - 如何在不重复的情况下简化代码?
- angularjs - 用于字母和连字符的 ng 模式