Hi,
Well, there are different aspects especially regarding the impact in the
RETE algorithm
having rules with
when
a : A() from root.getB().getA();
then
...
will need to evaluate the root. ... in order to see IF there is an A.
=> The RETE network looses some it's first level of filtering (alpha-nodes).
What blocks you from doing:
insert (root.getB());
insert (root.getB().getA());
???
Real Life Scenario: Imagine you're shopping
1) you run every time to the informationdesk to ask them where they have A
or
2) you have a grocery list, and as you walk and see the objects you buy
them.
hope this helps,
Darko Ivancan
On 07/12/2007 00:40, Mattias Nilsson wrote:
Hi,
I understand it may be hard to give a general answer to this question,
but maybe you can help me with a rule of thumb?
I'm working with a customer that has a business object model that is 3-4
levels deep. A top object with child objects that have child objects and
so on...
It is fully possible to only insert the top object into working memory
and reason over the entire object hierarchy with the help of from,
collect, nested accessors etc.
But is that not a smart way to go forward? Better to flatten the object
model and insert all of the objects into working memory?
Will not flattening the object model have a major performance impact?
Regards,
Mattias Nilsson
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users