Glad you found a solution. The problem is probably that some column is defined not as a string type (e.g., VARCHAR or CLOB) but as a binary type (e.g., BINARY or BLOB), so the datatype of the SQL expression ends up being binary, and D2RQ by default maps binary values to xsd:hexBinary literals.
Indeed you need to cast it to a string in a uriSqlExpression. Or maybe there's a bug somewhere… What are the datatypes of the columns involved in the expression? Best, Richard On 11 Apr 2013, at 14:22, Diogo FC Patrao <djogopat...@gmail.com> wrote: > Thanks Martin, that did the trick! > > I tried to put a d2rq:datatype string in there, but uriSqlExpression won't > let me. > > Really thanks! > > -- > diogo patrão > > > > > On Thu, Apr 11, 2013 at 10:05 AM, "Martin G. Skjæveland" <mart...@ifi.uio.no> > wrote: > Hi Diogo, > > not having really understood you problem, however, have you tried to > cast the value to CHAR? I think I had similiar results as you which were > fixed by casting to CHAR, in my code: > > d2rq:sqlExpression "Cast(AsText(apaAreaGross.apaAreaGeometryEWKT) AS > char)" . > > (AsText is a function to convert geometrics to text.) > > Martin > > On 11/04/13 14:53, Diogo FC Patrao wrote: > > More info; The mapping below is working perfectly. To me it sounds like > > a problem with uriSqlExpression,what do you think? > > > > map:documentAuthor1 a d2rq:PropertyBridge; > > d2rq:belongsToClassMap map:Document; > > d2rq:property :documentAuthor; > > d2rq:refersToClassMap map:User1; > > d2rq:condition "users.universal_id is not null"; > > d2rq:join "documents.responsible = users.user_id"; > > . > > > > map:documentAuthor2 a d2rq:PropertyBridge; > > d2rq:belongsToClassMap map:Document; > > d2rq:property :documentAuthor; > > d2rq:refersToClassMap map:User2; > > d2rq:condition "users.universal_id is null"; > > d2rq:join "documents.responsible = users.user_id"; > > . > > > > map:User1 a d2rq:ClassMap; > > d2rq:dataStorage map:Database; > > d2rq:class :User; > > d2rq:condition "users.universal_id is not null"; > > d2rq:uriPattern > > "http://www.cipe.accamargo.org.br/ontologias/h2tc.owl#usersUNIV@@users.universal_id@@"; > > . > > > > map:User2 a d2rq:ClassMap; > > d2rq:dataStorage map:Database; > > d2rq:class :User; > > d2rq:condition "users.universal_id is null"; > > d2rq:uriPattern > > "http://www.cipe.accamargo.org.br/ontologias/h2tc.owl#usersEHR@@users.user_id@@"; > > . > > > > > > > > -- > > diogo patrão > > > > > > > > > > On Thu, Apr 11, 2013 at 9:40 AM, Diogo FC Patrao <djogopat...@gmail.com > > <mailto:djogopat...@gmail.com>> wrote: > > > > Hi Richard > > > > Did another couple of tests and the problem is not really related to > > SERVICE. > > > > This time, I issued the following query directly to D2R-Server: > > > > SELECT * WHERE { ?document > > <http://www.cipe.accamargo.org.br/ontologias/h2tc.owl#documentAuthor> > > ?author > > . } limit 5 > > > > The results for ?author are still hex-coded. However, take a look on > > map:documentAuthor: > > > > map:documentAuthor a d2rq:PropertyBridge; > > d2rq:belongsToClassMap map:Document; > > d2rq:property :documentAuthor; > > #d2rq:refersToClassMap map:User; > > d2rq:join "documents.responsible = users.user_id"; > > d2rq:uriSqlExpression > > "CONCAT('http://www.cipe.accamargo.org.br/ontologias/h2tc.owl#users',if( > > users.universal_id is null, concat('EHR',users.user_id), > > concat('UNIV',users.universal_id) ) )"; > > . > > > > Does this point to something? > > > > thanks! > > > > > > > > > > -- > > diogo patrão > > > > > > > > > > On Wed, Apr 10, 2013 at 1:33 PM, Richard Cyganiak > > <rich...@cyganiak.de <mailto:rich...@cyganiak.de>> wrote: > > > > --debug should print the query that ARQ sent. Run that query > > yourself in D2RQ. And I'm pretty sure it's either Joseki or ARQ > > messing up the result, and both are Jena products :-) > > > > Richard > > > > > > On 10 Apr 2013, at 14:12, Diogo FC Patrao <djogopat...@gmail.com > > <mailto:djogopat...@gmail.com>> wrote: > > > >> BTW2, how can I be sure that those results are coming out of > >> D2R or are being messed up by ARQ client? I turned on --debug > >> on my d2r-server, however it won print results. > >> > >> Thanks again > >> > >> -- > >> diogo patrão > >> > >> > >> > >> > >> On Wed, Apr 10, 2013 at 10:10 AM, Diogo FC Patrao > >> <djogopat...@gmail.com <mailto:djogopat...@gmail.com>> wrote: > >> > >> Hi Richard > >> > >> I'm writing to them right now. Are you in that list too? > >> > >> BTW, Arq is in 2.10.1 version right now; do you think D2R > >> 0.8.1 would work with that version? > >> > >> Thanks > >> > >> -- > >> diogo patrão > >> > >> > >> > >> > >> On Wed, Apr 10, 2013 at 3:18 AM, Richard Cyganiak > >> <rich...@cyganiak.de <mailto:rich...@cyganiak.de>> wrote: > >> > >> Off the top of my head I can't think of a reason why > >> this might be happening. I suggest you also try asking > >> on the Jena list, mentioning that the D2R endpoint > >> uses the Joseki server code. > >> > >> Richard > >> > >> > >> On 9 Apr 2013, at 21:59, Diogo FC Patrao > >> <djogopat...@gmail.com <mailto:djogopat...@gmail.com>> > >> wrote: > >> > >>> Hello > >>> > >>> I noticed a strange effect happening when I issue the > >>> following query: > >>> > >>> SELECT DISTINCT * > >>> WHERE > >>> { > >>> SERVICE <http://0.0.0.0:2020/sparql> { ?document > >>> > >>> <http://www.cipe.accamargo.org.br/ontologias/h2tc.owl#documentType> > >>> > >>> "exam request" . } > >>> SERVICE <http://0.0.0.0:2020/sparql> { ?document > >>> > >>> <http://www.cipe.accamargo.org.br/ontologias/h2tc.owl#documentAuthor> > >>> > >>> ?author . } > >>> } > >>> 0.0.0.0:2020/sparql <http://0.0.0.0:2020/sparql> > >>> points to a d2r-server instance. This query was > >>> issued not directly to this instance, but rather by a > >>> command line ARQ over an empty graph. > >>> > >>> This query is part of a bigger query that refers to > >>> several d2r-server instances, and I know that I could > >>> join both of them in one SERVICE only for > >>> optimization, but that's not the point. > >>> > >>> The point is, instead of getting proper URIs for > >>> ?author, I'm getting those huge hex data, like > >>> > >>> > >>> <687474703A2F2F7777772E636970652E616363616D6172676F2E6F72672E62722F6F6E746F6C6F676961732F683274632E6F776C237573657273554E495636363837353234353636> > >>> > >>> Interestingly enough, converting consecutive pairs of > >>> those bytes to chars, it turns into a URI! > >>> > >>> > >>> http://www.cipe.accamargo.org.br/ontologias/h2tc.owl#usersUNIV6687524566 > >>> > >>> Which is a valid answer to ?author. > >>> > >>> I have verified that a query without those SERVICE > >>> keywords works perfectly, when issued directly to > >>> D2R-server. > >>> > >>> > >>> I'm not really sure whose fault is this, ARQ or D2R. > >>> > >>> Any help in order to get things straight will be > >>> appreciated. > >>> > >>> Thanks, > >>> > >>> > >>> > >>> > >>> -- > >>> diogo patrão > >>> > >>> > >>> > >>> ------------------------------------------------------------------------------ > >>> Precog is a next-generation analytics platform > >>> capable of advanced > >>> analytics on semi-structured data. The platform > >>> includes APIs for building > >>> apps and a phenomenal toolset for data science. > >>> Developers can use > >>> our toolset for easy data analysis & visualization. > >>> Get a free account! > >>> http://www2.precog.com/precogplatform/slashdotnewsletter > >>> _______________________________________________ > >>> d2rq-map-devel mailing list > >>> d2rq-map-devel@lists.sourceforge.net > >>> <mailto:d2rq-map-devel@lists.sourceforge.net> > >>> > >>> https://lists.sourceforge.net/lists/listinfo/d2rq-map-devel > >> > >> > >> > > > > > > > > > > ------------------------------------------------------------------------------ > > Precog is a next-generation analytics platform capable of advanced > > analytics on semi-structured data. The platform includes APIs for building > > apps and a phenomenal toolset for data science. Developers can use > > our toolset for easy data analysis & visualization. Get a free account! > > http://www2.precog.com/precogplatform/slashdotnewsletter > > > > > > > > _______________________________________________ > > d2rq-map-devel mailing list > > d2rq-map-devel@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/d2rq-map-devel > > > > > ------------------------------------------------------------------------------ > Precog is a next-generation analytics platform capable of advanced > analytics on semi-structured data. The platform includes APIs for building > apps and a phenomenal toolset for data science. Developers can use > our toolset for easy data analysis & visualization. Get a free account! > http://www2.precog.com/precogplatform/slashdotnewsletter > _______________________________________________ > d2rq-map-devel mailing list > d2rq-map-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/d2rq-map-devel > > ------------------------------------------------------------------------------ > Precog is a next-generation analytics platform capable of advanced > analytics on semi-structured data. The platform includes APIs for building > apps and a phenomenal toolset for data science. Developers can use > our toolset for easy data analysis & visualization. Get a free account! > http://www2.precog.com/precogplatform/slashdotnewsletter_______________________________________________ > d2rq-map-devel mailing list > d2rq-map-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/d2rq-map-devel ------------------------------------------------------------------------------ Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis & visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter _______________________________________________ d2rq-map-devel mailing list d2rq-map-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/d2rq-map-devel