I bet Edson can&#39;t wait to refactor the parser for that ;)<br><br><div class="gmail_quote">On 31 March 2011 21:11, Mark Proctor <span dir="ltr">&lt;<a href="mailto:mproctor@codehaus.org">mproctor@codehaus.org</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">

  
    
  
  <div text="#000000" bgcolor="#ffffff">
    on a related note I do plan to add OTHERWISE support at a DRL level,
    just no time to do it right now. Once it&#39;s supported at a DRL level,
    you won&#39;t need to as much work on figuring out the inverse options
    etc.<br>
    <br>
    Mark<div><div></div><div class="h5"><br>
    On 31/03/2011 20:25, Michael Anstis wrote:
    </div></div><blockquote type="cite"><div><div></div><div class="h5">Hi,<br>
      <br>
      I&#39;m adding support for &quot;otherwise&quot; to (for the time being) the
      guided decision table in Guvnor.<br>
      <br>
      The idea being if you set a cell to represent &quot;otherwise&quot; the
      generated rule is the opposite of the accumulation of the other
      cells; perhaps best explained with an example:-<br>
      <br>
      <div style="margin-left: 40px;"><span style="font-family: courier new,monospace;">Person( name == )</span><br style="font-family: courier new,monospace;">
        <span style="font-family: courier new,monospace;">Mark</span><br style="font-family: courier new,monospace;">
        <span style="font-family: courier new,monospace;">Kris</span><br style="font-family: courier new,monospace;">
        <span style="font-family: courier new,monospace;">Geoffrey</span><br style="font-family: courier new,monospace;">
        <span style="font-family: courier new,monospace;">&lt;otherwise&gt;</span><br style="font-family: courier new,monospace;">
      </div>
      <br>
      This would generate:-<br>
      <br>
      <span style="font-family: courier new,monospace;">Person(name not
        in (&quot;Mark&quot;, &quot;Kris&quot;, &quot;Geoffrey&quot;)</span><br style="font-family: courier new,monospace;">
      <br>
      Equals is the simple example, this is my thoughts for the other
      operators we might like to support:-<br>
      <ul>
        <li>!= becomes &quot;in (&lt;list of the other cells&#39; values)&quot;</li>
        <li>&lt; becomes &quot;&gt;= the maximum value of the other cells&#39;
          values</li>
      </ul>
      <br>
      <div style="margin-left: 40px;">For example:-<br>
        <br>
        <span style="font-family: courier new,monospace;">Person ( age
          &lt; )</span><br style="font-family: courier new,monospace;">
        <span style="font-family: courier new,monospace;">10</span><br style="font-family: courier new,monospace;">
        <span style="font-family: courier new,monospace;">20</span><br style="font-family: courier new,monospace;">
        <span style="font-family: courier new,monospace;">30</span><br style="font-family: courier new,monospace;">
        <span style="font-family: courier new,monospace;">&lt;otherwise&gt;</span><br style="font-family: courier new,monospace;">
        <br style="font-family: courier new,monospace;">
        <span style="font-family: courier new,monospace;">Person ( age
          &gt;= 30 )</span></div>
      <br>
      <ul>
        <li>&lt;= becomes &quot;&gt; the maximum value of the other cells&#39;
          values</li>
        <li>&gt; becomes &quot;&lt;= the minimum value of the other cells&#39;
          values</li>
        <li>&gt;= becomes &quot;&lt; the minimum value of the other cells&#39;
          values</li>
        <li>&quot;in&quot; becomes &quot;not in (&lt;a list of all values contained in
          all the other cells&#39; lists of values&gt;)&quot;</li>
      </ul>
      <div style="margin-left: 40px;">For example:-<br>
      </div>
      <br>
      <div style="margin-left: 40px;">
        <span style="font-family: courier new,monospace;">Person ( name
          in )</span><br style="font-family: courier new,monospace;">
        <span style="font-family: courier new,monospace;">Jim, Jack</span><br style="font-family: courier new,monospace;">
        <span style="font-family: courier new,monospace;">Lisa, Jane,
          Paul</span><br style="font-family: courier new,monospace;">
        <span style="font-family: courier new,monospace;">&lt;otherwise&gt;</span><br style="font-family: courier new,monospace;">
        <br style="font-family: courier new,monospace;">
        <span style="font-family: courier new,monospace;">Person ( name
          not in (&quot;Jim&quot;, &quot;Jack&quot;, &quot;Lisa&quot;, &quot;Jane&quot;, &quot;Paul&quot; ) )</span><br>
        <br>
      </div>
      <ul>
        <li>I&#39;m not sure there is a simple solution for &quot;matches&quot; and
          &quot;soundslike&quot; but welcome advice, although a possibility might
          be to create a compound field constraint:-<br>
        </li>
      </ul>
      <div style="margin-left: 40px;">
        <span style="font-family: courier new,monospace;">Person ( name
          soundslike )</span><br style="font-family: courier new,monospace;">
        <span style="font-family: courier new,monospace;">Fred</span><br style="font-family: courier new,monospace;">
        <span style="font-family: courier new,monospace;">Phil</span><br style="font-family: courier new,monospace;">
        <br style="font-family: courier new,monospace;">
        <span style="font-family: courier new,monospace;">not Person (
          name soundslike &quot;Fred&quot; || soundslike &quot;Phil&quot; )</span><br style="font-family: courier new,monospace;">
      </div>
      <br>
      <br>
      Would this be considered the most suitable approach?<br>
      <br>
      Inputs and thoughts welcome.<br>
      <br>
      Thanks,<br>
      <br>
      Mike <br>
      <br>
      </div></div><pre><fieldset></fieldset>
_______________________________________________
rules-dev mailing list
<a href="mailto:rules-dev@lists.jboss.org" target="_blank">rules-dev@lists.jboss.org</a>
<a href="https://lists.jboss.org/mailman/listinfo/rules-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-dev</a>
</pre>
    </blockquote>
    <br>
  </div>

<br>_______________________________________________<br>
rules-dev mailing list<br>
<a href="mailto:rules-dev@lists.jboss.org">rules-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/rules-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-dev</a><br>
<br></blockquote></div><br>