XML vs. XHTML
A linguagem de marcação extensível (também conhecida como XML) é um conjunto de regras. Essas regras são específicas para documentos que codificam eletronicamente. O principal objetivo do XML é enfatizar a simplicidade, generalidade e usabilidade na Internet. XML é anotado como um formato de dados textuais com suporte do Unicode para ser facilmente lido em todos os idiomas. Embora o principal objetivo do design XML seja o foco específico nos documentos, ele também é frequentemente usado para representar estruturas de dados arbitrárias (serviços da Web, por exemplo). Como é, existe uma infinidade de interfaces de programação que os desenvolvedores podem usar com o objetivo de acessar dados XML. Há também uma variedade de sistemas de esquema projetados especificamente para ajudar a definir linguagens baseadas em XML.
A linguagem de marcação de hipertexto extensível (também conhecida como XHTML) faz parte da família de linguagens de marcação XML. Na verdade, ele simula ou simplesmente atua como uma extensão da Hypertext Markup Language (ou HTML). O XHTML atua como um aplicativo da família XML e é um subconjunto mais restritivo do SGML. Como resultado da natureza bem formada dos documentos XHTML, é possível que eles sejam analisados usando um analisador XML - que diferencia ainda mais XHTML de HTML.
Um documento XML é composto inteiramente de caracteres encontrados em Unicode. Existem alguns caracteres de controle que são excluídos do Unicode; no entanto, aqueles encontrados no Unicode podem se tornar conteúdo em um documento XML. Há uma infinidade de recursos que identificam a codificação dos caracteres Unicode em um documento XML. Também existem facilidades que expressam os caracteres que não podem ser usados. Unicode é codificado em bytes para ser armazenado ou transmitido - essas expressões Unicode traduzidas são conhecidas como codificações. O XML usa qualquer, se não todas, codificações definidas em Unicode, bem como várias codificações diferentes cujos caracteres aparecem em Unicode. Ele fornece um mecanismo que permite que um processador XML determine qual codificação está em uso..
Existem três versões específicas do XHTML: XHTML 1.0 Strict, que inclui elementos e características que não estão marcados como obsoletos no HTML 4.01; XHTML 1.0 Transitional, que inclui elementos específicos para apresentações ('font' e 'strike', por exemplo); e Conjunto de quadros XHTML 1.0, que permite definir documentos do conjunto de quadros. O XHTML também pode ser modularizado, o que fornece uma coleção abstrata de atributos pelos quais o XHTML pode ser subconjunto e estendido. Isso é simplesmente um meio de ajudar o XHTML a estender seu escopo para outras plataformas eminentes (dispositivos móveis e televisão via web, por exemplo).
Resumo:
1. XML é um conjunto de regras definidas para codificação de documentos; XHTML é o equivalente XML do HTML que é um subconjunto mais restritivo do SGML.
2. XML é composto inteiramente de Unicode; O XHTML vem em três versões: XHTML 1.0 Strict, XHTML 1.0 Transitional e XHTML 1.0 Frameset.