- From: naudts guido <naudts_vannoten@yahoo.com>
- Date: Mon, 21 Apr 2008 08:07:44 -0700 (PDT)
- To: cwm <public-cwm-talk@w3.org>
Hallo Jeff,
the consequent is the conclusion of the antecedents (modus ponens).
The triples in the consequent part should not be matched with data triples?
I see the rule as creation of triples and isn't that how the forward reasoners are
implemented? When a rule is 'executed' the consequent triples are added to the database?
So my rule will create in this interpretation following triples:
:blank_node a flightOrder; :name :Peter; :name :John.
if the blanknode is considered to be unique.
Well, I see now that it would still work, but I do not like too much the construction.
I would prefer:
:blank_node1 a flightOrder; :name :Peter.
:blank_node2 a flightOrder; :name :John.
which would give an id to the flightOrder.
Greetings, Guido
----- Original Message ----
From: Jeff Thompson <jeff@thefirst.org>
To: naudts guido <naudts_vannoten@yahoo.com>
Sent: Sunday, April 20, 2008 7:08:47 PM
Subject: Re: matching existing existentials in the consequent.
naudts guido wrote:
> Hallo,
> OK to replace existentials in the consequent in the given example, but what with the following:
> {?person :orders :flight} => { [a :flightOrder; :name ?person]}.
>
> In accordance with forward reasoning where the consequent of a rule creates a new triple,
> the rule above creates a triple : some_blank_node a :flightOrder; :name some_person.
> Now if we have:
> :John :orders :flight. and :Peter :orders :flight.
> we do want the :flightOrders to be different.
The :flightOrders would still be different as you want because ?person is different.
That is, if the graph already contains {[a :flightOrder; :name :Peter]}, then this
will not satisfy the consequent of the rule for {:John :orders :flight} because
:John and :Peter are not the same ?person.
> ----- Original Message ----
> From: Jeff Thompson <jeff@thefirst.org>
> To: public-cwm-talk@w3.org
> Sent: Sunday, April 20, 2008 9:17:28 AM
> Subject: Re: matching existing existentials in the consequent.
>
>
> Dan Connolly wrote:
> >> I ask because cwm will match existing existentials in the antecedent, so shouldn't
> >> it also match them in the consequent, and just leave it as bob owns Fluffy without
> >> adding another assertion?
> >
> > Perhaps... cwm does some redundancy checking, but it's
> > not smart enough to realize that
> >
> > :bob :owns [a :Cat]
> >
> > is redundant w.r.t.
> >
> > :bob :owns :fluffy. :fluffy a :Cat.
>
> I must beg to differ, because cwm is smart enough to realize this in the antecedent.
> For example, the following matches with {:bob :owns :fluffy} as expected:
> bob owns fluffy.
> fluffy a Cat.
> {?x owns [a Cat]} => {?x a CatOwner}.
>
> > The problem of figuring out which part of the conclusion is
> > redundant is pretty hard. It's called the subgraph isomorphism
> > problem, I gather.
>
> Am I mistaken? It seems that cwm can find the subgraph isomorphism in the antecedent.
>
>
>
>
>
>
>
>
>
> ____________________________________________________________________________________
> Be a better friend, newshound, and
> know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ
>
>
>
____________________________________________________________________________________
Be a better friend, newshound, and
know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ
Received on Monday, 21 April 2008 15:08:25 UTC