Semántica Web: Marcado para Rich Snippets con Microdatos o JSON-LD
Google es cada día más semántico y más intuitivo. Cada actualización de panda y hummingbird está destinada a entender mejor la manera en que los contenidos están clasificados y cómo los usuarios realizan sus búsquedas. Se utilizan técnicas de lenguaje natural, así es, las mismas con las que se trabaja para la inteligencia artificial.
Aun cuando los avances de lectura e interpretación de los robots de Google han sido impresionantes últimamente, siempre hay formas de darle una ayudadita para entender mejor el contenido de nuestra web. Ya lo hacemos con los metadatos, como con el title e incluso con metadatos en el body, como las etiquetas Alt que es uno de los principales indicadores para los robots de Google sobre qué es lo que aparece en la imagen. Para entender el método completo que utiliza Google para clasificar imágenes con su algoritmo de reconocimeito próximamente presentaré el post, Indexa imágenes entendiendo Google Images.
Entonces, la manera de poder indicarle a Google en qué consisten el resto de los elementos de nuestra web es marcándolos. Googlebot puede ver números, pero quizá no saber que se trata de un teléfono de contacto, no entender que una imagen es el logo de nuestra empresa o no saber que un review de un cliente satisfecho es más que sólo un fragmento de texto.
Todos podemos marcar elementos en nuestra web
Si por ejemplo en nuestro sitio almacenara información sobre una película o un álbum, Google no distinguiría al director de la película, al guionista o al reparto, igualmente con el álbum musical, no distinguiría el campo de productor o nombre de la banda. Para eso existe el marcado, con ello podemos indicar que una cadena de texto es un autor o el director de una película; saber que una serie de números es un teléfono de contacto o un precio, quizá una oferta e incluso cuál es el producto. Uno de los aspectos más interesantes del marcado es que esto permite que Google muestre algo llamado Fragmentos Enriquecidos, “Rich Snippets”, que son elementos que enriquecen los snippets de Google en lugar o además de nuestra description.Qué es schema.org y por qué es indispensable para Google
El lenguaje estructurado es un proyecto que se ha utilizado para XML desde el siglo pasado, donde se ha tratado plantear distintos tipos de estructura, con el objetivo de crear normas que estandaricen la forma de marcado de los documentos XML. (Para profundizar en semántica web, pronto publicaré un artículo sobre qué es el XML, su diferencia y relación con el HTML y el SGML). Bueno, para fines de este artículo nos interesa la iniciativa schema.org, que es un proyecto en el que trabajaron y estandarizaron en conjunto Google, Bing y Yahoo, los principales motores de búsqueda del mundo (para quienes vayan a saltar preguntando ¿y Baidu?, quizá, repito, quizá, después hablemos de él, pero ahora también reconoce el marcado de schema.org). El 2 de junio del 2011 Google, Bing y Yahoo estandarizaron un esquema de marcado web a manera de normatividad (Yandex, el motor ruso se unió a la iniciativa en noviembre del mismo año). En esa iniciativa se presentó el vocabulario schema.org, el que se propuso utilizar con los formatos Microdata, RDFa, or JSON-LD. Por cierto, les recomiendo leer el blog oficial de schema: http://blog.schema.org/ Ya con este consenso, se volvió más sencillo para los webmasters etiquetar sus webs. El vocabulario es schema.org sin importar el motor de búsqueda con el que quisieran comunicarse, ahora sólo había que elegir qué formato se utilizaría para hacer el marcado, cuestión que es vigente y que sigue siendo un tema a discutir durante el etiquetado de una web. Vale la pena mencionar que existe más de un vocabulario, como data-vocabulary.org, pero Google recomienda ampliamente utilizar schema.org.RDFa
Mencionamos a RDFa a manera de investigación, aunque la recomendación es elegir entre Microdatos y JSON-LD. Este concepto nace del RDF (Resource Description Framework) que es una familia de especificaciones de la W3C (World Wide Web Consortium), la asociación internacional que emite recomendaciones y normatividades para la World Wide Web. Originalmente diseñado como un modelo de datos para metadatos, sólo se le agregó la “a” de “attributes”. Son un conjunto de extensiones de XHTML propuestas por W3C. Hace algún tiempo, cuando aún existían aún los microformatos (antes de los microdatos), sonaba ser una propuesta muy innovadora por todas las herramientas para hacer cosas con RDF, como tiendas, los motores de búsqueda, lenguajes de consulta y gráfico visualizadores. El objetivo, así como los demás formatos, es introducir semántica para los documentos. Una de sus principales características es que aprovecha atributos de los elementos meta y link de XHTML y los generaliza de forma que puedan ser utilizados en otros elementos. Este formato utiliza los siguientes atributos:- typeof: indica de que tipo es la instancia descrita.
- about: una URI que indica el recurso que describen los metadatos y que remite al documento actual por defecto.
- rel, rev, href y resource: atributos que establecen un relación o relación inversa con otro recurso.
- property: aporta una propiedad para el contenido de un elemento
- content: atributo opcional que se sobrepone al contenido del elemento cuando se usa el atributo property.
- datatype: atributo opcional que indica el tipo de datos del contenido.
- Independencia del editor: cada sede web puede usar sus propios estándares.
- Reutilización de datos: se debe tratar de no duplicar los datos; RDFa hace innecesario separar las secciones XML y HTML de los mismos contenidos.
- Autocontención: las secciones de XML y HTML pueden mantenerse separadas.
- Modularidad del esquema: Los atributos son reusables
- Escalabilidad: se pueden añadir campos adicionales con la única condición de que se mantenga la capacidad de extraer semántica de los datos del archivo XHTML.