Método createElementNS() del DOM XML

Definición y uso

createElementNS() Método para crear un nodo de elemento con espacio de nombres.

Este método devuelve un objeto Element.

Sintaxis

createElementNS(ns,name)
Parámetros Descripción
ns Cadena, especifica el nombre del espacio de nombres del nodo de elemento.
name Cadena, especifica el nombre del nodo de elemento.

Ejemplo

El siguiente código carga "books.xml" en xmlDoc y agrega un nodo de elemento con espacio de nombres a cada elemento <book>:

var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
   if (this.readyState == 4 && this.status == 200) {
       myFunction(this);
   }
};
xhttp.open("GET", "books.xml", true);
xhttp.send();
function myFunction(xml) {
    var x, y, z, i, newel, newtext, xmlDoc, txt;
    xmlDoc = xml.responseXML;
    txt = "";
    x = xmlDoc.getElementsByTagName("book");
    // Usar espacio de nombres y nodo de texto para crear un nodo de elemento
    for (i = 0; i < x.length; i++) {
        newel = xmlDoc.createElementNS("p", "edition");
        newtext = xmlDoc.createTextNode("First");
        newel.appendChild(newtext);
        x[i].appendChild(newel);
    }
    // Imprimir todos los title y edition
    y = xmlDoc.getElementsByTagName("title");
    z = xmlDoc.getElementsByTagNameNS("p","edition");
    for (i = 0; i < y.length; i++) {
        txt += y[i].childNodes[0].nodeValue +
        " - " +
        z[i].childNodes[0].nodeValue +
        " edición." +
        "Namespace: " +
        z[i].namespaceURI + "<br>";
    }
    document.getElementById("demo").innerHTML = txt;
}

Prueba personalmente