Вопрос по – Слюни - иерархия правил и условное исполнение

9

Мне было интересно, есть ли способ определить иерархию (а не только порядок выполнения) между правилами и контролировать выполнение правила - то есть, если родительское правило сработало, то приведенные ниже не должны оцениваться и т. Д ...

Информация в этой теме является опцией, но по сути она IF / THEN / ELSE

Есть ли другой вариант?

Спасибо

Ваш Ответ

1   ответ
14

что понимаю ваш вопрос, но использование комбинации групп активации и традиционных стратегий разрешения конфликтов может достичь того, что вам нужно. Например, допустим, у вас есть 3 правила, A, B и C. Вы хотите использовать, скажем, преимущество, чтобы отдавать им приоритет выполнения в этом порядке, и как только одно выполняется, никакое другое правило в этой группе не должно выполняться , Вы можете определить их так:

rule A
    salience 30
    activation-group "x"
...

rule B
    salience 20
    activation-group "x"
...

rule C
    salience 10
    activation-group "x"
...

Значимость гарантирует, что, если A активируется, он сначала сработает, затем B, а затем C, если они были активированы. Группа активации гарантирует, что после срабатывания одного из правил все остальные активированные правила в этой группе будут отменены. Итак, допустим, что в вашем сеансе правила B и C активируются, но не A, тогда B сработает и C будет отменен.

Обратите внимание, что группы активации не препятствуют повторной активации правил в дальнейшем. Он просто отменяет любые активации в данный момент в повестке дня, когда одно из правил в групповом пожаре.

Похожие вопросы