public function convert($string)
{
$oldXmlErrorHandling = libxml_use_internal_errors(true);
libxml_clear_errors();
$dom = new \DOMDocument();
$dom->loadXml($string);
$errors = libxml_get_errors();
libxml_clear_errors();
libxml_use_internal_errors($oldXmlErrorHandling);
if ($errors) {
$message = "Detected errors in input XML:\n";
foreach ($errors as $error) {
$message .= sprintf(" - In line %d character %d: %s\n", $error->line, $error->column, $error->message);
}
$message .= "\nIn XML: \n\n" . $string;
throw new Exceptions\Parser($message);
}
return $this->convertDom($dom);
}