- From: Pierre-Antoine Champin <pierre-antoine.champin@ercim.eu>
- Date: Thu, 14 Oct 2021 14:24:55 +0200
- To: "public-n3-dev@w3.org" <public-n3-dev@w3.org>
Received on Thursday, 14 October 2021 12:24:58 UTC
Hi all,
I am still struggling with variable scopes, and I came up with the
following example:
(link to N3 editor: http://ppr.cs.dal.ca:3002/n3/editor/s/f20yee8Y )
@forAll :X, :Y, :Z.
{ :X :wrote { :Y :wrote :Z } } => { :X a :MetaWriter1 }.
{ :X :wrote { :Y :wrote [] } } => { :X a :MetaWriter2 }.
:alice :wrote { :bob :wrote :abook }.
:charlie :wrote { :bob :wrote [] }.
NB: the @forAll is only required by CWM. In Eye, :X, :Y and :Z can
simply be replaced with ?x, ?y and ?z for the same result.
The two rules are slightly different. Should they fire in the same
situation?
EYE fires both rules for both :alice and :charlie.
CWM on the other hand, fires only the 1st rule for :alice, and fires
both for :charlie.
What is your take on this? I personally have not made up my mind on this...
pa
Received on Thursday, 14 October 2021 12:24:58 UTC