whenever…otherwise chooses between two tests sample-by-sample, based on some true/false conditional value. For example, given the following case fragment:

                13 Feb 03  03 Oct 03   16 Nov 03  20 Dec 03
ABC                2.5        3.2         2.9        2.7
DEF                6.3        1.9         3.4        2.6
GHI                           orange                 puce
JKL                red                    yellow            

max (ABC whenever GHI is not “orange” otherwise DEF) = 2.9
some (GHI whenever (GHI is available) otherwise JKL) is “yellow”