【发布时间】:2013-03-14 11:05:30
【问题描述】:
我正在使用 SPARQL 查询法语 dbpedia (http://fr.dbpedia.org/)。
如果有任何区别,我正在使用 Python 和 SPARQLWrapper。
第一个查询运行正常。
PREFIX dbpp:<http://dbpedia.org/property/>
PREFIX dbpo:<http://dbpedia.org/ontology/>
PREFIX dbpr:<http://dbpedia.org/resource/>
SELECT ?wt ?summary ?source_url
WHERE {
?wt rdfs:label "Concerto"@fr .
OPTIONAL { ?wt dbpedia-owl:abstract ?summary . }
OPTIONAL { ?wt foaf:isPrimaryTopicOf ?source_url . }
filter (lang(?summary) = "fr" )
}
第二个查询不起作用。
PREFIX dbpp:<http://dbpedia.org/property/>
PREFIX dbpo:<http://dbpedia.org/ontology/>
PREFIX dbpr:<http://dbpedia.org/resource/>
SELECT ?wt ?summary ?source_url
WHERE {
?wt rdfs:label "Opéra"@fr .
OPTIONAL { ?wt dbpedia-owl:abstract ?summary . }
OPTIONAL { ?wt foaf:isPrimaryTopicOf ?source_url . }
filter (lang(?summary) = "fr" )
}
唯一的区别是标签的值。 dbpedia中存在页面http://fr.dbpedia.org/page/Opéra,rdfs标签设置为“Opéra”。
我认为查询不起作用,因为它包含法语字母é。我尝试了几次转义(Op%C3%A9re、Op\u0233ra、Op\xe9ra)都没有成功。
有什么想法吗?
【问题讨论】:
标签: python unicode sparql dbpedia