如何使用sparql查询dbpedia.org
问题描述:
我在OpenData中非常新,并尝试在SPARQL中编写查询。如何使用sparql查询dbpedia.org
我的目标是让数据以下的标准集: - 类别:Home_automation - 选择类型的所有项目“事” - 在至少一个进场“的产品” - 有图片与德国的描述
-url我试过如下:
PREFIX cat: <http://dbpedia.org/resource/Category:>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
SELECT *
WHERE {
cat:Home_automation skos:broader ?x
}
但现在我不知道如何将其他过滤器添加到WHERE子句。 我试图让用户更为宽泛:...获取项目,但我认为这是错误的方向。
我测试了疑问:https://dbpedia.org/sparql
结果应该是:
| (label) | (url)
|--------------------------|-----------------------------------
|"Kurzzeitwecker"@de | urls to the picture of the device
|"Staubsauger"@de | -||-
|"Waschmaschine"@de | -||-
|"Geschirrspülmaschine"@de | -||-
任何人都不会有一些提示吗?
更新:新的查询:
PREFIX cat: <http://dbpedia.org/resource/Category:>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT ?s ?label WHERE {
?s ?p cat:Home_automation .
?s rdf:type owl:Thing .
?s rdfs:label ?label
FILTER (LANG(?label)='de')
}
order by ?p
答
目前尚不清楚你想要什么。您必须首先知道dbpedia包含的确切相关信息以及它们的结构。
但是,您可以尝试发现cat:Home_automation
涉及哪些类型的关系,因此,您可能会更好地了解您想要的内容。
我建议从通用查询开始,指定cat:Home_automation
在dbpedia中的出现方式,然后,您可能会变得更具体,并提出进一步的查询。
查询列出的三倍,其中cat:Home_automation
是一个主题:
PREFIX cat: <http://dbpedia.org/resource/Category:>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
SELECT ?p ?o WHERE {
cat:Home_automation ?p ?o
}
order by ?p
查询列出的三倍,其中cat:Home_automation
是一个对象:
PREFIX cat: <http://dbpedia.org/resource/Category:>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
SELECT ?s ?p WHERE {
?s ?p cat:Home_automation
}
order by ?p
检查结果,看看你的有趣,然后继续进一步查询。
您更新了查询。现在是解决方案吗? – AKSW
不是完整的解决方案,但它是其中的一部分。 – kroissma