Предположим, в переменной $item у нас хранится некий SimpleXMLElement, который мы хотим изменить. Самый прямолинейный способ выглядит примерно так:
$item->subitem->param->value = 'NewValue';
Однако если названия элементов содержат спецсимволы (например, двоеточие), то менять значения таким образом не получится. В таком случае можно экспортировать весь узел из SimpleXMLElement в DOMElement, затем изменить то, что нужно, с помощью XPath и импортировать назад. Пример:
$dom = new DOMDocument();
$dom_sxe = dom_import_simplexml($item);
$dom_sxe = $dom->importNode($dom_sxe, true);
$dom_sxe = $dom->appendChild($dom_sxe);
$xpath = new DOMXPath($dom);
$result = $xpath->query('Element:with:a:funky:name');
$result->item(0)->nodeValue = 'NewValue';
$item = simplexml_import_dom($dom);
Как отсюда видно, элемент с названием, содержащим двоеточия, помехой больше не является.