A linguaxe de etiquetaxe estendíbel (en inglés, Extensible Markup Language) ou XML é un subconxunto simplificado da SGML. Ten a capacidade de describir información de tipo documental mais tamén información baseada en datos puros.
XML é unha linguaxe de etiquetaxe que ten por obxecto crear linguaxes ou dialectos XML. É, polo tanto, un metaformato que se emprega basicamente para o intercambio de datos.
Un arquivo XML ten unha estrutura variable, mais que segue unha norma estándarizada para considerarse dito arquivo coma válido. Así é frecuente, mais non obrigatorio que cada arquivo, comece pola sentenza:
<?xml version="1.0" encoding="UTF-8"?>
Indicando a versión e a codificación dos caracteres dentro do propio arquivo.
Cada arquivo conta con diversos elementos e atributos, cunha declaración que comeza co carácter < e finaliza con >. Se algunha destas etiquetas non está presente, o arquivo considérase erróneo.
Os arquivos XML teñen que ser tratados por unha interface, para poder ser procesados pola aplicación informática receptora. Este proceso trata a estrutura en forma de árbore e o traduce nunha secuencia de variables e datos entendible pola devandita aplicación. Este proceso coñécese co vocable inglés parsing. O proceso contrario, a partir dunha secuencia de variables e datos obtemos un arquivo XML correcto e ben estruturado, chámase serialización[1]. Dependendo da plataforma e tecnoloxías empregadas, estes procesos poden ser moi custosos en consumo de memoria ou rendemento. Noutros casos con mellor rendemento, porén penalízase a compresión do código, sendo este de maior complexidade. Para tentar solventar estes problemas téñense desenrolado interfaces específicas para cada linguaxe de programación.