Siempre he creido en la estandarización. Esta inicia cuando los grandes competidores logran acuerdos que a la larga benefician a los usuarios-clientes finales. La web semántica apunta hacia ese norte y cada vez más vemos cómo empresas al nivel de Google, Microsoft Bing y Yahoo apoyan esas iniciativas.

Primero conozcamos cómo definen una web semántica: Añadir metadatos semánticos que se acerquen más al lenguaje humano. Esa fué la idea tras HTML5.

El esqueleto básico de una web siempre será un cabezal (header), un listado de enlaces de navegación (navigation), cuerpo del contenido (content) y pié de página (footer). Así, de necesitar maquetar una página y aplicar los CSS, utilizaríamos un esquema similar a este:

<!DOCTYPE html>
<html lang="es">
    <head>
        <title>Título de la página</title>
    </head>
    <body>

        <div class="header">
            <!-- El cabezal del site -->
        </div>

        <div class="navigation">
            <!-- Los enlaces de navegación -->
        </div>

        <div class="content">
            <!-- El contenido de la página -->
        </div>

        <div class="footer">
            <!-- El pie de página con los créditos del autor -->
        </div>

    </body>
</html>

Aunque "class" es un atributo natural del objeto "div", designar clases a los objetos sin aplicarlas directamente es lo que se pretende lograr con web semántica, de manera que cada grupo de objetos en el markup tenga su propio nombre de tag. Así, bajo el mismo esquema anterior pero con HTML5 tenemos:

<!DOCTYPE html>
<html lang="es">
    <head>
        <title>Título de la página</title>
    </head>
    <body>

        <header>
            <!-- El cabezal del site -->
        </header>

        <nav>
            <!-- Los enlaces de navegación -->
        </nav>

        <article>
            <!-- El contenido de la página -->
        </article>

        <footer>
            <!-- El pie de página con los créditos del autor -->
        </footer>

    </body>
</html>

Como vemos, el atributo "class" sobra, ya que podemos apuntar directamente al objeto sin necesidad de aplicar id's o clases, obteniendo un HTML más cómodo de maquetar.

Otra ventaja de la web semántica es que los "search engine's" pueden indexar directamente el contenido sin tener que acudir a un algún algoritmo que reconozca qué es de valor o no en dicho contenido.

Pero, ¿reconocer contenido de valor o no? Bueno, nadie conoce a ciencia cierta cómo funciona el indexado de un search engine. Google (por usar un ejemplo), ofrece recomendaciones sobre cómo optimizar nuestra web para lograr un indexado exitoso, pero esas recomendaciones realmente no garantizan los primeros puestos en los resultados de búsqueda porque si nos excedemos, podemos terminar fuera de los resultados sin ningún tipo de aviso por parte del buscador. O sea, es una ruleta rusa.

Ahora, HTML5 ayuda bastante a acercarse a una web semántica, pero parece que no es suficiente. Parece que article no es totalmente suficiente para los buscadores, así que surgió una alternativa apoyada por Google, Bing y Yahoo que apunta a convertirse en el nuevo SEO de toda web: Schema.org

El modelo de Schema.org tiene sus ventajas, ya que al ser más específico sobre qué es cada objeto en el markup, amplía el rango de tipos de datos para los microformatos. Además, es mucho más fácil utilizar el DOM sin necesidad de aplicar id's.

Schema.org está compuesto de una amplia jerarquía de dataypes que manejan números, textos, urls, direcciones, fechas de cumpleaños, libros, eventos, películas, escultura, pintura, etc. Se usan tres atributos básicos (itemscope, itemtype, itemprop) para declarar los tipos de datos en el markup. Bajo esta modalidad tenemos:

<div itemscope itemtype="http://schema.org/Article">
    <h2 itemprop="headline">Nombre del artículo</h2>
    Escrito por <span itemprop="author">JuniHH</span>
    Este es el contenido del artículo.
    <meta itemprop="interactionCount" content="UserComments:78"/>
</div>

Puede parecer confuso de primer vistazo, pero luego de profundizar un poco vemos la riqueza del conjunto, necesario para ser considerado como un estándar. Personalmente apuesto a esta alternativa, que a todas luces apunta a ser el nuevo SEO. Actualmente se encuentra en condición de "draft" y pasarán algunos años antes que los desarrolladores lo adopten, pero es una propuesta muy bien aterrizada y hacia donde se redirigirá el nuevo markup. Ya sucedió con sitemaps.

Bajo la temática de Schema.org, el éxito del indexado recae nuevamente en las manos del desarrollador del site y no queda a criterio de una simple máquina de búsqueda, que como antes mencioné, es una ruleta rusa.

Web oficial: Schema.org
Listado de datatypes: The type hierarchy