- From: Pat Hayes <phayes@ihmc.us>
- Date: Mon, 28 Mar 2011 00:12:20 -0500
- To: Gregg Reynolds <dev@mobileink.com>
- Cc: SW-forum Web <semantic-web@w3.org>
- Message-Id: <2638E800-48AB-4BE8-91D9-CF1AEC5A9809@ihmc.us>
On Mar 27, 2011, at 10:16 PM, Gregg Reynolds wrote: > 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. See http://www.w3.org/TR/2004/REC-rdf-testcases-20040210/#ntriples and the table given there. > 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. Is that not utterly obvious? Why else would one call it an "identifier for a blank node" ? > For that matter, nothing that says the mapping must preserve URIs. The URIs used in the n-triples notation (used throughout the semantics document) are *identical* to the URIs in the abstract syntax. I fail to see how they can fail to be 'preserved' under these circumstances. > 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. It follows from the fact that a graph is defined to be a set of triples. The set {a, a} is the same as the set {a}. > 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 You can replace any (or indeed none) of them, and you still have an instance. > , it places no constraints on the replacement (except that they be bnodes, literals, or URI refs), and it says nothing about *removing* nodes. Indeed, nodes do not get removed by an instantiation. > 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. A graph is a set of triples. Instantiation is defined as substituting a (blank node, URI or literal) for a blank node. Take the above graph and substitute the URI <ex:a> for the blank node _:y. This does not affect the second triple, which does not contain that blank node, but it makes the first triple identical to the second triple. The resulting set therefore contains a single triple: <ex:a> <ex:p> _:x . which is a subgraph of the original graph. Make sense now? Pat > I suppose I'll find out such rules are right there in plain site, but I sure can't find them. > > -Gregg ------------------------------------------------------------ IHMC (850)434 8903 or (650)494 3973 40 South Alcaniz St. (850)202 4416 office Pensacola (850)202 4440 fax FL 32502 (850)291 0667 mobile phayesAT-SIGNihmc.us http://www.ihmc.us/users/phayes
Received on Monday, 28 March 2011 05:13:02 UTC