- From: naudts guido <naudts_vannoten@yahoo.com>
- Date: Tue, 19 Oct 2004 04:43:47 -0700 (PDT)
- To: Raymond Racine <rracine@adelphia.net>
- Cc: cwm <public-cwm-talk@w3.org>
Hallo, I can reply what I said on Eulermoz developers group: --- Alfred Döblin <alfred_doeblin@yahoo.de> wrote: > Hi, > > trying to parse gedcom-relations.n3 I've come across > a > never-heard-of symbol cluster my scanner has been > unable to deal with: > > {{:person1 /= :person2} log:implies {:person1 > ont:differentIndividualFrom :person2}} a log:Truth; > log:forAll :person1, :person2. > # rule added for N3Engine - G.Naudts > > Does /= constitute standard n3? Where could we find > more information about it? What does it mean? > > Cheers, > > Alfred, 4Clerks > Hallo, This is not standard N3 (or commonly accepted N3; N3 is not a standard); this is a feature I introduced; with log:falseHood one could say: {:person1 = :person2} a log:falseHood. However, Tim Berners-Lee does not support anymore log:falseHood. Personally, I believe such a feature is necessary. With pure N3 and RDF(S) this cannot be expressed. With OWL this becomes: :person1 owl:differentFrom :person2. Greetings, --- Raymond Racine <rracine@adelphia.net> wrote: > > I have a SML based N3 parser that does most of the > core stuff and simple > formulae. I am marrying up the Parser with a Rete > implementation and > started to write simple N3 tests for the Rete and > hit a couple of N3 > notation issues. > > I am assuming a simple block world. > i.e. > > :b1 :on :b2; > :color :blue . > .... > > 1. Negated Conjunctions > > {?x :on ?y . ?y :leftof ?z . ~ ( ?z :color :red . ?z > :on ?w.) } => ... > > This production matches if there is a stack of (at > least) two blocks > designated by ?x and ?y to the left of some block, > ?z, which is not both > red and on some other block. > > With negated conjunctions the following works as > well. > A production that checks whether every red block has > a blue block on top > of it can be re-written as there is no red block > that does not have a > blue block on top of it, i.e. > > Using SOAR-like notation, not N3. > > ~{ (?x color red) ~{ (?y on ?x) (?y color blue) } } > => .... > > 2. Simple Negated Condition > > (?x on ?y) (?y leftof ?z) ~(?z color red) => .... > > Matches if there is a stack of (at least) two blocks > to the left of some > block which is "not" known to be red. > > Does N3 have a notation to create these kind of > Rules/Formulae? > > Ray > > > > > __________________________________ Do you Yahoo!? Yahoo! Mail - Helps protect you from nasty viruses. http://promotions.yahoo.com/new_mail
Received on Tuesday, 19 October 2004 11:44:19 UTC