code: public function setValue($value)
      {
          if (! $this->valueIsPossible($value)) {
              return false;
          }
          $index   = false;
          $widgets = $this->getWidgets();
          for ($i = 0, $count = count($widgets); $i < $count; $i++) {
              if (! $widgets[$i]->setValue($value)) {
                  $widgets[$i]->setValue(false);
              }
          }
  
          return true;
      }
docs: Each tag is tried in turn until one is successfully set.
  The others will be unchecked if successful.
  
  @param string $value      New value.
  
  @return bool           True if any allowed.