Pular para o conteúdo principal
DevTools by Decussi
  • Ferramentas
  • Dados
  • Segurança
  • Rede
  • Texto
  • Data
  • Web
  • Dev
  • SEO
  • Brasil
Ferramentas
DevTools

Ferramentas para desenvolvedores, em português. Sem cadastro e sem instalação.

Criado e mantido por Decussi

Ferramentas

  • Todas as ferramentas
  • Dados
  • Segurança
  • Rede
  • Texto
  • Data
  • Web
  • Dev
  • SEO
  • Brasil

Referência

  • Consulta rápida
  • Guias
  • Códigos HTTP
  • Cron
  • Checagens de SEO

Desenvolvedores

  • API e devs
  • llms.txt
  • ai.txt
  • Sitemap

Newsletter

Receba novidades e novas ferramentas no seu email.

Sugira uma ferramenta

Tem uma ideia? Envie sua sugestão.

  1. Início
  2. /Guias
  3. /Comparações

JSON vs XML: diferenças, quando usar cada um e como converter

JSON dominou as APIs modernas, mas XML continua vivo em SOAP, notas fiscais e configuração corporativa. Saber a diferença importa principalmente na hora de converter.

Comparação direta

JSONXML
SintaxeChaves e colchetesTags de abertura e fechamento
AtributosNão existemSim
ComentáriosNão permitidosPermitidos
TiposString, número, booleano, nulo, array, objetoTudo é texto; o tipo vem do esquema
ValidaçãoJSON SchemaXSD, DTD, Relax NG
TamanhoMenorMaior, pela repetição das tags
ConsultaJSONPath, jqXPath, XQuery

O mesmo dado nos dois formatos

json
{
  "pedido": {
    "id": "7",
    "cliente": "Ana",
    "itens": [
      { "sku": "A1", "quantidade": 2 },
      { "sku": "B2", "quantidade": 1 }
    ]
  }
}
xml
<pedido id="7">
  <cliente>Ana</cliente>
  <item sku="A1"><quantidade>2</quantidade></item>
  <item sku="B2"><quantidade>1</quantidade></item>
</pedido>

O que se perde na conversão

A conversão entre os dois não é simétrica, porque cada formato tem algo que o outro não representa.

  • XML → JSON: comentários, namespaces e a distinção entre elemento vazio e ausente se perdem
  • XML → JSON: atributos precisam de uma convenção, normalmente uma chave prefixada com arroba
  • XML → JSON: dois irmãos com o mesmo nome viram array; com um só, o valor fica direto — quem consome precisa tratar os dois casos
  • JSON → XML: números e booleanos viram texto, já que XML não tem tipos sem esquema
  • JSON → XML: chaves com espaço, hífen inicial ou acento precisam ser ajustadas para virar nome de elemento válido

Quando ainda usar XML

  • Integração com webservice SOAP
  • Documentos fiscais brasileiros, como NF-e e NFS-e
  • Feeds RSS e Atom, e sitemaps
  • Configuração de ferramentas Java e .NET, como pom.xml e web.config
  • Documentos com marcação mista, em que texto e elementos se intercalam

Perguntas frequentes

JSON substituiu o XML?
Em APIs web, praticamente sim. Mas XML continua sendo o formato obrigatório em SOAP, em documentos fiscais e em boa parte da configuração de ecossistemas Java e .NET — não é uma tecnologia em desuso, é uma tecnologia com outro território.
Por que o JSON convertido tem chaves com arroba?
É a convenção para representar atributos XML, que não existem em JSON. Um id="7" vira "@id": "7", o que evita colisão com um elemento filho chamado id.

Resolva na prática

  • XML ↔ JSON
  • Formatador de XML
  • JSON Schema Validator

Guias relacionados

  • Como converter CSV para JSON (e o inverso)