<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#ffffff" text="#000000">
    And what about ruleflow-group ?<br>
    There is no network filtering for that too ? The ruleflow-group
    behaves like an agenda filter, but still evaluate all nodes ? <br>
    Could we imagine setting "tags" to nodes, and stop propagation for
    node that does not declare the current task tag ?<br>
    <br>
    <br>
    Le 21/03/2011 14:20, Edson Tirelli a &eacute;crit&nbsp;:
    <blockquote
      cite="mid:AANLkTikYNrE7tgVa9RSYok6_58Be3fpyeWM0yjsmvHfW@mail.gmail.com"
      type="cite">
      <div><br>
      </div>
      <div>&nbsp;&nbsp; The algorithm as is does eager evaluation, as for the
        general case that is still better than doing selective
        evaluation.&nbsp;</div>
      <div><br>
      </div>
      <div>&nbsp;&nbsp; If, in your case, the decision of which rules to fire is
        an arbitrary application decision, and not based on the actual
        constraints of the rules themselves, then the only way would be
        by creating a control fact:</div>
      <div><br>
      </div>
      <div>rule 1</div>
      <div>when</div>
      <div>&nbsp;&nbsp; ControlFact( phase == Phase.ONE )</div>
      <div>...</div>
      <div><br>
      </div>
      <div>rule 2</div>
      <div>
        <meta http-equiv="content-type" content="text/html;
          charset=ISO-8859-1">
        <div>when</div>
        <div>&nbsp;&nbsp; ControlFact( phase == Phase.TWO )</div>
      </div>
      <div>...</div>
      <div><br>
      </div>
      <div>&nbsp;&nbsp; This way, if the control fact is the first pattern in each
        rule it effectively disables all the beta evaluations for rules
        of phases other than the current one. Just be aware that by
        blocking the eager evaluation this way, phase switches are
        heavier than without the control fact, where most constraints
        were already previously evaluated. Obvious, but worth saying out
        loud... :)</div>
      <div><br>
      </div>
      <div>&nbsp;&nbsp; There is also a feature that Leonardo is working on that
        makes the engine automatically unlink and relink parts of the
        network, based on the existence and possibility of matching the
        other required facts in a rule LHS. It might achieve similar
        results to what you are looking for in some cases, but that is
        totally based on the constraints in there and not on any
        arbitrary application decision.</div>
      <div><br>
      </div>
      <div>&nbsp;&nbsp; Edson</div>
      <br>
    </blockquote>
    <br>
  </body>
</html>