Hi Dominic,
I see similar results testing against the latest develop/7 branch, have
reported to development to look into ...
Best Regards
Hugh Williams
Professional Services
OpenLink Software, Inc. // http://www.openlinksw.com/
Weblog -- http://www.openlinksw.com/blogs/
LinkedIn -- http://www.linkedin.com/company/openlink-software/
Twitter -- http://twitter.com/OpenLink
Google+ -- http://plus.google.com/100570109519069333827/
Facebook -- http://www.facebook.com/OpenLinkSoftware
Universal Data Access, Integration, and Management Technology Providers
On 30 Apr 2014, at 10:41, Dominic Robinson <d...@spikeisland.com> wrote:
> Hi
>
> I am using Virtuoso Open Source Edition Version: 07.10.3207, Build: Feb
> 17 2014 running on Windows 7.
>
> I am seeing some strange, incorrect(?), results when using aggregates
> and property paths. In the process of trying to generate a small
> example case, I have come across the following related problem.
>
> I am seeing different results using different forms of property paths
> depending on whether I specify a no graph, an explicit graph or a
> variable graph.
>
> Given a data set created like this:
>
> prefix d: <http://foo/>
> drop silent graph <http://foo>
> insert into <http://foo>
> {
> d:top d:level "top".
>
> d:m d:in d:top.
>
> d:a d:in d:m;
> d:item "a";
> d:value 0 .
>
> d:b d:in d:m;
> d:item "b";
> d:value 1 .
>
> d:c d:in d:m;
> d:item "c";
> d:value 1 .
> }
>
> The queries below demonstrate different results:
>
>
> ##########################################
> # No graph - correct
>
> prefix d: <http://foo/>
> select *
> where
> {
> ?item d:value ?value.
> ?item d:in+ ?top.
> ?top d:level ?level.
> }
>
> returns: (CORRECT)
>
> http://foo/a 0 http://foo/top "top"
> http://foo/b 1 http://foo/top "top"
> http://foo/c 1 http://foo/top " top"
>
> ##########################################
> # Explicit graph - correct
>
> prefix d: <http://foo/>
> select *
> where
> {
> graph <http://foo> {
> ?item d:value ?value.
>
> ?item d:in+ ?top.
> ?top d:level ?level.
> }
> }
>
> returns:(CORRECT)
>
> http://foo/b 1 http://foo/top "top"
> http://foo/a 0 http://foo/top "top"
> http://foo/c 1 http://foo/top "top"
>
> ##########################################
> # Variable graph version 1 - incorrect
>
> prefix d: <http://foo/>
> select *
> where
> {
> graph ?g {
> ?item d:value ?value.
>
> ?item d:in+ ?top.
> ?top d:level ?level.
> }
> }
>
> returns: (INCORRECT)
>
> http://foo http://foo/a 0 http://foo/top "top"
> http://foo http://foo/a 0 http://foo/top "top"
>
> ##########################################
> # Variable graph version 2 - incorrect
>
> prefix d: <http://foo/>
> select *
> where
> {
> graph ?g {
> ?item d:value ?value.
> ?item d:in{2} ?top.
> ?top d:level ?level.
> }
> }
>
> returns: (INCORRECT)
>
> http://foo http://foo/a 0 http://foo/top "top"
>
> ##########################################
> # Variable graph version 3 - correct
>
> prefix d: <http://foo/>
> select *
> where
> {
> graph ?g {
> ?item d:value ?value.
> ?item d:in/d:in ?top.
> ?top d:level ?level.
> }
> }
>
> returns: (CORRECT)
>
> http://foo http://foo/a 0 http://foo/top "top"
> http://foo http://foo/b 1 http://foo/top "top"
> http://foo http://foo/c 1 http://foo/top "top"
>
>
> The three different variations on the property path all seem to work
> when the graph is not specified or when it is specified explicitly.
>
> Best regards
>
> Dominic Robinson
>
> ------------------------------------------------------------------------------
> "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
> Instantly run your Selenium tests across 300+ browser/OS combos. Get
> unparalleled scalability from the best Selenium testing platform available.
> Simple to use. Nothing to install. Get started now for free."
> http://p.sf.net/sfu/SauceLabs
> _______________________________________________
> Virtuoso-users mailing list
> Virtuoso-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/virtuoso-users
------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos. Get
unparalleled scalability from the best Selenium testing platform available.
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
_______________________________________________
Virtuoso-users mailing list
Virtuoso-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/virtuoso-users