private function parseElementName(string $html): string
    {
        $html = \trim($html);
        $elementMatchSuccessful = \preg_match(
            "/^(<(([a-z0-9\-]+:)?[a-z0-9\-]+))/i",
            $html,
            $elementMatches
        );
        if ($elementMatchSuccessful !== 1) {
            if ($this->getThrowOnError()) {
                throw new ParseException('Invalid element name. Truncated html = ' . \mb_substr($html, 0, 20));
            }

            return '';
        }

        return \mb_strtolower($elementMatches[2]);
    }