Что-то я не совсем понимаю о node клонировании с PHP DOM api. Вот пример файла, который быстро дублирует проблему, с которой я сталкиваюсь.
$doc = new DOMDocument( '1.0', 'UTF-8' );
$root = $doc->createElement( 'root' ); // This doesn't work either $root = new DOMElement( 'root' );
$doc->appendChild( $root );
$doc2 = new DOMDocument( '1.0', 'UTF-8' );
$root2 = $doc2->createElement( 'root2' );
$doc2->appendChild( $root2 );
// Here comes the error
$root2->appendChild( $root->cloneNode() );
При запуске этого маленького фрагмента исключается исключение
Неустранимая ошибка: исключение для исключения "DOMException" с сообщением "Неправильно Ошибка документа"
Могу ли я не взять node из документа, клонировать его, а затем добавить в другой документ?