와일드 카드 역할을하는 Drools 작업 메모리 (예 : 쿼리 제약)에 팩트를 삽입 할 수 있습니까?Drools query "wildcard"
rule "meal_exceptions_1"
agenda-group "MEAL"
salience 100
when
Meal(id = "Breakfast")
Person(name == "Sally")
then
insert(new Food("Jelly"));
drools.setFocus("OTHERGRP");
end
rule "meal_breakfast"
agenda-group "MEAL"
when
Meal(id == "Breakfast")
then
insert(new Food("Cornflakes"));
drools.setFocus("OTHERGRP");
end
rule "meal_dinner"
agenda-group "MEAL"
when
Meal(id == "Dinner")
then
insert(new Food("Fish Fingers"));
drools.setFocus("OTHERGRP");
end
내가 질문 "아침 식사를 주문할 수있는 모든 가능한 음식은 무엇인가"를 응답 할이 (어쩌면 내가 소모품에 주문하고 있습니다 :
예를 들어, 나는 다음과 같은 규칙이 상상 부엌).
사실을 쉽게 삽입하여 new Meal("Breakfast")
을 입력하면 결과가 아침 식사에 적용되는 결과로 제한됩니다. 그러나, 내 응용 프로그램은 어떤 사람들이 예외를 요청했는지, 심지어 전체 집합이 무엇인지에 대한 지식이 없습니다. Person("*")
의 행을 따라 다른 사실을 추가하고 싶습니다. 그래야 다른 규칙을 요구 한 샐리입니다. (잘 모르겠지만) 첫 번째 규칙과 일치합니다.
원하는 출력은 콘플레이크와 젤리를 모두 포함하는 작업 메모리입니다. 잠재적 인 예외에 대한 특별한 지식없이 그러한 질의를 발행 할 수 있습니까?