[rules-users] OR

Markus Helbig mhelbig81 at googlemail.com
Tue Feb 5 07:09:48 EST 2008


I know that it results in two rules, that's currently my workaround to
write more rules. But for the "real" users (not the developer) it my
be easier to read with "or".

I'll have a look at the drools source and try to fix it ...

2008/2/5, Mark Proctor <mproctor at codehaus.org>:
>
>  Markus Helbig wrote:
>  ok this works, BUT using a DSL it fails again.
>
> DSL:
>
> [condition][]is a Person=Person()
> [condition][]- female=sex == "f"
> [condition][]- male=sex == "f"
> [condition][]- age {value}=age=={value}
>
> DSLR:
>
> rule
>  when
>  ($person: is a Person
>  - male
>  - age 60
>  or
>  $person: is a Person
>  - female
>  - age 70)
>  then
> end
>
> resolves to:
>  |
>  \/
> .... ($person: Person( , sex="m", age == 60)
>  or
>  $person: Person(sex="f", age == 70))
>
>
> the "," seems to be the problem ..
>
>  I'm betting 'or' isn't doing what you think it's going? Conditional Element
> 'or' results in sub rule generation, each rule is total separate, so your
> above rule will result in two rules, both of which can match and fire if
> satisfied. I'm guessing its the 'or' that is screwing up the parsing with
> the extra quotation at the front? Can you open a jira for this?
>
>
>  Cheers
>
> Markus
>
> 2008/1/28, Krishnan Sivaramakrishna Iyer <krishiyer at gmail.com>:
>
>
>  Hi Markus,
>
> can u try this please ?
>
> (pensioner : Person( sex == "f", age > 60 )
>  or pensioner : Person( sex == "m", age > 65 ) )
>
> -Krishnan
>
> Markus Helbig wrote:
>
>
>  This is from Drools documentation
>
> Example 6.36. or with binding
>
> pensioner : (or Person( sex == "f", age > 60 )
>  Person( sex == "m", age > 65 ) )
>
> Explicit binding on each Pattern is also allowed.
>
> (or pensioner : Person( sex == "f", age > 60 )
>  pensioner : Person( sex == "m", age > 65 ) )
>
>
> but trying to get this to work resolves in:
>
> [60,8]: unknown:60:8 Unexpected token 'or'[62,8]: unknown:62:8
> mismatched token: [@639,2279:2291='Person',<7>,62:8];
> expecting type
> RIGHT_PAREN[62,81]: unknown:62:81 mismatched token:
> [@656,2352:2352=')',<12>,62:81]; expecting type THEN
>
> Any ideas (using Drools 4.0.4)?
>
> Cheers
>
> Markus
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
>  _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
>  _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
>
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>



More information about the rules-users mailing list