Re: [RIF] What is in the scope of RIF and what is not?

On 31 Jan 2006, at 18:09, Christian de Sainte Marie wrote:
> One of them regards the very nature of the RIF, that is, rule  
> _interchange_.
>
> I have read in several postings things like "the problem is if the  
> head/conclusion of a rule contains this or that, because it would  
> make the rule unsafe" (e.g. in one of Enrico's mail "the problem  
> happens if the query contains an existential variable (e.g. a  
> bnode), since this would make the rule unsafe"): I do not  
> understand why this is a problem from the view point of the RIF.
>
> Let me explain: as I understand the use of the RIF, there is a rule  
> language L1 and a rule language L2; somebody writes rules in L1 for  
> a specific purpose and somebody wants to be able to translate those  
> rules into L2 for some specific purpose. In this basic RIF  
> scenario, rules are designed/written in L1, mapped into the RIF,  
> mapped from RIF into L2, and used (e.g. executed by a rule engine,  
> but not necessarily) in L2. And, in this basic scenario, a rule  
> being safe or unsafe is the problem of L1 and L2 and their users  
> and how they use the rules, not the RIF.
>
> More generally, my understanding is that the RIF has to be able to  
> carry unambiguously what a rule means, but what an application  
> does, or what it may or may not do with the rule, or the  
> consequences of using that rule, is out of the scope of the RIF.

I agree, if the statement <"the RIF has to be able to carry  
unambiguously what a rule means"> has the following meaning.
The RIF defines unambiguosly the meaning of a rule; if there is more  
than one "relevant" intended meaning, RIF will propose either a  
unified version of those meanings or a set of alternative meanings  
together with a protocol to choose among them.

> Of course, my understanding may be quite naive here: it would help  
> me (and maybe others), if we could provide examples fitting the  
> basic scenario above (L1 -> RIF -> L2 -> application) when we  
> discuss such problems, difficulties and issues.
>
> Actually, it would help making sure that a discussion is in scope  
> if any point made on the mailing list what illustrated with an  
> example in the above form, thus showing where, how and to what  
> degree it is expected to impact the design of the RIF, as opposed  
> to impacting the receiving/using application.

I don't understand here. Take my use case scenario (which, by  
definition, is describing the impact of RIF on the receiving/using  
application) in <http://www.w3.org/2005/rules/wg/wiki/ 
Managing_incomplete_information>.
 From the use case, it can be understood that the same rule can be  
understood in more than one way; this different meanings of the same  
rule may give rise to different conclusions by the receiving  
applications. Note that this does not depend on the kind of use that  
the receiving application is making of the rule; this dependes  
exclusively on the declared semantics of the interchanged rule. So  
the RIF should have the ability to specify which is the real meaning  
of the rule that it is chosen.

So, in the case of unsafe rules, we know that there are several  
meanings you can give to unsafe rules. My comment was about the fact  
that the obvious meaning (the classical one) is not the one which is  
considered by most users, and that characterising formally the real  
meaning of unsafe rules adopted by users may be a problem in the  
sense that most users never made this non-classical meaning explicit.

cheers
--e.

Received on Tuesday, 31 January 2006 19:53:09 UTC