Re: Blank nodes, leaning, and the OWA

On Sun, Mar 27, 2011 at 10:16 AM, Pat Hayes <phayes@ihmc.us> wrote:

>
> On Mar 27, 2011, at 12:13 AM, Gregg Reynolds wrote:
>
...

> [1] a)  <ex:Pedro ex:owns _:x>, <_:x rdf:type ex:Donkey>, <_:x ex:name
> ex:Daisy>
>      b)  <ex:Pedro ex:owns _:y>, <_:y rdf:type ex:Donkey>, <_:y ex:name
> ex:Maisy>
>
> ...

> Is the graph of [1] lean?  It seems to me that under the OWA the answer
> must be that we do not know,
>
>
> It is lean, and we do know this. Leanness is a syntactic property of the
> graph. You can determine it algorithmically.
>
...

> You apparently do not understand it. Check out the definitions in the
> specs, they are given quite unambiguously. A graph is lean when it is has no
> instance which is a proper subgraph of itself. The graph [1] does not have
> such an instance, so it is lean. Nothing to do with models!
>
> Trust me, I've spent more hours than I care to count trying to decipher the
specs.  Whatever they are intended to convey may be unambiguous; what the
text actually says is another matter.  For example, I find no syntactic
rules that allow me to map a piece of concrete syntax to the abstract
syntax. Nothing that says explicitly that e.g. every _:x should map to one
blank node, nor that distinct bnode IDs cannot map to one bnode.  For that
matter, nothing that says the mapping must preserve URIs.  Also no
*syntactic* rule that allows me to map

<ex:a> <ex:p> _:x .
_:y <ex:p> _:x .

to <ex:a> <ex:p> _:x .  This looks like it should be some kind of syntactic
reduction step, but I find nothing to justify elimination of the second
clause except semantic considerations.  The definition of instance upon
which the definition of leaning depends only mentions "replacing some or all
blank nodes"; it doesn't say which ones to replace, it places no constraints
on the replacement (except that they be bnodes, literals, or URI refs), and
it says nothing about *removing* nodes.  In fact as I read it getting from a
graph to an "instance which is a proper subgraph" is not even possible
syntactically, since we have no syntactic rule for eliminating triples.  I
suppose I'll find out such rules are right there in plain site, but I sure
can't find them.

-Gregg

Received on Monday, 28 March 2011 03:16:34 UTC