Removendo os atributos xmlns adicionados automaticamente

Estou tentando executar uma simples pesquisa e destacar a funçãoJavascript que procura por um pedaço de texto. oXHTML A tag com a qual esse pedaço de texto ocorre também é fornecida como um argumento para obter ajuda adicional na localização desse texto.

O XHTML que estou testando esta função:

<!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>  

O pesquisador de funções em 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.");
}  

No entanto, executar oRegExpcorrespondências retornamnull. Outras investigações revelam que a tag<h1>Building your resume</h1> torna-se<h1 xmlns="http://www.w3.org/1999/xhtml">Building your resume</h1> que faz com que omatch função para retornarnull. Minhas perguntas:

Porque é oxmlns atributo adicionado automaticamente?Existe uma maneira de impedir que o atributo seja adicionado?Quais tags esse atributo será adicionado? É seguro assumir que ele será adicionado a todas as tags?Este é um problema específico do navegador ou esse comportamento pode ser esperado em todos os navegadores?

EDITAR:
Uma observação:
1. Se eu adicionar oxmlns atributo para obody tag e acessar todo o conteúdo comouterHTML (var oldHTML = document.getElementById("highlightbegin").outerHTML;), seus elementos filhos não possuemxmlns atributo.
Minhas perguntas:
1. O elemento outerHTML pode ser editado (comJavascript) e substituído?
2. A observação acima é consistente?outerHTML é invocado) ou é dependente da implementação?
3. ÉJavascript que adiciona oxmlns Atribuir automaticamente ou o navegador?

questionAnswers(1)

yourAnswerToTheQuestion