実行時に完全に動的にルールを定義することは可能ですか?また、実行時にルールセットを変更します。
例えば、
at time = t_1 the ruleset is { R1, R2, R3 }
at time = t_2 the ruleset is { R1, R3, R4 }
.....
R1、R2は、実行時に定義されるルールです。
ありがとう。
はい、Droolsは完全に動的です。実行時にルールを追加/削除/置換できます。一貫性を保つために、既存のすべてのセッションが自動的に更新されます。ドキュメント/ javadocを確認してください。
http://www.jboss.org/drools/documentation
そして、ここでいくつかの統合テストを見ることができます:
ドキュメントを読み、「KnowledeAgent」に関するテストをチェックして、何ができるか、どのようにできるかを確認してください。
Drools 5では、KnowledgeBaseを変更するだけで、KnowledgeSessionが暗黙的に最新の状態に保たれます。それが統合テストが教えてくれることです。実際には、そのためのKAgentは必要ありません。