- From: Yosi Scharf <syosi@MIT.EDU>
- Date: Wed, 07 Jun 2006 06:43:40 -0400
- To: public-cwm-talk@w3.org, oleber@gmail.com
This is what you would expect. The level at which it is stated that @forSome :b is all important. The statements: For some :b the following is true: if for some ?a, {?a :b :e} is true, then .... and The following is true: if for some ?a and for some :b {?a :b :e} then ... The issue is the quoting level of the forSome. The one with the @forSome on the outside clearly never has the rule fire. Only if a triple {?a :b :e} appeared in the document, with literally :b as the predicate, the rule would fire. Yosi Scharf > with: > > @forAll :a. > { @forSome :b . :a :b :e } => { ?a :e :b }. > { :a _:b :e } => { ?a :f _:b }. > :m :n :e. > > I obtain from cwm > > :m :e :b; > :f []; > :n :e . > { @forSome :b . :a :b :e . } log:implies {:a :e :b . } . > { @forSome :_g0 . :a :_g0 :e . } log:implies {:a :f [] . } . > > #################################### > > but from > > @forAll :a. > @forSome :b . > > { :a :b :e } => { ?a :e :b }. > { :a _:b :e } => { ?a :f _:b }. > :m :n :e. > > I obtain > > @forAll :a. > @forSome :b . > > :m :f []; > :n :e . > { :a :b :e . } log:implies { :a :e :b . } . > { @forSome :_g0 . :a :_g0 :e . } log:implies { :a :f [] . } . > > this means that we louse the triple ':m :e :b' from the output. I was > aspecting to get one of 2 triples: > > :m :e :n > :m :e :[] > > but no triples seems strang. > Shall I intrepet that: > if we have a existencial variable in the head (right side of the > rule), no triple shall be created. > if we have a existencial variable in the body (left side of the > rule) defined in a upper level (outside this context {} ), no triple > shall be created. > > Or there is a bug in cwm > > Thanks for the help > > Marcos > > > -- > Marcos Rebelo > http://oleber.awardspace.com/
Received on Wednesday, 7 June 2006 14:44:05 UTC