On 23.10.2012 5:43, Danilo da Rosa wrote:
Hello, we are having some trouble developing a MW extension, using SMW with Virtuoso, when having string objects with special characters in the triple store.

When making a SPARQL query, through the “SMWSparqlDatabase::doquery ($sparql)” method, if the triple object has special characters, such as accents (i.e. á) or “ñ”, the result does not shows all the string, it shows only de part after the special char.

For example, having the following triple in Virtuoso:

http://127.0.0.1/id/MNunez   http://127.0.0.1/id/Atribuoto:Nombre   "Marcos Nuñez"
 
And making this query, using the doQuery method:

DEFINE input:inference <http://127.0.0.1/mydefaultgraphname>
DEFINE get:soft "replacing"
DEFINE input:same-as "yes"
PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
select ?o where {
{ <http://127.0.0.1/id/MNunez > <http://127.0.0.1/id/Atribuoto:Nombre> ?o }

 When we print the result, we get:

ñez

We would like to know if this is a known error, and if there is any workaround.

Thanks in advance,

Marcelo, Pablo y Danilo

Try using 4store instead? Or, maybe the SMWSparqlDatabase code has to be patched so the attribute values would be urlencoded on store and urldedoced while read.
Dmitriy