제 질문은 Drools 누적 기능 내에서 '존재하지 않음'구문에 해당하는 것을 사용하는 것에 관한 것입니다.drools 내에 '존재하지 않음'과 동일한 의미를 사용합니다.
rule "rule-conflicting-code-set-1"
...
when
...
$conflicts : List(size() > 1)
from accumulate(
$p : Performance(code == "FOO", /*other conditions*/)
from $patient.performances,
collectList($p))
then
...
end
가 지금은 별도의 조건과 규칙을 확장하고 싶습니다 :
내가 예상 결과를 잘 컴파일하고 생성하는 다음과 같은 규칙 부분 성능 개체의 단순한 축적를 사용합니다. 특정 조건을 만족하는 퍼포먼스가 누적되는 것을 막기를 원합니다 (예 : $ 충돌리스트에 올라).
새로운 조건이있다 : 그 성능을 포함하는 주의이 존재하는 대한 성능을 축적하고 싶지 않아요. 주의은 성능 집합 개체에 (Set performanceSet;) 유형의 개체를 보유하는 필드입니다. 나는 을이 방법()을 성능의으로 작성하여 $ p을 참조하는 방법으로 작성했습니다. 컴파일러는 '존재'키워드에 대해 불평
$conflicts : List(size() > 1)
from accumulate(
$p : Performance(
code == "FOO",
not exists Attention(performanceSet contains
thisPerformance()),
/*other conditions*/)
from $patient.performances,
collectList($p))
을 : [102 ERR
자체가 같을 것이다 조건은 :
not exists Attention(performanceSet contains thisPerformance())
해당하는이 같은 축적 나는 다시 시도 ] 규칙 50:40 일치하지 않는 입력이 'rule-conflicting-code-set-1'규칙에 '존재'합니다. 파서가 null 패키지를 반환했습니다.
내 문제에 대한 해결책은 상당히 달라 보이지만 예제를 통해 내가 성취하고자하는 바를 설명하게하십시오.
! 정말 고맙습니다! – Edvaaart