function isSelected(&$bindStatus, $candidateValue)
 {
     $boundValue = SelectedValueComparator::_getBoundValue(&$bindStatus);
     if (is_null($boundValue)) {
         return is_null($candidateValue);
     }
     //if(log_enabled(LOG_INFO))
     //	log_message(LOG_INFO, 'SelectedValueComparator is testing ['.var_export($boundValue, true).'] against ['.var_export($candidateValue, true).']' );
     $selected = false;
     if (is_array($boundValue)) {
         $selected = SelectedValueComparator::_arrayCompare(&$boundValue, &$candidateValue, &$bindStatus);
     }
     if (!$selected) {
         if ($boundValue == $candidateValue) {
             $selected = true;
         } else {
             $selected = SelectedValueComparator::_exhaustiveCompare($boundValue, $candidateValue, $bindStatus->getEditor());
         }
     }
     //if(log_enabled(LOG_INFO))
     //	log_message(LOG_INFO, 'SelectedValueComparator result was = '.$selected );
     return $selected;
 }