The PofNavigator interface represents an algorithm for navigating a PofValue
hierarchy in order to locate a contained PofValue for extraction, modification
or removal purposes.
Locate the PofValue identified by this PofNavigator within the
passed PofValue. If one of the intermediate navigation values is null,
return the null value immediately.
Parameters:
valueOrigin - the origin from which navigation starts
Returns:
the resulting PofValue
Throws:
PofNavigationException - if the navigation fails; for example one
of the intermediate nodes in this path is a "terminal" PofValue
such as SimplePofValue