Cette section fournit des informations sur les propriétés de balisage de contenu pour les podcasts.
Spécification PodcastSeries
PodcastSeries
représente une série de podcasts, également appelée "émission".
Propriété | Priorité | Type | Description |
---|---|---|---|
@context |
Obligatoire | Texte | Contexte schema.org Toujours défini sur [http://schema.googleapis.com,{@language}:xx}] , où xx doit figurer dans le code de langue. Cette valeur définit la langue utilisée par défaut pour les valeurs de texte de l'entité. |
@type |
Obligatoire | Texte | Toujours défini sur PodcastSeries . |
@id |
Obligatoire | Texte | Identifiant unique global de la série de podcasts, au format URI. Cet identifiant doit être stable et immuable dans le temps. Il est traité comme une chaîne opaque et ne doit pas nécessairement s'agir d'un lien fonctionnel. Le domaine utilisé pour la valeur @id doit appartenir à votre organisation.
|
url |
Obligatoire | Texte | URL canonique de votre site Web sur laquelle la série de podcasts est présentée ou décrite. Il doit être unique. Ce lien permet de faire le rapprochement entre le contenu de votre flux et celui des bases de données de Google. Pour la lecture, utilisez target.urlTemplate , comme indiqué dans la section ListenAction de la documentation. |
name |
Obligatoire | Texte | Nom de la série de podcasts. N'indiquez qu'un seul nom par langue. Utilisez un tableau pour marquer la description dans plusieurs langues. Consultez l'exemple "Plusieurs pays et langues". |
description |
Obligatoire | Texte | Synopsis de la série de podcasts. Utilisez un tableau pour marquer la description dans plusieurs langues. Consultez l' exemple "Plusieurs pays et langues". |
alternativeHeadline |
Optional | Texte | Sous-titres de la série de podcasts. |
author |
Obligatoire | repeated |
Personne ou groupe qui développe ou diffuse l'émission. Fait souvent référence à l'hôte. Pour obtenir des exemples et plus d'informations, consultez Organisation, Personne (auteur/éditeur). |
publisher |
Optional | repeated |
Groupe ou chaîne d'origine responsable de la publication de l'émission. Fait souvent référence à une organisation chargée de publier/produire plusieurs podcasts. Pour obtenir des exemples et des informations, consultez Organisation, personne (auteur/éditeur). Ce champ est fortement recommandé pour la déambiguïsation et doit être fourni dans la mesure du possible. |
actor |
Optional | repeated |
Acteur du podcast. Pour en savoir plus et obtenir des exemples, consultez la section Acteur (hôte/invité) . |
logo |
Optional | repeated |
Image du logo de la série. Fournissez-le sous la forme d'un ImageObject entièrement décrit. Fournissez la résolution la plus élevée disponible. Les formats JPEG ou PNG sont à privilégier. Pour en savoir plus et obtenir des exemples, consultez la section ImageObject (logo). |
image |
Obligatoire | repeated |
Image de l'illustration de la série. Fournissez-le sous la forme d'un ImageObject entièrement décrit. Fournissez la résolution la plus élevée disponible. Nous vous recommandons d'utiliser les formats JPEG ou PNG. Pour en savoir plus et obtenir des exemples, consultez la section ImageObject (logo). |
isFamilyFriendly |
Obligatoire | Booléen | Indique si ce contenu est adapté aux familles (c'est-à-dire s'il convient à tous les membres d'une famille, y compris aux enfants). Les produits Google peuvent utiliser isFamilyFriendly pour déterminer le contenu à lire. La valeur doit être true ou false . |
inLanguage |
Obligatoire | Texte | Langue du contenu du podcast au format ISO 639-1. Cette valeur peut être utilisée pour répondre aux requêtes des utilisateurs qui demandent des contenus dans une langue spécifique. |
genre |
Obligatoire | Texte repeated |
Catégorie ou genre de la série de podcasts. Par exemple, vous pouvez suivre les catégories de podcasts standards. |
endDate |
Optional | Date | Date de sortie de l'épisode final de la série de podcasts. N'incluez ce champ que lorsque la série est déjà terminée. |
rssFeed |
Obligatoire | URL | URL du flux RSS de la série de podcasts. |
potentialAction |
Obligatoire | ListenAction |
Action à déclencher pour que les utilisateurs puissent écouter le contenu. Pour en savoir plus, consultez ListenAction. |
popularityScore
| Optional | PopularityScoreSpecification |
Un score de popularité pour déterminer la priorité de diffusion en cas de plusieurs candidats. Pour en savoir plus et obtenir des exemples, consultez la section
PopularityScoreSpecification (popularityScore) . |
keywords |
Optional | Texte repeated |
Liste des mots clés qui seront associés à la série de podcasts. Ces mots clés peuvent être utilisés pour élargir les requêtes des utilisateurs pouvant déclencher cette série de podcasts. (noms des invités, sujets abordés, etc.) |
sameAs |
Optional | URL | URL d'une page Web de référence tierce (hors de votre domaine) qui indique sans ambiguïté l'identité de l'article. Cette page Web permet de lever l'ambiguïté lorsqu'il existe plusieurs séries similaires. (par exemple, une page Wikipédia ou la page d'accueil de la série de podcasts). Ce champ est vivement recommandé pour clarifier la série. |
releasedEvent |
Optional | PublicationEvent , ou des sous-types plus spécifiques : FeaturedEvent ou ExclusiveEvent |
Événement marquant la publication ou la sortie de la série de podcasts. Un événement de publication peut indiquer la publication initiale d'un podcast par un éditeur. Les types plus spécialisés peuvent être utilisés pour indiquer l'exclusivité ou la mise en avant de la publication. Pour en savoir plus et obtenir des exemples, consultez la section PublicationEvent, FeaturedEvent, ExclusiveEvent (releasedEvent). Notez que si vous marquez une série comme exclusive ou mise en avant, cela implique que tous les épisodes de la série sont exclusifs ou mis en avant. |
countryOfOrigin |
Optional | Pays | Pays des bureaux principaux de la société de production ou de la personne responsable du podcast. |
Spécification PodcastEpisode
PodcastEpisode
est la représentation schema.org d'un épisode dans un PodcastSeries
.
Propriété | Priorité | Type | Description |
---|---|---|---|
@context |
Obligatoire | Texte | Contexte schema.org Toujours défini sur [http://schema.googleapis.com,{@language:xx}] , où xx est le code de langue. Cette valeur définit la langue de caractères par défaut utilisée pour les valeurs de texte du flux. |
@type |
Obligatoire | Texte | Toujours défini sur PodcastEpisode . |
@id |
Obligatoire | Texte | Identifiant unique global de l'épisode de podcast, au format URI. Cet identifiant doit être stable et immuable dans le temps. Il est traité comme une chaîne opaque et ne doit pas nécessairement s'agir d'un lien fonctionnel. Votre organisation doit être propriétaire du domaine utilisé pour la valeur @id . |
url |
Obligatoire | Texte | URL canonique de votre site Web sur laquelle vous présentez ou décrivez l'épisode de podcast. Cette valeur doit être unique. Ce lien permet de faire le rapprochement entre le contenu de votre flux et celui des bases de données de Google. Pour la lecture, l'target.urlTemplate décrit dans la section ListenAction de la documentation est utilisé. |
name
| Obligatoire | Texte | Nom de l'épisode de podcast. Il ne doit y avoir qu'un seul nom par langue. Utilisez un tableau pour mettre en forme la description dans plusieurs langues. Consultez l'exemple "Plusieurs pays et langues". |
description |
Obligatoire | Texte | Description de l'épisode de podcast. |
alternativeHeadline |
Obligatoire | Texte | Sous-titre de l'épisode de podcast. |
author |
Obligatoire | repeated |
Personne ou groupe qui développe ou diffuse l'épisode. Cette valeur fait souvent référence à l'hôte. Si l'auteur est le même que l'émission, vous pouvez réutiliser les informations de l'entité PodcastSeries . Pour obtenir des exemples et plus d'informations, consultez Organisation, Personne (auteur/éditeur). |
publisher |
Obligatoire | repeated |
Groupe ou chaîne d'origine responsable de la publication de l'émission. Fait souvent référence à une organisation responsable de la publication ou de la production de plusieurs podcasts. Pour en savoir plus et obtenir des exemples, consultez Organisation, Personne (auteur/éditeur). Ce champ est fortement recommandé pour la déambiguïsation. Nous vous recommandons de le définir dans la mesure du possible. |
actor |
Obligatoire | repeated |
Acteur du podcast. Pour en savoir plus et obtenir des exemples, consultez la section Acteur (hôte/invité). |
datePublished |
Obligatoire | Date/Heure | Date et heure de sortie de l'épisode de podcast. Cette valeur permet de trier la séquence des épisodes et de la dissocier. |
episodeNumber |
Obligatoire | Entier | Numéro de l'épisode. |
partOfSeries |
Obligatoire | PodcastSeries | PodcastSeries dans lequel se trouve cet épisode de podcast. Pour en savoir plus et obtenir des exemples, consultez PodcastSeries(partOfSeries). |
partOfSeason |
Optional | PodcastSeason | Pour les séries multi-saisons, cette propriété fournit les informations sur la saison, ainsi que le numéro et le nom de la saison. Pour en savoir plus et obtenir des exemples, consultez PodcastSeason(partOfSeason). |
timeRequired |
Obligatoire | Durée | Durée de l'épisode au format ISO 8601. |
image |
Optional | repeated |
Image de la série. Il doit s'agir d'un ImageObject entièrement décrit. Fournissez la résolution la plus élevée disponible. Les formats JPEG ou PNG sont à privilégier. Pour en savoir plus et obtenir des exemples, consultez la section ImageObject (logo). |
isFamilyFriendly |
Obligatoire | Booléen | Indique si ce contenu est adapté aux familles (c'est-à-dire s'il convient à tous les membres d'une famille, y compris aux enfants). Les produits Google peuvent utiliser isFamilyFriendly pour déterminer le contenu à lire.
La valeur doit être true ou false . |
inLanguage |
Obligatoire | Texte | Langue du contenu de l'épisode de podcast au format ISO 639-1. Utilisez cette valeur pour répondre aux requêtes des utilisateurs qui demandent des contenus dans une langue spécifique. Si le contenu est disponible dans plusieurs langues, n'indiquez qu'une seule langue principale. |
genre |
Obligatoire | Texte repeated |
Catégorie ou genre de la série de podcasts. Par exemple, vous pouvez suivre les catégories de podcasts standards. |
associatedMedia |
Optional | AudioObject | Fichier audio de l'épisode de podcast. Pour en savoir plus et obtenir des exemples, consultez AudioObject(associatedMedia). |
potentialAction |
Obligatoire | ListenAction | Action à déclencher pour que les utilisateurs puissent écouter le contenu. Pour en savoir plus, consultez la section ListenAction. |
popularityScore |
Optional | PopularityScoreSpecification | Un score de popularité pour déterminer la priorité de diffusion en cas de plusieurs candidats. Pour en savoir plus et obtenir des exemples, consultez la section PopularityScoreSpecification. |
keywords |
Optional | Texte repeated |
Liste des mots clés associés à la série de podcasts. Ces mots clés peuvent être utilisés pour élargir les requêtes des utilisateurs pouvant déclencher cet épisode de podcast. Par exemple, news , sports ou history . |
identifier |
Obligatoire | PropertyValue repeated |
Pour Consultez la section PropertyValue (identifier) pour obtenir un exemple. |
sameAs |
Optional | URL | URL d'une page Web de référence tierce (hors de votre domaine) qui indique sans ambiguïté l'identité de l'article. Google utilise cette page Web pour la déambiguïsation lorsqu'il existe plusieurs séries similaires. (par exemple, une page Wikipédia ou la page d'accueil des épisodes de podcast). Notez que la page de référence au niveau de la série ne doit pas être fournie ici. Nous recommandons vivement d'utiliser ce champ pour distinguer l'épisode. |
releasedEvent |
Optional | PublicationEvent ou des sous-types plus spécifiques : FeaturedEvent ou ExclusiveEvent | Événement marquant la publication ou la sortie de l'épisode de podcast. Un événement de publication peut indiquer la publication initiale d'un épisode de podcast par un éditeur. Les sous-types plus spécifiques peuvent indiquer l'exclusivité ou la mise en avant de la publication. Pour en savoir plus et obtenir des exemples, consultez la section PublicationEvent, FeaturedEvent, ExclusiveEvent (releasedEvent). Notez que si vous marquez une série comme exclusive ou mise en avant ci-dessus, cela implique que tous les épisodes de la série sont exclusifs ou mis en avant. Nous vous recommandons de marquer ces propriétés au niveau le plus précis possible. |
countryOfOrigin |
Optional | Pays | Pays des bureaux principaux de la société de production ou de la personne responsable du podcast. |
PodcastSeries (partOfSeries)
Utilisez partOfSeries
pour établir la relation entre un PodcastEpisode
et son PodcastSeries
parent. Étant donné que tous les détails de PodcastSeries
sont décrits dans l'entité PodcastSeries
distincte, vous n'avez pas besoin de fournir tous les détails dans partOfSeries
. Vous n'avez besoin de fournir que les propriétés suivantes:
Propriété | Priorité | Type | Description |
---|---|---|---|
@type |
Obligatoire | Texte | Toujours défini sur PodcastSeries . |
@id |
Obligatoire | URL | Identifiant unique global de la série au format URI. L'ID doit correspondre à celui de l'entité PodcastSeries complète dans votre flux. |
name |
Obligatoire | Texte | Nom de la série de podcasts.
|
Exemple 1
"partOfSeries": {
"@type": "PodcastSeries",
"@id": "http://www.tjpodcast.org/series?id=1",
"name": "Radiolab"
},
PodcastSeason (partOfSeason)
PodcastSeason
représente les informations sur la saison d'un PodcastEpisode
, en particulier le numéro de saison. Vous n'avez besoin de cette propriété que lorsque la série de podcasts comporte plusieurs saisons.
Propriété | Priorité | Type | Description |
---|---|---|---|
@type |
Obligatoire | Texte | Toujours défini sur PodcastSeason |
@id |
Obligatoire | URL | Identifiant global unique de la saison au format URI. Cet identifiant doit être stable et immuable dans le temps. Il est traité comme une chaîne opaque et ne doit pas nécessairement s'agir d'un lien fonctionnel. |
seasonNumber |
Obligatoire | Entier | Numéro de la saison de la série de podcasts. |
name |
Optional | Texte | Nom de la saison du podcast. |
Exemple 1
"partOfSeason": {
"@type": "PodcastSeason",
"@id": "http://www.tjpodcast.org/seriesx/season?id=1",
"seasonNumber": 1,
"name": "Radiolab Season 1"
},
Organisation, personne (auteur ou éditeur)
Propriété | Priorité | Type | Description |
---|---|---|---|
@type |
Obligatoire | Texte | Toujours défini sur Organization ou Person . |
@id |
Obligatoire | URL | Identifiant unique global de l'organisation ou de la personne, au format URI. Cet identifiant doit être stable et immuable dans le temps. Il est traité comme une chaîne opaque et ne doit pas nécessairement s'agir d'un lien fonctionnel. |
name |
Obligatoire | Texte | Nom de l'organisation ou de la personne. |
sameAs |
Optional | URL | URL d'une page Web de référence tierce (hors de votre domaine) qui indique sans ambiguïté l'identité de l'article. Google utilise cette page Web pour la déambiguïsation lorsqu'il existe plusieurs séries similaires. Il peut s'agir, par exemple, d'une page Wikipédia d'une organisation ou de son site Web officiel. |
Exemple 1
"author": {
"@type": "Organization",
"@id": "https://www.tjpodcast.org/organization/wnyc",
"sameAs": "https://en.wikipedia.org/wiki/WNYC",
"name": "WNYC"
},
Exemple 2
"author": {
"@type": "Person",
"@id": "https://www.tjpodcast.org/person/jad_abumrad",
"sameAs": "https://en.wikipedia.org/wiki/Jad_Abumrad",
"name": "Jad Abumrad"
},
Acteur (hôte ou invité)
Propriété | Priorité | Type | Description |
---|---|---|---|
@type |
Obligatoire | Texte | Toujours défini sur Organization ou Person . |
@id |
Obligatoire | URL | Identifiant unique global de l'organisation ou de la personne, au format URI. Cet identifiant doit être stable et immuable dans le temps. Il est traité comme une chaîne opaque et ne doit pas nécessairement s'agir d'un lien fonctionnel. |
name |
Obligatoire | Texte | Nom de l'organisation ou de la personne. |
roleName |
Obligatoire | Texte | "Host" ou "Guest" (Hôte ou Invité). |
sameAs |
Optional | URL | URL d'une page Web de référence tierce (hors de votre domaine) qui indique sans ambiguïté l'identité de l'article. Google utilise cette page Web pour la déambiguïsation lorsqu'il existe plusieurs séries similaires. Il peut s'agir, par exemple, d'une page Wikipédia d'une organisation ou de son site Web officiel. |
Exemple 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 (logo ou image)
ImageObject
permet de fournir le logo ou l'illustration du contenu.
Propriété | Priorité | Type | Description |
---|---|---|---|
@type |
Obligatoire | Texte | Toujours défini sur ImageObject . |
height |
Optional | Entier | Hauteur de l'image en pixels. |
width |
Optional | Entier | Largeur de l'image en pixels. |
contentUrl |
Obligatoire | URL | URL de l'image. |
regionsAllowed |
Optional | Pays repeated |
Pays dans lesquels le contenu multimédia est autorisé:
|
Pays (image.regionsAllowed)
Propriété | Priorité | Type | Description |
---|---|---|---|
@type |
Obligatoire | Texte | Toujours défini sur Country. |
name |
Obligatoire | Texte | Code pays
ISO 3166-1 alpha-2. Par exemple, GB , US . |
Exemple 1
"logo": {
"@type": "ImageObject",
"height": "100",
"width": "800",
"contentUrl": "http://www.foo.com/img/67890.jpg",
},
Exemple 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 (identifier)
Si vous disposez de GUID pour votre contenu, vous pouvez les fournir avec le champ identifier
pour améliorer la précision de la mise en correspondance de votre contenu par Google. Notez que le GUID est obligatoire pour PodcastEpisode
.
Il doit être différent du champ @id
de l'épisode (et ne pas se trouver dans votre domaine) et représenter l'épisode source de manière globale et unique au fil du temps, pour toutes les sources.
Propriété | Priorité | Type | Description |
---|---|---|---|
@type |
Obligatoire | Texte | Toujours défini sur "PropertyValue". |
propertyID |
Obligatoire | Texte | Toujours défini sur GUID . |
value |
Obligatoire | Texte | GUID de la série ou de l'épisode. |
Exemple 1
"identifier": {
"@type": "PropertyValue",
"propertyID": "GUID",
"value": "50204fe4-bc68-4b34-aae6-e73c700cc5ca"
},
PopularityScoreSpecification (popularityScore)
popularityScore
peut aider les utilisateurs à accéder au contenu le plus approprié, lorsque les critères de la requête de l'utilisateur correspondent à plusieurs entités de votre flux. Le contenu ayant le score de popularité le plus élevé disponible pour la région de l'utilisateur est diffusé lorsque cette valeur est disponible. Pour tous les contenus qui ne comportent pas ce champ, le score de popularité est défini par défaut sur 0
. La comparaison des scores s'effectue dans le cadre de votre catalogue complet. Assurez-vous donc que l'échelle est cohérente dans tous vos flux.
Propriété | Priorité | Type | Description |
---|---|---|---|
@type |
Obligatoire | Texte | Toujours défini sur PopularityScoreSpecification . |
value |
Obligatoire | Numérique | Valeur numérique positive à comparer aux autres entités de votre catalogue pour déterminer la priorité de diffusion. Plus le nombre est élevé, plus la popularité est élevée. |
eligibleRegion |
Optional | Pays ou texte repeated |
Une région ou une liste de régions auxquelles ce score de popularité s'applique. Si le score de popularité s'applique globalement, utilisez Si vous devez lister des régions spécifiques, veuillez utiliser le type "Pays". Si vous laissez ce champ vide, |
Pays (popularityScore.eligibleRegion)
Propriété | Priorité | Type | Description |
---|---|---|---|
@type |
Obligatoire | Texte | Toujours défini sur Country . |
name |
Obligatoire | Texte | Code pays
ISO 3166-1 alpha-2. Par exemple, GB , US . |
Exemple 1
"popularityScore": {
"@type": "PopularityScoreSpecification",
"value": 4.3,
"eligibleRegion": "Earth"
},
Exemple 2
"popularityScore": {
"@type": "PopularityScoreSpecification",
"value": 2,
"eligibleRegion": {
"@type": "Country",
"name": "US"
}
},
Exemple 3
"popularityScore": {
"@type": "PopularityScoreSpecification",
"value": 101,
"eligibleRegion": [
{
"@type": "Country",
"name": "US"
},
{
"@type": "Country",
"name": "GB"
}
]
},
PublicationEvent, FeaturedEvent, ExclusiveEvent (releasedEvent)
- PublicationEvent
- Utilisez cet objet pour représenter la date et le lieu de publication d'une émission ou d'un épisode (également appelé "date de sortie" d'une série ou d'un épisode).
En outre, le champ
publishedBy
indique l'entité de publication ou de distribution de la série ou de l'épisode de podcast. - ExclusiveEvent
- Utilisez cet objet pour indiquer que le fournisseur dispose de droits de distribution exclusifs pour le podcast. L'exclusivité peut être spécifique à une région et limitée dans le temps. Elle doit inclure le champ "organisation" qui pointe vers le fournisseur exclusif du contenu.
- FeaturedEvent
- Utilisez cet objet pour indiquer que le fournisseur propose le podcast aux consommateurs (par exemple, en tant que "original").
- "Originals" est différent de "Exclusif"
- Le terme "originaux (sélection)" désigne souvent des droits exclusifs sur une entité donnée, ce qui surcharge le terme. Par conséquent, le sens souhaité doit être divisé en deux catégories ci-dessus. Il est possible qu'une entité d'origine soit également exclusive. Dans ce cas,
releasedEvent
peut prendre un tableau contenant les deux types d'événements sur la même entité.
Notez que, bien que l'exclusivité ou la mise en avant puissent avoir des significations similaires dans le catalogue d'un fournisseur, PublicationEvent
s'applique plus généralement pour permettre la démarcation des entités et fournir des métadonnées supplémentaires à leur sujet, telles que la date de sortie d'une série ou d'un épisode.
Propriété | Priorité | Type | Description |
---|---|---|---|
@type |
Obligatoire | Texte | Doit toujours être défini sur PublicationEvent , ExclusiveEvent ou FeaturedEvent . |
location |
Obligatoire | Pays | Région dans laquelle l'événement de publication se produit. Vous pouvez également l'utiliser pour représenter les restrictions d'exclusivité et de distribution de l'entité. Utilisez les codes pays ISO 3166. Si vous devez appliquer une sémantique globale, définissez la valeur sur EARTH . Définissez explicitement location sur EARTH , au cas où les restrictions spécifiques aux paramètres régionaux ne s'appliqueraient pas. |
startDate |
Recommandé (Obligatoire pour ExclusiveEvent) | Date ou DateTime | Date de début de la publication des entités. Dans le cas de PublicationEvent , il s'agit de la date de sortie initiale de cette entité. Dans le cas de ExclusiveEvent ou FeaturedEvent , il s'agit de la date de début de l'exclusivité ou de la mise en avant de l'entité. |
endDate |
Recommandé (Obligatoire pour ExclusiveEvent) | Date ou DateTime | Date de fin de la publication des entités. Dans le cas de PublicationEvent , il s'agit de la date de publication finale de cette entité. Dans le cas de ExclusiveEvent ou FeaturedEvent , il s'agit de la date de fin de l'exclusivité ou de la mise en avant de l'entité. |
publishedBy |
Obligatoire | Organisation ou personne | Entité Organization ou Person qui publie cette entité et s'applique à cet événement de publication. Veuillez utiliser le même schéma que celui décrit dans la section Organisation (auteur/Éditeur). |
Exemple 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",
},
},
]
Exemple 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 (associatedMedia)
AudioObject
permet de fournir le fichier multimédia brut de l'épisode de podcast.
Propriété | Priorité | Type | Description |
---|---|---|---|
@type |
Obligatoire | Texte | Toujours défini sur AudioObject . |
contentUrl |
Obligatoire | URL | URL du fichier multimédia. |
contentSize |
Obligatoire | Entier | Taille du fichier multimédia en octets. |
encodingFormat |
Obligatoire | Texte | Types de contenu multimédia IANA du fichier multimédia. Par exemple, audio/mpeg . |
duration |
Obligatoire | Durée | Durée du contenu multimédia au format ISO 8601. |
transcript |
Optional | Texte | Transcription de l'épisode. |
bitrate |
Optional | Texte | Débit du fichier multimédia. |
name |
Optional | Texte | Nom du fichier multimédia. |
Exemple 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)
L'entité ListenAction
définit vos liens profonds pour la lecture et les critères permettant aux utilisateurs (par exemple, géo, chronal, connexion ou état de l'abonnement) d'accéder au contenu.
Propriété | Priorité | Type | Description |
---|---|---|---|
@type |
Obligatoire | Texte | Toujours défini sur ListenAction . |
target |
Obligatoire |
repeated |
Spécifications de votre lien profond avec les informations sur la plate-forme compatible. Vous pouvez utiliser plusieurs champs EntryPoint pour définir différents liens profonds pour différents ensembles de plates-formes. |
actionAccessibilityRequirement |
Obligatoire |
repeated |
Définition des conditions requises pour accéder à cette entité. Si plusieurs ActionAccessSpecification sont présentes, un utilisateur qui remplit l'un des critères de spécification peut accéder au contenu. |
EntryPoint (potentialAction.target)
@type
Obligatoire
Texte
Toujours défini sur EntryPoint
.
urlTemplate
Obligatoire
URL
Lien utilisé pour lancer la lecture de votre contenu.
actionPlatform
Obligatoire
Texte
repeated
Plate-forme pour laquelle ce lien profond est valide. Les valeurs suivantes sont possibles:
"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)
Propriété | Priorité | Type | Description |
---|---|---|---|
@type |
Obligatoire | Texte | Toujours défini sur ActionAccessSpecification . |
category |
Obligatoire | Texte |
Type d'exigence d'accès. Il doit s'agir de l'une des valeurs suivantes:
|
availabilityStarts |
Optional | Date/Heure | Heure de début de la période de disponibilité. Vous pouvez l'utiliser pour contrôler l'heure exacte à laquelle ce contenu peut être présenté aux utilisateurs. |
availabilityEnds |
Optional | Date/Heure | Heure de fin de la période de disponibilité. Vous pouvez l'utiliser pour contrôler l'heure exacte à laquelle ce contenu ne sera plus présenté aux utilisateurs. |
eligibleRegion |
Obligatoire | Pays repeated |
Pays éligible à cette offre. Vous pouvez l'utiliser pour contrôler le pays ou la région où ce contenu doit être disponible. |
requiresSubscription |
Obligatoire, si applicable | MediaSubscription | Le forfait d'abonnement requis pour accéder à ce contenu Si votre service propose plusieurs forfaits d'abonnement, ce champ est obligatoire. Si votre service est sans frais ou s'il n'existe qu'un seul niveau d'abonnement, vous pouvez ignorer ce champ. |
Pays (potentialAction.actionAccessibilityRequirement.eligibleRegion)
Propriété | Priorité | Type | Description |
---|---|---|---|
@type |
Obligatoire | Texte | Toujours défini sur Country . |
name |
Obligatoire | Texte | Code pays ISO 3166-1 alpha-2. |
MediaSubscription (potentialAction.actionAccessibilityRequirement.requiresSubscription)
Propriété | Priorité | Type | Description |
---|---|---|---|
@type |
Obligatoire | Texte | Toujours défini sur MediaSubscription . |
@id |
Obligatoire | URL | Identifiant unique global du package d'abonnement au format URI. Cet identifiant doit être stable et immuable dans le temps. Il est traité comme une chaîne opaque et ne doit pas nécessairement s'agir d'un lien fonctionnel. |
name |
Obligatoire | Texte | Nom du package d'abonnement. Par exemple, Premium , Basic . |
expectsAcceptanceOf |
Recommandé | Offre | Offre associée à l'achat de l'abonnement multimédia. Vous pouvez l'utiliser pour indiquer le prix de l'abonnement. |
Offre (potentialAction.actionAccessibilityRequirement.requiresSubscription.expectsAcceptanceOf)
Propriété | Priorité | Type | Description |
---|---|---|---|
@type |
Obligatoire | Texte | Toujours défini sur Offer . |
price |
Obligatoire | Nombre | Prix de l'abonnement. |
priceCurrency |
Obligatoire | Texte | Devise (au format ISO 4217 à trois lettres) du prix. |
seller |
Recommandé | Organisation | Organisation qui propose l'abonnement ou l'achat de l'action. Utilisez le même schéma que celui décrit dans la section Organisation (auteur/Éditeur). |
Exemple 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"
}
}
},
Exemple 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"
}
}
]
},
Annexe
Exemple complet
{
"@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"
}
}
]
}