El lenguaje de marcado de hipertexto extensible ( XHTML ) forma parte de la familia de lenguajes de marcado XML , que refleja o extiende versiones del lenguaje de marcado de hipertexto (HTML), ampliamente utilizado y que es el lenguaje en el que se formulan las páginas web .
Mientras que HTML, antes de HTML5 , se definía como una aplicación del Lenguaje de Marcado Generalizado Estándar (SGML), un marco de lenguaje de marcado flexible, XHTML es una aplicación de XML, un subconjunto más restrictivo de SGML. Los documentos XHTML están bien formados y, por lo tanto, pueden analizarse utilizando analizadores XML estándar, a diferencia de HTML, que requiere un analizador permisivo específico de HTML. [ 1 ]
XHTML 1.0 se convirtió en una recomendación del Consorcio World Wide Web (W3C) el 26 de enero de 2000. XHTML 1.1 se convirtió en una recomendación del W3C el 31 de mayo de 2001. Actualmente, XHTML se conoce como "la sintaxis XML para HTML" [ 2 ] [ 3 ] y se está desarrollando como una adaptación XML del estándar HTML. [ 4 ] [ 5 ]
Descripción general
XHTML 1.0 fue "una reformulación de los tres tipos de documentos HTML 4 como aplicaciones de XML 1.0". [ 6 ] El Consorcio World Wide Web (W3C) también mantuvo simultáneamente la Recomendación HTML 4.01 [ 7 ] . En el documento de Recomendación XHTML 1.0, publicado y revisado en agosto de 2002, el W3C comentó que "La familia XHTML es el siguiente paso en la evolución de Internet. Al migrar a XHTML hoy, los desarrolladores de contenido pueden ingresar al mundo XML con todos sus beneficios inherentes, manteniendo la confianza en la compatibilidad hacia atrás y hacia el futuro de su contenido". [ 6 ]
Sin embargo, en 2005, se formó el Grupo de Trabajo de Tecnología de Aplicaciones de Hipertexto Web (WHATWG), independientemente del W3C, para trabajar en el avance del HTML ordinario no basado en XHTML. El WHATWG finalmente comenzó a trabajar en un estándar que admitía serializaciones XML y no XML , HTML5 , en paralelo a los estándares del W3C como XHTML 2.0. En 2007, el grupo de trabajo de HTML del W3C votó a favor de reconocer oficialmente HTML5 y trabajar en él como el estándar HTML de próxima generación. [ 8 ] En 2009, el W3C permitió que expirara el estatuto del Grupo de Trabajo de XHTML 2.0, reconociendo que HTML5 sería el único estándar HTML de próxima generación, incluyendo serializaciones XML y no XML. [ 9 ] De las dos serializaciones, el W3C sugiere que la mayoría de los autores utilicen la sintaxis HTML, en lugar de la sintaxis XHTML. [ 10 ]
Las recomendaciones del W3C de XHTML 1.0 y XHTML 1.1 fueron retiradas el 27 de marzo de 2018, [ 11 ] [ 12 ] junto con HTML 4.0, [ 13 ] HTML 4.01, [ 14 ] y HTML5. [ 15 ]
Motivación
XHTML se desarrolló para hacer que HTML fuera más extensible y aumentar la interoperabilidad con otros formatos de datos. [ 16 ] Además, los navegadores eran tolerantes con los errores en HTML, y la mayoría de los sitios web se mostraban a pesar de los errores técnicos en el marcado; XHTML introdujo un manejo de errores más estricto. [ 17 ] HTML 4 era ostensiblemente una aplicación del Lenguaje de Marcado Generalizado Estándar (SGML); sin embargo, la especificación para SGML era compleja, y ni los navegadores web ni la Recomendación HTML 4 se ajustaban completamente a ella. [ 18 ] El estándar XML, aprobado en 1998, proporcionó un formato de datos más simple, más cercano en simplicidad a HTML 4. [ 19 ] Al cambiar a un formato XML, se esperaba que HTML se volviera compatible con las herramientas XML comunes; [ 20 ] los servidores y proxies podrían transformar el contenido, según fuera necesario, para dispositivos limitados como los teléfonos móviles. [ 21 ] Mediante el uso de espacios de nombres , los documentos XHTML podrían proporcionar extensibilidad al incluir fragmentos de otros lenguajes basados en XML, como Scalable Vector Graphics y MathML . [ 22 ] Finalmente, el trabajo renovado brindaría la oportunidad de dividir HTML en componentes reutilizables ( modularización de XHTML ) y limpiar las partes desordenadas del lenguaje. [ 23 ]
Relación con HTML
Existen diversas diferencias entre XHTML y HTML. El Modelo de Objetos del Documento (DOM) es una estructura de árbol que representa la página internamente en las aplicaciones, y XHTML y HTML son dos formas distintas de representarla en el marcado. Ambos son menos expresivos que el DOM; por ejemplo, "-- > " puede colocarse en comentarios en el DOM, pero no puede representarse en un comentario ni en XHTML ni en HTML. En general, la sintaxis XML de XHTML es más expresiva que la de HTML (por ejemplo, no se permiten espacios de nombres arbitrarios en HTML). XHTML utiliza una sintaxis XML, mientras que HTML utiliza una sintaxis pseudo- SGML (oficialmente SGML para HTML 4 y versiones anteriores, pero nunca en la práctica, y estandarizada a partir de HTML5). Debido a que el contenido expresable de la sintaxis DOM es ligeramente diferente, existen algunos cambios en el comportamiento real entre los dos modelos. Sin embargo, las diferencias de sintaxis pueden superarse implementando un marco de traducción alternativo dentro del marcado.
En primer lugar, existen algunas diferencias en la sintaxis: [ 24 ]
- En términos generales, las reglas XML requieren que cada elemento esté cerrado, ya sea con una etiqueta de cierre separada (por ejemplo,
</div>) o utilizando la sintaxis de autocierre (por ejemplo,<br/>), mientras que la sintaxis HTML permite que algunos elementos no estén cerrados porque siempre están vacíos (por ejemplo, ) o su final se puede determinar implícitamente ("omissibility", por ejemplo ).<input><p> - XML distingue entre mayúsculas y minúsculas en los nombres de elementos y atributos , mientras que HTML no.
- Algunas características abreviadas de HTML se omiten en XML, como (1) la minimización de atributos , donde se pueden omitir los valores de los atributos o sus comillas (por ejemplo, o , mientras que en XML esto debe expresarse como ); (2) la minimización de elementos se puede usar para eliminar elementos por completo (como inferido en una tabla si no se proporciona); y (3) la sintaxis SGML poco utilizada para la minimización de elementos ("shorttag"), que la mayoría de los navegadores no implementan. [ 25 ]
<optionselected><optionselected=selected><optionselected="selected"><tbody> - Existen numerosos requisitos técnicos adicionales relacionados con los espacios de nombres y el análisis preciso de los espacios en blanco y ciertos caracteres y elementos. El análisis exacto de HTML en la práctica no estaba definido hasta hace poco; consulte la especificación HTML5 ( [HTML5] ) para obtener más detalles o el resumen práctico ( HTML vs. XHTML ).
Además de las diferencias sintácticas, existen algunas diferencias de comportamiento, que en su mayoría se derivan de las diferencias subyacentes en la serialización. Por ejemplo:
- El comportamiento ante errores de análisis sintáctico difiere. Un error de análisis sintáctico fatal en XML (como una estructura de etiquetas incorrecta) provoca la interrupción del procesamiento del documento.
- La mayoría del contenido que requiere espacios de nombres no funcionará en HTML, excepto la compatibilidad integrada con SVG y MathML en el analizador HTML5 junto con ciertos prefijos mágicos como
xlink. - El procesamiento de JavaScript es diferente en XHTML, con pequeños cambios en la distinción entre mayúsculas y minúsculas para algunas funciones, y precauciones adicionales para restringir el procesamiento a contenido bien formado. Los scripts no deben usar el método; no está disponible para XHTML. La propiedad está disponible, pero no insertará contenido no bien formado. Por otro lado, se puede usar para insertar contenido con espacio de nombres bien formado en XHTML.
document.write()innerHTML - Las hojas de estilo en cascada (CSS) también se aplican de manera diferente. Debido a la distinción entre mayúsculas y minúsculas de XHTML, todos los selectores CSS se vuelven sensibles a las mayúsculas y minúsculas para los documentos XHTML. [ 26 ] Algunas propiedades CSS, como los fondos, establecidas en el elemento en HTML se "heredan hacia arriba" en el elemento; este no será el caso para XHTML a menos que se indique lo contrario con las palabras clave "initial" e "inherit". [ 27 ] [ 28 ]
<body><html>
Adopción
Las similitudes entre HTML 4.01 y XHTML 1.0 llevaron a muchos sitios web y sistemas de gestión de contenido a adoptar la recomendación inicial de XHTML 1.0 del W3C. Para ayudar a los autores en la transición, el W3C proporcionó orientación sobre cómo publicar documentos XHTML 1.0 de forma compatible con HTML y servirlos a navegadores que no fueron diseñados para XHTML. [ 29 ] [ 30 ]
Dicho contenido "compatible con HTML" se envía utilizando el tipo de medio HTML ( text/html) en lugar del tipo de medio de Internet oficial para XHTML ( application/xhtml+xml). Por lo tanto, al medir la adopción de XHTML en comparación con la de HTML estándar, es importante distinguir si se está comparando el uso del tipo de medio o el contenido real del documento. [ 31 ] [ 32 ]
La mayoría de los navegadores web tienen soporte maduro [ 33 ] para todos los tipos de medios XHTML posibles. [ 34 ] La excepción notable son las versiones 8 y anteriores de Internet Explorer de Microsoft ; en lugar de renderizar application/xhtml+xmlel contenido, un cuadro de diálogo invita al usuario a guardar el contenido en el disco. Tanto Internet Explorer 7 (lanzado en 2006) como Internet Explorer 8 (lanzado en marzo de 2009) presentan este comportamiento. [ 35 ] El desarrollador de Microsoft, Chris Wilson, explicó en 2005 que las prioridades de IE7 eran mejorar la seguridad del navegador y el soporte CSS , y que sería difícil integrar un soporte XHTML adecuado en el analizador HTML orientado a la compatibilidad de IE; [ 36 ] sin embargo, Microsoft agregó soporte para XHTML verdadero en IE9 . [ 37 ]
Mientras el soporte no esté generalizado, la mayoría de los desarrolladores web evitan usar XHTML que no sea compatible con HTML, [ 38 ] por lo que las ventajas de XML, como los espacios de nombres, el análisis más rápido y los navegadores que consumen menos recursos, no benefician al usuario. [ 39 ] [ 40 ] [ 41 ]
Crítica
A principios de la década de 2000, algunos desarrolladores web comenzaron a cuestionar por qué los autores web alguna vez dieron el salto a la creación de contenido en XHTML. [ 42 ] [ 43 ] [ 44 ] Otros replicaron que los problemas atribuidos al uso de XHTML podían atribuirse principalmente a dos fuentes principales: la producción de documentos XHTML no válidos por parte de algunos autores web y la falta de soporte para XHTML integrado en Internet Explorer 6. [ 45 ] [ 46 ] Luego describieron los beneficios de los documentos web basados en XML (es decir, XHTML) con respecto a la búsqueda, la indexación y el análisis, así como la preparación para el futuro de la propia Web.
En octubre de 2006, el inventor de HTML y presidente del W3C, Tim Berners-Lee , al presentar un importante esfuerzo del W3C para desarrollar una nueva especificación de HTML, publicó en su blog que «[e]l intento de lograr que el mundo cambiara a XML... de una vez no funcionó. El gran público generador de HTML no se movió... Algunas grandes comunidades sí se movieron y están disfrutando de los frutos de sistemas bien formados... El plan es crear un grupo de HTML completamente nuevo». [ 47 ] El borrador de trabajo actual de HTML5 dice que «se ha prestado especial atención a definir criterios de conformidad claros para los agentes de usuario en un esfuerzo por mejorar la interoperabilidad... al mismo tiempo que se actualizan las especificaciones de HTML para abordar los problemas planteados en los últimos años». Ian Hickson , editor de la especificación de HTML5 que criticó el uso indebido de XHTML en 2002, [ 42 ] es miembro del grupo que desarrolla esta especificación y figura como uno de los coeditores del borrador de trabajo actual. [ 48 ]
Simon Pieters investigó la conformidad de los navegadores móviles con XML [ 49 ] y concluyó que "la afirmación de que se necesitaría XHTML para dispositivos móviles es simplemente un mito".
Versiones de XHTML
XHTML 1.0

application/xhtml+xml.En diciembre de 1998 se publicó un borrador de trabajo del W3C titulado «Reformulación de HTML en XML» . Este introdujo Voyager, el nombre en clave de un nuevo lenguaje de marcado basado en HTML 4, pero que se adhería a las reglas de sintaxis más estrictas de XML. En febrero de 1999, el nombre de la especificación cambió a XHTML 1.0: Lenguaje de marcado de hipertexto extensible , y en enero de 2000 fue adoptado oficialmente como recomendación del W3C. [ 50 ] Existen tres definiciones formales de tipo de documento (DTD) para XHTML 1.0, que corresponden a las tres versiones diferentes de HTML 4.01:
- XHTML 1.0 Strict es el equivalente XML de HTML 4.01 estricto e incluye elementos y atributos que no han sido marcados como obsoletos en la especificación HTML 4.01. A partir de noviembre de 2015. , XHTML 1.0 Strict es el tipo de documento utilizado para la página de inicio del sitio web del Consorcio World Wide Web .
- XHTML 1.0 Transitional es el equivalente XML de HTML 4.01 Transitional, e incluye los elementos de presentación (como
center,fontystrike) excluidos de la versión estricta. - XHTML 1.0 Frameset es el equivalente XML de HTML 4.01 Frameset y permite la definición de documentos frameset , una característica web común a finales de la década de 1990.
La segunda edición de XHTML 1.0 se convirtió en una recomendación del W3C en agosto de 2002. [ 51 ]
Modularización de XHTML
La modularización proporciona una colección abstracta de componentes mediante la cual XHTML puede subdividirse y extenderse. Esta característica tiene como objetivo ayudar a XHTML a ampliar su alcance a plataformas emergentes, como dispositivos móviles y televisores con acceso a Internet. El borrador inicial de la modularización de XHTML se publicó en abril de 1999 y alcanzó el estatus de recomendación en abril de 2001. [ 52 ]
Las primeras variantes modulares de XHTML fueron XHTML 1.1 y XHTML Basic 1.0.
En octubre de 2008, la Modularización de XHTML fue reemplazada por la Modularización de XHTML 1.1 , que añade una implementación de esquema XML . Esta fue reemplazada por una segunda edición en julio de 2010. [ 53 ]
XHTML 1.1: XHTML basado en módulos
XHTML 1.1 surgió del trabajo en torno a la especificación inicial de Modularización de XHTML . El W3C publicó el primer borrador en septiembre de 1999; el estado de Recomendación se alcanzó en mayo de 2001. [ 54 ] Los módulos combinados dentro de XHTML 1.1 recrean efectivamente XHTML 1.0 Strict, con la adición de elementos de anotación rubyruby ( , rbc, rtc, rb, rty rp) para brindar un mejor soporte a los idiomas de Asia Oriental. Otros cambios incluyen la eliminación del nameatributo de los elementos ay map, y (en la primera edición del lenguaje) la eliminación del langatributo en favor de xml:lang.
Aunque XHTML 1.1 es en gran medida compatible con XHTML 1.0 y HTML 4, en agosto de 2002 el Grupo de Trabajo emitió una Nota formal aconsejando que no se transmitiera con el tipo de medio HTML. [ 55 ] Debido al soporte limitado de los navegadores para el application/xhtml+xmltipo de medio alternativo, XHTML 1.1 no logró un uso generalizado. En enero de 2009 se publicó una segunda edición del documento ( Tipos de medios XHTML – Segunda edición ), que flexibilizaba esta restricción y permitía que XHTML 1.1 se sirviera como text/html. [ 56 ]
La segunda edición de XHTML 1.1 se publicó el 23 de noviembre de 2010, la cual corrige varias erratas y añade una implementación de esquema XML que no estaba incluida en la especificación original. [ 57 ] (Se publicó brevemente por primera vez el 7 de mayo de 2009 como una "Recomendación Editada Propuesta" [ 58 ] antes de ser retirada el 19 de mayo debido a problemas sin resolver).
XHTML básico
Dado que los dispositivos de información pueden carecer de los recursos del sistema necesarios para implementar todos los módulos abstractos de XHTML, el W3C definió una especificación XHTML con funcionalidades limitadas denominada XHTML Basic. Esta proporciona un subconjunto mínimo de funcionalidades suficiente para la creación de contenido más común. La especificación se convirtió en una recomendación del W3C en diciembre de 2000. [ 59 ]
De todas las versiones de XHTML, XHTML Basic 1.0 ofrece la menor cantidad de funcionalidades. Junto con XHTML 1.1, es una de las dos primeras implementaciones de XHTML modular. Además de los módulos principales (Estructura, Texto, Hipertexto y Lista), implementa los siguientes módulos abstractos: Base, Formularios básicos, Tablas básicas, Imagen, Enlace, Metainformación, Objeto, Hoja de estilo y Destino. [ 60 ] [ 61 ]
XHTML Basic 1.1 reemplaza el Módulo de Formularios Básicos por el Módulo de Formularios y añade los módulos de Eventos Intrínsecos, Presentación y Scripting. También admite etiquetas y atributos adicionales de otros módulos. Esta versión se convirtió en una recomendación del W3C el 29 de julio de 2008. [ 62 ]
La versión actual de XHTML Basic es la 1.1 Segunda Edición (23 de noviembre de 2010), en la que el lenguaje se reimplementa en el lenguaje XML Schema del W3C . Esta versión también admite el langatributo. [ 63 ]
Impresión XHTML
XHTML-Print, que se convirtió en una recomendación del W3C en septiembre de 2006, es una versión especializada de XHTML Basic diseñada para documentos impresos desde dispositivos de información a impresoras de gama baja . [ 64 ]
Perfil móvil XHTML
XHTML Mobile Profile (abreviado XHTML MP o XHTML-MP) es una variante de terceros de la especificación XHTML Basic del W3C. Al igual que XHTML Basic, XHTML se desarrolló para dispositivos informáticos con recursos de sistema limitados.
En octubre de 2001, una sociedad limitada llamada Wireless Application Protocol Forum comenzó a adaptar XHTML Basic para WAP 2.0 , la segunda versión principal del protocolo de aplicaciones inalámbricas . WAP Forum basó su DTD en la Modularización de XHTML del W3C, incorporando los mismos módulos que el W3C utilizó en XHTML Basic 1.0, excepto el Módulo de Destino. Partiendo de esta base, WAP Forum reemplazó el Módulo de Formularios Básico con una implementación parcial del Módulo de Formularios, añadió soporte parcial para los módulos de Legado y Presentación, y soporte completo para el Módulo de Atributos de Estilo.
En 2002, el Foro WAP se integró en la Open Mobile Alliance (OMA), que continuó desarrollando el Perfil Móvil XHTML como un componente de su Especificación de Navegación OMA.
Perfil móvil XHTML 1.1
A esta versión, finalizada en 2004, la OMA añadió soporte parcial para el Módulo de Scripting y soporte parcial para Eventos Intrínsecos. XHTML MP 1.1 forma parte de la versión 2.1 de la Especificación de Navegación de la OMA (1 de noviembre de 2002). [ 65 ]
Perfil móvil XHTML 1.2
Esta versión, finalizada el 27 de febrero de 2007, amplía las capacidades de XHTML MP 1.1 con soporte completo para el Módulo de Formularios y los Modos de Entrada de Texto OMA. XHTML MP 1.2 forma parte de la versión 2.3 de la Especificación de Navegación OMA (13 de marzo de 2007). [ 65 ]
Perfil móvil XHTML 1.3
XHTML MP 1.3 (finalizado el 23 de septiembre de 2008) utiliza la definición de tipo de documento XHTML Basic 1.1 , que incluye el Módulo de Destino. Los eventos en esta versión de la especificación se actualizan a las especificaciones DOM Nivel 3 (es decir, son independientes de la plataforma y del idioma).
XHTML 1.2
El Grupo de Trabajo de XHTML 2 consideró la creación de un nuevo lenguaje basado en XHTML 1.1. [ 66 ] Si se creara XHTML 1.2, incluiría WAI-ARIA y roleatributos para brindar un mejor soporte a las aplicaciones web accesibles, y un soporte mejorado de la Web Semántica a través de RDFa . El inputmodeatributo de XHTML Basic 1.1, junto con el targetatributo (para especificar objetivos de marco ) también podría estar presente. El Grupo de Trabajo de XHTML2 no había sido designado para llevar a cabo el desarrollo de XHTML1.2. Dado que el W3C anunció que no tiene intención de renovar el Grupo de Trabajo de XHTML2, [ 9 ] y cerró el Grupo de Trabajo en diciembre de 2010, esto significa que la propuesta de XHTML 1.2 no se concretaría.
XHTML 2.0
Entre agosto de 2002 y julio de 2006, el W3C publicó ocho borradores de trabajo de XHTML 2.0, una nueva versión de XHTML capaz de romper definitivamente con el pasado al descartar el requisito de compatibilidad con versiones anteriores. Esta falta de compatibilidad con XHTML 1.x y HTML 4 causó cierta controversia inicial en la comunidad de desarrolladores web. [ 67 ] Algunas partes del lenguaje (como los roleatributos y RDFa) se separaron posteriormente de la especificación y se trabajaron como módulos separados, en parte para ayudar a que la transición de XHTML 1.x a XHTML 2.0 fuera más fluida. Se esperaba que el noveno borrador de XHTML 2.0 apareciera en 2009, pero el 2 de julio de 2009, el W3C decidió dejar que el estatuto del Grupo de Trabajo de XHTML2 expirara a finales de ese año, deteniendo efectivamente cualquier desarrollo posterior del borrador en un estándar. [ 9 ] En cambio, XHTML 2.0 y sus documentos relacionados se publicaron como W3C Notes en 2010. [ 68 ] [ 69 ]
Entre las nuevas características introducidas por XHTML 2.0 se incluyen:
- Los formularios HTML iban a ser reemplazados por XForms , una especificación de entrada de usuario basada en XML que permite que los formularios se muestren adecuadamente en diferentes dispositivos de visualización.
- Los marcos HTML debían ser reemplazados por XFrames .
- Los eventos DOM debían ser reemplazados por eventos XML , que utilizan el modelo de objetos de documento XML .
- Se iba a incluir un nuevo tipo de elemento de lista, el
nltipo de elemento, para designar específicamente una lista como lista de navegación. Esto habría sido útil para crear menús anidados, que actualmente se crean mediante una amplia variedad de métodos, como listas no ordenadas anidadas o listas de definición anidadas. - Cualquier elemento debía poder funcionar como un hipervínculo , por ejemplo,
<li href="articles.html">Articles</li>, de forma similar a XLink . Sin embargo, XLink no es compatible con XHTML debido a diferencias de diseño. - Cualquier elemento debía poder hacer referencia a medios alternativos con el
srcatributo, por ejemplo,<p src="lbridge.jpg" type="image/jpeg">London Bridge</p>es lo mismo que<object src="lbridge.jpg" type="image/jpeg"><p>London Bridge</p></object>. - Se eliminó el
altatributo delimgelemento: se debía proporcionar un texto alternativo en el contenido delimgelemento, de forma similar alobjectelemento, por ejemplo,<img src="hms_audacious.jpg">HMS <span class="italic">Audacious</span></img>. - Se añadió un único elemento de encabezado (
h). El nivel de estos encabezados se determinó por la profundidad del anidamiento. Esto habría permitido un uso infinito de los encabezados, en lugar de limitarlo a seis niveles de profundidad. - Los elementos de presentación restantes
i,bytt, que aún se permitían en XHTML 1.x (incluso Strict), debían estar ausentes en XHTML 2.0. Los únicos elementos de presentación que quedaban eransupysubpara superíndice y subíndice respectivamente porque tienen usos no presentacionales importantes y son requeridos por ciertos idiomas. Todas las demás etiquetas estaban destinadas a ser semánticas en su lugar (p. ej.strongpara énfasis fuerte ) mientras que permitían al agente de usuario controlar la presentación de los elementos a través de CSS (p. ej. renderizado como texto en negrita en la mayoría de los navegadores visuales, pero posiblemente renderizado con cambios de tono en un lector de texto a voz, fuente más grande + cursiva según reglas en una hoja de estilo del usuario, etc.). - La adición de la tripleta RDF con los
propertyatributosabouty para facilitar la conversión de XHTML a RDF/XML.
XHTML5
HTML5 se desarrolló independientemente del W3C, a través de un grupo informal de fabricantes de navegadores y otras partes interesadas que se autodenominaban WHATWG , o Grupo de Trabajo sobre Tecnología de Aplicaciones de Hipertexto Web. El principal objetivo del grupo era crear una plataforma para aplicaciones web dinámicas; consideraban que XHTML 2.0 estaba demasiado centrado en los documentos y no era adecuado para la creación de foros de internet o tiendas en línea. [ 70 ]
HTML5 tiene tanto una text/htmlserialización regular como una serialización XML, que también se conoce como XHTML5 . [ 71 ] El lenguaje es más compatible con HTML 4 y XHTML 1.x que con XHTML 2.0, debido a la decisión de mantener los elementos de formulario HTML existentes y el modelo de eventos. Sin embargo, agrega muchos elementos nuevos que no se encuentran en XHTML 1.x, como las etiquetas sectiony aside.
El lenguaje XHTML5, al igual que HTML5, utiliza una declaración DOCTYPE sin DTD. Además, la especificación desaconseja el uso de DTD XHTML anteriores, solicitando a los navegadores que las reemplacen por una que contenga únicamente definiciones de entidades para caracteres con nombre durante el análisis. [ 71 ]
Contenido semántico en XHTML
XHTML+RDFa es una versión extendida del lenguaje de marcado XHTML que admite RDF mediante un conjunto de atributos y reglas de procesamiento en forma de documentos XML bien formados . Este lenguaje anfitrión es una de las técnicas utilizadas para desarrollar contenido de la Web Semántica mediante la incorporación de un marcado semántico enriquecido.
Documentos XHTML válidos
Un documento XHTML que cumple con una especificación XHTML se considera válido . La validez garantiza la coherencia del código del documento, lo que facilita su procesamiento, pero no necesariamente asegura una visualización coherente por parte de los navegadores. Un documento puede comprobarse mediante el Servicio de Validación de Marcado del W3C (para XHTML5, se recomienda utilizar Validator.nu Living Validator). En la práctica, muchos programas de desarrollo web ofrecen validación de código basada en los estándares del W3C .
Elemento raíz
El elemento raíz de un documento XHTML debe ser html, y debe contener un xmlnsatributo para asociarlo con el espacio de nombres XHTML . El URI del espacio de nombres para XHTML es http://www.w3.org/1999/xhtml. La etiqueta de ejemplo a continuación incluye además un xml:langatributo para identificar el documento con un lenguaje natural :
<html xmlns= "http://www.w3.org/1999/xhtml" xml:lang= "ar" >DOCTYPES
Para validar un documento XHTML, se puede utilizar una Declaración de Tipo de Documento , o DOCTYPE . Un DOCTYPE declara al navegador la Definición de Tipo de Documento (DTD) a la que se ajusta el documento. Una Declaración de Tipo de Documento debe colocarse antes del elemento raíz .
La parte del identificador del sistema del DOCTYPE, que en estos ejemplos es la URL que comienza con http://, solo necesita apuntar a una copia del DTD que se utilizará, si el validador no puede localizarla basándose en el identificador público (la otra cadena entre comillas). No es necesario que sea la URL específica que aparece en estos ejemplos; de hecho, se recomienda a los autores que utilicen copias locales de los archivos DTD siempre que sea posible. Sin embargo, el identificador público debe ser idéntico, carácter por carácter, al de los ejemplos.
Declaración XML
Se puede especificar una codificación de caracteres al inicio de un documento XHTML en la declaración XML cuando el documento se sirve utilizando el tipo application/xhtml+xmlMIME . (Si un documento XML no especifica la codificación, el analizador XML asume que la codificación es UTF-8 o UTF-16 , a menos que un protocolo superior ya la haya determinado).
Por ejemplo:
<?xml version="1.0" encoding="UTF-8" ?>
La declaración puede omitirse opcionalmente porque declara su codificación como la codificación predeterminada. Sin embargo, si el documento utiliza XML 1.1 u otra codificación de caracteres, es necesaria una declaración. Internet Explorer anterior a la versión 7 entra en modo de peculiaridades si encuentra una declaración XML en un documento servido como text/html.
Compatibilidad con versiones anteriores
Los documentos XHTML 1.x son en su mayoría compatibles con versiones anteriores de HTML 4 si se siguen las directrices adecuadas. XHTML 1.1 es esencialmente compatible, aunque los elementos para la anotación ruby no forman parte de la especificación HTML 4 y, por lo tanto, los navegadores HTML 4 generalmente los ignoran. Los módulos XHTML 1.x posteriores, como los del roleatributo, RDFa y WAI-ARIA, se degradan de forma similar.
XHTML 2.0 es significativamente menos compatible, aunque esto se puede mitigar en cierta medida mediante el uso de scripts. (Esto puede consistir en simples líneas de código, como el uso de document.createElement()para registrar un nuevo elemento HTML en Internet Explorer, o en marcos de trabajo JavaScript completos, como la implementación FormFaces de XForms ).
Ejemplos
A continuación se muestran ejemplos de XHTML 1.0 Strict, ambos con el mismo resultado visual. El primero sigue las Directrices de compatibilidad HTML de la Nota sobre tipos de medios XHTML, mientras que el segundo rompe la compatibilidad con versiones anteriores, pero proporciona un marcado más limpio. [ 56 ]
Ejemplo 1.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns= "http://www.w3.org/1999/xhtml" xml:lang= "en" lang= "en" > <head> <meta http-equiv= "Content-Type" content= "text/html; charset=utf-8" /> <title> Ejemplo de XHTML 1.0 Strict </title> <script type= "text/javascript" > // <![CDATA[ function loadpdf() { document.getElementById("pdf-object").src="http://www.w3.org/TR/xhtml1/xhtml1.pdf"; } //]]> </script> </head> <body onload= "loadpdf()" > <p> Este es un ejemplo de un documento <abbr title= "Lenguaje de marcado de hipertexto extensible" > XHTML </abbr> 1.0 Strict . <br /><img id= "validation-icon" src= "http://www.w3.org/Icons/valid-xhtml10" alt= "XHTML 1.0 Strict válido" /> <br /> <object id= "pdf-object" name= "pdf-object" type= "application/pdf" data= "http://www.w3.org/TR/xhtml1/xhtml1.pdf" width= "100%" height= "500" > </object> </p> </body> </html>Ejemplo 2.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns= "http://www.w3.org/1999/xhtml" xml:lang= "en" > <head> <title> Ejemplo de XHTML 1.0 Strict </title> <script type= "application/javascript" > <![CDATA[ function loadpdf() { document.getElementById("pdf-object").src="http://www.w3.org/TR/xhtml1/xhtml1.pdf"; } ]]> </script> </head> <body onload= "loadpdf()" > <p> Este es un ejemplo de un documento <abbr title= "Lenguaje de marcado de hipertexto extensible" > XHTML </abbr> 1.0 Strict . <br /><img id= "validation-icon" src= "http://www.w3.org/Icons/valid-xhtml10" alt= "XHTML 1.0 Strict válido" /> <br /> <object id= "pdf-object" type= "application/pdf" data= "http://www.w3.org/TR/xhtml1/xhtml1.pdf" width= "100%" height= "500" ></object> </p> </body> </html>Notas:
- La función "loadpdf" es en realidad una solución alternativa para Internet Explorer. Se puede reemplazar agregando
<param name="src" value="http://www.w3.org/TR/xhtml1/xhtml1.pdf"/>dentro de<object>. - El
imgelemento no obtiene unnameatributo en el DTD estricto de XHTML 1.0 . Useiden su lugar.
Compatibilidad cruzada de XHTML y HTML
Las serializaciones HTML5 y XHTML5 son en gran medida intercompatibles si se adhieren a la sintaxis más estricta de XHTML5, pero hay algunos casos en los que XHTML no funcionará como HTML5 válido (por ejemplo, las instrucciones de procesamiento no existen en HTML, se tratan como comentarios y se cierran en el primer >, mientras que están totalmente permitidas en XML, se tratan como su propio tipo y se cierran en ?>). [ 72 ]
Véase también
Referencias
- ↑ Graff, Eliot (7 de mayo de 2014). "Marcado políglota: un perfil robusto del vocabulario HTML5" . W3C . Archivado del original el 16 de junio de 2022. Recuperado el 17 de octubre de 2015 .
- ↑ "Redacción de documentos con sintaxis XML" . HTML Living Standard . WHATWG . Archivado del original el 7 de julio de 2023.
- ↑ "La sintaxis XML" . HTML: El estándar actual . WHATWG . Archivado del original el 5 de junio de 2023.
- ↑ "HTML vs. XHTML" . whatwg.org .
- ↑ "El blog de WHATWG" . whatwg.org . 25 de julio de 2010.
- 1 2 "Especificación XHTML 1.0, Sección 1: ¿Qué es XHTML?" . Consorcio World Wide Web . 26-01-2000 . Recuperado el 16-06-2007 .
- ↑ "Especificación HTML 4.01" . Consorcio World Wide Web. 24 de diciembre de 1999. Archivado del original el 30 de agosto de 2019. Consultado el 29 de marzo de 2026 .
- ↑ "Resultados de las preguntas sobre texto, editor y nombre de HTML 5" . W3C .
- 1 2 3 "Preguntas frecuentes (FAQ) sobre el futuro de XHTML" . w3.org .
- ↑ "Borrador de trabajo de HTML5, Sección 1.6: HTML vs XHTML" . Consorcio World Wide Web . 13 de enero de 2011. Consultado el 16 de febrero de 2011 .
- ↑ "XHTML™ 1.0 El lenguaje de marcado de hipertexto extensible (Segunda edición) Historial de publicación" . Consorcio World Wide Web. 27 de marzo de 2018.
- ↑ "XHTML™ 1.1 - XHTML basado en módulos - Historial de publicación de la segunda edición" . Consorcio World Wide Web. 27 de marzo de 2018.
- ↑ "Historial de publicaciones de HTML 4.0" . Consorcio World Wide Web. 27 de marzo de 2018.
- ↑ "Historial de publicaciones de HTML 4.01" . Consorcio World Wide Web. 27 de marzo de 2018.
- ↑ "Historial de publicaciones de HTML5" . Consorcio World Wide Web. 27 de marzo de 2018.
- ↑ "Especificación XHTML 1.0, Sección 1.1: ¿Por qué es necesario XHTML?" . Consorcio World Wide Web . 26 de enero de 2000 . Consultado el 16 de junio de 2007 .
- ↑ Pilgrim, Mark. "¿Cómo llegamos hasta aquí? - Sumérgete en HTML5" . diveintohtml5.info . Archivado del original el 8 de marzo de 2021. Consultado el 11 de junio de 2016 .
- ↑ Arjun Ray (1999-10-06). "Eliminando la referencia normativa a SGML (antes: ID ACTION.)" . Archivado del original el 25-02-2021 . Recuperado el 29-12-2008 .
... Sin embargo, dado que ISO 8879 no otorga a las aplicaciones la libertad de prohibir subconjuntos internos, se deduce que la letra de la especificación HTML [4] automáticamente la descalifica para ser una aplicación SGML conforme...
- ↑ Tina Holmboe (6 de octubre de 2008). "XHTML: Mitos y realidad" . The Developer's Archive. Archivado del original el 12 de enero de 2017. Consultado el 29 de diciembre de 2008. ...
Dado que los objetivos de diseño de XML reflejaban parcialmente los del HTML original, era lógico comenzar a trabajar en la formulación de un lenguaje de marcado basado en XML...
- ↑ Kip Hampton (10 de enero de 2001). "Creación de utilidades web con XML::XPath" . XML.com . Consultado el 29 de diciembre de 2008. ...
El problema: Desea aprovechar la potencia y la simplicidad que ofrecen las herramientas XML, pero se encuentra con un sitio lleno de documentos HTML obsoletos. La solución: Convierta sus documentos a XHTML y ponga
a trabajar a Perl...
XML::XPath - ↑ Jean-Luc David (14 de abril de 2004). "Desarrollo de contenido inalámbrico con XHTML Mobile" . XML.com . Consultado el 29 de diciembre de 2008. ...
Una característica útil de XHTML es que puede manipularse como XML. Se pueden usar plantillas de lenguaje de hojas de estilo extensibles para transformar XHTML en WML o cualquier otro formato móvil propietario...
- ↑ "Curso intensivo sobre espacios de nombres" . Centro de desarrolladores de Mozilla. Archivado del original el 2 de octubre de 2008. Consultado el 29 de diciembre de 2008. ...
Un objetivo de larga data del W3C ha sido permitir la combinación de diferentes tipos de contenido basado en XML en un mismo archivo XML. Por ejemplo, SVG y MathML podrían incorporarse directamente en un documento científico basado en XHTML...
- ↑ Steven Pemberton (21 de julio de 2004). "Preguntas frecuentes sobre HTML y XHTML" . Consorcio World Wide Web . Consultado el 29 de diciembre de 2008. ...
con un HTML basado en XML, otros lenguajes XML podrían incluir fragmentos de XHTML, y los documentos XHTML podrían incluir fragmentos de otros lenguajes de marcado. También podríamos aprovechar el rediseño para limpiar algunas de las partes más desordenadas de HTML y agregar algunas funcionalidades nuevas necesarias, como mejores formularios...
- ↑ Clark, James (15 de diciembre de 1997). "Comparación de SGML y XML" . Nota del Consorcio World Wide Web.
- ↑ "Marcado abreviado" . HTML 4, Apéndice B: Rendimiento, implementación y notas de diseño . W3C . Consultado el 30 de septiembre de 2011 .
- ↑ "Sensibilidad a mayúsculas y minúsculas" . SitePoint Pty. Ltd. Consultado el 30 de septiembre de 2011 .
- ↑ Wilson, Nicholas (29 de mayo de 2010). "Diferencias CSS entre XHTML y HTML" .
- ↑ "CSS Cascading and Inheritance Level 3" . www.w3.org . Consultado el 29 de marzo de 2026 .
- ↑ "Especificación XHTML 1.0, Apéndice C: Directrices de compatibilidad HTML" . Consorcio World Wide Web . 26 de enero de 2000. Consultado el 16 de junio de 2007 .
- ↑ "Tipos de medios XHTML, nota del grupo de trabajo del W3C" . Consorcio World Wide Web . 1 de agosto de 2002. Consultado el 12 de junio de 2008 .
- ↑ "Metaetiquetas y etiquetas en línea que Google entiende | Google Search Central" .
- ↑ Greta de Groat (2002). "Perspectivas sobre la Web y Google: Monika Henzinger , Directora de Investigación de Google", Journal of Internet Cataloging , Vol. 5(1), pp. 17-28, 2002.
- ↑ Las primeras implementaciones (como Mozilla 0.7 y Opera 6.0, ambas lanzadas en 2001) no renderizan XHTML de forma incremental a medida que se recibe a través de la red, lo que resulta en una experiencia de usuario deficiente; consulte las preguntas frecuentes de Mozilla Web Author . Los navegadores más recientes, como Opera 9.0, Safari 3.0 y Firefox 3.0, no presentan este problema.
- ↑ "Prueba de tipo de medio XHTML - resultados" . w3.org .
- ↑ Chris Wilson (15/09/2005). "El prólogo <?xml>, el modo estricto y XHTML en IE" . Consultado el 16/06/2007 .
También he estado leyendo comentarios durante algún tiempo en el IEBlog que solicitan soporte para el tipo MIME "application/xml+xhtml" en IE. Debo decir que IE7 no agregará soporte para este tipo MIME; por supuesto, continuaremos leyendo XHTML cuando se sirva como "text/html", suponiendo que cumpla con las recomendaciones de compatibilidad de HTML.
- ↑ Chris Wilson (15/09/2005). "El prólogo <?xml>, el modo estricto y XHTML en IE" . Consultado el 16/06/2007 .
...Si hubiéramos intentado admitir XHTML real en IE 7, habríamos terminado usando nuestro analizador HTML existente (que se centra en la compatibilidad) e insertando construcciones XML de forma chapucera. Es muy improbable que pudiéramos admitir XHTML correctamente de esta manera; en particular, seguramente no detectaríamos algunos casos de error aquí y allá, y admitiríamos silenciosamente casos inválidos. Esto, por supuesto, causaría problemas de compatibilidad basados en el manejo de errores del analizador en el futuro, algo que XML está tratando de evitar explícitamente; no queremos causar otro desastre como el que existe con el manejo de errores HTML actual (basado en la compatibilidad con navegadores anteriores; pueden culparme a mí personalmente en parte, pero no a IE). Prefiero tomarme el tiempo para implementar XHTML correctamente después de IE 7 y lograr que sea verdaderamente interoperable...
- ↑ Hachamovitch, Dean (16 de marzo de 2019). "HTML5, aceleración por hardware: primera vista previa de la plataforma IE9 disponible para desarrolladores" . IEBlog en Microsoft Developer Network . Microsoft . Consultado el 22 de marzo de 2010. ...
En este momento, buscamos comentarios de los desarrolladores sobre nuestra implementación de las reglas de análisis de HTML5, las API de selección, la compatibilidad con XHTML y SVG en línea. Dentro de CSS3, buscamos comentarios de los desarrolladores sobre la compatibilidad de IE9 con selectores, espacios de nombres, colores, valores, fondos y bordes, y fuentes...
- ↑ "Lista de sitios XHTML (los X-Philes)" . Archivado del original el 20 de noviembre de 2008. Consultado el 26 de agosto de 2008 .
- ↑ "En 2007, 37 líderes en optimización de motores de búsqueda concluyeron que tener palabras clave en el atributo de palabras clave es poco o nada." Sanger. Blog nu, 9 de septiembre de 2008. Consultado el 2 de agosto de 2011. Archivado el 21 de febrero de 2009 en Wayback Machine .
- ↑ "Meta utilizado para SEO" . 18 de diciembre de 2015. Archivado del original el 31 de marzo de 2016. Recuperado el 18 de marzo de 2016 .
- ↑ Danny Sullivan , Cómo usar las metaetiquetas HTML, archivado el 13 de septiembre de 2008 en Wayback Machine , Search Engine Watch , 5 de diciembre de 2002
- 1 2 Ian Hickson, antiguo desarrollador del navegador Opera y cofundador de WHATWG (8 de septiembre de 2002). "Enviar XHTML como texto/html se considera perjudicial" . Recuperado el 16 de junio de 2007 .
- ↑ Anne van Kesteren, desarrolladora del navegador Opera (13 de junio de 2004). "XHTML no es HTML válido" . Consultado el 16 de junio de 2007 .
- ↑ Maciej Stachowiak, desarrollador del navegador Safari de Apple (2006-09-20). "Understanding HTML, XML, and XHTML" . Consultado el 16 de junio de 2007 .
- ↑ Brad Fults (21/12/2005). "Enviar XHTML como texto/HTML se considera perjudicial para los sentimientos" . Recuperado el 13/09/2008 .
No hay tantas desventajas (si es que hay alguna) al enviar XHTML como texto/HTML como afirma [Ian Hickson] y las ventajas que mencioné anteriormente hacen que valga la pena usarlo en mi humilde opinión. Hay algunas notas a pie de página y paréntesis sutiles [en el artículo de Hickson] que indican que el daño solo se aplica a los autores que desconocen los peligros de esta práctica, pero al igual que la etiqueta "No ingerir" en los pequeños paquetes de gel de sílice, la advertencia de Ian parece de sentido común y no vale la pena mencionarla a ningún autor que realmente sepa qué es XHTML y cómo escribirlo.
- ↑ Paul McDonald (30-06-2007). "El caso de XHTML" . Archivado del original el 08-08-2008 . Recuperado el 13-09-2008 .
Algunos dicen que XHTML en la web ha fracasado, pero yo digo que es nuestro mayor éxito en la lucha por los estándares web. ... XHTML es algo bueno para la web, y es una pena que haya gente que intente argumentar en su contra. Para demostrarlo, desarrollaré el mito para ti y luego te mostraré por qué XHTML es lo mejor que se ha inventado en lo que respecta a nuestra lucha por los estándares web. ... Así que, para concluir, enviar XHTML como texto/html no causa ningún daño en ningún lugar hoy en día, siempre que tu XHTML sea válido. Y, si quieres que los estándares web se generalicen cada vez más, sigue usando XHTML y valida tus páginas.
- ↑ Tim Berners-Lee (27-10-2006). "Reinventando HTML" . Archivado del original el 09-06-2007 . Recuperado el 16-06-2007 .
Algunas cosas se ven más claras con la perspectiva de varios años. Es necesario evolucionar HTML de forma incremental. El intento de que el mundo cambiara a XML, incluyendo comillas alrededor de los valores de los atributos y barras diagonales en etiquetas y espacios de nombres vacíos, todo a la vez, no funcionó. El gran público generador de HTML no se movió, en gran parte porque los navegadores no se quejaron. Algunas grandes comunidades sí se movieron y están disfrutando de los frutos de sistemas bien formados, pero no todas. Es importante mantener HTML de forma incremental, así como continuar una transición hacia un mundo bien formado y desarrollar más poder en ese mundo.
El plan consiste en crear un grupo de HTML completamente nuevo. A diferencia del anterior, este se encargará de realizar mejoras incrementales en HTML, así como también en XHTML. Contará con un presidente y un equipo de contacto diferentes. Trabajará conjuntamente en HTML y XHTML. Contamos con un fuerte apoyo para este grupo por parte de muchas personas con las que hemos hablado, incluidos los fabricantes de navegadores.
- ↑ Ian Hickson; David Hyatt (13 de enero de 2011). "HTML5: Un vocabulario y API asociadas para HTML y XHTML" . Recuperado el 16 de febrero de 2011 .
- ↑ Simon Pieters. "Resultados de pruebas móviles" . Consultado el 31 de octubre de 2009 .
- ↑ "XHTML 1.0: El lenguaje de marcado de hipertexto extensible, recomendación del W3C del 26 de enero de 2000" . Consorcio World Wide Web . 26 de enero de 2000. Consultado el 19 de julio de 2008 .
- ↑ "XHTML 1.0 El lenguaje de marcado de hipertexto extensible (Segunda edición)" . Consorcio World Wide Web . 1 de agosto de 2002. Consultado el 19 de julio de 2008 .
- ↑ "Modularización de XHTML, Recomendación del W3C del 10 de abril de 2001" . Consorcio World Wide Web . 10 de abril de 2001. Consultado el 19 de julio de 2008 .
- ↑ "XHTML Modularization 1.1 - Second Edition, W3C Recommendation 29 July 2010" . World Wide Web Consortium . 2010-07-29 . Consultado el 2010-12-31 .
- ↑ "XHTML 1.1 - XHTML basado en módulos, Recomendación del W3C del 31 de mayo de 2001" . Consorcio World Wide Web . 31 de mayo de 2001. Consultado el 19 de julio de 2008 .
- ↑ "Tipos de medios XHTML, Nota del Grupo de Trabajo del W3C, 1 de agosto de 2002" . Consorcio World Wide Web . 1 de agosto de 2002. Consultado el 19 de julio de 2008 .
- 1 2 "Tipos de medios XHTML – Segunda edición, nota del grupo de trabajo del W3C del 16 de enero de 2009" . Consorcio World Wide Web . 16 de enero de 2009. Consultado el 28 de enero de 2009 . Este documento sustituye a las Directrices de compatibilidad HTML que se encontraban originalmente en el Apéndice C de XHTML 1.0.
- ↑ "XHTML 1.1, XHTML Basic 1.1, Recomendaciones de impresión XHTML revisadas" . ARCHIVO DE NOTICIAS DEL W3C: 2010. Consorcio World Wide Web . Consultado el 12 de diciembre de 2010 .
- ↑ "XHTML 1.1 - XHTML basado en módulos – Segunda edición" . Consorcio World Wide Web . 7 de mayo de 2009. Archivado del original el 12 de mayo de 2009. Consultado el 25 de mayo de 2009 .
- ↑ "XHTML Básico, Recomendación del W3C, 19 de diciembre de 2000" . Consorcio World Wide Web . 19 de diciembre de 2000. Consultado el 19 de julio de 2008 .
- ↑ "Comparaciones de sabores XHTML" . Consorcio World Wide Web . 9 de enero de 2007. Consultado el 30 de enero de 2013 .
- ↑ XHTML Básico . W3.org. Consultado el 17 de julio de 2013.
- ↑ XHTML Básico 1.1 . W3.org. Consultado el 17 de julio de 2013.
- ↑ "XHTML Básico 1.1 - Segunda Edición" . w3.org .
- ↑ "XHTML-Print, Recomendación del W3C, 20 de septiembre de 2006" . Consorcio World Wide Web . 20 de septiembre de 2006. Consultado el 19 de julio de 2008 .
- 1 2 "Archivo de navegación de OMA" . Comunicados de OMA . Open Mobile Alliance Ltd. 26 de septiembre de 2011.
- ↑ " [ XHTML ] Agenda: 2008-07-09" . w3.org .
- ↑ Véase también XHTML 2.0 considerado perjudicial y XHTML 2.0 considerado prometedor, del desarrollador de navegadores Tantek Çelik, quien critica los primeros borradores de XHTML 2.0 por la ausencia del
styleatributo y elciteelemento. El desarrollador Daniel Glazman ofrece críticas similares , pero también muestra su apoyo a algunos cambios incompatibles con versiones anteriores, como la decisión de eliminar loselementosinsydel - ↑ "XHTML 2.0, Nota del Grupo de Trabajo del W3C, 16 de diciembre de 2010" . Consorcio World Wide Web . 16 de diciembre de 2010. Consultado el 31 de diciembre de 2010 .
- ↑ "Documentos del Grupo de Trabajo XHTML2 publicados como notas del W3C" . Consorcio World Wide Web . 16 de diciembre de 2010. Consultado el 31 de diciembre de 2010 .
- ↑ Ian Hickson (22 de enero de 2008). "HTML 5, 1.1.2. Relación con XHTML2" . Consorcio World Wide Web . Consultado el 19 de julio de 2008. ...
XHTML2... define un nuevo vocabulario HTML con mejores características para hipervínculos, contenido multimedia, anotaciones de ediciones de documentos, metadatos enriquecidos, formularios interactivos declarativos y descripción de la semántica de obras literarias humanas como poemas y artículos científicos... Sin embargo, carece de elementos para expresar la semántica de muchos tipos de contenido que no son documentos y que se ven con frecuencia en la web. Por ejemplo, los foros, los sitios de subastas, los motores de búsqueda, las tiendas en línea y similares no se ajustan bien a la metáfora del documento y no están cubiertos por XHTML2...
Esta
especificación tiene como objetivo extender HTML para que también sea adecuado en estos contextos...
- 1 2 "9 La sintaxis XHTML — HTML5" . w3.org .
- ↑ HTML vs. XHTML , Wiki de WHATWG
Notas
- ↑ Según Wayback Machine , Wikipedia comenzó a usar
<!DOCTYPE html>el 18 de septiembre de 2012 ; antes de eso,<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">se usó, a partir de junio de 2004 .
Enlaces externos
- La sintaxis XML para HTML de WHATWG
- Las recomendaciones y el grupo de trabajo de XHTML del W3C, todos ellos reemplazados.
- Recomendación XHTML 1.0
- Recomendación XHTML 1.1
- Recomendación básica de XHTML 1.1
- Nota del Grupo de Trabajo de XHTML 2.0
- Página principal del Grupo de Trabajo XHTML2
- Enlaces relacionados con el tipo MIME de los documentos XHTML:
- Cuidado con XHTML
- Enviar XHTML como texto/html se considera perjudicial.
- Servir XHTML con el tipo MIME correcto
- El camino hacia XHTML 2.0: Tipos MIME – Mark Pilgrim (19/03/2003). Incluye ejemplos para servir condicionalmente
application/xhtml+xmlusando PHP , Python y Apache (a través de la reescritura de URL ). - Preguntas frecuentes de Mozilla Web Author: ¿En qué se diferencia el tratamiento de los documentos application/xhtml+xml del tratamiento de los documentos text/html? – resume el modo de procesamiento XHTML de un navegador web.
- Elementos vacíos en SGML, HTML, XML y XHTML
- Tutorial básico de XHTML 1.0 estricto de Heptagrama archivado el 26/09/2010 en Wayback Machine.
- Validador de marcado del W3C
- Biblioteca de conversión de HTML a XHTML para .NET