Rule qualifications and different rule types

Hi All,

With respect to my

ACTION: Adrian to investigate use cases where a specific Rule construct
would be needed (in future dialects, e.g. for CEP rules), as an indicator
for whether and how urgently such a construct would be needed in PRD


If RIF should be a general interchange format we 

1. need to support different types of rules
2. need to support different rule qualifications such as priority values or
temporal constraints such as validity times or fuzzy, uncertainty
quantifications, etc.


With respect to 1:

There are many other rule families.

For instance, defeasible logic which distinguish between defeasible rules,
where conclusions can be "defeated" by other rules with higher priority and
strict rules, which are like standard "if-then" derivation rules. 

For instance, reactive rules which add an explicit event part, i.e. "on
Event if Condition then do Action". 

Currently, we have Implies for if-then production rules and if-then
derivation rules. Instead of introducing many other specialized rule
construct we could generalize the Implies construct and reuse it in these
rule families, e.g. for defeasible rules there would be an additional
attribute on Implies indicating if the rule is strict or defeasible. For
reaction rules, we would introduce an event part.

However the Implies construct itself is semantically misleading since a
reaction rule is not an implication rule. So, probably a more general "Rule"
construct would make sense.



With respect to 2:

Qualifications are needed in various ways. We need them on rule sets, i.e.
on the complete Group. But we also need them on the rule level. Implies
could be used, i.e. we could add qualification (e.g. as attributes or
subelements) to the Implies. However, then unconditional actions and facts
would need to be wrapped by the Implies construct. Again, calling a fact and
implication is semantically incorrect - so a general "Rule" construct would
be the solution, since a fact is an unconditional rule.


-Adrian

Received on Tuesday, 3 March 2009 15:58:32 UTC