RE: Using declarative rules for MISMO ?

Sandro: can you explain why (you believe) a rule statement like
> > rule "Credit Score Adjustments 1"
> >   date-effective "25-OCT-2001 17:26:14"
> >   when
> >     cs : CreditSCore( programGroup == "ACMEPowerBuyerGroup",
> >                       lienType     == "FIRST_TD; SECOND_TD",
> >                       devision     == "Wholesale",
> >                       creditScore  >= 580 & <= 679 )
> >   then
> >     cs( score = cs.score -0.3 );
> > end
Is not declarative? 

AFAIK the term "declarative" refers to the rule statement in the context
of other rule statements - and there is no requirement for rule ordering
implied by the above rule fragment. Unless you are referring to the
action "reduce score by 0.3" which (a) implies some precondition re
score already having a value and (b) *is* the actual MISMO "logic" (so
is not something we are at liberty to change :)).

PS Sorry to hear about the broken snow globe. Nothing, I'm sure, to do
with international baggage handlers' opinions of US government attitudes
to global warming... 

Cheers

Paul Vincent
TIBCO | ETG/Business Rules 
 

> -----Original Message-----
> From: public-rif-wg-request@w3.org
[mailto:public-rif-wg-request@w3.org]
> On Behalf Of Sandro Hawke
> Sent: 10 June 2007 20:39
> To: Rule Interchange Format (RIF) Working Group WG
> Subject: Using declarative rules for MISMO ?
> 
> 
> 
> "Boley, Harold" <Harold.Boley@nrc-cnrc.gc.ca> writes:
> > Hi Mark,
> >
> > Thanks for your initiative.
> >
> > Many of us have been traveling around F2F6 (for too long :-).
> > E.g., I'm writing this from a Vienna Internet Cafe.
> 
> :-)  (I made it home yesterday.  Played with the kids, mowed the lawn,
> etc, etc.  One of my daughters guessed, on the first try, that I
brought
> her an Innsbruck snow-globe; alas, it broke in my luggage!)
> 
> > Also, maybe some context was missing.
> >
> > Let me thus give the path to a complete MISMO example,
> > and disucss it, below:
> >
> > http://lists.w3.org/Archives/Public/public-rif-wg/2007Mar/0096.html
> >
> > MISMO_BREW_POC.zip
> > MISMO BREW POC
> > example1.drl.txt
> >
> >
> > rule "Credit Score Adjustments 1"
> >   date-effective "25-OCT-2001 17:26:14"
> >   when
> >     cs : CreditSCore( programGroup == "ACMEPowerBuyerGroup",
> >                       lienType     == "FIRST_TD; SECOND_TD",
> >                       devision     == "Wholesale",
> >                       creditScore  >= 580 & <= 679 )
> >   then
> >     cs( score = cs.score -0.3 );
> > end
> ...
> > However, we have not yet decided on the semantics of setters
> > acting as reassignments, as in score = cs.score -0.3.
> ...
> 
> I wonder if the MISMO community would be better served by declarative
> rules.  I don't know much about their deployment scenarios.  These
kind
> of "adjustment" and "score" rules seem pretty easy to translate into a
> declarative form.  Then this would fit into RIF Core.
> 
> If there is an open set of possible adjustments, then I think one
needs
> a world-closing aggregator like Prolog's "findall" (which I don't
expect
> in Core).  If the rules are all known in advance of some processing
> point, however, then I think it's easy enough to chain them together
> into a purely declarative structure.
> 
>    -- Sandro
> 

Received on Monday, 11 June 2007 07:47:25 UTC