/**
  * Creates a new question dialog mapping validator. 
  * Creates a new question dialog mapping validator, which validates the
  * result specified by the user against an array of valid results
  * ($collection). If not value is provided by the user a possibly set
  * $default value is used instead. The $conversion parameter can optionally
  * define a conversion to be performed on the result before validating it.
  * Valid conversions are defined by the CONVERT_* constants in this class.
  *
  * While this functionality is already provided by {@link
  * ezcConsoleQuestionDialogCollectionValidator}, the additional $map
  * paramater allows the sepcification of a map of result values. These
  * mapping is then checked for matches, before a received answer is
  * validated against the collection.
  *
  * @param array(string) $collection The collection of valid results.
  * @param mixed $default    Optional default value.
  * @param int $conversion   CONVERT_* constant.
  * @param array(string=>string) $map
  * @return void
  */
 public function __construct(array $collection, $default = null, $conversion = self::CONVERT_NONE, array $map = array())
 {
     // Initialize additional property
     $this->properties['map'] = $map;
     parent::__construct($collection, $default, $conversion);
 }