private function createElement(\DOMNode $target, $prefix, $name, $uri)
{
$document = $target instanceof \DOMDocument ? $target : $target->ownerDocument;
$newNodeName = empty($prefix) ? $name : $prefix . ':' . $name;
if (empty($uri) && NULL === $target->lookupNamespaceUri(NULL)) {
$newNode = $document->createElement($newNodeName);
} else {
$newNode = $document->createElementNS((string) $uri, $newNodeName);
}
$target->appendChild($newNode);
return $newNode;
}