使用 SPARQL 从 DBPedia 中检索常见的 类' 属性

Retrieving common Classes' attributes from DBPedia with SPARQL

我正在尝试检索 dbpedia 中某些 classes 的一些属性。假设你有一个国家。它确实存在于 ontology 中,但我想检索一些相关的公共属性,如名称、货币、时区等。但在 http://dbpedia.org/ontology/Country 中没有此类信息。

SELECT *                
WHERE {                        
  <http://dbpedia.org/ontology/Country> ?predicate ?object.         
} 

这是合乎逻辑的。查询只有 return 15 个匹配项,甚至维基百科也没有这样的信息(参见 https://en.wikipedia.org/wiki/Country )。但是如果你进入一个具体的国家,比方说巴西,你可以在维基百科上看到这样的信息。在这里我有两个问题:

1) 我无法从 dbpedia 访问此类数据。我试过了:

SELECT * WHERE {
   <http://dbpedia.org/resource/Brasil> ?prop ?label.
}

2) 我需要大部分国家的共同财产。事实上,我需要的是 class 的属性,而不是实例的值。例如。我不需要检索 "Brasil"、"Uruguay" 或 "Argentina",而是 "name"。我不需要检索 "Real"、"Uruguayan peso" 或 "Peso",而是 "Currency"。

有什么线索可以看吗?

看来您真正想要的是 Country 的所有实例,因此初始查询将是:

SELECT ?country
WHERE {
    ?country a <http://dbpedia.org/ontology/Country>
}

要获取 DBPedia 中国家/地区的通用属性,请尝试:

SELECT DISTINCT ?p
WHERE {
    ?country a <http://dbpedia.org/ontology/Country> .
    ?country ?p ?o .
}