On 07/11/12 00:18, Scott Streit wrote:
*Dave, I have some subsequent questions.
If you have forward rule:*
(?g ie:mandatoryInterestsForGroupI
nclusion ?i),
noValue(?u ie:hasIndividualInterestOf ?i),
noValue(?u ie:memberOf ?g)
->
* (?u ie:notEligibleFor ?g)
This whole thing has to fire after the previous forward rule to add
interests to users. How can I be assured that it fires after the forward
chaining rules for adding interests to groups. *
Unfortunately you can't.
The rules engine doesn't have any stratification of rules. The noValue
predicate is horribly non-logical (it is not a negation), if you use
noValue on a predicate that you are also asserting via another rule then
all bets are off.
You can nest rule engines, create one InfModel over the top of another,
which *may* get you the layering you want.
Dave