W3C home > Mailing lists > Public > www-rdf-interest@w3.org > January 2002

Expressing "not" in RDF rules

From: Norman Walsh <Norman.Walsh@Sun.COM>
Date: Wed, 23 Jan 2002 14:44:42 -0500
To: www-rdf-interest@w3.org
Message-ID: <87sn8wg8d1.fsf@nwalsh.com>
Hello world,

I've been fiddling with RDF recently to build a few little graphviz
diagrams. I'm reasonably comfortable using logical inference to deduce
properties with statements of the form

  { :p :someProperty :s } log:implies { :s :someOtherProp "foo" }

but I claim no deep knowledge of RDF.

For my most recent toy, I want to do something more complex and I
can't get my head around it. The short question is, how do I express
"not" in an RDF rule.

The longer question is:

Suppose I have three nodes, :p, :s, and :t. I want to express the
following rule:

If    :p :pointsTo :s
and   :p :pointsTo :t
and   not(s :pointsTo :t)
then  :p :hasEdge :t

Graphically, I'm trying to avoid a bunch of extraneous edges. Given

     [p]----------------->[t]
      |                    ^
      +---->[s]------------+

I want to simply graph:

     [p]------>[s]------->[t]

I hope that makes something resembling sense. :-)

                                        Be seeing you,
                                          norm

-- 
Norman.Walsh@Sun.COM   | One's never alone with a rubber duck.
XML Standards Engineer |
XML Technology Center  | 
Sun Microsystems, Inc. | 
Received on Wednesday, 23 January 2002 14:46:11 GMT

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