XML y HTML son lenguajes de marcado descendientes de SGML pero diseñados para propósitos diferentes. HTML está diseñado para mostrar información y darle formato a una página web, mientras que XML está diseñado para organizar y describir información de manera portable entre aplicaciones. Aunque ambos usan etiquetas, XML es más estricto y no especifica etiquetas o semántica por sí mismo.