您可以通过选择属性 IRI 以您感兴趣的内容开头的属性和对象来获得所需的内容(例如,http ://dbpedia.org/ontology/ )。您可以使用如下查询。(它利用前缀本身,例如dbpedia-owl:仍然是合法的 IRI,您可以在其上使用str。您也可以只使用字符串http://dbpedia.org/ontology /
select ?p ?o where {
dbpedia:London ?p ?o
filter strstarts(str(?p),str(dbpedia-owl:))
}
SPARQL 结果(HTML 表)
SPARQL 结果(JSON)
JSON 结果与您要查找的格式不完全一致,但如下所示:
{ "head": { "link": [], "vars": ["p", "o"] },
"results": { "distinct": false, "ordered": true, "bindings": [
{ "p": { "type": "uri", "value": "http://dbpedia.org/ontology/wikiPageExternalLink" } , "o": { "type": "uri", "value": "http://mapoflondon.uvic.ca/" }},
{ "p": { "type": "uri", "value": "http://dbpedia.org/ontology/wikiPageExternalLink" } , "o": { "type": "uri", "value": "http://www.british-history.ac.uk/place.aspx?region=1" }},
{ "p": { "type": "uri", "value": "http://dbpedia.org/ontology/wikiPageExternalLink" } , "o": { "type": "uri", "value": "http://www.london.gov.uk/" }},
{ "p": { "type": "uri", "value": "http://dbpedia.org/ontology/wikiPageExternalLink" } , "o": { "type": "uri", "value": "http://www.museumoflondon.org.uk/" }},
{ "p": { "type": "uri", "value": "http://dbpedia.org/ontology/wikiPageExternalLink" } , "o": { "type": "uri", "value": "http://www.tfl.gov.uk/" }},
{ "p": { "type": "uri", "value": "http://dbpedia.org/ontology/wikiPageExternalLink" } , "o": { "type": "uri", "value": "http://www.visitlondon.com/" }},
{ "p": { "type": "uri", "value": "http://dbpedia.org/ontology/wikiPageExternalLink" } , "o": { "type": "uri", "value": "https://london.gov.uk/" }},
{ "p": { "type": "uri", "value": "http://dbpedia.org/ontology/wikiPageExternalLink" } , "o": { "type": "uri", "value": "http://www.britishpathe.com/workspace.php?id=2449&delete_record=75105/" }},
{ "p": { "type": "uri", "value": "http://dbpedia.org/ontology/thumbnail" } , "o": { "type": "uri", "value": "http://commons.wikimedia.org/wiki/Special:FilePath/Greater_London_collage_2013.png?width=300" }},
...
不过这种说法是有道理的,因为每个属性不一定都有唯一的值,所以问题中的 Python dict可能不是最好的结果格式(但很容易创建一个放入多个值的格式一个列表)。
另请注意,以dbpedia-owl:开头的属性实际上是 DBpedia Ontology 属性,它比原始信息框值具有更清晰的数据,其中使用了以dbpprop:开头的属性。您可以在4.3阅读有关不同数据集的更多信息。信息框数据。不过,对原始属性的查询几乎相同:
select ?p ?o where {
dbpedia:London ?p ?o
filter strstarts(str(?p),str(dbpprop:))
}
SPARQL 结果(HTML 表)