Formato XML: O Guia Técnico Completo
O que é XML
XML (eXtensible Markup Language) é uma linguagem de marcação para dados estruturados padronizada pelo W3C em 1998. Mais verboso que JSON moderno, XML ainda é onipresente em padrões corporativos, sistemas legacy, configurações Java/Microsoft, documentos Office (DOCX/XLSX são ZIPs de XMLs), feeds RSS/Atom.
Sintaxe
XML usa tags hierárquicas:
<?xml version="1.0" encoding="UTF-8"?>
<usuario id="42">
<nome>João Silva</nome>
<email>joao@example.com</email>
<criado>2026-01-15T10:30:00Z</criado>
</usuario>
Elementos podem ter atributos (id="42") e conteúdo aninhado. Tags devem ser fechadas (</tag>) ou auto-fechadas (<tag />). Case-sensitive.
Onde XML ainda domina
- Documentos Office: DOCX, XLSX, PPTX são ZIPs contendo XMLs
- SVG: gráficos vetoriais são XML
- RSS/Atom: feeds de notícias e podcasts
- SOAP: web services corporativos legacy
- Configurações Java/Spring: applicationContext.xml, web.xml
- Configurações Microsoft: .NET app.config, IIS web.config
- Sitemaps: sitemap.xml para SEO
- Android resources: layouts, strings, configurações
- Maven/Ant: build tools Java
Vantagens vs JSON
- Atributos: separação semântica entre dados e metadados
- Namespaces: combinar XMLs de fontes diferentes sem colisão
- Schemas formais: XSD para validação rigorosa
- XSLT: transformação declarativa de XML para outros formatos
- Comentários nativos:
<!-- comentário --> - CDATA: incluir texto literal sem escapar caracteres especiais
- Mais maduro: 25+ anos de tooling e padrões
Desvantagens vs JSON
- Verboso: mais bytes para mesma informação
- Parsing lento: mais complexo que JSON
- Sintaxe mais rígida: mais propenso a erros manuais
- Não é JavaScript-friendly: APIs web preferem JSON
Validação com XSD
XML Schema Definition permite validação rigorosa:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="usuario">
<xs:complexType>
<xs:sequence>
<xs:element name="nome" type="xs:string"/>
<xs:element name="email" type="xs:string"/>
</xs:sequence>
<xs:attribute name="id" type="xs:int"/>
</xs:complexType>
</xs:element>
</xs:schema>
XSD é mais expressivo que JSON Schema mas também mais complexo.
Transformação com XSLT
XSLT permite transformar XML em outros formatos (HTML, JSON, outro XML) declarativamente. Poderoso mas complexo — raramente usado em projetos novos.
XML em APIs SOAP
SOAP é protocolo legacy para web services corporativos:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<getUserRequest>
<userId>42</userId>
</getUserRequest>
</soap:Body>
</soap:Envelope>
Maioria das APIs modernas migrou de SOAP para REST/JSON, mas SOAP sobrevive em sistemas corporativos (bancos, governo, ERP enterprise).
Conversão
KaijuConverter converte XML para JSON e vice-versa. JSON é geralmente preferido em projetos novos; XML continua relevante para integração com sistemas legacy e padrões estabelecidos.
Conclusão
XML é tecnicamente "velho" mas continua essencial em 2026. Sistemas legacy, padrões corporativos, documentos Office, SVG, feeds RSS — todos baseados em XML. Para projetos novos: JSON é mais ergonômico. Para integração com sistemas existentes: XML pode ser inevitável e KaijuConverter facilita conversões entre os dois.
Conversões relacionadas
Conversões de documento relacionadas com este tema: