Eliminando atributos xmlns añadidos automáticamente

Estoy tratando de ejecutar una función de búsqueda y resaltado simple enJavascript que busca una pieza de texto. losXHTML La etiqueta con la que aparece ese fragmento de texto también se presenta como un argumento para obtener ayuda adicional para ubicar ese texto.

El XHTML que estoy probando esta función en:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta content="application/xml+xhtml;charset=UTF-8" />
<script src="searcher.js" type="text/javascript"></script>
<script src="jquery-2.0.2.min.js"> </script>
<title>Building your resume</title>
</head>
<body id="highlightbegin">
<h1>Building your resume</h1>

<div> <input name="input" type="button" value="Highlight3" onclick="javascript:searcher('&lt;h1&gt;','Building your resume', '&lt;h1&gt;Building your resume', 'resume');" /> </div>

</body>
</html>  

El buscador de funciones en searcher.js:

function searcher(tag, text, tagText, word) {

    //simple search.
    console.info(word + " to be searched for in " + text + " with tag text = " + tagText);

    //get old html.
    var oldHTML = document.getElementById("highlightbegin").innerHTML;

    //get regexp.
    var regexp = new RegExp(tagText, 'g');

    var match = oldHTML.match(regexp);
    console.info(text + " found " + match.length + " times.");
}  

Sin embargo, ejecutando elRegExppartido devuelvenull. Más investigación revela que la etiqueta<h1>Building your resume</h1> se convierte en<h1 xmlns="http://www.w3.org/1999/xhtml">Building your resume</h1> lo que causa lamatch función para volvernull. Mis preguntas:

Porque es elxmlns atributo añadido automáticamente?¿Hay alguna manera de evitar que se agregue el atributo?¿A qué etiquetas se agregará ese atributo? ¿Es seguro asumir que se agregará a cada etiqueta?¿Es este un problema específico del navegador o puede esperarse este comportamiento en todos los navegadores?

EDITAR:
Una observación:
1. Si agrego elxmlns atribuir a labody etiqueta y accede a todo el contenido conouterHTML (var oldHTML = document.getElementById("highlightbegin").outerHTML;), sus elementos hijos no tienen laxmlns atributo.
Mis preguntas:
1. ¿Se puede editar el elemento outerHTML (conJavascript) y reemplazado?
2. ¿Es consistente la observación anterior (vista cada vez)?outerHTML es invocado) o es dependiente de la implementación?
3. esJavascript que agrega elxmlns atributo automáticamente o el navegador?

Respuestas a la pregunta(1)

Su respuesta a la pregunta