Sorry, this message just came to my attention.

    A variable bound in the source pattern can only be used in the action()
and reverse() blocks. This makes sense because the init() and result()
blocks are executed only once for all matches, while the action() and
reverse() blocks are executed once FOR EACH match. So, in your example:

Number( ) from accumulate(
              Parent( $h : height ),
              init(),
              action(),
              reverse(),
              result())

Pretend you have more than one matching Parent, if it was allowed to use $h
in init() or result() blocks, what Parent height would $h correspond to?

   Not sure if it is clear, but maybe someone can help explaining that...

   []s
   Edson


2007/8/9, Manukyan, Sergey <[EMAIL PROTECTED]>:
>
>  Actually there is a $h in the code… sorry for the omission in the email.
>
>
>
> Just checked it again today – it gives me same result as yesterday :
>
>
>
> rule …
>
>     when
>
>             o : Date from accumulate (
>
> Parent( $h : height  ) ,
>
> init(;),
>
> action(;),
>
> reverse(),
>
> result( $h )
>
> )
>
>             then …
>
> end
>
>
>
>
>
> -Sergey
>
>
>
>
>  ------------------------------
>
> *From:* [EMAIL PROTECTED] [mailto:
> [EMAIL PROTECTED] *On Behalf Of *Mark Proctor
> *Sent:* Wednesday, August 08, 2007 4:51 PM
> *To:* Rules Users List
> *Subject:* Re: [rules-users] bug in "accumulate"
>
>
>
> you didn't have a dollar on the field binding:
> Parent( h : height  )
>
> $ is optional, but you must use the same in all places.
>
> Mark
> Manukyan, Sergey wrote:
>
> Folks,
>
>
>
> Using 4.0. Think I found a bug in accumulate. The variables defined inside
> *<source pattern>* cannot be recognized inside of other parts of
> accumulate (action, result)
>
>
>
> f.e.
>
>
>
> rule …
>
>     when
>
>             o : Date from accumulate (
>
> Parent( h : height  ) ,
>
> init(;),
>
> action(;),
>
> reverse(),
>
> result( $h )
>
> )
>
>             then …
>
> end
>
>
>
>
>
> Produces : $h cannot be resolved
>
>
>
>
>
> Stack trace:
>
>
>
>
>
>       at org.drools.rule.Package.checkValidity(*Package.java:408*)
>
>       at org.drools.common.AbstractRuleBase.addPackage(*
> AbstractRuleBase.java:288*)
>
>       at com.lear.rules.RuleBaseFacade.getRuleBase(*RuleBaseFacade.java:46
> *)
>
>
>
>
>
>
>
> -Sergey
>
>
>
>
>
>
>
> **********************
> ** LEGAL DISCLAIMER **
> **********************
>
> This E-mail message and any attachments may contain
> legally privileged, confidential or proprietary
> information. If you are not the intended recipient(s),
> or the employee or agent responsible for delivery of
> this message to the intended recipient(s), you are
> hereby notified that any dissemination, distribution
> or copying of this E-mail message is strictly
> prohibited. If you have received this message in
> error, please immediately notify the sender and
> delete this E-mail message from your computer.
>
>
>
>
> ------------------------------
>
>
>
> _______________________________________________
>
> rules-users mailing list
>
> rules-users@lists.jboss.org
>
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
>
>
>
> _______________________________________________
> rules-users mailing list
> rules-users@lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>


-- 
  Edson Tirelli
  Software Engineer - JBoss Rules Core Developer
  Office: +55 11 3529-6000
  Mobile: +55 11 9287-5646
  JBoss, a division of Red Hat @ www.jboss.com
_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users

Reply via email to