Dear Levent,
You are using a function (foreach) at the LHS of a rule. See
http://www.jessrules.com/FAQ.shtml#Q17 for an explanation on why this is
not good practice.
Try putting the foreach loop on the RHS of the rule, and most likely
things will work as expected.
(defrule BuildPlanForward
(depends-on (parent ?a) (children ?list))
=>
(foreach ?c ?list (assert (available-part (name ?a))))
- Nick.
levent kent wrote:
Hi everybody,
I am doing my masters thesis and have a problem with lists.
It is actually very simple.
I want to create a rule which says:
If all subtasks of a parent task are completed, then the parent task
can be completed too.
I tried the code below, but it seems that I can not use "foreach" at
LHS of a rule.
(defrule BuildPlanForward
(depends-on (parent ?a) (children ?list))
(foreach ?c ?list (available-part (name ?c)))
=>
(assert (available-part (name ?a)))
)
How could I write such a rule in Jess?
Thanks,
--
Levent Kent
--------------------------------------------------------------------
To unsubscribe, send the words 'unsubscribe jess-users [email protected]'
in the BODY of a message to [email protected], NOT to the list
(use your own address!) List problems? Notify [email protected].
--------------------------------------------------------------------