Datos estructurados de acciones de Book (Book
)
Las acciones de Book convierten a la Búsqueda de Google en un canal de entrada para descubrir libros y autores. Permiten a los usuarios comprar o pedir prestados los libros que encuentran directamente desde los resultados de la Búsqueda.
Por ejemplo, un usuario puede buscar La telaraña de Charlotte y desde los resultados comprar el libro o pedirlo prestado. Como proveedor de libros, puedes brindar una fuente de datos a Google usando el esquema de datos estructurados que se describe aquí. Nuestra especificación proporciona ReadAction
a fin de permitir que los usuarios compren un libro y BorrowAction
para que lo pidan prestado.
Las acciones Read y Borrow, que están incorporadas en los paneles, muestran opciones para comprar el libro o pedirlo prestado. Mediante los vínculos que incluyas, las acciones Read y Borrow enviarán a los usuarios directamente desde el panel de conocimiento y otras plataformas de Google a una página de libro en tu sitio o app.
El orden de los proveedores en el panel de conocimiento es dinámico y personalizado para cada usuario. Por ende, todos los usuarios ven un orden distinto, y este puede cambiar en diferentes momentos para un mismo usuario. Existe una variedad de factores que incide en un determinado orden. Por ejemplo, si un usuario suele hacer clic en un vínculo de un proveedor determinado en el panel de conocimiento, es probable que ese proveedor aparezca más arriba. No hay forma de controlar el orden.
Cómo comenzar
A fin de implementar correctamente las acciones de Book, debes compilar el feed de acuerdo con las definiciones de tipos de datos estructurados de las acciones de Book, pero primero revisa las siguientes secciones:
- Lineamientos
- Crea un feed
- Prueba tu feed con la herramienta de validación de feeds de datos
- Aloja el archivo de tu feed
- Envía tu archivo de feed para revisión
- Actualiza el feed según sea necesario
Lineamientos
A fin de asegurarte de que tus libros se destaquen en la Búsqueda de manera confiable, debes conocer algunos detalles y conceptos importantes. Además, el feed debe cumplir con algunas especificaciones de formato estandarizado.
Si quieres hacerlo, sigue los lineamientos que se describen aquí, además de los lineamientos generales de datos estructurados y los conceptos básicos sobre la Búsqueda. Los lineamientos son los siguientes:
- Obras y ediciones
- Sistemas y miembros de las bibliotecas
- ISBN y otros identificadores admitidos
- Vínculos
Obras y ediciones
En esta documentación, usaremos dos términos distintos cuando hablamos sobre un libro:
- Obra: es el concepto abstracto de un libro. En específico, los atributos de una obra son los metadatos, como el título, el autor y el idioma original.
- Edición: es una copia específica del libro. Los atributos característicos de una edición son los metadatos, como el año de publicación, el nombre de la edición y el código normalizado internacional para libros (ISBN).
Por ejemplo, La telaraña de Charlotte es una obra, pero cada versión corresponde a una edición. En este caso, la obra La telaraña de Charlotte podría tener una primera edición, una segunda edición, una edición abreviada, una edición traducida al francés, etcétera.
Esta distinción es especialmente importante en el feed, donde quizás no sea tan evidente. Existen dos entidades Book
:
Book
(Work
) es la entidadBook
de "nivel superior":workExample
es una propiedad deWork
y especifica una única instancia deBook
(Edition
).- Debe haber al menos un
workExample
por cadaWork
.
Book
(Edition
) es la entidadBook
de "nivel inferior".
Es importante tener en cuenta que puede haber varias ediciones de una obra. Te recomendamos que agrupes las ediciones tanto como sea posible. De esta manera, los sistemas de Google aprovechan toda la información relevante sobre un libro y la muestran en la Búsqueda. Si fuera necesario, puedes dividirlas en varios registros de obras, pero cada registro debe tener lo siguiente:
- Otro
@id
- Una edición, como mínimo, con un ISBN o algún otro identificador admitido
Sistemas y miembros de las bibliotecas
Library entity
es el tipo de entidad Library
de "nivel superior". Es una estructura abstracta, compuesta por una entidad LibrarySystem
y varias entidades Library (member)
de "nivel inferior" del mismo sistema de bibliotecas.
La entidad LibrarySystem
es una abstracción que representa una red colaborativa de miembros de la biblioteca. Por ejemplo, se puede especificar la Biblioteca Pública de Austin como una entidad LibrarySystem
. En el sitio web de la Biblioteca Pública de Austin se la describe como un sistema de bibliotecas públicas en Austin, Texas. Está formada por 20 bibliotecas asociadas o miembros de biblioteca.
Cada entidad LibrarySystem
requiere al menos una entidad Library (member)
, incluso si en la vida real la biblioteca no pertenece a ningún sistema de bibliotecas. En este caso, a los efectos de la implementación de la acción de libros, la biblioteca es el único miembro de su propio sistema de bibliotecas. Asimismo, a diferencia de un sistema, un miembro de la biblioteca no es abstracto y, por lo tanto, tiene una dirección física.
En cambio, cada entidad Library (member)
debe pertenecer, como mínimo, a una de LibrarySystem
.
ISBN y otros identificadores admitidos
El ISBN es el indicador principal de conciliación cuando la Búsqueda de Google compagina los datos de tu feed con los datos de Google. Debes proporcionar un ISBN o algún otro identificador admitido para cada libro que quieres que aparezca en los resultados de la búsqueda. De otra forma, es probable que no se pueda encontrar el libro y, por ende, no se mostrará.
La Búsqueda de Google prefiere ISBN-13, pero puedes usar los siguientes identificadores:
- Número de la Online Computer Library Center (OCLC)
- Número de control de la Biblioteca del Congreso (LCCN)
- Código electrónico JP
Vínculos
A fin de garantizar una buena experiencia para la búsqueda de tus libros, los vínculos de tu feed deben cumplir con los siguientes lineamientos:
- Si tienes páginas duplicadas para el mismo contenido, el vínculo debe ser la URL canónica con el título del libro y la información relacionada.
- Una vez que el usuario haga clic en el vínculo de una acción Read o Borrow, se lo debería enviar a una página que permita adquirir o pedir prestado el libro de forma directa. Más concretamente, el vínculo no debe redireccionar a páginas en las que sea necesario hacer clic en más vínculos para adquirir o pedir prestado el contenido, como una página de resultados de búsqueda o resumen de un producto.
Crea un feed
Si tu sitio vende libros, debes subir tu feed Book
. Comunícate con tu representante de Google y consulta los detalles sobre cómo y dónde subir tu feed.
Si tu sitio presta libros a los usuarios, debes subir dos feeds separados: el feed Book
y el Library
. Comunícate con tu representante de Google y consulta los detalles sobre cómo y dónde subir tu feed.
Cumple con los requisitos de tamaño, cantidad y formato del archivo de feed.
Los requisitos son los siguientes:
- Requisitos de tamaño del archivo de feed:
- El tamaño de un archivo de feed sin comprimir debe ser de 1 GB como máximo.
- El tamaño comprimido debe ser inferior a 1 GB. Si el archivo de feed sin comprimir supera 1 GB, tendrás que dividirlo en varios archivos.
- Puedes comprimir los archivos de feed. Deben estar en formato ZIP, GZ, TAR, TAR.GZ, JAR, AR, ARJ, CPIO o archivo de volcado.
- Cuando tienes varios archivos de feed, puedes subirlos tal como están o, si lo prefieres, incluirlos en un archivo del índice de mapas de sitios.
- Los archivos de un solo feed deben tener la extensión del nombre del archivo
.json
.
Cumple con los requisitos de contenido del feed
En especial, ten en cuenta los siguientes requisitos de contenido del feed:
- El feed no debe tener entidades inactivas. Son aquellas que tienen
availabilityEnds
establecido en una fecha pasada o que ya no están disponibles en tu sitio. - Todos los vínculos directos, como
urlTemplate
, y las URL, comourl
, que incluyas en tu feed deben ser URL de producción. No uses URL en etapa de prueba, en desarrollo ni ningún otro tipo de URL que no sea de producción. - Todas las URL, como
url
, deben ser canónicas. - Cada entidad en tu feed debe especificar las siguientes propiedades:
- Un ID único:
@id
- Una URL única:
url
- Un vínculo directo único:
urlTemplate
- Un ID único:
Prueba tu feed con la Herramienta de validación de feed de datos
Te recomendamos que sigas estos pasos para solucionar errores y advertencias frecuentes en la Herramienta de validación de feed de datos:
-
Asegúrate de haber seleccionado la opción correcta en el campo Validar en:. Selecciona Acción de libro para la entidad
Book
. - Verifica que el valor de
@type
esté bien escrito. - Revisa que el valor de
@context
esté establecido correctamente. Defina"@context": "https://schema.org"
paraReadAction
yBorrowAction
.
Aloja el archivo de tu feed
Una vez que tu archivo de feed está listo, debes alojarlo en una ubicación segura. Google recupera el feed de manera regular para garantizar que tu contenido esté actualizado.
Métodos de host
Se admiten los siguientes métodos de hosting de feeds:
Hosting | Asistencia para la autenticación | |
---|---|---|
Google Cloud Storage | Permiso del Visualizador de objetos de almacenamiento | |
HTTPS | Nombre de usuario + contraseña o certificados de cliente HTTP | |
SFTP | Contraseña, frase de acceso o ambas | |
AWS S3 | ID de clave + clave de acceso |
Envía tu archivo de feed para revisión
A fin de que tu contenido esté disponible en la Búsqueda de Google, el equipo de atención al cliente de Google revisa la calidad de los vínculos directos en tu feed. Te recomendamos que pruebes manualmente algunos de los vínculos directos y confirmes si la página que se abre permite a los usuarios comprar o pedir prestado el libro.
Para solicitar una revisión de tu feed, debes brindar la siguiente información:
- Ubicación del host: Es la URL de tu archivo de feed.
- Autenticación del host, si corresponde: Son las credenciales de autenticación que le permiten a Google obtener el archivo de feed desde la ubicación de tu host.
Actualiza el feed según sea necesario
Te recomendamos que actualices tu feed a diario, pero en definitiva, dependerá de la frecuencia con la que cambia el catálogo. Ten en cuenta las siguientes condiciones y sugerencias:
- La Búsqueda de Google no admite actualizaciones en tiempo real.
- La Búsqueda de Google recupera tu feed una vez al día y suele indexar el contenido en un plazo de dos días.
- Si hay un cambio previsible en la disponibilidad de una edición, usa
availabilityStarts
yavailabilityEnds
para establecer las fechas exactas. Si la entidad ya no está disponible, quítala por completo.
Definiciones de tipos de datos estructurados
Debes incluir las propiedades obligatorias mencionadas aquí a fin de que tu contenido sea apto para mostrarse en los resultados estructurados de la búsqueda. También puedes incluir las propiedades recomendadas y agregar más información sobre tu contenido, lo cual brindará una mejor experiencia del usuario.
Entidad DataFeed
Cada archivo de feed de schema.org que se entrega a Google debe contener una única entidad DataFeed
en el nivel de raíz. Todas las entidades Book
y Library
deben incluirse en el campo dataFeedElement
de la entidad DataFeed
.
Las propiedades compatibles con Google son las siguientes:
Propiedades obligatorias | |
---|---|
@context |
Debes establecerlo en |
@type |
Debes establecerlo en |
dataFeedElement |
Debes establecerlo como una entidad única de Ejemplo de uso en un feed { "@context": "https://schema.org", "@type": "DataFeed", "dataFeedElement": [ { "@context": "https://schema.org", "@type": "Book", "@id": "https://example.com/work/the_catcher_in_the_rye", "url": "https://example.com/work/the_catcher_in_the_rye", "name": "The Catcher in the Rye", "author": { "@type": "Person", "name": "J.D. Salinger" }, "sameAs": "https://en.wikipedia.org/wiki/The_Catcher_in_the_Rye", "workExample": [ { "@type": "Book", "@id": "https://example.com/edition/the_catcher_in_the_rye_paperback", "isbn": "9787543321724", "bookEdition": "Mass Market Paperback", "bookFormat": "https://schema.org/Paperback", "inLanguage": "en", ... }, ... ] } ], "dateModified": "2018-09-10T13:58:26.892Z" } Ejemplo de uso en un feed { "@context": "https://schema.org", "@type": "DataFeed", "dataFeedElement": [ { "@context": "https://schema.org", "@type": "LibrarySystem", "@id": "https://example.com/library-systems/100", "name": "Santa Clara County Library District", "additionalProperty": [ { "@type": "PropertyValue", "name": "librarytype", "value": "public" } ], ... }, ... ], "dateModified": "2018-09-10T13:58:26.892Z" } |
dateModified |
Corresponde a la fecha y hora de la última actualización del feed en formato ISO 8601. |
Entidad Book
Si bien la definición completa de Book
se encuentra disponible en schema.org/Book, solo debes considerar las propiedades que se indican a continuación. Debes definir las propiedades obligatorias para cada libro que decidas incluir en tu feed. También puedes definir las propiedades recomendadas para agregar más información sobre tu contenido, lo que podría brindar una mejor experiencia del usuario.
Book
(Work
)
Book
es el tipo de entidad de nivel superior. Representa una obra.
Las propiedades compatibles con Google son las siguientes:
Propiedades obligatorias | |
---|---|
@context |
Debes establecerlo en |
@id |
Corresponde al ID único global del libro en formato de URL. Debe ser exclusivo de tu organización. El ID debe ser fijo y mantener el mismo formato con el paso del tiempo. Se sugiere usar el formato de URL, pero no es obligatorio. No es necesario que sea un vínculo activo. El dominio para el valor |
@type |
Debes establecerlo en |
author |
Corresponde al autor del libro. |
name |
Corresponde al título del libro. |
url |
Corresponde a la URL de tu sitio web en la que se presenta o se describe el libro. Este vínculo permite compaginar con precisión el contenido de tu feed con las bases de datos de Google. Puede ser igual a la de Para la verdadera página de destino, la Búsqueda de Google usa la URL que se proporciona en |
workExample |
Corresponde a las ediciones de la obra. |
Propiedades recomendadas | |
---|---|
sameAs |
Corresponde a la URL de una página de referencia que identifica la obra. Por ejemplo, una página sobre el libro en Wikipedia, Wikidata, FAVI o la Biblioteca del Congreso. |
Book
(Edition
)
La propiedad workExample
usa la entidad Book
. Representa la edición de una obra.
Las propiedades compatibles con Google son las siguientes:
Propiedades obligatorias | |
---|---|
@id |
Corresponde al ID único global del libro en formato de URL. Debe ser exclusivo de tu organización. El ID debe ser fijo y mantener el mismo formato con el paso del tiempo. Se sugiere usar el formato de URL, pero no es obligatorio. No es necesario que sea un vínculo activo. El dominio para el valor |
@type |
Debes establecerlo en |
bookFormat |
Corresponde al formato de la edición. El valor debe ser uno de los siguientes:
|
inLanguage |
Corresponde al idioma principal de la edición. Usa uno de los códigos de dos letras de la lista de códigos ISO 639-1 alpha-2. |
isbn |
Corresponde al número ISBN-13 de la edición. Si en su lugar tienes un ISBN-10, conviértelo en ISBN-13. |
potentialAction |
Corresponde a la acción que se activará para que los usuarios compren o descarguen el libro. Si quieres obtener más detalles, consulta |
Propiedades recomendadas | |
---|---|
author |
Corresponde a los autores de la edición. |
bookEdition |
Corresponde a los datos de la edición del libro. |
datePublished |
Corresponde a la fecha de publicación de la edición en formato YYYY-MM-DD o YYYY. Puede ser una fecha específica o solo un año determinado. |
identifier |
Es el ID externo o algún otro ID que identifica esta edición inequívocamente. Se permiten varios identificadores. Si quieres obtener más información, consulta Se puede repetir esta propiedad. |
name |
Corresponde al título de la edición. Solo se debe usar cuando el título de la edición no coincide con el título de la obra. |
sameAs |
Es la URL de una página web de referencia que indica la edición inequívocamente. Por ejemplo, una página de Wikipedia para esta edición específica. No se debe reutilizar el |
url |
Corresponde a la URL de tu sitio web en la que se presenta o se describe la edición. Puede ser igual a la de |
Ejemplo de Book
(Edition
):
"workExample": { "@type": "Book", "@id": "https://example.com/book/100", "inLanguage": "en", "isbn": "9787543321724", "bookEdition": "20 Anniversary Edition", "datePublished": "2000-02-26", "bookFormat": "https://schema.org/Hardcover", "potentialAction": {...} }
Ejemplo de Book
(Edition
) con varias propiedades workExample
:
"workExample": [ { "@type": "Book", "@id": "https://example.com/book/200", "inLanguage": "zh", "isbn": "9787543321721", "bookEdition": "2nd Edition", "bookFormat": "https://schema.org/Hardcover", "potentialAction": {...} }, { "@type": "Book", "@id": "https://example.com/book/300", "inLanguage": "zh", "isbn": "9787543321722", "bookEdition": "1st Edition", "bookFormat": "https://schema.org/EBook", "potentialAction": {...} } ]
Person
o Organization
(author
)
La propiedad author
del libro utiliza la entidad Person
o Organization
.
Propiedades obligatorias | |
---|---|
@type |
Establecido en |
name |
Corresponde al nombre de la organización o persona. |
Propiedades recomendadas | |
---|---|
sameAs |
Corresponde a la URL de una página web de referencia que indica inequívocamente la identidad de la persona o de la organización. Por ejemplo, una página de Wikipedia para la persona o la organización. |
Ejemplo de author
:
"author": { "@type": "Person", "name": "William Shakespeare" }
Ejemplo con varias propiedades author
:
"author": [ { "@type": "Person", "name": "William Shakespeare" }, { "@type": "Person", "name": "Victor Hugo", "sameAs": "https://en.wikipedia.org/wiki/Victor_Hugo" } ]
PropertyValue (identificador)
La propiedad identifier
de Edition
usa la entidad PropertyValue
.
Propiedades obligatorias | |
---|---|
@type |
Debes establecerlo en |
propertyID |
Corresponde al tipo de ID. Como se describe en ISBN y otros identificadores admitidos, debe ser una de las siguientes opciones:
|
value |
Corresponde al valor de ID. Es el ID externo que identifica la edición de manera clara. Quita todos los prefijos no numéricos del ID externo. |
Ejemplo de identifier
:
"identifier": { "@type": "PropertyValue", "propertyID": "OCLC_NUMBER", "value": "110123456" }
Ejemplo con varias propiedades identifier
:
"identifier": [ { "@type": "PropertyValue", "propertyID": "OCLC_NUMBER", "value": "110123456" }, { "@type": "PropertyValue", "propertyID": "LCCN", "value": "220123456" },{ "@type": "PropertyValue", "propertyID": "JP_E-CODE", "value": "12345678901234567890" }]
Ejemplo de un archivo JSON de un feed con ReadAction
Book
{ "@context": "https://schema.org", "@type": "DataFeed", "dataFeedElement": [ { "@context": "https://schema.org", "@type": "Book", "@id": "https://example.com/work/the_catcher_in_the_rye", "url": "https://example.com/work/the_catcher_in_the_rye", "name": "The Catcher in the Rye", "author": { "@type": "Person", "name": "J.D. Salinger" }, "sameAs": "https://en.wikipedia.org/wiki/The_Catcher_in_the_Rye", "workExample": [ { "@type": "Book", "@id": "https://example.com/edition/the_catcher_in_the_rye_paperback", "isbn": "9787543321724", "bookEdition": "Mass Market Paperback", "bookFormat": "https://schema.org/Paperback", "inLanguage": "en", "url": "https://example.com/edition/the_catcher_in_the_rye_paperback", "datePublished": "1991-05-01", "identifier": { "@type": "PropertyValue", "propertyID": "OCLC_NUMBER", "value": "1057320822" }, "potentialAction": { "@type": "ReadAction", "target": { "@type": "EntryPoint", "urlTemplate": "https://example.com/store/9787543321724", "actionPlatform": [ "https://schema.org/DesktopWebPlatform", "https://schema.org/AndroidPlatform", "https://schema.org/IOSPlatform" ] }, "expectsAcceptanceOf": { "@type": "Offer", "category": "purchase", "price": 6.99, "priceCurrency": "USD", "availabilityStarts": "2020-01-01T11:0:00-04:00", "availabilityEnds": "2050-06-30T23:59:00-04:00", "eligibleRegion": { "@type": "Country", "name": "US" } } } }, { "@type": "Book", "@id": "https://example.com/edition/the_catcher_in_the_rye_hardcover", "isbn": "9780316769532", "bookEdition": "Hardcover", "bookFormat": "https://schema.org/Hardcover", "inLanguage": "en", "url": "https://example.com/edition/the_catcher_in_the_rye_hardcover", "datePublished": "1951-07-16", "potentialAction": { "@type": "ReadAction", "target": { "@type": "EntryPoint", "urlTemplate": "https://example.com/store/9780316769532", "actionPlatform": [ "https://schema.org/DesktopWebPlatform", "https://schema.org/AndroidPlatform", "https://schema.org/IOSPlatform" ] }, "expectsAcceptanceOf": [ { "@type": "Offer", "category": "nologinrequired", "availabilityStarts": "2020-01-01T11:0:00-04:00", "availabilityEnds": "2050-06-30T23:59:00-04:00", "eligibleRegion": [ { "@type": "Country", "name": "US" }, { "@type": "Country", "name": "GB" } ] }, { "@type": "Offer", "category": "Subscription", "availabilityStarts": "2020-01-01T11:0:00-04:00", "availabilityEnds": "2050-06-30T23:59:00-04:00", "eligibleRegion": { "@type": "Country", "name": "IN" } } ] } } ] } ], "dateModified": "2018-09-10T13:58:26.892Z" }
Ejemplo de un archivo JSON de un feed con BorrowAction
Book
{ "@context": "https://schema.org", "@type": "DataFeed", "dataFeedElement": [ { "@context": "https://schema.org", "@type": "Book", "@id": "https://example.com/work/the_catcher_in_the_rye", "url": "https://example.com/work/the_catcher_in_the_rye", "name": "The Catcher in the Rye", "author": { "@type": "Person", "name": "J.D. Salinger" }, "sameAs": "https://en.wikipedia.org/wiki/The_Catcher_in_the_Rye", "workExample": [ { "@type": "Book", "@id": "https://example.com/edition/the_catcher_in_the_rye_paperback", "isbn": "9787543321724", "bookEdition": "Mass Market Paperback", "bookFormat": "https://schema.org/Paperback", "inLanguage": "en", "url": "https://example.com/edition/the_catcher_in_the_rye_paperback", "datePublished": "1991-05-01", "identifier": { "@type": "PropertyValue", "propertyID": "OCLC_NUMBER", "value": "1057320822" }, "potentialAction": { "@type": "BorrowAction", "lender": { "@type": "LibrarySystem", "@id": "https://example.com/librarySystem/100" }, "target": { "@type": "EntryPoint", "urlTemplate": "https://example.com/borrowpurchase?bookId=170", "actionPlatform": [ "https://schema.org/DesktopWebPlatform", "https://schema.org/AndroidPlatform", "https://schema.org/IOSPlatform" ] } } }, { "@type": "Book", "@id": "https://example.com/edition/the_catcher_in_the_rye_hardcover", "isbn": "9780316769532", "bookEdition": "Hardcover", "bookFormat": "https://schema.org/Hardcover", "inLanguage": "en", "url": "https://example.com/edition/the_catcher_in_the_rye_hardcover", "datePublished": "1951-07-16", "potentialAction": { "@type": "BorrowAction", "lender": { "@type": "LibrarySystem", "@id": "https://example.com/librarySystem/100" }, "target": [ { "@type": "EntryPoint", "urlTemplate": "https://example.com/borrowpurchase?bookId=170", "actionPlatform": [ "https://schema.org/DesktopWebPlatform" ] }, { "@type": "EntryPoint", "urlTemplate": "https://example.com/mobile/borrowpurchase?bookId=170", "actionPlatform": [ "https://schema.org/AndroidPlatform", "https://schema.org/IOSPlatform" ] } ] } } ] } ], "dateModified": "2018-09-10T13:58:26.892Z" }
ReadAction
(potentialAction
)
La propiedad potentialAction
usa la entidad ReadAction
.
ReadAction
define los vínculos directos para acceder al libro, el minorista que lo vende y los criterios que deben cumplir los usuarios. Los criterios pueden incluir el estado de la membresía o del acceso, la ubicación o cualquier otro aspecto necesario para acceder al libro.
Propiedades obligatorias | |
---|---|
@type |
Debes establecerlo en |
expectsAcceptanceOf |
Son los requisitos del usuario que se definen para acceder a esta entidad. Cuando hay varias propiedades Se puede repetir esta propiedad. |
expectsAcceptanceOf.@type |
Debes establecerlo en |
expectsAcceptanceOf.category |
Corresponde al tipo de
|
expectsAcceptanceOf.eligibleRegion |
Corresponde al país apto para el Se puede repetir esta propiedad. |
expectsAcceptanceOf.eligibleRegion.@type |
Debes establecerlo en |
expectsAcceptanceOf.eligibleRegion.name |
Es el código de país ISO 3166-1 alpha-2. |
target |
Corresponde a las especificaciones del vínculo directo, que incluyen la información de la plataforma compatible. Puede haber varias propiedades Se puede repetir esta propiedad. |
target.@type |
Debes establecerlo en |
target.actionPlatform |
Corresponde a las plataformas en las que funciona el vínculo directo. Usa uno de los siguientes valores:
Se puede repetir esta propiedad. |
target.urlTemplate |
Corresponde al vínculo que lleva a los usuarios directamente al contenido de la página de destino de tu libro. |
Propiedades recomendadas | |
---|---|
expectsAcceptanceOf.availabilityEnds |
Indica la hora de finalización del período de disponibilidad. Se puede usar para establecer el tiempo exacto en que el libro se debe dejar de mostrar a los usuarios. |
expectsAcceptanceOf.availabilityStarts |
Indica la hora de inicio del período de disponibilidad. Se puede usar para establecer el tiempo exacto en el que el libro puede mostrarse a los usuarios. |
expectsAcceptanceOf.price |
Indica el precio de compra del libro. Se requiere cuando el |
expectsAcceptanceOf.priceCurrency |
Corresponde a la moneda del precio con el formato ISO 4217 de tres letras. |
Ejemplo de ReadAction
:
"potentialAction": { "@type": "ReadAction", "target": { "@type": "EntryPoint", "urlTemplate": "https://example.com/purchase?bookId=170", "actionPlatform": [ "https://schema.org/DesktopWebPlatform", "https://schema.org/AndroidPlatform", "https://schema.org/IOSPlatform" ] }, "expectsAcceptanceOf": { "@type": "Offer", "category": "purchase", "price": "9.99", "priceCurrency": "USD", "availabilityStarts": "2018-04-01T11:01:00-04:00", "availabilityEnds": "2018-06-30T23:59:00-04:00", "eligibleRegion": { "@type": "Country", "name": "US" } } }
Ejemplo de ReadAction
con varias propiedades EntryPoint
:
"potentialAction": { "@type": "ReadAction", "target": [ { "@type": "EntryPoint", "urlTemplate": "https://example.com/purchase?bookId=170", "actionPlatform": [ "https://schema.org/DesktopWebPlatform" ] }, { "@type": "EntryPoint", "urlTemplate": "https://example.com/mobile/purchase?bookId=170", "actionPlatform": [ "https://schema.org/AndroidPlatform", "https://schema.org/IOSPlatform" ] } ], "expectsAcceptanceOf": [ { "@type": "Offer", "category": "noLoginRequired", "availabilityStarts": "2018-04-01T11:01:00-04:00", "availabilityEnds": "2018-06-30T23:59:00-04:00", "eligibleRegion": [ { "@type": "Country", "name": "US" }, { "@type": "Country", "name": "GB" } ] }, { "@type": "Offer", "category": "Subscription", "availabilityStarts": "2018-04-01T11:01:00-04:00", "availabilityEnds": "2018-06-30T23:59:00-04:00", "eligibleRegion": { "@type": "Country", "name": "IN" } } ] }
BorrowAction
(potentialAction
)
La propiedad potentialAction
usa la entidad BorrowAction
.
BorrowAction
define tus vínculos directos al libro, la biblioteca que lo vende y los criterios que deben cumplir los usuarios. Los criterios pueden incluir el estado de la membresía o del acceso, la ubicación o cualquier otro aspecto necesario para acceder al libro.
Propiedades obligatorias | |
---|---|
@type |
Debes establecerlo en |
lender |
Corresponde al sistema de bibliotecas que brinda acceso a esta edición. |
lender.@id |
Indican las referencias de ID de |
lender.@type |
Debes establecerlo en |
target |
Corresponde a las especificaciones del vínculo directo, que incluyen la información de la plataforma compatible. Si quieres definir vínculos directos para diferentes conjuntos de plataformas, especifica un arreglo Se puede repetir esta propiedad. |
target.@type |
Debes establecerlo en |
target.actionPlatform |
Corresponde a las plataformas en las que funciona el vínculo directo. Usa uno de los siguientes valores:
Se puede repetir esta propiedad. |
target.urlTemplate |
Corresponde al vínculo que lleva a los usuarios directamente al contenido de la página de destino de tu libro. |
Ejemplo de BorrowAction
:
"potentialAction": { "@type": "BorrowAction", "lender": { "@type": "LibrarySystem", "@id": "https://example.com/librarySystem/100" }, "target": { "@type": "EntryPoint", "urlTemplate": "https://example.com/borrow?bookId=170", "actionPlatform": [ "https://schema.org/DesktopWebPlatform", "https://schema.org/AndroidPlatform", "https://schema.org/IOSPlatform" ] } }
Ejemplo de BorrowAction
con varias propiedades EntryPoint
:
"potentialAction": { "@type": "BorrowAction", "lender": { "@type": "LibrarySystem", "@id": "https://example.com/librarySystem/100" }, "target": [ { "@type": "EntryPoint", "urlTemplate": "https://example.com/borrow?bookId=170", "actionPlatform": [ "https://schema.org/DesktopWebPlatform" ] }, { "@type": "EntryPoint", ` "urlTemplate": "https://example.com/mobile/borrow?bookId=170", "actionPlatform": [ "https://schema.org/AndroidPlatform", "https://schema.org/IOSPlatform" ] } ] }
Entidad Library
Si bien la definición completa de Library
se encuentra disponible en schema.org/Library, solo debes considerar las siguientes propiedades. Debes definir las propiedades obligatorias para cada biblioteca que decidas incluir en tu feed.
También puedes definir algunas propiedades recomendadas a fin de agregar más información acerca de tu contenido, lo que podría brindar una mejor experiencia del usuario.
Library
es el tipo de entidad Library
de nivel superior. Se trata de una estructura abstracta, compuesta por la entidad LibrarySystem
y cada Library (member)
de nivel inferior de dicha LibrarySystem
.
El feed Library
es distinto del feed Book
. Por lo tanto, todo feed Library
que implementes debe estar separado por completo de Book
.
Si quieres obtener más información, consulta Crea un feed.
LibrarySystem
La entidad LibrarySystem
representa una red colaborativa de miembros de la biblioteca.
Propiedades obligatorias | |
---|---|
@context
|
Text
Debes establecerlo en |
@id
|
URL
Corresponde al ID único global del sistema de bibliotecas en forma de URL. El ID debe ser fijo y mantener el mismo formato con el paso del tiempo. Se la considera como una string opaca que no necesariamente debe ser un vínculo activo. El dominio para el valor |
@type
|
Text
Debes establecerlo en |
additionalProperty
|
PropertyValue
Es la propiedad adicional que se usa para indicar el tipo de biblioteca. |
additionalProperty.@type
|
Text
Debes establecerlo en |
additionalProperty.name
|
Text
Debes establecerlo como |
additionalProperty.value
|
Text
Corresponde al tipo de biblioteca. Usa uno de los siguientes valores:
|
member
|
Library
Corresponde a los miembros del sistema de bibliotecas. |
name
|
Text
Es el nombre del sistema de biblioteca, como |
url
|
URL
Corresponde a la URL en la que se presenta o se describe el sistema de biblioteca. La Búsqueda de Google usa este vínculo a fin de compaginar el contenido de tu feed con el contenido de las bases de datos de Google. Para la verdadera página de destino, la Búsqueda de Google usa la URL que se proporciona en |
Library
(member
)
La propiedad member
de la entidad LibrarySystem
utiliza Library (member)
.
Library (member)
representa un miembro de un determinado sistema de bibliotecas.
Propiedades obligatorias | |
---|---|
@id
|
URL
Corresponde al ID único global de la sede de la biblioteca en forma de URL. El ID debe ser fijo y mantener el mismo formato con el paso del tiempo. Se la considera como una string opaca que no necesariamente debe ser un vínculo activo. El dominio para el valor |
@type
|
Text
Debes definirlo como |
location
|
PostalAddress
Indica la dirección de la sede de la biblioteca. No todas las propiedades se aplican a todos los países. Debes incluir todas las que correspondan a las direcciones de tus bibliotecas. Ejemplo de { "@type": "Library", "@id": "https://example.com/library-branches/1001", "name": "Campbell Library", "location": { "@type": "PostalAddress", "streetAddress": "77 Harrison Ave", "addressLocality": "Campbell", "addressRegion": "CA", "postalCode": "95008", "addressCountry": "US" } } Ejemplo de { "@type": "Library", "@id": "https://example.com/library-branches/1003", "name": "Tokyo Metropolitan Central Library", "location": { "@type": "PostalAddress", "streetAddress": "7-13-5 Minamiazabu, Minato City", "addressLocality": "Tokyo", "postalCode": "106-0047", "addressCountry": "JP" } } |
location.@type
|
Text
Debes establecerlo en |
location.addressCountry
|
Text
Corresponde al código de país con el formato ISO 3166-1, como |
location.addressLocality
|
Text
Corresponde a la localidad, por ejemplo, |
location.addressRegion
|
Text
Indica la región, como |
location.postalCode
|
Text
Corresponde al código postal, por ejemplo, |
location.streetAddress
|
Text
Indica la dirección, como |
name
|
Text
Corresponde al nombre de la sede de la biblioteca. |
Ejemplo de un archivo JSON de un feed con LibrarySystem
{ "@context": "https://schema.org", "@type":"LibrarySystem", "@id":"https://example.com/library-systems/100", "name":"Santa Clara County Library District", "additionalProperty":[ { "@type":"PropertyValue", "name":"librarytype", "value":"public" } ], "member":[ { "@type":"Library", "@id":"https://example.com/library-branches/1001", "name":"Campbell Library", "location":{ "@type":"PostalAddress", "streetAddress":"77 Harrison Ave", "addressLocality":"Campbell", "addressRegion":"CA", "postalCode":"95008", "addressCountry":"US" } }, { "@type":"Library", "@id":"https://example.com/library-branches/1002", "name":"Gilroy Library", "location":{ "@type":"PostalAddress", "streetAddress":"350 W 6th St", "addressLocality":"Gilroy", "addressRegion":"CA", "postalCode":"95020", "addressCountry":"US" } } ] }