cwm sticking point

I'm a newbie to RDF and N3 & I apologize for not lurking longer, but I've
reached a sticking point, and it must be simple. If someone could please
enlighten me, off-list if need be, I'd be grateful.


When I run the uncles.n3 example in cwm, I get the following output:

C:\DOCUME~1\JR\MYDOCU~1\SOFTWA~1\cwm\old\cwm1.82>python cwm.py
uncle.n3 --think

#Processed by Id: cwm.py,v 1.82 2001/11/15 22:11:23 timbl Exp
       #    using base
file:/DOCUME~1/JR/MYDOCU~1/SOFTWA~1/cwm/old/cwm1.82/uncl
e.n3

#  Notation3 generation by
#       notation3.py,v 1.98 2001/11/15 22:11:24 timbl Exp

#   Base was: file:/DOCUME~1/JR/MYDOCU~1/SOFTWA~1/cwm/old/cwm1.82/uncle.n3
    @prefix : <#> .
@prefix log: <http://www.w3.org/2000/10/swap/log#> .

   :Fred     :brother :Bob .

   :Joe     :father :Fred;
        :uncle :Bob .

   this     log:forAll :who1,
               :who2 .
   {
       :who1     :father  [
                :brother :who2 ] .

       }     log:implies {:who1     :uncle :who2 .
       } .

#ENDS

So here is my question/problem: why does it say:
   :Fred     :brother :Bob .
I mean, this seems backwards to what the uncle.n3 specified, which was
that :Bob was the :brother of :Fred. Now, if cwm derived this, then it
should have been by some kind of "inverseOf" predicate -- but no such rule
was given. If the order is reversed in this output, then why?

It goes on to say:
   :Joe     :father :Fred;
        :uncle :Bob .

But, :Joe is not the :father of :Fred, rather the inverse. Again, why is the
order inverted? I saw no mention of an inversion anywhere in the
tutorial/web-page.

I appreciate the help to an admitted newbie! If this is explained anywhere,
please just point me to it & don't waste your precious time.

Received on Thursday, 27 February 2003 14:20:33 UTC