A phase can return multiple entries, and can also return an attribute with multiple values. How the DSA handles multiple results in later phases depends on where the later phase specifies the previous phase's result as defined in the set view command. In a phase definition of the set view command, the following options can specify the results of previous phases:
A phase always has a subtree specification, which is the DN that defines the root of phase search. If this DN is defined by the result of a previous phase, then the DSA runs a separate phase search for each different result. For example, if phase one returns four DNs, and phase two specifies its subtree DN as the result of phase one, then the DSA runs a phase two search four times, once with each different value of DN.
If a phase specifies a filter as part of its search, then the DSA ORs all the specified values of all the returned entries. For example, consider a view in which phase one returns two entries with attribute Attr, the first of which has two values Val1 and Val2, and the second of which has value Val3. A filter in a subsequent phase can use the returned values of Attr from phase one by including the fragment:
filter = $1:attr
DSA replaces this with the following:
filter = (|(attr=val1)(attr=val2)(attr=val3))
Every return value is used. This is equivalent to specifying multiple attribute names in the eis option.
All combinations of every value are used. For example if allowed-attr has three attribute names and allowed-target has two attribute names, then both attributes in allowed-target have three new values.
Copyright © 2011 CA. All rights reserved. | Email CA Technologies about this topic |