Successive Bindings, cascaded queries in Algae2

In his issues WBS response, Kendall mentioned Algae's approach to
cascaded queries. I propose SPARQL adopt the same approach, which is:

The Algae2 results set [1] holds the know bindings at any point. It is
defined as starting as a single result with no bindings (what we were
calling "true" in DAWG). asks [2] are made of decls [3] which have the
following semantics:

[[
A single decl specifies that each result in the result set be replaced by (zero or more) results obtained from the following two steps:
1 Substitute the variables from that result for the variables in the decl and search for the resulting triple in the (current) database.
2 Evaluate the constraints on the triples obtained from step 1.
]]

Thus, successive asks are constrained by the values bound in the
result set by earlier asks.  This, and the ability to target queries,
was used in the pharma federation example [4].

The SPARQL spec goes to some effort to make sure that the clauses in a
query can be executed in any order. This is compatible with successive
bindings, though some formulations of a query may be much more
efficient than others.

[1] http://www.w3.org/2004/05/06-Algae/#resultSet
[2] http://www.w3.org/2004/05/06-Algae/#doc-algae-askStr
[3] http://www.w3.org/2001/sw/DataAccess/rq23/#query
[4] http://www.w3.org/2004/10/04-pharmaFederate/
-- 
-eric

office: +81.466.49.1170 W3C, Keio Research Institute at SFC,
                        Shonan Fujisawa Campus, Keio University,
                        5322 Endo, Fujisawa, Kanagawa 252-8520
                        JAPAN
        +1.617.258.5741 NE43-344, MIT, Cambridge, MA 02144 USA
cell:   +81.90.6533.3882

(eric@w3.org)
Feel free to forward this message to any list for any purpose other than
email address distribution.

Received on Wednesday, 19 January 2005 04:28:55 UTC