- From: Ginsberg, Allen <AGINSBERG@imc.mitre.org>
- Date: Tue, 7 Feb 2006 20:49:50 -0500
- To: "Peter F. Patel-Schneider" <pfps@inf.unibz.it>
- Cc: <public-rif-wg@w3.org>
Peter, Let's grant that the RIF is a rule language and that it is executABLE. There are still two questions that need to be considered: 1) Does a RIF-representation ever need to be executED in order for the RIF to do any of its jobs, and 2) If so, does the execution required for the RIF to do its job amount to the same thing as a rule language executing? Only if both of these questions are answered in the affirmitive would making the RIF an executable rule-language be an explicit design goal. For example, a UML representation of an application or system has a formal syntax and semantics, and might very well be exectuable, but it doesn't need to be executed in order for it to do its job, which is fundamentally to convey information about the application. Right now I see the RIF as having two main "jobs": interchange and interoperability. Interchange involves 1) translating from some rule language into the RIF, and 2)taking the resulting RIF-representation and translating that into another rule language. I don't see how executing a set of RIF-rules would necessarily be involved in that process. Basically this is a compilation problem. On the other hand, I can see that having an interpretable RIF rule language might enhance interoperability. A set of rules might be written in one language and then translated into the RIF. That RIF-representation could be used by a RIF-interpreter running on a server to answer queries coming in from various client processes running different rule-systems. The client queries would have to be translated into a RIF-format and the answers would have to be translated back into the various rule languages of the client systems. If that scenario makes sense in practice (as a use-case) then I would say that making the RIF an executable rule-language should be a design goal. It seems to make sense on the face of it, but then again, so have other ideas... Allen -----Original Message----- From: Peter F. Patel-Schneider [mailto:pfps@inf.unibz.it] Sent: Tuesday, February 07, 2006 11:59 AM To: Ginsberg, Allen Cc: public-rif-wg@w3.org Subject: Re: [RIF] [UCR]: What is the RIF (revisited) From: "Ginsberg, Allen" <AGINSBERG@imc.mitre.org> Subject: [RIF] [UCR]: What is the RIF (revisited) Date: Tue, 7 Feb 2006 10:55:41 -0500 > Dear RIF-WGers, [...] > Here are some questions to think about: > > 1) If the RIF is mainly (or just) a rule-language, how does it enable > interchange, anymore than some other rule-language? > > 2) Does the RIF need to be or include one or more rule-languages in > order to be a RIF? > > 3) If the RIF has the ability to specify or describe rules and > derivation procedures belonging to one or more rule-languages, does > that mean that the RIF must itself "be" one or more fully-fledged > rule-languages? > > > Allen All this fundamentally depends on what you think a rule language is. My view is that a rule language is no different from any other formal representation language. (An opposing view would be that a rule language must have as well a fully-worked-out procedural meaning.) Under my view, how could a RIF *not* be a rule language or family of rule languages? The RIF is going to have a formal syntax - otherwise how can it be used to interchange rules (because there will be no way to parse the RIF)? The RIF is also going to have a formal semantics - otherwise how can it be used to interchange rules (because there will be no way to determine what a particular bit of the RIF means)? Now it may be the case that there is no single formal semantics for all the constructs of the RIF. This would be a shame in my view, but I suppose that it may turn out that this is the best that can be done in Phase 2. Peter F. Patel-Schneider
Received on Wednesday, 8 February 2006 01:50:26 UTC