RE: Using declarative rules for MISMO ?

"Paul Vincent" <pvincent@tibco.com> writes:
> 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 :)).

Ah, perhaps I'm over-using the term "declarative".  I meant "deductive"
or "pure logic" rules; it is the action part that I'm trying to work
around.

My point is that, as far as I can tell from these rules, the MISMO logic
could be written as deductive (condition-condition, non-action) rules.

I would kind of like to understand why the MISMO community does not want
to do that, but mostly my point is that one can, I believe, translate
(compile) the kind of rules they are writing into deductive rules.  And
doing so would enable such rules to be conveyed in RIF Core.  They could
be run by non-production-rule systems, combined with other types of
rules, and (I suspect) subject to greater optimization.  (I don't know
if performance is an issue for them, but surely it is for some rule
users.)

> 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...

Nothing, I'm sure.  :-)

    -- Sandro

Received on Monday, 11 June 2007 11:30:01 UTC