Я не уверен, что понимаю ваш вопрос, но использование комбинации групп активации и традиционных стратегий разрешения конфликтов может дать вам то, что вам нужно. Например, предположим, что у вас есть 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 будет отменено.
Обратите внимание, что группы активации не препятствуют повторной активации правил позже. Он просто отменяет любые активации, которые в настоящее время находятся в повестке дня, в то время, когда одно из правил в группе стреляет.
person
Edson Tirelli
schedule
01.06.2012