schema.org - test - Microdata, RDFa o JSON-LD ¿Uso apropiado o mejor?
schema org articles (6)
(actualización de respuestas!)
Sobre "popularidad", por favor vea esta pregunta / respuestas .
Microdata hoy es el más popular: en un universo de 34 millones de dominios, 5.63 millones (~ 17%) usan "marcado de contenido" (usaré el
marcado de
jerga) por RDFa (0,9 millones),
Microdata (2.5 millones)
o Microformatos, y menos de la mitad usa descriptores semánticos
separados
, notando los más populares como JSON-LD, con 2.12 millones (6%).
PD: preferimos las "estadísticas por dominio" (en lugar de las estadísticas por página) porque las páginas en el mismo dominio en general tienen las mismas plantillas y otros cumplimientos de convenciones de autoridades locales.
En un universo de "dominios que expresan semántica" (7,75 millones) el perfil estadístico es:
- 73% marcado semántico
- 27% semántica separada
- (... la intersección como mezcla "separada + marcado" puede ser cero para simplificar ...)
Regla de oro en 2017
Use el marcado semántico con Microdata y, después , si necesita expresar algo más a las máquinas, use JSON-LD .
Utilice el marcado semántico porque es el más popular, y porque los contenidos marcados serán verificables / auditables simultáneamente por humanos y máquinas.
Importante: recuerde que Microdata, RDFa (un estándar W3C) y JSON-LD (un estándar W3C) se pueden traducir (fácilmente) a RDF, por lo que todos estos formatos son compatibles.
PD: para tablas HTML, ver también los metadatos tabulares del W3C . Para recursos abiertos que no sean HTML, como archivos CSV , use el modelo de datos tabulares del W3C compatible con RDF y / o datos frictionlessdata/specs .
Me he estado preguntando cuál de esos formatos es el "mejor". Schema.org, Microdata y RDFa son un poco difíciles de implementar. Pueden romper la validación y requieren un gran esfuerzo para poner en los documentos.
JSON-LD es, por fin para mí, una forma mejor de implementar datos estructurados. ¿Pero funciona? ¿Qué nivel de soporte existe (al menos por Google)?
Desde cero, JSON-LD sería el camino a seguir. Dejemos que uno de los creadores principales de JSON-LD , Manu Sporny, intervenga:
El deseo de mejores API web es lo que motivó la creación de JSON-LD, no la Web Semántica. Si desea hacer realidad la Web Semántica, deje de defenderla y dedique su tiempo a hacer algo más útil, como hacer que las máquinas sean más inteligentes o ayudar a las personas a publicar datos de una manera que les sea útil.
JSON-LD se trata de publicar los datos de manera útil / fácil de implementar porque ...
se basa en la tecnología que la mayoría de los desarrolladores web usan hoy en día.
Google utiliza JSON-LD como ejemplos de referencia para SEO de datos estructurados para su Gráfico de conocimiento (empresas y personas). Ver https://developers.google.com/structured-data/customize/overview
Yo personalmente uso una combinación de JSON-LD y Microdata para mis sitios (por el momento).
Diría que tienen otros medios para identificar si la información que proporciona a través de JSON-LD es relevante para su motor de búsqueda (como verificar que su página en realidad esté hablando de lo que dice hablar).
Las líneas entre Microdata , RDFa y JSON-LD son actualmente muy borrosas y todavía no existe una aceptación general de facto entre las tres. Esto tendrá que esperar por ahora. Quizás un par o más años.
Mientras tanto, Microdata no debe etiquetarse con Schema.org como usted mencionó porque esos dos son cosas diferentes. Schema.org es un vocabulario, por lo que puede usarse para Microdata, RDFa y JSON-LD.
Usar Schema.org como vocabulario y JSON-LD como representación de datos es probablemente el par más esperado debido a dos aspectos comunes sobre ellos:
- Fácil de leer para humanos; y
- Ligero, legible por máquina
pero aun así todavía hay desconexiones entre los dos como este ejemplo .
Con respecto al soporte JSON-LD, ya que http://schema.org/ reconocen el uso de schema.org, entonces quizás sea seguro decir que también lo están apoyando como en este ejemplo .
Actualización 2017
Google ha sido muy proactivo en la promoción de JSON-LD-schema.org estos últimos dos o tres años.
Parece que Google se está inclinando hacia el uso de JSON-LD, ¡pero no lo ha implementado para todos los casos de uso!
Google está en el proceso de agregar compatibilidad con JSON-LD a más funciones con marcado. Hasta ahora, JSON-LD es compatible con todas las funciones de Knowledge Graph, cuadros de búsqueda de enlaces de sitio, fragmentos enriquecidos de eventos y fragmentos enriquecidos de recetas; Google recomienda el uso de JSON-LD para esas funciones. Para los restantes tipos de Rich Snippets y migas de pan, Google recomienda el uso de microdatos o RDFa.
Schema.org es un vocabulario que, como cualquier otro vocabulario, puede usarse de muchas formas. El sitio web http://schema.org/ tiene ejemplos que utilizan Microdata y las sintaxis RDF RDFa y JSON-LD , pero estas no son las únicas sintaxis con las que se puede usar. Podría, por ejemplo, usarlo con cualquier otra sintaxis RDF como Turtle o RDF / XML .
No hay mejor sintaxis. Todos tienen ventajas y desventajas. Vea, por ejemplo, mi respuesta sobre las diferencias entre Microdata y RDFa . Tenga en cuenta que puede usar diferentes sintaxis (y vocabularios) en el mismo documento.
Ahora, si tiene en mente un consumidor específico, debe consultar su documentación. Sin embargo, el soporte de sintaxis va y viene, y no todo lo que podrían soportar está necesariamente documentado, y no todo lo que está documentado necesariamente funciona.
En el caso de Google, probablemente esté interesado en sus Rich Snippets . Su documentación sobre Rich Snippets menciona Microdata, Microformatos y RDFa. Sin embargo, tenga en cuenta que no todos los ejemplos vinculados usan el vocabulario Schema.org, sino los Data-vocabulary.org o Microformats más antiguos (ya que no puede usar vocabularios como Schema.org ni Data-vocabulary.org con Microformats). Y también hay algunos fragmentos enriquecidos que no figuran en esa página, como el cuadro de búsqueda de enlaces de sitio , para los cuales incluso recomiendan la sintaxis JSON-LD.
Como consejo general: los motores de búsqueda suelen favorecer el contenido visible sobre los metadatos ocultos. Por ejemplo, tener palabras clave como metadatos ocultos permite fácilmente a los autores afirmar que sus documentos son sobre algo diferente de lo que realmente son (ya sea por tratar de engañar al motor de búsqueda o porque los autores olvidan actualizar el contenido en ambos lugares). Por lo tanto, desacoplar los metadatos del contenido, como es el caso con JSON-LD, podría (posiblemente) conducir a los mismos problemas que los motores de búsqueda actuales tienen con los metadatos ocultos. (Si o qué motores de búsqueda realmente lo manejan así es una pregunta que está fuera de tema en ).
Otra posible ventaja para acoplar los metadatos con el contenido (por ejemplo, con RDFa), es que podría generar fácil y automáticamente la misma información en JSON-LD, Turtle, etc., porque todo es solo RDF.
Simplemente analice el RDFa, conviértalo a los formatos que prefiera e incruste (en el
script
) o vincule (con
rel
-
alternate
) si tiene sentido.
Pero sí, agregar RDFa a menudo es más complejo que agregar un blob JSON-LD, porque tiene que adaptarlo al marcado existente. (Sin embargo, no debe "romper la validación" a menos que esté cometiendo errores).