W3C home > Mailing lists > Public > public-rif-wg@w3.org > November 2007

RE: [PRD] a RIF-PRD strawman

From: Paul Vincent <pvincent@tibco.com>
Date: Wed, 7 Nov 2007 11:08:17 -0800
Message-ID: <8F4A4531BB49A74387A7C99C7D0B0E0503417AC5@NA-PA-VBE02.na.tibco.com>
To: <paula.patranjan@ifi.lmu.de>, "Christian de Sainte Marie" <csma@ilog.fr>
Cc: "RIF WG" <public-rif-wg@w3.org>

Hi Paula, Christian: a few comments below...

I wonder if we should have a separate / sooner F2F7b for PRDialect? If
we decide this is a good idea, I'd be happy to host at TIBCO (eg in
Maidenhead near London, UK).

[Paula: sorry I didn't get to say hello at RuleML'07 the other week] 

Paul Vincent
TIBCO | ETG/Business Rules 
> -----Original Message-----
> From: public-rif-wg-request@w3.org
> On Behalf Of Paula Patranjan
> Sent: 02 November 2007 12:04
> To: Christian de Sainte Marie
> Cc: RIF WG
> Subject: Re: [PRD] a RIF-PRD strawman
> Hi Christian,
> since I won't be at the F2F next week, I'm going
> to write down a couple of comments I have on your
> proposal RIF-PRD.
> 1. As Harold already mentioned during the telecon
> this week, it is not really clear why the notion of
> pattern is introduced since they correspond to a
> condition in RIF-BLD terms. If I understood it right
> you extend RIF-BLD conditions with negative conditions.
> I know, you said that the notion of pattern is very
> familiar to production rule (PR) system developers, still
> I think we shouldn't introduce new notions. My proposal
> would be to use conditions instead of patterns and add
> a note saying that these correspond to so-called patterns
> in some concrete PR languages given as examples.

[PV>] Well, PR languages include patterns, so is there a *practical*
reason not to include them in RIF-PR (other than they are different vs
other rule languages)? Possibly this is an academic/new vs
commercial/existing viewpoint, and I certainly take the view that as
current commercial systems allow external patterns / queries to be
defined in the rule, it makes sense to include these in the equivalent
RIF dialect. 

I'm pretty sure this is not a problem in reactive rule languages in use?

The explicit pattern definition makes RIF-PR compliant with OMG PRR too.

> Also, some researchers make a difference between patterns
> and paths for data in specifications of e.g. queries (for
> example Xcerpt is a pattern-based query language whereas
> XQuery is a path-based query language, both primarily
> designed for XML data).
> 2. When it comes to actions, there is a question stated as
> an issue on whether we need update action in RIF-PRD or not.
> Do you have here the update statement in mind that signals
> that the working memory should be updated now taking into
> consideration the given assert, remove, and modify actions?
> I noticed that some PR languages support such an explicit
> update statement on the working memory (for example the ILOG
> Rule Language, IRL, as far as I know), but some do not.

[PV>] In some rule systems, the update is explicit, and in some it is
implicit. So for translation between rule language systems, such an
update clause may make sense. 

The update approach should follow that of OMG PRR too.

> 3. As you might know, we had a lecture together with two
> colleagues of you from ILOG on reactive rules at the
> Reasoning Web 2007 summer school [1]...I learned from this
> lecture that PR languages that rely on a data model that is
> borrowed from a programming language usually borrow also
> some of the language's statements for the action part.
> It might be the case that your execute action covers these,
> but the question is what happens with the definitions of
> e.g. Java methods that are defined outside the rules? Are
> they going to be also interchanged? Or ar they going to be
> available at some URI?

[PV>] An excellent question - this is where the semantics of the
underlying data model become important (ie object methods in a Java
system being available for both conditions and actions). But
practically, if I am interchanging rules including Java / OO programming
code, then maybe I should be dealing with the "model" level (ie OMG PRR)
rather than RIF. If I am doing an electronic contract, I would expect
the data to be transferred in something like XML (and the rules in RIF).
For sure, Java system rule interchange is a RIF use case (see the JSR-94
comments by Daniel Selman)

> 4. In ILOG JRules you also have the possibility to attach
> priorities to rules. Is this going to be covered by an
> extended version of the RIF-PRD proposal? Priorities are
> also means to implement a conflict resolution strategy;
> I know that you discussed also the issue of a resolution
> strategy for a set of rules and I think it is kind of
> implicit to the rule engine in your case, but priorities
> need an explicit specification in the syntax.

[PV>] Yes the execution semantics for rule and ruleset is seen as an
important topic to cover for RIF (see the F2F8 PRDialect breakout

Personally, I don't see this as hugely important as
- most Business Rules don't use complex rule chaining / exercise
conflict resolution in modern BREs (per FIC's Dr Bob's comments at the
PRDialect breakout)
- it can always be covered in a version 2...

> 5. As a general comment, I think that some of the notions
> discussed in the proposal need more explanation. It is
> clear that this is just the first version of RIF-PRD, but
> for non-experts in the PR field explanation of notions
> such as the working memory would be good to have.

[PV>] I'm pretty sure even Christian would say this was a *rough* draft!

> 6. A couple of nice examples can be found in [1] and they
> are given using different PR languages. These examples and
> in fact the whole part on PR systems of the paper could be
> useful for better understanding the RIF-PRD (as it is at moment
> and also in its next versions).

[PV>] Good stuff!

> Best regards,
> Paula
> [1] http://www.pms.ifi.lmu.de/publikationen/index.html#PMS-FB-2007-8
> >
> > All,
> >
> > I just uploaded my (much awaited :-) PRD strawman on the wiki [1]
> > for the more readable TR form).
> >
> > It has still no examples in it, nor an XML syntax (that one will be
> > to derive from BLD's); and, generally, many things are still
> > including a section on BLD and PRR compatibility (but I designed it
> > BLD and PRR compatibility in mind, so, that should not be too
> > either).
> >
> > But I hope that it clear enough to make sense without them (hmmm...
> > I know: I do not have a strong record there... :-)
> >
> > [1]http://www.w3.org/2005/rules/wg/wiki/PRdialect
> > [2]
> > http://burns.w3.org/cgi-
> dialect&Go=Go
> >
> > Disclaimer: this is *not* ILOG's strawman. It has not been endorsed
> > reviewed in any way by ILOG and it does not represnet ILOG official
> > unofficial view. Of course, it is influenced by ILOG rule language
> > engine, since those are the ones I know best: but I do not even know
> > them that good (actually, I certainly know BLD and PRR better than I
> > know IRL :-)... I am not even sure that ILOG will like it (I
> > hope, and I think, they will, and the other vendors too; but I did
> > check yet). So, again no particular ILOG hat on my head, here. Not
> > that it is fitting for a chair to submit a strawman, but if it is, I
> > comfortable to submit this with my chair's hat on. If not, consider
> > chair's hat is off (and so I have no hat at all; and now I got a
> > c'est malin!).
> >
> > Christian
> >
> >
> >
> >
> >
> >
Received on Wednesday, 7 November 2007 19:08:41 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:47:48 UTC