[rules-users] Update vs insert
Ingomar Otter
iotter at mac.com
Thu Sep 11 06:52:48 EDT 2008
Ehm, I would think that unless person implements a
PropertyChangeListener, you need to tell the engine about the change
of the slot.
Update would be the proper way AFAIK.
In this case, I don't see why one would want to insert an object into
WM - as it is already in WM.
I think the exact result of the insert depends on whether you have
implemented equals/hashCode properly.
But again, in that example I understand that you want to change the
property of an object you have matched in the LHS.
The way to do this is using update().
-- Ingomar
Am 11.09.2008 um 12:39 schrieb Shyam, Pallav (MSCIBARRA):
> Very strange. The facts are passed into the WM by-reference.
> Therefore the query should work after calling the
> person.setClassName("Math") on the fact. And this should work
> without calling the insert or update.
>
> This leaves me guessing that the query does not work on the facts
> directly, instead they work on shadow facts.
>
>
>
>
> ________________________________
>
> From: rules-users-bounces at lists.jboss.org
> To: Rules Users List
> Sent: Thu Sep 11 04:41:37 2008
> Subject: [rules-users] Update vs insert
>
>
> Hello,
>
> What is the difference between calling insert and update in a rule
> file? When I use insert my queries don’t work, but if I use update
> they seem to. I don't mind using update, but I would like to
> understand the difference between the two. Here is my rule file.
>
> rule "Add person to math class"
> no-loop
> when
> person : Person(likesMath == true)
> then
> person.setClassName("Math");
> insert(person);
> end
>
> I also have a query:
>
> query getPeopleForClass(String _className)
> Person(className == _className)
> end
>
> When I add two facts to working memory, where the likesMath
> attribute is true, then run my query I get zero results back. When I
> change the rule, "Add person to math class", to use update(person)
> instead of insert(person) two students are returned.
>
> Any help would be appreciated.
>
> Thanks,
> Dan
>
>
> Daniel Quinn
> Fedex - Custom Critical
> Software Specialist I
> 234.310.4090(x2586)
>
> -----Original Message-----
> From: rules-users-bounces at lists.jboss.org [mailto:rules-users-bounces at lists.jboss.org
> <mailto:rules-users-bounces at lists.jboss.org> ] On Behalf Of thomaskukofka at web.de
>
> Sent: Wednesday, September 10, 2008 2:27 PM
> To: rules-users at lists.jboss.org
> Subject: [rules-users] Re: looping problem
>
> Hello,
>
> thanks that works. I just forgot to set the focus in the init rule..
>
> Regards
> Thomas
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users <https://lists.jboss.org/mailman/listinfo/rules-users
> >
> --------------------------------------------------------
>
> NOTICE: If received in error, please destroy and notify sender.
> Sender does not intend to waive confidentiality or privilege. Use of
> this email is prohibited when received in error.
> _______________________________________________
> 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