Últimamente muchos usuarios hablan de la web semántica, pero me gustaría analizar hasta qué punto es semántica con HTML:
El
HTML es un lenguaje de marcas que nos permite estructurar nuestro contenido, en base a un criterio personal. Es decir, existen etiquetas para una lista genérica
UL, pero no existe una etiqueta para estructurar un diálogo (ha habido
preguntas sobre
esto), ni para un catálogo de cd's. No existe una etiqueta
MENU, aunque el 99% de las webs tienen uno; tenemos que usar
UL en su lugar.
Un ejemplo para publicar mi colección de cd's personal actualmente podría ser así:
Código HTML:
<h1>Mi lista de cd's</h1>
<ul class="misCDs">
<li>Cd1 de Paco, del año 2001.</li>
<li>Cd2 de Pérez, del año 2005.</li>
<li>Cd3 de Alberto, del año 1987.</li>
...
</ul>
Pero eso no es del todo semántico. El w3 provee herramientas para construir esa estructura de una manera mucho más semántica, el XML:
Código HTML:
<micatalogo>
<disco>
<titulo>Cd1</titulo>
<autor>Paco</autor>
<año>2001</año>
</disco>
<disco>
<titulo>Cd2</titulo>
<autor>Pérez</autor>
<año>2005</año>
</disco>
<disco>
<titulo>Cd3</titulo>
<autor>Alberto</autor>
<año>1987</año>
</disco>
</micatalogo>
Si el
XML nos parece "feo", mediante
XSL podremos "convertir" dicho
XML en un documento
xHTML (paso que creo podría ser innecesario) al que poder darle formato con
CSS. El argumento para no usar
XML tampoco puede ser el de que
XML no permite presentarse como el
HTML, ya que tiene mucha más potencia (
XSL permite bucles, condicionales, ordenación de elementos, variables, includes, copias de elementos...).
En el
HTML, en cambio, tenemos el problema de que no sabemos de qué es la lista de la que estamos hablando, y que el primer elemento de la lista se representará el primero sin poder hacer nada al respecto. Es decir: estamos definiendo una estructura y además su orden, y carecemos de poder para concretar aspectos como en
XML.
El
HTML5 viene con unos cambios muy tímidos acerca del tema. Intenta paliar la utilización lógica de millones de elementos
DIV anónimos que llenan nuestras webs sustituyéndolos con elementos como
SECTION,
HEADER,
ARTICLE... pero es un cambio nimio con respecto al pasado
HTML4.
¿Por qué no triunfó
XML en su día? ¿Por qué no se le nombra ahora que el concepto de semántica está tan de moda? ¿Por qué no se escriben ya blogs en
XML? ¿Por qué los catálogos de elementos siempre son en insípido
HTML? Qué hay de los que predican tanto la semántica, ¿Creen que
xHTML es la herramienta definitiva, que
xHTML usado semánticamente no tiene rival actual?