- From: Gary Hallmark <gary.hallmark@oracle.com>
- Date: Tue, 24 Jun 2008 10:12:27 -0700
- To: Adrian Paschke <adrian.paschke@biotec.tu-dresden.de>
- CC: "'Christian de Sainte Marie'" <csma@ilog.fr>, "'pu >> RIF WG'" <public-rif-wg@w3.org>
Adrian Paschke wrote:
> 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)
>
>
are Clips facts more like frames (because of the ID) or more like
uniterms (but RIF uniterms have no ID) ?
I've been assuming Clips facts map to RIF frames (to get an ID) +
numeric slot keys to provide the parameter order + frame axioms that
specify that slot keys are distinct.
>
>> 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 17:14:34 UTC