Conversor XML ⇄ JSON
Sobre esta ferramenta
Converte XML e JSON entre si. A lógica foi ajustada para priorizar o ciclo de ida e volta (converter e voltar sem alterações).
Por padrão a opção transformar elementos repetidos com o mesmo nome em um array fica desativada, e o array só é criado quando houver 2 ou mais ocorrências.
Quando a raiz do JSON é um array, o XML é representado como <root><item>…</item>…</root>
, e na conversão XML→JSON essa estrutura é restaurada como array.
Todo o processamento acontece no seu navegador e nenhum dado é enviado.
Conversão XML ⇄ JSON
—
Como usar
- Cole à esquerda o XML ou JSON.
- Clique em XML → JSON ou JSON → XML.
- Ajuste a indentação, as chaves de atributo/texto, a preservação de namespaces e o tratamento de arrays conforme necessário.
- Use os botões Validate para verificar a sintaxe.
Exemplo
XML → JSON:
<user id="42">
<name>Taro</name>
<role>admin</role>
<role>editor</role>
</user>
{
"user": {
"@id": "42",
"name": "Taro",
"role": ["admin", "editor"]
}
}
Observações
- Atributos são representados como
[prefixo de atributo][nome do atributo]
(padrão@id
etc.). - O conteúdo de texto usa
[chave de texto]
(padrão#text
). - Elementos com o mesmo nome permanecem como valor único por padrão e apenas quando houver 2 ou mais são convertidos em array.
- Quando a raiz do JSON é um array, o XML usa
<root><item>…</item>…</root>
(o nome dos itens pode ser alterado). - Elementos vazios sem texto nem atributos são emitidos como objeto vazio
{}
.
Avisos (limites de equivalência)
Buscamos garantir que “JSON original” → XML → “JSON de volta” resulte no mesmo arquivo, mas os casos a seguir fogem desse objetivo.
JSON original:
"urls": [
"admin.microsoft.com"
],
"expressRoute": false,
"id": 160,
JSON após o retorno:
"urls": "admin.microsoft.com",
"expressRoute": "false",
"id": "160",
※Devido às diferenças de tratamento de tipos entre XML e JSON, é difícil obter equivalência estrita, embora anotações de tipo no XML possam ajudar em alguns casos.