Can anybody throw some light on this or direct me to a related thread on this forum?
A Decision Tree is a visual metaphor that may make it easier for a business user to use. Under the covers, the Decision Tree actually gets converted to a RuleSet at runtime. Now take the following with a grain of salt because it is just my personal experience. A Decision Tree seems to be more time consuming and expensive at runtime because it uses rule precedence to enforce the "order" of the rules in the tree. It means that the farther you get from the tree "root", the more time it takes. As an example, if you have a Decision Tree that is is 5 levels deep, when the fifth level node is evaluated it references the fourth level node to ensure it is still true, which also references the third level node and so on back to the root. That reference actually causes the node to be reevaluated (keep in mind that, for example, when the forth level node was evaluated as true, the "then" part may change a property which will cause the second level node to no longer be true which means the whole tree needs to be reevaluated). Since each level down causes all of the prior nodes in the path to be reevaluated, a tree that gets more than a few nodes deep is very CPU intensive. Again "in my personal opinion", just defining a good GUI with a ruleset is a more efficient implementation for runtime processing.
Retrieving data ...