- From: Eric Prud'hommeaux <eric@w3.org>
- Date: Tue, 18 Jan 2005 23:28:46 -0500
- To: public-rdf-dawg@w3.org
- Message-ID: <20050119042846.GD13055@w3.org>
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