<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content=text/html;charset=ISO-8859-1>
<META content="MSHTML 6.00.6000.16414" name=GENERATOR></HEAD>
<BODY text=#000000 bgColor=#ffffff>
<DIV><FONT face=Arial size=2>Mark,</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>One thing that I forgot to comment on was how the 
flow architecture with its splits and joins can be used to emulate "work flow 
patterns". I am VERY pleased to see this as it (in my opinion) gives rules flow 
an enormous amount of logical processing power that is just not present in an 
ordinary rules processing environment.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Again, congratulations !!</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Rich Halsey</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>"GENIUS IS THE ULTIMATE WEAPON"</DIV>
<DIV>&nbsp;</DIV>
<DIV>....God grant me...<BR>The senility to forget the people I never 
liked<BR>The good fortune to run into the ones that I do<BR>And the eyesight to 
tell the difference."<BR></DIV>
<BLOCKQUOTE 
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
  <DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
  <DIV 
  style="BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: black"><B>From:</B> 
  <A title=mproctor@codehaus.org href="mailto:mproctor@codehaus.org">Mark 
  Proctor</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>To:</B> <A title=rules-dev@lists.jboss.org 
  href="mailto:rules-dev@lists.jboss.org">Rules Dev List</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>Cc:</B> <A title=rich_halsey@bellsouth.net 
  href="mailto:rich_halsey@bellsouth.net">Rich Halsey</A> ; <A 
  title=jco@kbsc.com href="mailto:jco@kbsc.com">James C. Owen</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>Sent:</B> Monday, February 26, 2007 7:58 
  AM</DIV>
  <DIV style="FONT: 10pt arial"><B>Subject:</B> Re: [rules-dev] Re: RuleFlow 
  preview</DIV>
  <DIV><BR></DIV>Our implementation is a light layer to provide "wait states" 
  for one or more rules, it uses a similar principle to agenda-groups (Clips 
  modules) to partition the execution. Activated rules are placed in temporary 
  buckets (rule-flow-groups), instead of onto the agenda, when the 
  rule-flow-group is activated the bucket empties onto the Agenda for normal 
  execution, when all the emptied rules are fired the next rule-flow-groups are 
  activated. <BR><BR>The system is still "parallel" in nature, in that the 
  agenda is still responsible for executing rules and the agenda can have more 
  than one rule on it at at time. In our implementation all the rules in the 
  rule-flow-group will be put onto the agenda for execution, at the same time 
  standard rules can also continue to be managed and executed by the agenda, and 
  agenda groups (clips modules) still continue to operate - all in 
  parallel.<BR><BR>A rule that is specified to execute as part of a 
  rule-flow-group can also be part of an agenda-group, but that use case is 
  discouraged because it can get quite hairy unless you really know what you are 
  doing :) As it means a rule-flow-group can be activated, the rules moved onto 
  their respective agenda-groups, where any rules not in agenda-groups that do 
  not have focus will not fire, the next rule-flow-group will not activate 
  untill all rules for the current rule-flow-group have fired, regardless of the 
  agenda-groups they are in.<BR><BR>The limitation at the moment is that the 
  temporary bucket has no ability to handle different start instances and 
  differentiate between the rules in it's bucket of the same rule-flow, but you 
  can have multiple different rule flows executing in parallel. We purposefuly 
  kept it simple for "version 1" to build up the functionality needed for rule 
  flow. The use cases for parallel execution of the same flow are not easy - as 
  one instance can catch up and over take another instance on the same flow. 
  Also if a rule in a rule-flow-group activates which of the two current 
  instances for the same rule flow are responsible for firing it? The same issue 
  arrises for when you have the same rule-flow-group in multiple rule-flows. We 
  are currently not sure how best to handle these types of situations; maybe you 
  could help us on those use cases? Or even provide a patch 
  :)<BR><BR>Mark<BR>Rich Halsey wrote: 
  <BLOCKQUOTE cite=mid:001101c759a3$0f0ba070$210110ac@BUBBA type="cite">
    <META content="MSHTML 6.00.6000.16414" name=GENERATOR>
    <STYLE></STYLE>

    <DIV>&nbsp;</DIV>
    <DIV><FONT face=Arial size=2>Hi Mark,</FONT></DIV>
    <DIV>&nbsp;</DIV>
    <DIV><FONT face=Arial size=2>The part in the document where it says: <FONT 
    face=TimesNewRomanPSMT>
    <P align=left>"At this point, ruleflow-groups should not be reused in more 
    than one ruleflow, and you should not</P>
    <P align=left>start a new instance of a process before the previous one has 
    ended." </P>
    <P align=left>will be the weak link in the chain, i.e. there should not be 
    any reason why rule-flow-groups should not be reused nor having multiple 
    instances since rules are implicitly parallel in operation. This was what I 
    found to be the problem with ILOG's JRules back in the v4.0 edition. It 
    turned JRules into a clunky procedural processing engine (which was not what 
    we needed at that time).</P>
    <P align=left>However, I am very proud to see that Jboss Rules (JBRules) has 
    successfully evolved to this point. You (and your team) are to be commended 
    for your efforts.</P>
    <P align=left>Tally-ho !!</P>
    <P align=left>Rich Halsey</P>
    <P align=left>&nbsp;</P>
    <P align=left>&nbsp;</P>
    <P align=left>&nbsp;</P></FONT></FONT></DIV>
    <DIV>&nbsp;</DIV>
    <DIV>&nbsp;</DIV>
    <DIV>&nbsp;</DIV>
    <DIV>"GENIUS IS THE ULTIMATE WEAPON"</DIV>
    <DIV>&nbsp;</DIV>
    <DIV>....God grant me...<BR>The senility to forget the people I never 
    liked<BR>The good fortune to run into the ones that I do<BR>And the eyesight 
    to tell the difference."<BR></DIV>
    <BLOCKQUOTE dir=ltr 
    style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: rgb(0,0,0) 2px solid; MARGIN-RIGHT: 0px">
      <DIV 
      style="FONT: 10pt arial; font-size-adjust: none; font-stretch: normal">----- 
      Original Message ----- </DIV>
      <DIV 
      style="BACKGROUND: rgb(228,228,228) 0% 50%; FONT: 10pt arial; font-size-adjust: none; font-stretch: normal; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"><B>From:</B> 
      <A title=mproctor@redhat.com href="mailto:mproctor@redhat.com" 
      moz-do-not-send="true">Mark Proctor</A> </DIV>
      <DIV 
      style="FONT: 10pt arial; font-size-adjust: none; font-stretch: normal"><B>To:</B> 
      <A title=rules-dev@lists.jboss.org href="mailto:rules-dev@lists.jboss.org" 
      moz-do-not-send="true">Rules Dev List</A> </DIV>
      <DIV 
      style="FONT: 10pt arial; font-size-adjust: none; font-stretch: normal"><B>Sent:</B> 
      Monday, February 26, 2007 5:12 AM</DIV>
      <DIV 
      style="FONT: 10pt arial; font-size-adjust: none; font-stretch: normal"><B>Subject:</B> 
      RuleFlow preview</DIV>
      <DIV><BR></DIV>I thought everyone on the dev list would be interested in 
      reviewing and providing feedback on Kris' excellent work on RuleFlow - 
      includes screenshots :)<BR><BR>Mark<BR>-------- Original Message -------- 
      <TABLE class=moz-email-headers-table cellSpacing=0 cellPadding=0 
        border=0><TBODY>
        <TR>
          <TH vAlign=baseline noWrap align=right>Date: </TH>
          <TD>Mon, 26 Feb 2007 01:51:29 +0100</TD></TR>
        <TR>
          <TH vAlign=baseline noWrap align=right>From: </TH>
          <TD>Kris Verlaenen <A class=moz-txt-link-rfc2396E 
            href="mailto:kris.verlaenen@gmail.com%3E" 
            moz-do-not-send="true">&lt;kris.verlaenen@gmail.com&gt;</A></TD></TR>
        <TR>
          <TH vAlign=baseline noWrap align=right>Subject: </TH>
          <TD>Ruleflow</TD></TR></TBODY></TABLE><BR><BR><PRE>I've attached a document describing how ruleflow is implemented /
could be used in the future.  If anyone has got any suggestions or
improvements (on the API I'm proposing, or things you would like to
see differently), just let me know asap.

I think I'll be able to commit a first working version on svn soon.
Still have to include conditional connections (where a connection is
only selected if its condition evaluates to true), and some smaller
stuff.

Kris

    </PRE></BLOCKQUOTE><PRE wrap=""><HR width="90%" SIZE=4>
_______________________________________________
rules-dev mailing list
<A class=moz-txt-link-abbreviated href="mailto:rules-dev@lists.jboss.org">rules-dev@lists.jboss.org</A>
<A class=moz-txt-link-freetext href="https://lists.jboss.org/mailman/listinfo/rules-dev">https://lists.jboss.org/mailman/listinfo/rules-dev</A>
  </PRE></BLOCKQUOTE><BR></BLOCKQUOTE></BODY></HTML>