lunes, 28 de abril de 2014

La evolución del HTML



1. Las investigaciones del W3C

El lenguaje HTML es el resultado del trabajo del W3C. Estos trabajos de investigación pasan por varias etapas que han ido evolucionando con el tiempo. En la actualidad, los resultados de las investigaciones se publican en tres etapas: 
  • Los "borradores", Working Drafts, se publican para compartir los avances de las investigaciones con los demás. 
  • Las especificaciones se publican cuando el lenguaje ya está casi terminado y listo para usar. 
  • Las recomendaciones se publican una vez que el lenguaje está oficialmente aprobado y terminado.

A veces lleva mucho tiempo pasar de una especificación a una recomendación, puede que incluso años.


2. El HyperText Markup Language

Fue en 1991 cuando Tim Berners-Lee redactó los primeros "bocetos" (draft) del HTML.
En junio de 1993, aparece el primer documento técnico describiendo el lenguaje HTML: "Hypertext Markup Language (HTML) - A Representation of Textual Information and MetaInformation for Retrieval and Interchange" (http://www.w3.org/MarkUp/draft-ietf-iiir-html-01.txt).
El 8 de noviembre de 1993, aparece el HTML+ (http://www.w3.org/MarkUp/HTMLPlus/htmlplus_1.html).
La versión 2 del HTML ve la luz el 22 de septiembre de 1995 (http://www.w3.org/MarkUp/html-spec/html-spec_toc.html) bajo los auspicios del IETF (Internet Engineering Task Force).
En marzo de 1995 se publica el HTML 3 (http://www.w3.org/MarkUp/html3/) que se presenta como una "extensión" del HTML 2. Rápidamente es remplazado por la recomendación del HTML 3.2, el 14 de enero de 1997 (http://www.w3.org/TR/REC-html32.html).

La recomendación del HTML 4.01 se publica el 24 de diciembre de 1999. Para el W3C, esta versión es la última del HTML. EL W3C piensa que el futuro de las páginas web no está en el HTML, sino en el XML. El HTML "ha muerto", para el W3C.


3. La evolución con el XHTML

El lenguaje HTML conlleva limitaciones intrínsecas:

  • los elementos que se pueden usar se limitan a los indicados en la recomendación, 
  • el lenguaje es muy permisivo: es posible indicar el nombre de los elementos en mayúsculas o en minúsculas, algunas etiquetas de cierre son facultativas... 
  • los elementos no son realmente semánticos: el elemento <p> puede contener cualquier tipo de texto.
El W3C publica el 10 de febrero de 1998 (http://www.w3.org/TR/1998/REC-xml-19980210) la recomendación de un nuevo lenguaje, el XML (eXtensible Markup Language). La quinta edición se remonta al 26 de noviembre de 2008 (http://www.w3.org/TR/2008/REC-xml-20081126/). Este lenguaje permite superar todas las limitaciones del HTML. De este modo es posible crear todos los elementos que queramos, de forma totalmente semántica (por ejemplo, un elemento <cp> para contener un código postal o un elemento <precio> para incluir un precio) y la sintaxis es muy estricta. Se trata de un lenguaje ideal, en especial, para intercambiar datos estructurados en la web. Pero el XML interviene además en otros muchos lenguajes estándares del W3C (MathML, SVG...) y en otras tecnologías web.

Debido a su sintaxis permisiva, el HTML es incompatible con el XML. Para resolver esta incompatibilidad, el W3C reformuló la sintaxis del HTML para que fuera compatible con el XML: se trata del XHTML (eXtensible HyperText Markup Language). La primera recomendación sale a la luz el 26 de enero de 2000 (http://www.w3.org/TR/2000/REC-xhtml1-20000126/).

El XHTML presenta una sintaxis más estricta, como podemos ver en estos dos ejemplos:

Si se abre un elemento, deberá incluirse la etiqueta de cierre:

  • sintaxis correcta en HTML: <p>Mi texto 
  • sintaxis correcta en XHTML: <p>Mi texto</p>
El HXTML prevé el cierre de los elementos que no dispongan de una etiqueta de cierre:

  • sintaxis correcta en HTML: <br> 
  • sintaxis correcta en XHTML: <br/>

Además, los elementos XHTML deben escribirse en minúsculas y los valores de los atributos deben estar entrecomillados (con comillas dobles ").

  • sintaxis correcta en HTML: <P ID=intro> 
  • sintaxis correcta en XHTML: <p id="intro">

El W3C publica la recomendación del XHTML 1.1 el 31 de mayo de 2001 (http://www.w3.org/TR/2001/REC-xhtml11-20010531/). La última edición se remonta a noviembre de 2010 (http://www.w3.org/TR/xhtml11/). Esta versión abordaba el "auténtico XML", sin elementos incorrectos o que no se adaptaran a los estándares. Esto quiere decir que los documentos para la web ya no podían usar el tipo MIME text/html.
El XHTML 2 aparece solamente como Working Draft en agosto de 2002 (http://www.w3.org/TR/2002/WD-xhtml2-20020805/). Esta debía ser una versión del lenguaje "puro", sin ningún compromiso con el pasado, ¡hasta el punto de que era incompatible con el contenido web existente! Se trató de una iniciativa demasiado radical. El W3C proponía un lenguaje totalmente desconectado de la realidad, hecho para los informáticos y no para los diseñadores web. Al optar por la incompatibilidad con lo existente, el W3C cometió un grave error estratégico.
La recomendación del XHTML 2 no llegó nunca a publicarse. El 17 de diciembre de 2010, el W3C disuelve oficialmente ese grupo de trabajo.


4. Los disidentes del WHATWG

Ante ese fracaso de la evolución del HTML reconocido por el W3C, un grupo de "disidentes", encabezado por Ian Hickson (que trabajaba entonces en Opera Software), formó en 2004 su propio grupo de trabajo sobre el HTML, el Web Hypertext Application Technology Working Group, WHATWG (http://www.whatwg.org/). Los primeros miembros del WHATWG venían de Mozilla, Opera, Apple, y luego, Google. Los primeros resultados de sus investigaciones se aplicaron a los formularios. Ian Hickson era el editor y tomaba todas las decisiones finales. El WHATWG se ocupó en un primer momento de los formularios (Web Forms 2.0) y las aplicaciones web (Web Apps 1.0). Esas dos áreas de trabajo se encuentran ahora en el HTML5.


El WHATWG continúa con esas investigaciones (http://www.whatwg.org/specs/web-apps/current-work/multipage/), independientemente del W3C. Al HTML5 se le llama HTML Living Standard para no confundirlo con el HTML5 del W3C.
En julio de 2012, ante las dificultades del trabajo en común y la diferencia de objetivos con respecto al W3C, el WHATWG decide separarse y seguir su propio camino de manera totalmente independiente (véase el documento http://lists.w3.org/Archives/Public/public-whatwg-archive/2012Jul/0119.html). La consecuencia es que, a partir de entonces, el WHATWG propondrá una versión «viva» del HTML y el W3C llevará a cabo la normalización del lenguaje. Para los desarrolladores e integradores Web, eso complicará un tanto la tarea, ya que deberán conocer los elementos HTML5 propuestos por el WHATWG y comprobar si han sido validados por el W3C y son reconocidos por los navegadores.


Espero haber ayudado en algo. Hasta la próxima oportunidad!





No hay comentarios:

Publicar un comentario en la entrada