Ferramentas
PT

O que é XML?

XML (Extensible Markup Language, ou linguagem de marcação extensível) é um formato de texto para armazenar e trocar dados estruturados. Este guia explica o que significa XML, como funciona a sua sintaxe, o que é um arquivo .xml e onde você encontra XML todos os dias – de sitemaps e imagens SVG a documentos do Office e notas fiscais eletrônicas.

O que significa XML

XML é a sigla de Extensible Markup Language (linguagem de marcação extensível). Tornou-se uma Recomendação do W3C em 1998 e descreve dados com tags que você mesmo nomeia – é isso que “extensível” quer dizer. Ao contrário do HTML, o XML não tem tags predefinidas: um catálogo pode usar <product> e <price>, uma nota fiscal <item> e <total>.

Um documento XML mínimo tem esta cara: <book id="1"><title>XML Basics</title><year>2026</year></book>. XML é texto puro, então pessoas conseguem lê-lo e qualquer linguagem de programação consegue processá-lo. Ele apenas armazena e estrutura dados – não faz nada sozinho. São os programas que decidem o que os dados significam e como exibi-los.

Regras de sintaxe do XML

Todo documento XML precisa seguir algumas regras rígidas. Um documento que as segue é chamado de bem formado:

Comentários são escritos como <!-- … -->. Um validador de XML verifica todas essas regras em um segundo e aponta a linha de qualquer erro.

Elementos e atributos

Um elemento é uma tag de abertura, seu conteúdo e uma tag de fechamento: <price>19.90</price>. Elementos podem conter texto, outros elementos ou ambos. Um atributo é um par nome–valor dentro da tag de abertura: <price currency="EUR">.

ElementoAtributo
Exemplo<color>red</color>color="red"
Pode se repetirSimNão, uma vez por elemento
Pode conter elementos filhosSimNão, só texto
A ordem importaSimNão

Uma convenção comum: use elementos para os próprios dados e para tudo o que pode se repetir ou ter estrutura, e atributos para metadados como IDs, unidades ou tipos.

XML bem formado vs. XML válido

Um XML bem formado segue as regras de sintaxe; os parsers recusam qualquer outra coisa. Um XML válido é bem formado e também corresponde a um schema que define quais elementos e atributos são permitidos, em que ordem e com quais tipos de dados.

Namespaces XML

Como qualquer pessoa pode inventar nomes de tags, dois vocabulários podem usar o mesmo nome – o <title> de um livro e o <title> de uma pessoa. Os namespaces os mantêm separados ao vincular os nomes a uma URI. xmlns:cfdi="http://www.sat.gob.mx/cfd/4" declara o prefixo cfdi, então <cfdi:Comprobante> pertence ao vocabulário mexicano do CFDI 4.0. Um namespace padrão, xmlns="…" sem prefixo, vale para todos os elementos sem prefixo dentro dele. A URI é apenas um identificador; nada é baixado dela.

XML vs. JSON vs. HTML

XMLJSONHTML
FinalidadeArmazenar e trocar dados estruturados e documentosTrocar dados, principalmente em APIs webExibir páginas web
Nomes de tags ou chavesDefinidos por vocêDefinidos por vocêFixados pelo padrão HTML
Tipos de dadosTexto, a menos que um schema defina tiposString, número, booleano, null, array, objetoTexto
AtributosSimNãoSim
ComentáriosSimNãoSim
SchemasDTD, XSDJSON Schema–
Erros de sintaxeRejeitados pelos parsersRejeitados pelos parsersCorrigidos pelos navegadores

O JSON é mais curto e corresponde diretamente a objetos em JavaScript, por isso a maioria das APIs web migrou para ele. O XML continua forte onde documentos misturam texto e marcação, precisam de namespaces ou devem ser validados rigorosamente contra schemas – é por isso que autoridades fiscais, editoras e formatos de escritório ainda dependem dele.

O que é um arquivo .xml e como abrir?

Um arquivo .xml é um arquivo de texto puro que contém um documento XML, normalmente codificado em UTF-8. Por ser texto, qualquer editor de texto consegue abri-lo – o Bloco de Notas no Windows, o TextEdit no Mac ou um editor de código como o VS Code. O Chrome e o Firefox exibem arquivos XML como uma árvore quando você os arrasta para uma janela do navegador, e o Excel consegue importar dados XML para uma planilha.

Muitos arquivos usam XML sem a extensão .xml: imagens .svg, feeds .rss, schemas .xsd, folhas de estilo .xsl, arquivos .config no .NET e arquivos .plist no macOS, que podem ser salvos como XML. Arquivos do Word, Excel e PowerPoint (.docx, .xlsx, .pptx) são pacotes ZIP cheios de arquivos XML.

Onde o XML é usado

Perguntas frequentes

O que significa a sigla XML?

Extensible Markup Language (linguagem de marcação extensível). “Extensível” significa que você define suas próprias tags, e “marcação” significa que a estrutura é escrita como tags em volta dos dados.

XML é uma linguagem de programação?

Não. XML é um formato de dados: descreve e estrutura informações, mas não consegue calcular nada. Tecnologias relacionadas, como XPath e XSLT, consultam e transformam XML.

O XML ainda é usado hoje?

Sim. O JSON substituiu o XML em muitas APIs web, mas o XML continua sendo o padrão para sitemaps, feeds RSS, SVG, documentos de escritório, layouts Android, serviços SOAP e notas fiscais eletrônicas em muitos países.

Última atualização: