W3C home > Mailing lists > Public > public-rdf-dawg@w3.org > January to March 2007

Re: comments on section 12 (and a little more)

From: Seaborne, Andy <andy.seaborne@hp.com>
Date: Tue, 20 Mar 2007 13:26:00 +0000
Message-ID: <45FFE0E8.2050203@hp.com>
To: Pat Hayes <phayes@ihmc.us>
CC: RDF Data Access Working Group <public-rdf-dawg@w3.org>

Pat Hayes wrote:
> Overall comment (important).
> There is a disconnect between the ideas of 
> dataset and graph, which I think needs to be 
> fixed. Section 8 discusses datasets in great 
> detail with many examples, but it nowhere 
> actually defines explicitly which RDF graph is 
> determined to be the one that BGPs are required 
> to match against. Section 12.3.2 defines matching 
> for BGPs, but speaks of matching to a dataset 
> (mia culpa). Section 12.5 finally introduces and 
> uses the terminology "active graph", but it does 
> not formally define this notion or say how it is 
> computed. (See detailed comments of 12.5 below) 
> In any case, it is far too late in the document 
> for this idea to be defined.
> "Active graph" is a basic concept which should be 
> defined in section 8, which should give clear 
> criteria for how to determine it given a query 
> and a dataset. Then 12.3.2 should use this term 
> when defining BGP matching, and the references in 
> 12.3.2 and 12.5 should have internal links to the 
> definition in section 8.

> --------------
> 12.3 ( The definitions in this section seem to 
> continue directly on from those in section 12.1, 
> and not be very connected to those in section 
> 12.2.)
> "for multiset" -> "for the multiset"
> Definition of Compatible mappings. I'd suggest 
> defining merge explicitly, rather than talking 
> about the set-union of two mappings (tricky idea 
> to get right):
> Definition: The merge(mu1, mu2) of two compatible 
> mappings is the mapping which is identical to mu1 
> on dom(mu1) and to mu2 on dom(mu2).

I've moved the note that mu1 set-union mu2 is a binding outside the defn box. 
  I've left the defn part which says what you have, although by talking about 
variables in the domains of each binding.

> Delete "Following the terminology of RDF semantics [RDF-MT]"
> Make   "* An [RDF instance mapping]"  with [ ] a 
> hyperlink to 
> http://www.w3.org/TR/2004/REC-rdf-mt-20040210/#definst
> (Because the rest of the terminology defined here *isn't* in RDF-MT :-)


Also, put a defintion box in for "Pattern Instance Mapping"

> 12.3.1
> Delete second sentence (no longer true of the 
> material in this section). Could replace it with 
> a forward reference to section 12.6


> Solution mapping has already been defined, omit definition here.
> Delete "P(x) = É (É­(x))"

I prefer to state the combination that makes up a Pattern Instance Mapping. 
Specifically, it says the blank node mapping is applied first which is clearer 
for the SPARQL extension framework.

> Definition of BGP Matching, change to:
> -----
> Let BGP be a basic graph pattern and G be an RDF 
> graph. <mu> is a <em>solution</em> for BGP from G 
> when there is a pattern instance mapping P such 
> that P(BGP) is a subset of G and <mu> is the 
> restriction of P to the query variables in BGP.

I have removed "Equivalently, such that P(BGP) is simply entailed by G." as it 
does not get the blank nodes in the solution right for the algebra.

Reworded - cardinality condition left in.

> -----
> A <em>solution sequence</em> is some total 
> ordering of the multiset of all solutions for BGP 
> from G, each derived from a distinct pattern 
> instance mapping.
> ----

The definition of solution sequence is elsewhere (see other edits).

As the solution sequence is output of the ToList operation over the graph 
pattern part of the algebra, it does not fit here.

The cardinality condition mentions "distinct RDF instance mappings" which is 
where the duplications in the restriction to query variables comes from so the 
cardinality of the bag from BGP matching should catch distinct pattern 
instance mapping.  Done as cardinality, it's more in line with the algebra.

> (NOTE. I hope this last bit is still right :-)


> 12.3.2
> "as identifying nodes in the dataset." -> "as 
> identifying nodes in the active graph of the 
> dataset."
> "understood to be not from DS itself," -> 
> "understood to be not from the active graph of DS 
> itself,"
> "which is graph-equivalent to DS but shares no" 
> -> "which is graph-equivalent to the active graph 
> of DS but shares no"


Need also to address the "active graph" comment through this section as well.
> "SPARQL adopts a simple subgraph matching 
> criterion for this. A SPARQL answer is the 
> restriction of a SPARQL instance mapping M to 
> query variables, where M(BGP) is a subset of the 
> scoping graph. There is one answer for each 
> distinct such SPARQL instance mapping M."
> ->
> "SPARQL uses the subgraph match criterion to 
> determine the multiset of answers. There is one 
> answer for each distinct pattern instance mapping 
> from the basic graph pattern to a subset of the 
> active graph."
> Next para,
> "when the dataset is lean" -> "when the active graph of the dataset is [lean]"
> and put a hyperlink on [lean] to http://www.w3.org/TR/rdf-mt/#deflean

Received on Tuesday, 20 March 2007 13:26:26 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 15:00:53 UTC