SPARQL을 사용하여 french dbpedia (http://fr.dbpedia.org/)를 쿼리하고 있습니다.유니 코드 문자로 sparql 쿼리를 만드는 방법은 무엇입니까?
파이썬과 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")
}
유일한 차이점은 레이블 값입니다. 페이지 http://fr.dbpedia.org/page/Opéra
이 dbpedia에 있고 rdfs label이 "Opéra"로 설정되어 있습니다.
프랑스 문자 é
이 들어 있기 때문에 쿼리가 작동하지 않는다고 생각합니다. 나는 어떤 성공도없이 여러개의 도주 (Op%C3%A9re
, Op\u0233ra
, Op\xe9ra
)를 시도했다.
아이디어가 있으십니까?
작동합니다! 감사. – luc