Especificación de Schema.org para podcasts

En esta sección, se proporcionan detalles sobre las propiedades de lenguaje de marcado de contenido para podcasts.

Especificaciones de PodcastSeries

PodcastSeries es la representación de una serie de podcasts, que también es conocido como "programa" de podcast.

Propiedad Prioridad Tipo Descripción
@context Obligatorio Texto Contexto de Schema.org Siempre establecer en [http://schema.googleapis.com,{@language}:xx}], donde el elemento xx debe estar en el código de idioma. Esto establece el idioma predeterminado para los valores de texto de la entidad.
@type Obligatorio Texto Siempre se establece en PodcastSeries.
@id Obligatorio Texto Es un ID único a nivel global para la serie de podcasts en formato URI. El ID debe ser sea estable y no cambien con el tiempo. Se la trata como una cadena opaca y no tienen que ser un enlace que funcione. El dominio que se usa para el valor @id debe sean propiedad de tu organización.
url Obligatorio Texto Es la URL canónica de tu sitio web en la que se presenta la serie de podcasts. descritos. Debe ser único a nivel global. Este vínculo ayuda a conocer conciliar el contenido de tu feed con el contenido de las bases de datos de Google. Para reproducción, usa el target.urlTemplate que se detalla en la sección ListenAction de la documentación.
name Obligatorio Texto

Es el nombre de la serie de podcasts. Incluye solo un nombre por idioma.

Usa un array para marcar la descripción en varios idiomas. Consulta los varios ejemplo de idiomas y regiones.

description Obligatorio Texto

Una sinopsis de la serie de podcasts.

Usa un array para marcar la descripción en varios idiomas. Consulta el ejemplo de varios idiomas y regiones.

alternativeHeadline Opcional Texto Subtítulos de la serie de podcasts.
author Obligatorio

Organización o persona

repetido

La persona o el grupo que desarrolla o entrega el programa. A menudo, se refiere al host. Para ver ejemplos y detalles, consulta Organización, persona (autor/editor).
publisher Opcional

Organización o persona

repetido

Corresponde al grupo o la red original responsable de publicar el programa. A menudo se refiere a una organización responsable de publicar o producir varios podcasts. Para ver ejemplos y detalles, consulta Organización, Persona (autor/editor). Este campo es muy recomendable para desambiguación y debe proporcionarse cuando corresponda.
actor Opcional

Organización o persona

repetido

Es el actor del podcast. Para ver ejemplos y detalles, consulta la sección Actor (anfitrión/invitado) .
logo Opcional

ImageObject

repetido

Una imagen del logotipo de la serie. Proporciona esto como una descripción completa ImageObject Proporciona la resolución más alta disponible. JPEG o PNG de tu preferencia. Para obtener detalles y ejemplos, consulta la ImageObject (logo).
image Obligatorio

ImageObject

repetido

Una imagen de material gráfico de la serie. Proporciona esto como una descripción completa ImageObject Proporciona la resolución más alta disponible. JPEG o PNG es de tu preferencia. Consulta la sección ImageObject (logo) para obtener más información y ejemplos.
isFamilyFriendly Obligatorio Booleano Indica si el contenido es apto para familias (es decir, si el contenido es apto para todos los miembros de una familia, incluidos los niños). Productos de Google podría usar isFamilyFriendly para determinar qué contenido reproducir. El el valor debe ser true o false.
inLanguage Obligatorio Texto Es el idioma del contenido del podcast en formato ISO 639-1. Este valor se puede usar para cumplir con que solicitan contenidos en un idioma específico.
genre Obligatorio

Texto

repetido

Es la categoría o el género de la serie de podcasts. Por ejemplo, puedes seguir estándar Categorías de podcasts
endDate Opcional Fecha Es la fecha del lanzamiento del episodio final de la serie de podcasts. Solo incluir este campo cuando la serie ya haya terminado.
rssFeed Obligatorio URL Es la URL del feed RSS de la serie de podcasts.
potentialAction Obligatorio ListenAction Es la acción que se activará para que los usuarios escuchen el contenido. Para obtener más información, consulta ListenAction.
popularityScore Opcional PopularityScoreSpecification Una puntuación de popularidad para ayudar a determinar la prioridad de publicación cuando hay varios candidatos. Consulta las Sección PopularityScoreSpecification (popularityScore) para más detalles y ejemplos.
keywords Opcional

Texto

repetido

Una lista de palabras clave que se asociarían con la serie de podcasts. Estos palabras clave se podrían usar para ampliar las búsquedas de los usuarios que pueden activar este podcast. . Por ejemplo, los nombres de los invitados, los temas que se abordan, etcétera.
sameAs Opcional URL URL de una página web de referencia de terceros (que no pertenezca a tu dominio) que indica inequívocamente la identidad del elemento. Esta página web se usa para desambiguación cuando existen múltiples series similares. Por ejemplo, una entrada de Wikipedia o la página principal de una serie de podcasts. Este campo es altamente recomendado para la desambiguación de la serie.
releasedEvent Opcional PublicationEvent o subtipos más específicos: FeaturedEvent o ExternalEvent El evento que marca la publicación o el lanzamiento de la serie de podcasts. R publicación podría tener en cuenta el lanzamiento inicial de un podcast por parte de un editor y los tipos más especializados pueden usarse para denotar la exclusividad o el atributo de del lanzamiento. Para obtener detalles y ejemplos, consulta el artículo PublicationEvent, Sección FeaturedEvent, ExternalEvent (releasedEvent). Ten en cuenta que marcar como exclusiva o destacada implica que todos los episodios del programa son exclusivas o destacadas.
countryOfOrigin Opcional País El país de las oficinas principales de la empresa de producción o de la es la persona responsable del podcast.

Especificaciones de episodio de podcast

PodcastEpisode es la representación de un episodio en Schema.org. en un PodcastSeries.

Propiedad Prioridad Tipo Descripción
@context Obligatorio Texto Contexto de Schema.org Siempre establecer en [http://schema.googleapis.com,{@language:xx}] En el ejemplo anterior, xx es el código de idioma. Esto establece el carácter predeterminado idioma utilizado para los valores de texto del feed.
@type Obligatorio Texto Siempre se establece en PodcastEpisode.
@id Obligatorio Texto Es el ID único a nivel global para el episodio del podcast en formato URI. El ID debe ser sea estable y no cambien con el tiempo. Se la trata como una cadena opaca y no tienen que ser un enlace que funcione. Tu organización debe ser propietaria del dominio que se usa para el valor @id.
url Obligatorio Texto Es la URL canónica de tu sitio web donde presentas o describes el de un episodio de podcast. Este valor debe ser único a nivel global. Este vínculo se usa para ayudar concilie con precisión el contenido de su feed con el de la bases de datos. Para la reproducción, el target.urlTemplate que se detalla en la Se usa la sección ListenAction de la documentación.
name Obligatorio Texto

Es el nombre del episodio del podcast.

Solo debe haber un nombre por idioma. Usa un array para marcar descripción en varios idiomas. Consulta la sección Varias regiones y lenguajes de programación.

description Obligatorio Texto Descripción del episodio del podcast.
alternativeHeadline Obligatorio Texto Subtítulo del episodio del podcast.
author Obligatorio

Organización o persona

repetido

Persona o grupo que desarrolla o publica el episodio. Este valor suele se refiere al host. Si el autor es el mismo que el del programa, puedes reutilizar el de la entidad PodcastSeries. Para ver ejemplos y consulta Organización, persona (autor/editor).
publisher Obligatorio

Organización o persona

repetido

Corresponde al grupo o la red original responsable de publicar el programa. A menudo se refiere a una organización responsable de publicar o producir varias podcasts. Consulta Organización, persona (autor/editor) para ejemplos y detalles. Este campo es muy recomendable para la desambiguación y te recomendamos que lo definas cuando corresponda.
actor Obligatorio

Organización o persona

repetido

Es el actor del podcast. Para ver ejemplos y detalles, consulta la Sección Actor (anfitrión/invitado).
datePublished Obligatorio Fecha y hora Es la fecha y hora del lanzamiento del episodio del podcast. Este valor se usa para ordenar la secuencia del episodio y la desambiguación.
episodeNumber Obligatorio Número entero Es el número de episodio.
partOfSeries Obligatorio PodcastSeries El PodcastSeries en el que se encuentra este episodio de podcast. Consulta PodcastSeries(partOfSeries) para obtener detalles y ejemplos.
partOfSeason Opcional PodcastSeason Para las series de varias temporadas, esta propiedad proporciona la información de la temporada junto con con el número y el nombre de la temporada. Consulta PodcastSeason(partOfSeason) para conocer detalles y ejemplos.
timeRequired Obligatorio Duración Es la duración del episodio en formato ISO 8601.
image Opcional

ImageObject

repetido

Una imagen de material gráfico de la serie. Debe describirse en detalle ImageObject Proporciona la resolución más alta disponible. JPEG o PNG de tu preferencia. Consulta la sección ImageObject (logo) para más detalles y ejemplos.
isFamilyFriendly Obligatorio Booleano Indica si el contenido es apto para familias (es decir, si el contenido apto para todos los miembros de una familia, incluidos los niños). Google es posible que los productos usen isFamilyFriendly para determinar el contenido que se reproducirá. El valor debe ser true o false.
inLanguage Obligatorio Texto Es el idioma del contenido del episodio del podcast en formato ISO 639-1. Usar esta para cumplir con las consultas de los usuarios que solicitan contenidos en un idioma específico. Si Si el contenido está en varios idiomas, indica solo un idioma principal.
genre Obligatorio

Texto

repetido

Es la categoría o el género de la serie de podcasts. Por ejemplo, puedes seguir las categorías de podcasts estándar.
associatedMedia Opcional AudioObject Es el archivo de audio del episodio del podcast. Para obtener detalles y ejemplos, consulta AudioObject(associatedMedia).
potentialAction Obligatorio ListenAction Es la acción que se activará para que los usuarios escuchen el contenido. Para obtener más información, consulta la sección ListenAction.
popularityScore Opcional PopularityScoreSpecification Una puntuación de popularidad para determinar la prioridad de publicación cuando hay varios candidatos. Para obtener detalles y ejemplos, consulta la PopularityScoreSpecification.
keywords Opcional

Texto

repetido

Es una lista de palabras clave asociadas con la serie de podcasts. Estas palabras clave podrían Se usará para expandir las búsquedas de los usuarios que pueden activar este episodio de podcast. Para Por ejemplo, news, sports o history.
identifier Obligatorio

PropertyValue

repetido

En PodcastEpisode, usa esta propiedad para proporcionar un GUID. El El GUID debe ser un ID que pueda identificar de forma global y inequívoca episodios. Es diferente del campo @id del episodio.

Consulta la sección PropertyValue (identificador) para obtener ejemplo.

sameAs Opcional URL URL de una página web de referencia de terceros (que no pertenezca a tu dominio) que indica inequívocamente la identidad del elemento. Google usa esta página web para desambiguación cuando existen múltiples series similares. Por ejemplo, una entrada de Wikipedia o en la página principal de los episodios del podcast. Ten en cuenta que la referencia a nivel de serie no se debe proporcionar aquí. Te recomendamos este campo para la desambiguación del episodio.
releasedEvent Opcional PublicationEvent o subtipos más específicos: FeaturedEvent o ExternalEvent Es el evento que marca la publicación o el lanzamiento del episodio del podcast. R publicación podría tener en cuenta el lanzamiento inicial de un episodio de podcast mediante un publicador y los subtipos más específicos pueden indicar exclusividad o atributos destacados del lanzamiento. Para obtener detalles y ejemplos, consulta la Sección PublicationEvent, FeaturedEvent, ExternalEvent (releasedEvent). Ten en cuenta que marcar una serie como exclusiva o destacada implica que todo episodios del programa son exclusivos o destacados. Te recomendamos que marques propiedades en el nivel más detallado.
countryOfOrigin Opcional País El país de las oficinas principales de la empresa productora o la persona física. del podcast.

PodcastSeries (partOfSeries)

Usa el elemento partOfSeries para establecer la relación entre un elemento PodcastEpisode. y su elemento superior, PodcastSeries. Debido a que el detalle completo de PodcastSeries se describe en la entidad PodcastSeries separada, no necesitas proporcionar todos los detalles en partOfSeries. Solo debes proporcionar la siguiente propiedades:

Propiedad Prioridad Tipo Descripción
@type Obligatorio Texto Siempre se establece en PodcastSeries.
@id Obligatorio URL Es el ID único global de la serie en formato URI. El ID debe coincidir con el Es el ID de la entidad PodcastSeries completa de tu feed.
name Obligatorio Texto Es el nombre de la serie de podcasts.

Ejemplo 1

"partOfSeries": {
  "@type": "PodcastSeries",
  "@id": "http://www.tjpodcast.org/series?id=1",
  "name": "Radiolab"
},

PodcastSeason (partOfSeason)

PodcastSeason representa la información de la temporada de un PodcastEpisode, el más importante es el número de temporada. Solo necesitas esta propiedad cuando la serie de podcasts tiene varias temporadas.

Propiedad Prioridad Tipo Descripción
@type Obligatorio Texto Siempre establecer en PodcastSeason
@id Obligatorio URL Es un ID único a nivel global para la temporada en formato URI. El ID debe ser estable y no cambian con el tiempo. Se la trata como una cadena opaca y no tiene que sea un vínculo funcional.
seasonNumber Obligatorio Número entero Es el número de temporada de la serie de podcasts.
name Opcional Texto Es el nombre de la temporada del podcast.

Ejemplo 1

"partOfSeason": {
  "@type": "PodcastSeason",
  "@id": "http://www.tjpodcast.org/seriesx/season?id=1",
  "seasonNumber": 1,
  "name": "Radiolab Season 1"
},

Organización, persona (autor o editor)

Propiedad Prioridad Tipo Descripción
@type Obligatorio Texto Siempre se establece en Organization o Person.
@id Obligatorio URL Es un ID único a nivel global para la organización o persona en formato URI. El ID deben ser estables y no cambiar con el tiempo. Se la trata como una cadena opaca y no tiene que ser un vínculo activo.
name Obligatorio Texto Es el nombre de la organización o la persona.
sameAs Opcional URL URL de una página web de referencia de terceros (que no pertenezca a tu dominio) que indica inequívocamente la identidad del elemento. Google usa esta página web para desambiguación cuando existen múltiples series similares. Los ejemplos pueden incluir un Página de Wikipedia de una organización o su sitio web oficial.

Ejemplo 1

"author": {
  "@type": "Organization",
  "@id": "https://www.tjpodcast.org/organization/wnyc",
  "sameAs": "https://en.wikipedia.org/wiki/WNYC",
  "name": "WNYC"
},

Ejemplo 2

"author": {
  "@type": "Person",
  "@id": "https://www.tjpodcast.org/person/jad_abumrad",
  "sameAs": "https://en.wikipedia.org/wiki/Jad_Abumrad",
  "name": "Jad Abumrad"
},

Actor (anfitrión o invitado)

Propiedad Prioridad Tipo Descripción
@type Obligatorio Texto Siempre se establece en Organization o Person.
@id Obligatorio URL Es un ID único a nivel global para la organización o persona en formato URI. El ID deben ser estables y no cambiar con el tiempo. Se la trata como una cadena opaca y no tiene que ser un vínculo activo.
name Obligatorio Texto Es el nombre de la organización o persona.
roleName Obligatorio Texto `Host` o `Guest`.
sameAs Opcional URL URL de una página web de referencia de terceros (que no pertenezca a tu dominio) que indica inequívocamente la identidad del elemento. Google usa esta página web para desambiguación cuando existen múltiples series similares. Los ejemplos pueden incluir un Página de Wikipedia de una organización o su sitio web oficial.

Ejemplo 1

"actor":[{
  "@type": "PerformanceRole",
  "actor": {
    "@type": "Person",
    "@id": "https://www.tjpodcast.org/person/Roman",
    "name": {
      "@language":"en",
      "@value": "Roman Mars"
    },
    "roleName": "Host"
    "sameAs": "https://en.wikipedia.org/wiki/Roman",
  },
  "actor": {
    "@type": "Person",
    "@id": "https://www.tjpodcast.org/person/guest",
    "name":{
      "@language":"en",
      "@value": "Kurt Kohlstedt"
    },
    "roleName": "Guest"
   },
}]

ImageObject (logotipo o imagen)

ImageObject se usa para proporcionar el logotipo o el material gráfico del contenido.

Propiedad Prioridad Tipo Descripción
@type Obligatorio Texto Siempre se establece en ImageObject.
height Opcional Número entero Es la altura de la imagen en píxeles.
width Opcional Número entero Es el ancho de la imagen en píxeles.
contentUrl Obligatorio URL Una URL en la que se puede ubicar la imagen.
regionsAllowed Opcional

País

repetido

Los países donde se permite el contenido multimedia:

  • Si no se especifica, se supone que la imagen está permitida en todas configuraciones regionales.
  • Para enviar imágenes diferentes por región, agrega varias Propiedades ImageObject, cada una con su propio conjunto de países y un la URL de la imagen correspondiente.

País (image.regionsAllowed)

Propiedad Prioridad Tipo Descripción
@type Obligatorio Texto Siempre establecer en Country.
name Obligatorio Texto El Es el código de país ISO 3166-1 alpha-2. Por ejemplo, GB, US

Ejemplo 1

"logo": {
  "@type": "ImageObject",
  "height": "100",
  "width": "800",
  "contentUrl": "http://www.foo.com/img/67890.jpg",
},

Ejemplo 2

"logo": [
  {
    "@type": "ImageObject",
    "height": "100",
    "width": "800",
    "contentUrl": "http://www.foo.com/img/67890.jpg",
    "regionsAllowed": [
      {
        "@type": "Country",
        "name": "US"
      },
      {
        "@type": "Country",
        "name": "GB"
      }
    ]
  },
  {
    "@type": "ImageObject",
    "height": "100",
    "width": "800",
    "contentUrl": "http://www.foo.com/img/12345.jpg",
    "regionsAllowed": [
      {
        "@type": "Country",
        "name": "IN"
      },
      {
        "@type": "Country",
        "name": "PK"
      }
    ]
  },
],

PropertyValue (identificador)

Si tienes GUID para tu contenido, puedes proporcionarlos con el identifier para mejorar la precisión de la conciliación de Google de tu contenido. Ten en cuenta que el GUID es obligatorio para PodcastEpisode. Debe ser diferente del campo @id del episodio (no dentro de tu dominio) y debe representar el episodio de origen a nivel global y de forma única en el tiempo y en todas las fuentes.

Propiedad Prioridad Tipo Descripción
@type Obligatorio Texto Siempre se establece en `PropertyValue`.
propertyID Obligatorio Texto Siempre se establece en GUID.
value Obligatorio Texto Es el GUID de la serie o el episodio.

Ejemplo 1

"identifier": {
  "@type": "PropertyValue",
  "propertyID": "GUID",
  "value": "50204fe4-bc68-4b34-aae6-e73c700cc5ca"
},

PopularityScoreSpecification (popularityScore)

El popularityScore puede ayudar a los usuarios a llegar a contenido en casos en los que los criterios de la consulta del usuario coinciden con varios de tu feed. El contenido con la puntuación de popularidad más alta disponibles para la región del usuario se entrega al usuario cuando este valor es disponibles. Todo el contenido sin este campo tiene como valor predeterminado el nivel de popularidad 0. El la comparación de la puntuación se produce en el alcance de todo su catálogo, así que asegúrese de que la escala sea coherente en todos sus feeds.

Propiedad Prioridad Tipo Descripción
@type Obligatorio Texto Siempre se establece en PopularityScoreSpecification.
value Obligatorio Numérico Es un valor numérico positivo para comparar con otras entidades de tu catálogo. con prioridad de entrega. Un número más alto representa una mayor popularidad.
eligibleRegion Opcional

País o texto

repetido

Una región o una lista de las regiones a las que se aplica esta puntuación de popularidad.

Si el nivel de popularidad se aplica a nivel global, usa earth como texto. valor.

Si se deben enumerar regiones específicas, usa el tipo "País".

Si no incluyes este campo, el valor predeterminado de eligibleRegion será el siguiente: earth

País (popularityScore.eligibleRegion)

Propiedad Prioridad Tipo Descripción
@type Obligatorio Texto Siempre se establece en Country.
name Obligatorio Texto El Es el código de país ISO 3166-1 alpha-2. Por ejemplo, GB, US

Ejemplo 1

"popularityScore": {
  "@type": "PopularityScoreSpecification",
  "value": 4.3,
  "eligibleRegion": "Earth"
},

Ejemplo 2

"popularityScore": {
  "@type": "PopularityScoreSpecification",
  "value": 2,
  "eligibleRegion": {
    "@type": "Country",
    "name": "US"
  }
},

Ejemplo 3

"popularityScore": {
  "@type": "PopularityScoreSpecification",
  "value": 101,
  "eligibleRegion": [
    {
      "@type": "Country",
      "name": "US"
    },
    {
      "@type": "Country",
      "name": "GB"
    }
  ]
},

PublicationEvent, FeaturedEvent, exclEvent (releasedEvent)

PublicationEvent
Usa este objeto para representar la fecha y el lugar de publicación de un programa o episodio (también conocido como la "fecha de lanzamiento" de una serie o un episodio). Además, el campo publishedBy denota la publicación o distribución de la serie o el episodio del podcast.
ExclusiveEvent
Usa este objeto para indicar que el proveedor tiene derechos de distribución exclusivos para el podcast. La exclusividad puede ser específica de una región y limitada en el tiempo, y debe incluir el campo de organización que apunta al proveedor exclusivo de la contenido.
FeaturedEvent
Usa este objeto para indicar que el proveedor incluye el podcast para lo siguiente: consumidores (por ejemplo, como “original”).
El contenido original es diferente del contenido exclusivo
El término “originales (destacados”) a menudo denota derechos exclusivos sobre un determinado que sobrecarga el término. Por lo tanto, el significado previsto debe dividirse en las dos categorías anteriores. Es posible que una entidad original también excluyentes y, en este caso, releasedEvent puede tomar un array con ambos tipos de eventos en la misma entidad.

Ten en cuenta que, si bien la exclusividad o la inclusión pueden tener significados similares en catálogo de un proveedor, se aplica PublicationEvent de manera más general para habilitar la desambiguación de entidades y la entrega de metadatos adicionales acerca de ellas como la fecha de lanzamiento de una serie o un episodio.

Propiedad Prioridad Tipo Descripción
@type Obligatorio Texto Siempre se establece en uno de PublicationEvent, ExclusiveEvent o FeaturedEvent.
location Obligatorio País Es la región en la que ocurre el evento de publicación. También puedes usar para representar las restricciones de exclusividad y las restricciones de distribución de la entidad. Usa los códigos ISO 3166 del país. Si necesitas postularte semántica global, establecida en EARTH. Establecido explícitamente De location a EARTH, en caso de que sea específica para una configuración regional no se aplican restricciones.
startDate Recomendado (obligatorio para ExternalEvent) Fecha o fecha y hora Fecha de inicio de la política de publicación. En el caso de PublicationEvent, indica la fecha de lanzamiento inicial del esta entidad. En el caso de ExclusiveEvent o FeaturedEvent, representa la fecha de inicio del la exclusividad o el aspecto destacado de la entidad.
endDate Recomendado (obligatorio para ExternalEvent) Fecha o fecha y hora Es la fecha de finalización de la publicación de las entidades. En el caso de PublicationEvent indica la fecha de publicación final. de esta entidad. En el caso de ExclusiveEvent o FeaturedEvent, representa la fecha de finalización de la la exclusividad o el aspecto destacado de la entidad.
publishedBy Obligatorio Organización o persona La entidad Organization o Person que publica esta entidad y se aplica a este evento de publicación. Usa el mismo esquema que se describe en el Organización (autor/publicador).

Ejemplo 1

"releasedEvent": [ {
  "@type": "PublicationEvent",
  "location": "EARTH",
  "startDate": "2016-04-21T20:00",
  "publishedBy": {
    "@type": "Organization",
    "@id": "https://www.tjpodcast.org/organization/wnyc",
    "sameAs": "https://en.wikipedia.org/wiki/WNYC",
    "name": "WNYC"
  },
 }, {
  "@type": "FeaturedEvent",
  "location": "US",
  "startDate": "2020-04-18T20:00",
  "endDate": "2020-04-21T20:00",
  "publishedBy": {
    "@type": "Organization",
    "@id": "https://www.tjpodcast.org/organization/tjpodcast",
    "sameAs": "https://en.wikipedia.org/wiki/tjpodcast",
    "name": "TJPodcast",
  },
 },
]

Ejemplo 2

"releasedEvent": [ {
  "@type": "FeaturedEvent",
  "location": "US",
  "startDate": "2020-04-18T20:00",
  "endDate": "2020-05-21T20:00",
  "publishedBy": {
    "@type": "Organization",
    "@id": "https://www.tjpodcast.org/organization/tjpodcast",
    "sameAs": "https://en.wikipedia.org/wiki/tjpodcast",
    "name": "TJPodcast",
  },
 }, {
  "@type": "ExclusiveEvent",
  "location": "US",
  "startDate": "2020-04-18T20:00",
  "endDate": "2020-04-24T20:00",
  "publishedBy": {
    "@type": "Organization",
    "@id": "https://www.tjpodcast.org/organization/tjpodcast",
    "sameAs": "https://en.wikipedia.org/wiki/tjpodcast",
    "name": "TJPodcast",
  },
 }, {
  "@type": "ExclusiveEvent",
  "location": "CA",
  "startDate": "2020-04-21T20:00",
  "endDate": "2020-04-24T20:00",
  "publishedBy": {
    "@type": "Organization",
    "@id": "https://www.tjpodcast.org/organization/tjpodcast",
    "sameAs": "https://en.wikipedia.org/wiki/tjpodcast",
    "name": "TJPodcast",
  },
 }
]

AudioObject (linkedMedia)

AudioObject se usa para proporcionar el archivo multimedia sin procesar para el episodio del podcast.

Propiedad Prioridad Tipo Descripción
@type Obligatorio Texto Siempre se establece en AudioObject.
contentUrl Obligatorio URL Es la URL del archivo multimedia.
contentSize Obligatorio Número entero El tamaño del archivo multimedia en bytes.
encodingFormat Obligatorio Texto Son los tipos de medios de IANA del archivo multimedia. Por ejemplo audio/mpeg.
duration Obligatorio Duración Es la longitud del contenido multimedia en formato de duración ISO 8601.
transcript Opcional Texto Transcripción del episodio
bitrate Opcional Texto La tasa de bits del archivo multimedia.
name Opcional Texto Es el nombre del archivo multimedia.

Ejemplo 1

"associatedMedia": {
    "@type": "AudioObject",
    "contentUrl": "https://www.tjpodcast.org/media_files/mp3/radiolab_podcast19.mp3",
    "duration": "PT5M32S",
    "contentSize": "53616000",
    "encodingFormat": "audio/mpeg",
    "name": "radiolab_podcast19.mp3",
    "transcript": "Transcript of the episode",
    "bitrate": "64Kbps"
},

ListenAction (potentialAction)

La entidad ListenAction define tus vínculos directos para reproducción y los criterios para los usuarios (por ejemplo, ubicación geográfica, cronal, acceso o estado de suscripción) a accedan al contenido.

Propiedad Prioridad Tipo Descripción
@type Obligatorio Texto Siempre se establece en ListenAction.
target Obligatorio

EntryPoint

repetido

Las especificaciones de tu vínculo directo con la plataforma compatible información. Puedes usar varios campos EntryPoint para definir diferentes vínculos directos para distintos conjuntos de plataformas.
actionAccessibilityRequirement Obligatorio

ActionAccessSpecification

repetido

Son los requisitos del usuario que se definen para acceder a esta entidad. Si hay varios ActionAccessSpecification presenta, un usuario que coincide con cualquier los criterios de especificación puedan acceder al contenido.

EntryPoint (potentialAction.target)

tabla class="fixed"> Propiedad Prioridad Tipo Descripción @type Obligatorio Texto Siempre se establece en EntryPoint. urlTemplate Obligatorio URL Es el vínculo que se usa para iniciar la reproducción de tu contenido. actionPlatform Obligatorio

Texto

repetido

Indica la plataforma en la que es válido este vínculo directo. Los siguientes valores posibles:

  • "http://schema.org/DesktopWebPlatform"
  • "http://schema.org/MobileWebPlatform"
  • "http://schema.org/AndroidPlatform"
  • "http://schema.org/AndroidTVPlatform"
  • "http://schema.org/IOSPlatform"
  • "http://schema.googleapis.com/GoogleAudioCast"
  • "http://schema.googleapis.com/GoogleVideoCast"

ActionAccessSpecification (potentialAction.actionAccessibilityRequirement)

Propiedad Prioridad Tipo Descripción
@type Obligatorio Texto Siempre se establece en ActionAccessSpecification.
category Obligatorio Texto

El tipo de requisito de acceso. Debe ser una de las siguientes opciones valores:

  • nologinrequired: La acción está disponible para el usuario. sin necesidad de realizar compras ni acceder al contenido.
  • free: La acción está disponible sin compra o suscripción paga requerida del usuario. La acción requiere usuario acceda.
  • subscription: La acción se incluye en un a tu servicio.
availabilityStarts Opcional Fecha y hora Indica la hora de inicio del período de disponibilidad. Puedes usar esta opción para controlar el momento exacto en que este contenido se puede exponer a los usuarios.
availabilityEnds Opcional Fecha y hora Indica la hora de finalización del período de disponibilidad. Puedes usar esta opción para controlar el momento exacto en el que este contenido deja de mostrarse a usuarios.
eligibleRegion Obligatorio

País

repetido

Es el país apto para esta oferta. Puedes usar esto para controlar el país o la región donde debe estar este contenido disponibles.
requiresSubscription Obligatorio si corresponde MediaSubscription El paquete de suscripción necesario para acceder a este contenido. Si el ofrece varios paquetes de suscripción, este campo es obligatorio. Si tu servicio es gratuito o si hay un solo nivel de suscripción puedes omitir este campo.

País (potentialAction.actionAccessibilityRequirement.eligibleRegion)

Propiedad Prioridad Tipo Descripción
@type Obligatorio Texto Siempre se establece en Country.
name Obligatorio Texto El Es el código de país ISO 3166-1 alfa 2.

MediaSubscription (potentialAction.actionAccessibilityRequirement.requiresSubscription)

Propiedad Prioridad Tipo Descripción
@type Obligatorio Texto Siempre se establece en MediaSubscription.
@id Obligatorio URL Es un ID único a nivel global para el paquete de suscripción en formato URI. El El ID debe ser estable y no cambiar con el tiempo. Se la trata como una fuente opaca y no tiene que ser un vínculo activo.
name Obligatorio Texto Es el nombre del paquete de suscripción. Por ejemplo: Premium y Basic.
expectsAcceptanceOf Recomendado Oferta Es la oferta asociada con la compra de la Suscripción de medios. Tú puede usarla para expresar el precio de la suscripción.

Oferta (potentialAction.actionAccessibilityRequirement.requiresSubscription.expectsAcceptanceOf)

Propiedad Prioridad Tipo Descripción
@type Obligatorio Texto Siempre se establece en Offer.
price Obligatorio Número Es el precio de la suscripción.
priceCurrency Obligatorio Texto Es la moneda del precio (en formato ISO 4217 de tres letras).
seller Recomendado Organización La organización que ofrece la suscripción o compra del acción. Usa el mismo esquema que se describe en la Organización (autor/Publicador).

Ejemplo 1

"potentialAction": {
    "@type": "ListenAction",
    "target": {
        "@type": "EntryPoint",
        "urlTemplate": "https://www.tjpodcast.org/?streamStationId=170",
        "actionPlatform": [
            "http://schema.org/DesktopWebPlatform",
            "http://schema.org/MobileWebPlatform",
            "http://schema.org/AndroidPlatform",
            "http://schema.org/AndroidTVPlatform",
            "http://schema.org/IOSPlatform",
            "http://schema.googleapis.com/GoogleAudioCast",
            "http://schema.googleapis.com/GoogleVideoCast"
        ]
    },
    "actionAccessibilityRequirement": {
        "@type": "ActionAccessSpecification",
        "category": "nologinrequired",
        "availabilityStarts": "2018-04-01T11:01:00-04:00",
        "availabilityEnds": "2018-06-30T23:59:00-04:00",
        "eligibleRegion": {
            "@type": "Country",
            "name": "US"
        }
    }
},

Ejemplo 2

"potentialAction": {
    "@type": "ListenAction",
    "target": [
        {
            "@type": "EntryPoint",
            "urlTemplate": "https://www.tjpodcast.org/?streamStationId=170",
            "actionPlatform": [
                "http://schema.org/DesktopWebPlatform",
                "http://schema.org/MobileWebPlatform",
                "http://schema.org/AndroidPlatform",
                "http://schema.org/AndroidTVPlatform",
                "http://schema.org/IOSPlatform"
            ]
        },
        {
            "@type": "EntryPoint",
            "urlTemplate": "https://www.tjpodcast.org/castlink?streamStationId=170",
            "actionPlatform": [
                "http://schema.googleapis.com/GoogleAudioCast",
                "http://schema.googleapis.com/GoogleVideoCast"
            ]
        }
    ],
    "actionAccessibilityRequirement": [
        {
            "@type": "ActionAccessSpecification",
            "category": "nologinrequired",
            "availabilityStarts": "2018-04-01T11:01:00-04:00",
            "availabilityEnds": "2018-06-30T23:59:00-04:00",
            "eligibleRegion": [
                {
                    "@type": "Country",
                    "name": "IN"
                },
                {
                    "@type": "Country",
                    "name": "GB"
                }
            ]
        },
        {
            "@type": "ActionAccessSpecification",
            "category": "Subscription",
            "requiresSubscription": {
                "@type": "MediaSubscription",
                "@id": "http://www.example.com/packages/basic-pack",
                "name": "Basic Pack",
                "expectsAcceptanceOf": {
                    "@type": "Offer",
                    "price": 8.99,
                    "priceCurrency": "USD"
                }
            },
            "availabilityStarts": "2018-04-01T11:01:00-04:00",
            "availabilityEnds": "2018-06-30T23:59:00-04:00",
            "eligibleRegion": {
                "@type": "Country",
                "name": "US"
            }
        }
    ]
},

Apéndice

Ejemplo completo

{
    "@context": "http://schema.org",
    "@type": "DataFeed",
    "dateModified": "2018-09-10T13:58:26.892Z",
    "dataFeedElement": [
        {
            "@context": [
                "http://schema.googleapis.com",
                {
                    "@language": "en"
                }
            ],
            "@type": "PodcastSeries",
            "@id": "http://www.tjpodcast.org/series?id=2",
            "url": "http://www.tjpodcast.org/series?id=2",
            "name": "Radiolab",
            "description": "A two-time Peabody Award-winner...",
            "alternativeHeadline": "Radiolab - Powered by WNYC",
            "sameAs": "https://en.wikipedia.org/wiki/Radiolab",
            "image": {
                "@type": "ImageObject",
                "height": "100",
                "width": "800",
                "contentUrl": "http://www.tjpodcast.org/img/2.jpg"
            },
            "logo": {
                "@type": "ImageObject",
                "height": "100",
                "width": "800",
                "contentUrl": "http://www.tjpodcast.org/logo/2/1.jpg"
            },
            "keywords": [
                "Science",
                "Technology",
                "Philosophy",
                "Education"
            ],
            "author": [
                {
                    "@type": "Person",
                    "@id": "https://www.tjpodcast.org/author/jad_abumrad",
                    "name": "Jad Abumrad",
                    "sameAs": "https://en.wikipedia.org/wiki/Jad_Abumrad"
                },
                {
                    "@type": "Person",
                    "@id": "https://www.tjpodcast.org/author/robert_krulwich",
                    "name": "Robert Krulwich",
                    "sameAs": "https://en.wikipedia.org/wiki/Robert_Krulwich"
                }
            ],
            "publisher": {
                "@type": "Organization",
                "name": "WNYC",
                "@id": "https://www.tjpodcast.org/network/wnyc_studios",
                "sameAs": "https://en.wikipedia.org/wiki/WNYC_Studios"
            },
            "isFamilyFriendly": "True",
            "inLanguage": "en",
            "genre": [
                "Science & Medicine",
                "Natural Sciences"
            ],
            "endDate": "2017-12-22T08:59:00",
            "rssFeed": "http://feeds.wnyc.org/radiolab",
            "potentialAction": {
                "@type": "ListenAction",
                "target": {
                    "@type": "EntryPoint",
                    "urlTemplate": "https://www.tjpodcast.org/?streamSeriesId=2",
                    "actionPlatform": [
                        "http://schema.org/DesktopWebPlatform",
                        "http://schema.org/MobileWebPlatform",
                        "http://schema.googleapis.com/GoogleAudioCast",
                        "http://schema.googleapis.com/GoogleVideoCast"
                    ]
                },
                "actionAccessibilityRequirement": {
                    "@type": "ActionAccessSpecification",
                    "category": "nologinrequired",
                    "availabilityStarts": "2018-04-01T11:01:00-04:00",
                    "availabilityEnds": "2019-12-30T23:59:00-04:00",
                    "eligibleRegion": {
                        "@type": "Country",
                        "name": "FR"
                    }
                }
            },
            "popularityScore": {
                "@type": "PopularityScoreSpecification",
                "value": 4.2
            }
        },
        {
            "@context": [
                "http://schema.googleapis.com",
                {
                    "@language": "en"
                }
            ],
            "@type": "PodcastEpisode",
            "@id": "http://www.tjpodcast.org/episode?id=1",
            "url": "http://www.tjpodcast.org/episode?id=1",
            "name": "A Clockwork Miracle",
            "description": "As legend goes, in 1562, King Philip II...",
            "sameAs": "https://www.wnycstudios.org/story/radiolab-clockwork-miracle",
            "image": {
                "@type": "ImageObject",
                "height": "100",
                "width": "800",
                "contentUrl": "http://www.tjpodcast.org/img/2/1.jpg"
            },
            "keywords": [
                "Education",
                "Philosophy",
                "Science",
            ],
            "partOfSeries": {
                "@type": "PodcastSeries",
                "@id": "http://www.tjpodcast.org/series?id=2",
                "name": "Radiolab",
                "sameAs": "https://en.wikipedia.org/wiki/Radiolab",
            },
            "episodeNumber": 101,
            "inLanguage": "en",
            "author": [
                {
                    "@type": "Person",
                    "@id": "https://www.tjpodcast.org/author/jad_abumrad",
                    "name": "Jad Abumrad",
                    "sameAs": "https://en.wikipedia.org/wiki/Jad_Abumrad"
                },
                {
                    "@type": "Person",
                    "@id": "https://www.tjpodcast.org/author/robert_krulwich",
                    "name": "Robert Krulwich",
                    "sameAs": "https://en.wikipedia.org/wiki/Robert_Krulwich"
                }
            ],
            "publisher": {
                "@type": "Organization",
                "name": "WNYC",
                "@id": "https://www.tjpodcast.org/network/wnyc_studios",
                "sameAs": "https://en.wikipedia.org/wiki/WNYC_Studios"
            },
            "isFamilyFriendly": "True",
            "genre": [
                "Science",
                "Philosophy",
                "Fiction"
            ],
            "datePublished": "2018-12-27T23:23:00Z",
            "timeRequired": "PT22M",
            "associatedMedia": {
                "@type": "AudioObject",
                "contentUrl": "https://www.tjpodcast.org/media_files/mp3/radiolab_podcast19.mp3",
                "duration": "PT21M45S",
                "contentSize": "53616000",
                "encodingFormat": "audio/mpeg",
                "transcript": "Transcript of the episode",
                "bitrate": "64Kbps"
            },
            "potentialAction": {
                "@type": "ListenAction",
                "target": {
                    "@type": "EntryPoint",
                    "urlTemplate": "https://www.tjpodcast.org/?streamEpisodeId=1",
                    "actionPlatform": [
                        "http://schema.org/DesktopWebPlatform",
                        "http://schema.org/MobileWebPlatform",
                        "http://schema.googleapis.com/GoogleAudioCast",
                        "http://schema.googleapis.com/GoogleVideoCast"
                    ]
                },
                "actionAccessibilityRequirement": {
                    "@type": "ActionAccessSpecification",
                    "category": "nologinrequired",
                    "availabilityStarts": "2018-04-01T11:01:00-04:00",
                    "availabilityEnds": "2019-12-30T23:59:00-04:00",
                    "eligibleRegion": {
                        "@type": "Country",
                        "name": "FR"
                    }
                }
            },
            "popularityScore": {
                "@type": "PopularityScoreSpecification",
                "value": 3.8
            },
            "identifier": [
                {
                    "@type": "PropertyValue",
                    "propertyID": "GUID",
                    "value": "53ff386e-e768-40b5-8854-1b7415826ded"
                }
            ]
        }
    ],
    "actor": [
        {
            "@type": "PerformanceRole",
            "actor": {
                "@type": "Person",
                "@id": "https://www.tjpodcast.org/person/Roman",
                "name": {
                    "@language": "en",
                    "@value": "Roman Mars"
                },
                "roleName": "Host",
                "sameAs": "https://en.wikipedia.org/wiki/Roman"
            },
            "actor": {
                "@type": "Person",
                "@id": "https://www.tjpodcast.org/person/guest",
                "name": {
                    "@language": "en",
                    "@value": "Kurt Kohlstedt"
                },
                "roleName": "Guest"
            }
        }
    ],
    "releasedEvent": [
        {
            "@type": "FeaturedEvent",
            "location": "US",
            "startDate": "2020-04-18T20:00",
            "endDate": "2020-05-21T20:00",
            "publishedBy": {
                "@type": "Organization",
                "@id": "https://www.tjpodcast.org/organization/tjpodcast",
                "sameAs": "https://en.wikipedia.org/wiki/tjpodcast",
                "name": "TJPodcast"
            }
        },
        {
            "@type": "ExclusiveEvent",
            "location": "US",
            "startDate": "2020-04-18T20:00",
            "endDate": "2020-04-24T20:00",
            "publishedBy": {
                "@type": "Organization",
                "@id": "https://www.tjpodcast.org/organization/tjpodcast",
                "sameAs": "https://en.wikipedia.org/wiki/tjpodcast",
                "name": "TJPodcast"
            }
        },
        {
            "@type": "ExclusiveEvent",
            "location": "CA",
            "startDate": "2020-04-21T20:00",
            "endDate": "2020-04-24T20:00",
            "publishedBy": {
                "@type": "Organization",
                "@id": "https://www.tjpodcast.org/organization/tjpodcast",
                "sameAs": "https://en.wikipedia.org/wiki/tjpodcast",
                "name": "TJPodcast"
            }
        }
    ]
}