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>