W3C home > Mailing lists > Public > public-rdf-dawg@w3.org > April to June 2004

Re: Reqirement 3.5: subgraph results

From: Eric Prud'hommeaux <eric@w3.org>
Date: Wed, 5 May 2004 09:50:12 +0900
To: Rob Shearer <Rob.Shearer@networkinference.com>
Cc: Jos De_Roo <jos.deroo@agfa.com>, "Dan Connolly <connolly" <connolly@w3.org>, RDF Data Access Working Group <public-rdf-dawg@w3.org>, public-rdf-dawg-request@w3.org
Message-ID: <20040505005012.GG9495@w3.org>

On Tue, May 04, 2004 at 02:06:49PM -0700, Rob Shearer wrote:
> 
> > Neither do I...
> > I would simply ask the following RDF/N3 kind of query
> > (<graph>).da:from da:select {?N1 <p1> ?N2}, {?N1 <p2> ?N2}.
> > and when getting a nonempty graph the answer is "true"
> > as simple as that!
> 
> What's your original graph and what's your subgraph, Jos?
> 
> I'm offering a graph with two nodes and no edges, plus the fact that an
> edge of type either p1 or p2 must exist between the two encoded in some
> higher-level semantic language.
> 
> I can only see four possible subgraphs of the original graph: one node,
> the other node, both nodes, or neither node. None of these options
> explicates the answer.

I was under the impression that the problem we were solving was one of
querying an RDF graph and potential inferences from that graph. If we
try to solve the problem of communicating higher-level semantics in a
way that naive RDF processors will understand, we'll be busy for a
very long time. Therefor, I am happy to constrain the "fact that an
edge of type either p1 or p2" to be expressible in RDF statements ala
this example from the "OWL Guide" [1]:

  <owl:Class rdf:ID="Fruit">
    <rdfs:subClassOf rdf:resource="#SweetFruit" />
    <rdfs:subClassOf rdf:resource="#NonSweetFruit" />
  </owl:Class>
and another ground fact:
  <ex:Fruit rdf:about="http://www.WordNet.org/grapefruit" />

Ask a question to which the answer is yes:
ask (<http://www.WordNet.org/grapefruit> owl:Class ex:SweetFruit || 
     <http://www.WordNet.org/grapefruit> owl:Class ex:NonSweetFruit)

and get back the following supporting evidence:
  <owl:Class rdf:ID="Fruit">
    <rdfs:subClassOf rdf:resource="#SweetFruit" />
    <rdfs:subClassOf rdf:resource="#NonSweetFruit" />
  </owl:Class>
  <ex:Fruit rdf:about="http://www.WordNet.org/grapefruit" />

If noone has worked out how to express the "fact that an edge of type
either p1 or p2" in RDF, then I'm happy saying we don't define the
answer in a DAWG-QL spec. Variable binding syntaxes from DAWG-QL may
be useful in answering questions on graphs we can't express, but I bet
we'll have a hell of a time defining test suites for them.
-- 
-eric

office: +1.617.258.5741 NE43-344, MIT, Cambridge, MA 02144 USA
cell:   +1.857.222.5741

(eric@w3.org)
Feel free to forward this message to any list for any purpose other than
email address distribution.
Received on Tuesday, 4 May 2004 20:51:43 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 16:15:19 GMT