загрузка XML-строки в лист Xslt - PullRequest
0 голосов
/ 22 марта 2010

Я пытаюсь загрузить XML-документ, который я создал с помощью PHP и DOM, в лист xslt, но безуспешно.

$xml_string = $doc->saveXML();
//echo $xml_string;

$xml = new DOMDocument;
$xml->load($xml_string);

$xsl = new DOMDocument;
$xsl->load('musicInformation.xslt');

// Configure the transformer
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // attach the xsl rules

echo $proc->transformToXML($xml);

Я создал xml-файл, основанный на некоторых данных, извлеченных из базы данных, и вместо сохранения его в качестве фактического документа я сохранил его в виде строки, поместил строку в лист xslt, и эта ошибка произошла

Предупреждение: предупреждение ввода / вывода: не удалось загрузить Предупреждение о внешнем объекте: xpath.c: 11079 Внутренняя ошибка: документ без рута в /home/dd615/public_html/webservice.php по линии 73

Любая помощь будет высоко ценится.

1 Ответ

1 голос
/ 22 марта 2010

Строка не является XML.

Для действительного XML требуется корневой элемент (то есть один элемент, который охватывает все другие элементы в документе, кроме объявления XML).

Например:

<?xml version="1.0" ?>
<root>
  <element></element>
  <element></element>
  ...
</root>

Если у вас есть несколько таких корней, XML недопустим и не сможет загрузить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...