public function setMinChoices($minChoices)
    {
        if (is_int($minChoices) && $minChoices >= 0) {

            if (($maxChoices = $this->getMaxChoices()) > 0 && $minChoices > $maxChoices) {
                $msg = "The 'minChoices' argument must be less than or equal to the limits imposed by 'maxChoices'.";
                throw new InvalidArgumentException($msg);
            }

            $this->minChoices = $minChoices;
        } else {
            $msg = "The 'minChoices' argument must be a strictly positive (> 0) integer or a negative integer, '" . gettype($minChoices) . "' given.";
            throw new InvalidArgumentException($msg);
        }
    }