Я работаю над экспертной системой, основанной на законодательстве, у меня много таких правил:
Правило 1:
Если сумма изъятия превышает 3000, арестуйте сумму, закон оправдания 100
Правило 2: Если конфискация относится к типу семьи, конфискуйте сумму, закон об оправдании 200
Проблема в том, что действие «Захватить» можно применить только один раз, но мне нужно сохранить историю соблюденных правил, ниже я привожу пример
rule "law 100"
when
$seizure: Seizure(amount>3000)
then
$seizure.getRules().add("Justification: law 100 of the civil that says bla bla");
$seizure.applyPunishment();
rule "law 200"
when
$seizure: Seizure(type == TYPES.Family)
then
$seizure.getRules().add("Justification: law 200 of the family code that says bla bla");
$seizure.applyPunishment();
Как я показал выше, мне нужна часть "then", которая сохраняет правило описания "$ seizure.getRules (). Add (" Обоснование: закон гражданского кодекса ");". и мне также это нужно, если "$ seizure.applyPunishing ();" был уже применен в правиле 1, он не будет повторно применяться в правиле 2.
Спасибо за совет