public function offsetUnset($identifier)
    {
        $keys = $this->_parseIdentifier($identifier);
        $last = count($keys)-1;
        $data =& $this->_data;

        foreach($keys as $index => $key)
        {
            if (!array_key_exists($key, $data)) {
                break;
            }

            if ($index < $last) {
                $data =& $data[$key];
            }
            else unset($data[$key]);
        }
    }