protected function doClean($value)
 {
     $clean = parent::doClean($value);
     $current_zone = $this->getOption('current_zone');
     if (!is_null($current_zone)) {
         if ($current_zone->isParentOf($value)) {
             throw new sfValidatorError($this, 'invalid', array('value' => $value));
         }
     }
     return $clean;
 }