Re: Reification as nesting

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'

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...)

--
Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/

Received on Wednesday, 6 June 2001 20:03:37 UTC