it would be easy to add support for not contains (obviously, if its a large
set of data, best to make sure your object model uses a hashset for O(1)
average perforamnce). Just open a JIRA feature request.

On 4/20/06, Mitch Christensen <[EMAIL PROTECTED]> wrote:
>
> I couldn't find a way to say 'values not contains "milk"', hence the
> eval()
> and my subsequent request for assistance.
>
> Does such syntax exist?
>
> -Mitch
>
> -----Original Message-----
> From: news [mailto:[EMAIL PROTECTED] On Behalf Of Russ Egan
> Sent: Wednesday, April 19, 2006 10:16 AM
> To: [email protected]
> Subject: RE: [drools-user] Indicator (ordered) Facts
>
> Did you try adding extra columns?  Like:
>
> OrderedFact(type == "GroceryList", values contains "peas", values contains
> "milk");
>
> Hello Mitch,
>
> > I ended up creating and OrderedFact Java object which contains a
> > String 'type' and List 'values' property.
> >
> > This allows me to do things like,
> >
> > rule "Create a grocery list"
> > when
> > not OrderedFact(type == "GroceryList")
> > then
> > assert(new OrderedFact("GroceryList", new String[] {"peas",
> > "carrots"}));
> > end
> >
> > rule "Add milk if the list contains peas"
> > when
> > f : OrderedFact(type == "GroceryList", values contains
> > "peas")
> > eval(!f.getValues().contains("milk"))
> > then
> > f.getValues().add("milk");
> > end
> > -Mitch
> >
> > PS Is there a way to avoid the eval() in the second rule?
> >
> > -----Original Message-----
> >> From: Michael Neale [mailto:[EMAIL PROTECTED]
> >> Sent: Tuesday, April 18, 2006 5:06 PM
> >> To: [email protected]
> >> Subject: Re: [drools-user] Indicator (ordered) Facts
> >> assert(new TempFact("MapExists")); something like that. You can use
> >> TempFact over and over. If you intern the string in the TempFact
> >> bean, then it could be pretty fast to check (as the JVM will do an
> >> identity compare before a string char compare I think). You only need
> >> to create it once.
> >>
> >> On 4/19/06, Mitch Christensen <[EMAIL PROTECTED]> wrote:
> >>
> >> Hey,
> >>
> >> Quite often I want to work with 'temporary' facts that I often refer
> >> to as
> >> 'indicator' facts.  With Jess I used to use ordered facts for this
> >> purpose.
> >> In Drools, do I have to create a Java bean for every such case?
> >> What if I wanted to do the following,
> >>
> >> then
> >> assert("MapExists");
> >> end
> >> How would I match this fact elsewhere?
> >>
> >> -Mitch
> >>
>
>
>
>

Reply via email to