Another key feature of the Decision Flow paradigm is the tremendous flexibility given to users when specifying how an attribute should be computed. In addition to permitting external function calls (e.g., database dips, or calls to execute in a different decision support engine) the paradigm supports the use of attribute rules and combining policies. Two simple illustrations are provided in Figure 4, which shows the contents of the current business value and weighted promo list attributes. As shown there, a family of rules is associated with attribute current business value, each potentially contributing a number. Numbers contributed by rules with true condition are to be combined by summation. In the example, rules contribute 40, 26 and 20, resulting in final value 86.
The attribute weighted promo list illustrates a more interesting combining policy. The output of this module will hold a list of promo items, ordered according to how well they fit the current situation. The individual rules contribute ordered pairs, consisting of a promo item along with a numeric weight (e.g., < umbrella, 40 >). As illustrated by the second and fourth rules here, several rules might contribute to the same promo item. The combining policy for this module is to group contributed pairs by promo item, then add the weights for each promo item, and finally sort the list of resulting pairs according to the aggregated weights.
More generally, the Decision Flow paradigm offers a broad range of combining policies for aggregating the contributions of a rule set. Other combining policies involving numbers include maximum, minimum and average. As illustrated with weighted promo list the contributed values and the result may have structured type. In addition to supporting a family of ad hoc combining policies, the system supports an OQL-like [4] algebra for specifying customized combining policies.
The presence of multiple combining policies permits the use of different styles of reasoning within the Decision Flow paradigm. Decision Flows also support different styles of reasoning at a more granular level as well. We illustrate this in connection with the attributes MIHU score and MIHU override score. We have discussed how MIHU score involves a deliberate derivation involving many factors. In contrast, the attribute MIHU override score is computed by an atomic node that includes collection of simple and disjoint factors (e.g., that a particular item is in the shopping cart, or that a certain page has been visited) and uses as combining policy ``maximum contributed value''. If MIHU override score is greater than CSR load then the MIHU option will be offered, and so each rule in MIHU override score is analogous to a presidential veto or gubinatorial pardon. For example, in the second session of Figure 3 the MIHU override score goes to 90 on the 3rd page, perhaps because a leather coat was placed into the shopping cart; and this triggers the offer of MIHU.