Откуда вы взяли setValue
?Нет XML :: LibXML объект имеет такой метод.
Кроме того, элемент не имеет значения, поэтому вы определенно не можете его установить.* "- это значение дочернего узла элемента, текстового узла .
my ($application_id_text) = $root->findnodes('/testing/application_id/text()');
$application_id_text->setData('VAL2');
К сожалению, это не совсем безопасно.Что если элемент имеет несколько текстовых дочерних узлов?Что, если у него его вообще нет?
Более безопасный способ - захватить элемент, удалить все его дочерние элементы, которые являются текстовыми узлами (что легко сделать, удалив все его дочерние узлы), идобавьте новый текстовый узел с нужным значением.
my ($application_id_node) = $root->findnodes('/testing/application_id');
$application_id_node->removeChildNodes();
$application_id_node->appendText('VAL2');