AW: AW: [PRD] ACTION-531 Update PRD examples complete

Actually,

?f1 <- (valve ?v open)

in Clips means: Match a valve fact whose first parameter is variable ?v and
second parameter is constant 'open'. When you find a match, then ?f1 is the
ID of this fact which can be used in the head of a rule to assert it, i.e. 

... -> assert(?f1)


> I would not include it in FPWD, though, before we discuss it more (e.g., 
> in the assert, would it be a Var or a skolem fct like _new?)

But, I agree as our goal is to have an uncontroversial minimal PRD which
works for all production rule systems and is aligned with BLD, we should not
include it in the first working draft.

-Adrian

-----Ursprüngliche Nachricht-----
Von: public-rif-wg-request@w3.org [mailto:public-rif-wg-request@w3.org] Im
Auftrag von Christian de Sainte Marie
Gesendet: Dienstag, 24. Juni 2008 16:40
An: Adrian Paschke
Cc: 'Gary Hallmark'; 'pu >> RIF WG'
Betreff: Re: AW: [PRD] ACTION-531 Update PRD examples complete


Adrian Paschke wrote:

> Gary,
> 
> Excellent job! 
> 
> 
> Christian, Gary,
> 
> I added a small extension to the presentation syntax in chapter 2.5.
> allowing variables in the assert and retract actions
> 
>    ASSERT    ::= Atom | Frame | Var
>    Retract   ::= 'Retract' '(' Atom | Frame | Var ')'
> 
> [...]
> 
> We already use equal for single assignment to variables such as "?f1 =
> (valve ?v open)".

Do we? I do not think that we want reification in PRD, do we?

However, Adiran syntax might be a way to handle the creation/deletion of 
objects.

I would not include it in FPWD, though, before we discuss it more (e.g., 
in the assert, would it be a Var or a skolem fct like _new?)

> I would even propose to add a "*" to the EBNF, so that we can directly
> describe multiple retracts / asserts such as "(retract ?f1 ?f2)", instead
of
> splitting them into two retracts, retract(?f1) retract(?f2).

Do you want to table that in issue 62?

Cheers,

Christian

Received on Tuesday, 24 June 2008 16:52:30 UTC