public function offsetExists($key) {
        if (!is_string($key)) throw new IllegalTypeException('Illegal type of parameter $key: '.gettype($key));

        $notFound = false;
        $this->getProperty($key, $notFound);

        return !$notFound;
    }