Hello Sergejs,

Yes this is a clean bug in current SPARQL SELECT DISTINCT
implementation. I've reproduced it almost identically using a trivial
script, now I'm trying to fix it. 

Best Regards,
Ivan Mikhailov
http://virtuoso.openlinksw.com

On Tue, 2008-11-18 at 17:38 +0200, Sergejs Rikacovs wrote:
> Dear Sir/Madam,
> 
> Noticed one  strange thing while executing SPARQL queries on Virtuoso
> through Virtuoso Sparql Query Form.
> 
> I have two queries( the only difference between them is absence of the
> order by clause in the second query ) :
> 
> select distinct ?assocUri {?assocUri
> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
> <http://www.w3.org/2002/07/owl#ObjectProperty>. } ORDER BY  ?assocUri
> 
> This query returns following data:
> 
> <?xml version="1.0" ?>
> <sparql xmlns="http://www.w3.org/2005/sparql-results#";
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> xsi:schemaLocation="http://www.w3.org/2001/sw/DataAccess/rf1/result2.xsd";>
>  <head>
>   <variable name="assocUri"/>
>  </head>
>  <results distinct="false" ordered="true">
>   <result>
>    <binding
> name="assocUri"><uri>http://www.owl-ontologies.com/Ontology1220554345.owl#exemplarAliquot</uri></binding>
>   </result>
>   <result>
>    <binding
> name="assocUri"><literal>http://www.owl-ontologies.com/Ontology1220554345.owl#persChild</literal></binding>
>   </result>
>   <result>
>    <binding
> name="assocUri"><literal>http://www.owl-ontologies.com/Ontology1220554345.owl#persDZTwin</literal></binding>
>   </result>
>   <result>
>    <binding
> name="assocUri"><literal>http://www.owl-ontologies.com/Ontology1220554345.owl#persKinsman</literal></binding>
>   </result>
>   <result>
>    <binding
> name="assocUri"><literal>http://www.owl-ontologies.com/Ontology1220554345.owl#persMZTwin</literal></binding>
>   </result>
>   <result>
>    <binding
> name="assocUri"><literal>http://www.owl-ontologies.com/Ontology1220554345.owl#persParent</literal></binding>
>   </result>
>   <result>
>    <binding
> name="assocUri"><literal>http://www.owl-ontologies.com/Ontology1220554345.owl#persSample</literal></binding>
>   </result>
>   <result>
>    <binding
> name="assocUri"><literal>http://www.owl-ontologies.com/Ontology1220554345.owl#persSibling</literal></binding>
>   </result>
>   <result>
>    <binding
> name="assocUri"><literal>http://www.owl-ontologies.com/Ontology1220554345.owl#pers_ZTwin</literal></binding>
>   </result>
>  </results>
> </sparql>
> 
> 
> The second query:
> 
> select distinct ?assocUri {?assocUri
> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
> <http://www.w3.org/2002/07/owl#ObjectProperty>. }
> 
> This query returns :
> 
> 
> <?xml version="1.0" ?>
> <sparql xmlns="http://www.w3.org/2005/sparql-results#";
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> xsi:schemaLocation="http://www.w3.org/2001/sw/DataAccess/rf1/result2.xsd";>
>  <head>
>   <variable name="assocUri"/>
>  </head>
>  <results distinct="false" ordered="true">
>   <result>
>    <binding
> name="assocUri"><uri>http://www.owl-ontologies.com/Ontology1220554345.owl#persDZTwin</uri></binding>
>   </result>
>   <result>
>    <binding
> name="assocUri"><uri>http://www.owl-ontologies.com/Ontology1220554345.owl#persKinsman</uri></binding>
>   </result>
>   <result>
>    <binding
> name="assocUri"><uri>http://www.owl-ontologies.com/Ontology1220554345.owl#persMZTwin</uri></binding>
>   </result>
>   <result>
>    <binding
> name="assocUri"><uri>http://www.owl-ontologies.com/Ontology1220554345.owl#pers_ZTwin</uri></binding>
>   </result>
>   <result>
>    <binding
> name="assocUri"><uri>http://www.owl-ontologies.com/Ontology1220554345.owl#persSample</uri></binding>
>   </result>
>   <result>
>    <binding
> name="assocUri"><uri>http://www.owl-ontologies.com/Ontology1220554345.owl#persSibling</uri></binding>
>   </result>
>   <result>
>    <binding
> name="assocUri"><uri>http://www.owl-ontologies.com/Ontology1220554345.owl#persChild</uri></binding>
>   </result>
>   <result>
>    <binding
> name="assocUri"><uri>http://www.owl-ontologies.com/Ontology1220554345.owl#persParent</uri></binding>
>   </result>
>   <result>
>    <binding
> name="assocUri"><uri>http://www.owl-ontologies.com/Ontology1220554345.owl#exemplarAliquot</uri></binding>
>   </result>
>  </results>
> </sparql>
> 
> 
> So If I have the order by clause in my query I get literals instead of
> URI`s, and If I do not have order by clause I recieve URIs, as I would
> expect.
> 
> Could I ask you to give some comments on this ?
> 
> Best regards,
> S. Rikacovs.
> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> _______________________________________________ Virtuoso-users mailing list 
> Virtuoso-users@lists.sourceforge.net 
> https://lists.sourceforge.net/lists/listinfo/virtuoso-users


Reply via email to