Ler XML com DOM

Olá Pessoal, não consigo carregar as demais tags como
xxx
xxx
xxx
xxx

Eu só consigo carregar as id="";

alguém me ajuda, por favor.

Crie um arquivo XML para representar uma base de dados
da Receita Federal que contenha os seguintes campos:
CPF, RG, nome, data de nascimento, endereço (logradouro,
número, bairro, cep, cidade, estado), contato (telefone,
celular, e-mail), renda, foto, conta corrente (banco, agencia,
número da conta).

Mostrar em javascript os dados em uma tabela

Crie o arquivo XML com 5 registros diferentes

[size=18]XML[/size]

<?xml version="1.0" encoding="iso-8859-1"?>
<receitafederal>
                 <dados id="Dados Pessoais">
		                <cpf>xxx</cpf>
				        <rg>xxx</rg>
				        <nome>xxx</nome>
				        <data>xxx</data>
				 </dados>      
			     <dados id="Dados do endereço">
				        <logradouro>xxx</logradouro>
				        <numero>xxx</numero>
				        <bairro>xxx</bairro>
				        <cep>xxx</cep>
				        <cidade>xxx</cidade>	
				        <estado>xx</estado>
				</dados>
				 <dados id="Dados para contato">
				        <telefone>xxx</telefone>
				        <celular>xxx</celular>
				        <email>xxx</email>
				        <renda>xxx</renda>
				        <foto>xxx</foto>
				</dados>
				 <dados id="Dados para conta corrente">
				        <banco>xxx</banco>
				        <agencia>xxx</agencia>
				        <nconta>xxx</nconta>
		        </dados>
</receitafederal>

[size=18]Função[/size]

// JavaScript Document
var xmlDoc;

function exibeMenu(){
	carregaXML();
	//carrega os filhos do elemento pai com o nome opcao
	//como existem mais de uma tag com esse nome, e retornado um vetor
	//opc[0], opc[1], opc[2] ...
	opc = xmlDoc.getElementsByTagName("dados");	
	alert("Quantidade de elementos retornado = "+opc.length);
	for (i=0;i< opc.length;i++)
	{
		document.write(opc[i].getAttribute("id")+"-"+opc[i].firstChild.nodeValue+"<br>");
		//ou
		//document.write(opc[i].getAttribute("id")+"-"+opc[i].childNodes[0].nodeValue+"<br>");
	}	
}

function carregaXML(){	
	if (navigator.appName != "Microsoft Internet Explorer")
	{
		//utilizado para diversos browser, inclusive para IE8 porém somente para conexão HTTP
		//este código segue o mesmo princípio quando utilizado com AJAX
		xmlHttp = new XMLHttpRequest();
		xmlHttp.open("GET","banco_dados_receita_federal_exer01.xml",false);
		xmlHttp.send(null)
		xmlDoc = xmlHttp.responseXML;	
	}
	else
	{
		//Utilizado para acessar arquivo XML somente no IE
		xmlHttp = new ActiveXObject("Microsoft.XMLDOM")
		xmlHttp.async="false"
		xmlHttp.load("banco_dados_receita_federal_exer01.xml")
		xmlDoc = xmlHttp
	}
}

[size=18]Mostrar Função[/size]

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Exemplo Menu</title>
<script src="funcoes.js"></script>
<script>
window.onload = function(){
	exibeMenu()
}
</script>
</head>
<body>
<div id="menu"></div>
</body>
</html>