protected function transferTo(\DOMNode $node, $json)
{
if (is_object($json)) {
/** @var Document $dom */
$dom = $node->ownerDocument ?: $node;
if (is_object($json)) {
foreach ($json as $name => $data) {
if ($name === '@xmlns') {
$this->transferNamespacesTo($node, $data);
} elseif ($name === '$') {
// text content
$node->appendChild($dom->createTextNode($this->getValueAsString($data)));
} elseif (substr($name, 0, 1) === '@') {
$this->transferAttributeTo($node, $name, $data);
} else {
$this->transferChildTo($node, $name, $data);
}
}
}
}
}