Validador de XML

Confira a sintaxe do XML e encontre o primeiro erro por linha e coluna. Tudo roda no seu navegador, então seu XML nunca é enviado.

O validador roda inteiramente no seu navegador e precisa de JavaScript. O resto desta página funciona sem ele. Alternativas: xmllint --noout file.xml em um terminal, ou uma extensão de XML no seu editor de código.

Cole XML, solte um arquivo ou carregue o exemplo. Os arquivos são lidos no seu navegador: nada é enviado. Pressione Ctrl+Enter para validar.

Resultado

Confere se o XML está bem formado. Esquemas DTD e XSD não são conferidos.

O veredito vai aparecer aqui.

Esta ferramenta ajudou você? Apoie o XMLNest

Nota 5,0 de 5 (3 avaliações)

O exemplo tem um erro: "Validate" aponta uma tag de fechamento que não corresponde na linha 10, coluna 30. "Go to error" seleciona o trecho na entrada e, depois da correção, o XML fica bem formado. (22 segundos, sem som, interface em inglês)

Como validar XML online?

Cole seu XML na entrada, abra um arquivo com Abrir arquivo… ou solte-o sobre a ferramenta. Depois, clique em Validar ou pressione Ctrl+Enter (⌘+Enter no Mac). O veredito aparece na caixa Resultado e, se o XML estiver bem formado, traz linhas, elementos, tamanho, codificação e elemento raiz.

Se não estiver, você vê a linha e a coluna do primeiro erro, uma explicação simples e as linhas em volta. Ir para o erro seleciona o ponto na entrada. Isso ajuda, por exemplo, com o XML de uma NF-e que não abre.

O que é um XML bem formado?

Um XML bem formado segue as regras de sintaxe do XML 1.0: exatamente um elemento raiz, cada tag aberta com sua tag de fechamento, elementos fechados na ordem inversa da abertura, valores de atributo entre aspas, e os caracteres & e < escritos como &amp; e &lt; no texto. Um parser recusa o arquivo que quebra qualquer dessas regras: um só caractere fora do lugar pode travar um feed ou um sitemap.

Erros comuns de sintaxe XML e como corrigi-los

Quase todo arquivo com erro vem de poucos deslizes: uma tag de fechamento com erro de digitação, como </autor> para <author>; uma tag nunca fechada; um & em uma URL ou no nome de uma empresa; um valor de atributo sem aspas; dois elementos raiz; um caractere de controle invisível copiado de outro programa. O validador aponta cada um e sugere uma correção. Os parsers param no primeiro erro: valide de novo após cada correção para achar o próximo.

Este validador de XML confere esquemas XSD ou DTD?

Não. Ele confere se o XML está bem formado. Um esquema, como o da NF-e, acrescenta regras próprias (quais elementos são permitidos, por exemplo), e validar contra ele exige o arquivo do esquema. A ferramenta lê o DOCTYPE e as declarações internas para conferir a sintaxe delas, mas nunca baixa uma DTD externa.

Este validador de XML envia meu arquivo?

Não. A verificação roda nesta aba. Seu arquivo é lido no seu aparelho, e as regras de segurança desta página impedem qualquer envio. Nada é salvo: feche a aba e tudo some. Depois, o formatador de XML indenta ou minifica o arquivo. Para um sitemap, use o verificador de sitemap; para JSON, o conversor XML para JSON; para XSLT e XPath, o testador de XSLT e o testador de XPath.

Dúvidas

XML bem formado é o mesmo que XML válido?

Não. Bem formado quer dizer que a sintaxe está correta. Válido quer dizer que o arquivo também segue um esquema DTD ou XSD, que esta ferramenta não confere. Um arquivo precisa estar bem formado antes de poder ser válido.

Como verificar a sintaxe de um XML sem usar um site?

No terminal, xmllint --noout file.xml não mostra nada se o arquivo estiver bem formado; se não estiver, lista os erros com o número da linha. A maioria dos editores de código também, com uma extensão de XML.

Existe limite de tamanho?

Sim, 20 MB para um arquivo aberto ou para um texto colado. A verificação roda em segundo plano, então a página continua respondendo.

Por que ele mostra só um erro?

Os parsers XML param no primeiro erro, porque o resto do arquivo já não pode ser lido com segurança. Corrija, valide de novo e o próximo erro aparece, se houver.

Ele corrige meu XML?

Não. Ele aponta o primeiro erro e explica o problema, e você decide como corrigir. Uma correção automática poderia mudar seus dados sem você perceber.

Dá para verificar XML direto no Chrome?

Ao abrir um XML mal formado, o Chrome mostra no topo da página um erro com linha e coluna. O XMLNest, extensão disponível na Chrome Web Store, mostra arquivos XML como uma árvore legível e aponta o erro quando o arquivo está quebrado.