The following query throws Virtuoso 37000 Error SP030: SPARQL compiler, line 0: Bad character '%' (0x25) in SPARQL expression at '%'
PREFIX res: <http://dbpedia.org/resource/>
PREFIX yago: <http://dbpedia.org/class/yago/>
SELECT * WHERE {
res:Reykjav%C3%ADk rdf:type yago:CapitalsInEurope ;
rdfs:label ?label ;
rdfs:comment ?abstract.
FILTER (lang(?label) = "en" && lang(?abstract) = "en")
}
While this (forgive the pun) semantically identical query does not
PREFIX yago: <http://dbpedia.org/class/yago/>
SELECT * WHERE {
<http://dbpedia.org/resource/Reykjav%C3%ADk> rdf:type yago:CapitalsInEurope ;
rdfs:label ?label ;
rdfs:comment ?abstract.
FILTER (lang(?label) = "en" && lang(?abstract) = "en")
}
How come URL-escaped characters are not allowed in prefixed identifiers but are when giving the complete IRI?