W3C home > Mailing lists > Public > www-rdf-logic@w3.org > June 2001

Re: Reification as nesting

From: <jos.deroo.jd@belgium.agfa.com>
Date: Thu, 7 Jun 2001 11:54:09 +0100
To: phayes@ai.uwf.edu
Cc: timbl@w3.org, drew.mcdermott@yale.edu, www-rdf-logic@w3.org
Message-Id: <OFC646C5E9.EA38C542-ON41256A64.003787C8@bayer-ag.com>

(I know it is kind of unconformable (to reply to your own messages)
but I found no other way to explain/correct/get-rid-of what I wrote)

Pat wrote:
> Seems to me that all this can be done in one fairly simple way, by
> allowing the subject and object of RDF triples to themselves be RDF
> triples (not reifications of triples, but actual triples.) These
> 'inner' triples are not asserted, and the 'verb' of the triple that
> points to them provides the needed labelling. The distinction between
> subject and object provides the distinction between subnesting and
> nesting, much in the way that LISP uses CDRs to indicate list members
> and encodes sublists in the CAR. This would be a single, simple
> change to RDF which would support the kind of processing that CWM and
> Jos Deroos's Euler system are doing, and indeed would provide enough
> flexibility to encode abitrary list structures, so could easily
> accomodate, say, KIF syntax; it would leave all current RDF
> unchanged;

and I was replying:
> there of course possibilities e.g.
> (using N3 notation)
>
>   [[ has [ is :s1; :p1 [ is s2; p2 :o2]];
>      has [ is :s3; :p3 :o3]].
>
> where 'has' means something like '(statement)set membership'
> and 'is' means something like 'being the representative for'
> then statement2 is 'nested' in statement1
> whereas statement1 and statement2 or on 'equal feet'

and re-replying:
> this is not a clear example (sorry)
> lets take
>   { :TestCases :utility :high } :targetOf :sw.
> would become
>   [ has [ is :TestCases; :utility :high]] :targerOf :sw.
> and
>   {:x :twoway :z. :z :path :y} log:implies {:x :path :y}.
> would become
>   [ has [ is :x; :twoway :z]; has [ is :z; :path :y]] log:implies
>   [ has [ is :x; :path :y]].
>
> it's just that a computer would not have much trouble that
>   {
> becomes
>   [ has
> with 'has' repeated as many times as there are statements
>   :s :p :o.
> which *only then* would become
>   [ is :s; :p :o]
> (when they are in a 'nesting', so 'is' is recursive, whereas
> 'has' is iterative)
> (and this is indeed for machines...)

the 'is' is recursive, whereas the 'has' is enumerable
hence 'RE set of statements' (as mentioned in my reply
to Peter somewhere) or 'anonymous subgraphs' or
'existentially quantified terms'.
The point is that such nodes are NOT 'labeled as such'
but rather 'identified by their content' and are acyclic
(they are indeed 'nested' graphs)
which is not true for 'constant URI terms' and also
not true for 'universally quantified terms'
but appropriate measures can be taken to avoid most
(if not all) problems with that (cyclic deduction
detection (Euler), nonIrreflexiveProperty properties,
SKIF inspiration, ...)

--
Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/
Received on Thursday, 7 June 2001 05:54:30 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:52:40 GMT