On 31/03/2011 22:54, Greg Barton wrote:
Oh, it's been dragging on longer than that. I used it in OPSJ in 1999. :P
Edson's new parser is almost finished. We just found we had hit a brick
will with pure ANTLR, it was defying us at every turn. Which caused our
language innovation to crawl to a halt. It's been very painful, but once
it's done, we'll be back on the language innovation train again :)
Mark
--- On *Thu, 3/31/11, Michael Neale /<michael.ne...@gmail.com>/* wrote:
From: Michael Neale <michael.ne...@gmail.com>
Subject: Re: [rules-dev] Decision table - Otherwise
To: "Rules Dev List" <rules-dev@lists.jboss.org>
Date: Thursday, March 31, 2011, 4:20 PM
Otherwise has been dragging on since 2006. There are many
skeletons in that cave.
I will believe it when I see it !
On Fri, Apr 1, 2011 at 7:25 AM, Michael Anstis
<michael.ans...@gmail.com
</mc/compose?to=michael.ans...@gmail.com>> wrote:
I bet Edson can't wait to refactor the parser for that ;)
On 31 March 2011 21:11, Mark Proctor <mproc...@codehaus.org
</mc/compose?to=mproc...@codehaus.org>> wrote:
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's
supported at a DRL level, you won't need to as much work
on figuring out the inverse options etc.
Mark
On 31/03/2011 20:25, Michael Anstis wrote:
Hi,
I'm adding support for "otherwise" to (for the time
being) the guided decision table in Guvnor.
The idea being if you set a cell to represent "otherwise"
the generated rule is the opposite of the accumulation of
the other cells; perhaps best explained with an example:-
Person( name == )
Mark
Kris
Geoffrey
<otherwise>
This would generate:-
Person(name not in ("Mark", "Kris", "Geoffrey")
Equals is the simple example, this is my thoughts for the
other operators we might like to support:-
* != becomes "in (<list of the other cells' values)"
* < becomes ">= the maximum value of the other cells'
values
For example:-
Person ( age < )
10
20
30
<otherwise>
Person ( age >= 30 )
* <= becomes "> the maximum value of the other cells'
values
* > becomes "<= the minimum value of the other cells'
values
* >= becomes "< the minimum value of the other cells'
values
* "in" becomes "not in (<a list of all values
contained in all the other cells' lists of values>)"
For example:-
Person ( name in )
Jim, Jack
Lisa, Jane, Paul
<otherwise>
Person ( name not in ("Jim", "Jack", "Lisa", "Jane",
"Paul" ) )
* I'm not sure there is a simple solution for
"matches" and "soundslike" but welcome advice,
although a possibility might be to create a
compound field constraint:-
Person ( name soundslike )
Fred
Phil
not Person ( name soundslike "Fred" || soundslike "Phil" )
Would this be considered the most suitable approach?
Inputs and thoughts welcome.
Thanks,
Mike
_______________________________________________
rules-dev mailing list
rules-dev@lists.jboss.org
</mc/compose?to=rules-dev@lists.jboss.org>
https://lists.jboss.org/mailman/listinfo/rules-dev
_______________________________________________
rules-dev mailing list
rules-dev@lists.jboss.org
</mc/compose?to=rules-dev@lists.jboss.org>
https://lists.jboss.org/mailman/listinfo/rules-dev
_______________________________________________
rules-dev mailing list
rules-dev@lists.jboss.org
</mc/compose?to=rules-dev@lists.jboss.org>
https://lists.jboss.org/mailman/listinfo/rules-dev
--
Michael D Neale
home: www.michaelneale.net <http://www.michaelneale.net>
blog: michaelneale.blogspot.com <http://michaelneale.blogspot.com>
-----Inline Attachment Follows-----
_______________________________________________
rules-dev mailing list
rules-dev@lists.jboss.org </mc/compose?to=rules-dev@lists.jboss.org>
https://lists.jboss.org/mailman/listinfo/rules-dev
_______________________________________________
rules-dev mailing list
rules-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev
_______________________________________________
rules-dev mailing list
rules-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev