Pour certains types d'entités, vous devez établir la relation entre les contenus de votre flux. Ces informations aident Google à afficher la bonne structure et l'ordre appropriés de vos contenus auprès des utilisateurs, et à identifier le bon contenu lorsqu'une requête est ambiguë.
Sélectionnez le type de contenu que vous fournissez:
Série TV
Si vous êtes un fournisseur de programmes TV, vous devez ajouter les types d'entités TVEpisode, TVSeason et TVSeries dans votre flux de catalogue multimédia. Vous pouvez trouver les définitions de ces entités dans la section Comprendre les types d'entités disponibles en filtrant sur ces types.
Identifier les relations
Assurez-vous que les relations suivantes sont établies entre elles :
partOfSeries et partOfSeason connectent les types d'entités de programmes TV.Une entité
TVEpisodenécessite que vous fournissiez la propriétépartOfSeries, qui spécifie l'@idet lenamede l'entitéTVSeriesde l'épisode."partOfSeries": { "@type": "TVSeries", "@id": "http://www.example.com/my_favorite_tv_show", "name": "My Favorite TV Show", },Si votre flux contient des saisons TV, une entité
TVSeasonnécessite également que vous spécifiiez son entitéTVSeriesdans la propriétépartOfSeries.Une entité
TVEpisodenécessite que vous fournissiez la propriétépartOfSeason, qui spécifie l'@idet leseasonNumberde l'entitéTVSeasonde l'épisode."partOfSeason": { "@type": "TVSeason", "@id": "http://www.example.com/my_favorite_tv_show/s7", "seasonNumber": 7 },Si une entité
TVEpisodene possède pas d'entitéTVSeasoncorrespondante dans le flux, procédez comme suit pour fournir les propriétéspartOfSeason.@idetpartOfSeason.seasonNumberpour l'entitéTVEpisode:- Prenez son
partofSeries.@idet ajoutez un champ de requête d'espace réservé (par exemple, ?season1) pour créer unpartOfSeason.@idunique (par exemple, http://www.example.com/my_favorite_tv_show?season1). - Définissez
partOfSeason.seasonNumbersur 1.
partOfSeason.@idexistant pour l'entitéTVSeasoncorrespondante ou remplacer cet espace réservépartOfSeason.@idpar le@idréel de l'entitéTVSeason.- Prenez son
Exemple
TVSeries
Mon programme TV préféré
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type": "TVSeries",
"@id": "http://www.example.com/my_favorite_tv_show",
"url": "http://www.example.com/my_favorite_tv_show",
"name": "My Favorite TV Show",
"potentialAction":{ … },
...
}
TVSeason
Mon programme TV préféré (saison 7)
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type": "TVSeason",
"@id": "http://www.example.com/my_favorite_tv_show/s7",
"url": "http://www.example.com/my_favorite_tv_show/s7",
"name": "My Favorite TV Show, Season 7",
"seasonNumber": 7,
"partOfSeries": {
"@type": "TVSeries",
"@id": "http://www.example.com/my_favorite_tv_show",
"name": "My Favorite TV Show",
},
"potentialAction":{ … },
...
}
TVEpisode
Épisode 3 de Mon programme TV préféré (saison 7)
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type": "TVEpisode",
"@id": "http://www.example.com/my_favorite_tv_show/s7/e3",
"url": "http://www.example.com/my_favorite_tv_show/s7/e3",
"name": "John Doe returns at night",
"episodeNumber": 3,
"partOfSeason": {
"@type": "TVSeason",
"@id": "http://www.example.com/my_favorite_tv_show/s7",
"seasonNumber": 7
},
"partOfSeries": {
"@type": "TVSeries",
"@id": "http://www.example.com/my_favorite_tv_show",
"name": "My Favorite TV Show",
},
"potentialAction":{ … },
...
}
Radio
如果您是广播电台提供商,则需要在媒体目录 Feed 中添加 RadioBroadcastService 实体类型。您可以通过在了解可用的实体类型部分中过滤此类型,找到这些实体的定义。
确定关系
由于此类集成只有一种实体类型,并且不需要建立任何显式关系,因此请务必为 RadioBroadcastService 实体收集以下信息:
description:电台的说明。broadcastDisplayName:电台的显示名称。areaServed:电台的服务区域。callSign:政府签发的无线电台官方呼号。对于北美洲的广播电台,此属性为必需属性。broadcastFrequency:电台的频率规范。- 对于地面 AM/FM 电台,此属性为必填属性。
- 对于仅限在线播放的内容,此值设为
INTERNET_STREAM。
broadcastAffiliateOf:此电台提供节目的网络。如果相应电台不属于任何联属机构,则无需此属性。broadcaster:拥有和运营相应电台的组织。parentService:父级电台。如果电台是其他电台的转播器或转换器,则必须提供此属性。
示例
{
"@context": "http://schema.googleapis.com",
"@type": "RadioBroadcastService",
"@id": "https://www.example.com/stations?id=1",
"url": "https://www.example.com/stations?id=1",
"name": "KABC",
"callSign": "KABC-FM",
"broadcastDisplayName": "KABC",
"description": "Local News & Information",
"broadcastFrequency": {
"@type": "BroadcastFrequencySpecification",
"broadcastFrequencyValue": "89.5",
"broadcastSignalModulation": "FM",
"broadcastSubChannel": "HD1"
},
"areaServed": {
"@type": "City",
"name": "San Francisco, CA"
},
"broadcastAffiliateOf": [
{
"@id": "https://www.example.com/networks/xyz",
"@type": "Organization",
"name": "XYZ",
"sameAs": "https://en.wikipedia.org/wiki/XYZ"
},
{
"@id": "https://www.example.com/networks/efg",
"@type": "Organization",
"name": "EFG",
"sameAs": "https://www.example.com/"
}
],
"broadcaster": [
{
"@type": "Organization",
"name": "California Local Public Broadcasting",
"sameAs": "https://www.example.org/w/clpb/"
},
{
"@type": "Organization",
"sameAs": "https://www.example.org/kabc",
"name": "KABC Inc"
}
],
"potentialAction": { … },
…
}
Musique
Si vous êtes un service musical, vous devez ajouter les types d'entités MusicGroup, MusicAlbum et MusicRecording dans votre flux de catalogue multimédia. Vous pouvez trouver les définitions de ces entités dans la section Comprendre les types d'entités disponibles en filtrant sur ces types.
Les types d'entités MusicGroup, MusicAlbum et MusicRecording permettent à votre application ou plate-forme de lire plus de contenu à partir d'une playlist (MusicPlaylist) une fois que tout le contenu de l'entité de départ a été lu. Consultez le scénario suivant :
- Une entité
MusicAlbumcontient une liste de titres de l'album XYZ (une entité de départ). - Une entité
MusicPlaylistcontient une playlist de titres semblables à ceux de l'album XYZ. - L'entité
MusicAlbuminclut l'entitéMusicPlaylisten tant qu'action basée sur une entité.
Dans cette configuration, une fois que tous les titres de l'album XYZ ont été lus, votre application peut continuer à lire des titres de la playlist fournie par l'entité MusicPlaylist.
Action d'entité et action basée sur une entité
Les actions d'écoute acceptent deux types d'actions :
- Action d'entité : lit un artiste, un album ou un titre spécifique (une entité de départ). Elle inclut
MusicGroup,MusicAlbumetMusicRecording. - Action basée sur une entité : lit du contenu semblable à l'entité de départ. Elle inclut
MusicPlaylist.- Une fois une action d'entité terminée, votre application ou plate-forme peut lancer une action basée sur une entité.
- Une action basée sur une entité peut inclure la lecture du contenu de l'entité de départ.
Nous vous recommandons d'inclure une action basée sur une entité dans chaque action d'entité.
Identifier les relations
- Pour
MusicGroup, si vous fournissez une action basée sur une entité, identifiez@idetnamede sonMusicPlaylist. - Pour
MusicAlbumetMusicRecording, vous devez identifier leMusicGroupauquel ils appartiennent.- Identifiez
@idetnamede sonMusicGroup. - Si vous fournissez une action basée sur une entité, identifiez
@idetnamede sonMusicPlaylist.
- Identifiez
- Pour
MusicPlaylist,- le cas échéant, identifiez le
genrequi représente le mieux le contenu de la playlist. - Si la playlist est sélectionnée manuellement, identifiez
numTracks.- L'absence de
numTracksindique à Google que la playlist est générée automatiquement et qu'elle est infinie.
- L'absence de
- le cas échéant, identifiez le
Exemple
MusicGroup
- Artiste : Mon artiste préféré
{
"@context":"http://schema.googleapis.com/",
"@type":"MusicGroup",
"@id":"http://www.example.com/artist/my_favorite_artist/",
"url":"http://www.example.com/artist/my_favorite_artist/",
"name":"My Favorite Artist",
"potentialAction":{ … },
"subjectOf": {
"@type":"MusicPlaylist",
"@id":"http://www.example.com/artist_mix/my_favorite_artist/",
"url":"http://www.example.com/artist_mix/my_favorite_artist/",
"name":"My Favorite Artist Mix",
"potentialAction":{ … },
},
...
}
MusicAlbum
- Album : Mon album préféré
- Artiste : Mon artiste préféré
{
"@context":"http://schema.googleapis.com/",
"@type":"MusicAlbum",
"@id":"http://www.example.com/album/my_favorite_album",
"url":"http://www.example.com/album/my_favorite_album",
"name":"My Favorite Album",
"byArtist":{
"@type":"MusicGroup",
"@id": "http://www.example.com/artist/my_favorite_artist/",
"name":"My Favorite Artist"
},
"potentialAction":{ … },
"subjectOf": {
"@type":"MusicPlaylist",
"@id":"http://www.example.com/album_mix/my_favorite_album",
"url":"http://www.example.com/album_mix/my_favorite_album",
"name":"My Favorite Album Mix",
"potentialAction":{ … },
},
...
}
MusicRecording
- Titre : Mon titre préféré
- Artiste : Mon artiste préféré
{
"@context":"http://schema.googleapis.com/",
"@type":"MusicRecording",
"@id":"http://www.example.com/track/my_favorite_song",
"url":"http://www.example.com/track/my_favorite_song",
"name":"My Favorite Song",
"byArtist":{
"@type":"MusicGroup",
"@id": "http://www.example.com/artist/my_favorite_artist/",
"name":"My Favorite Artist"
},
"potentialAction":{ … },
"subjectOf": {
"@type":"MusicPlaylist",
"@id":"http://www.example.com/track_mix/my_favorite_song",
"url":"http://www.example.com/track_mix/my_favorite_song",
"name":"My Favorite Song Mix",
"potentialAction":{ … },
},
...
}
MusicPlaylist
- Playlist personnalisée : "Les meilleurs titres pop des années 2010"
{
"@context":"http://schema.googleapis.com/",
"@type":"MusicPlaylist",
"@id":"http://www.example.com/playlist/top_pop_songs/",
"url":"http://www.example.com/playlist/top_pop_songs/",
"name":"Top Pop Songs of the 2010s",
"genre": [
"pop",
"2010s"
],
"numTracks":"46",
"potentialAction":{ … },
...
}
TV en direct
Si vous êtes un fournisseur de télévision en direct, vous devez ajouter les types d'entités Organization, BroadcastService, CableOrSatelliteService et TelevisionChannel dans votre flux de catalogue multimédia pour représenter votre programmation. Vous devrez peut-être également fournir les entités BroadcastEvent, TVSeries, TVEpisode, Movie et SportsEvent pour représenter le guide électronique des programmes associé. Vous trouverez les définitions de ces entités dans la section Comprendre les types d'entités disponibles en filtrant sur ces types. Pour obtenir une explication plus détaillée, consultez la page Chaînes de télévision en direct.
Relations entre les entités représentant les chaînes de télévision en direct
La figure ci-dessous montre comment les entités Organization, BroadcastService, CableOrSatelliteService et TelevisionChannel sont liées :
- L'entité
Organization(opérateur) représentant le fournisseur du flux et l'organisation parente du serviceCableOrSatelliteServicesont connectées à l'aide de la propriétéproviderde l'entitéCableOrSatelliteService. - Les entités
Organizationcorrespondant aux entitésBroadcastServicesont connectées à l'aide de la propriétébroadcastAffiliateOfde l'entitéBroadcastService. - Les entités
TelevisionChannelse connectent à l'entitéCableOrSatelliteService, qui représente la programmation à laquelle elles appartiennent, à l'aide de la propriétéinBroadcastLineup. - Les entités
TelevisionChannelse connectent à l'entitéBroadcastService, dont cette chaîne fournit la programmation, à l'aide de la propriétéprovidesBroadcastService.
Nous vous recommandons vivement de consulter la page de concept Chaînes de télévision en direct pour obtenir des exemples concrets de la manière dont la relation entre les entités BroadcastService et Organization doit être établie.
Relations entre les chaînes et leur guide des programmes (EPG)
La figure ci-dessous montre comment l'entité BroadcastEvent est liée au reste des entités du flux.
- Les entités
BroadcastEvent, qui représentent le guide des programmes (EPG) d'unBroadcastService, sont connectées aux entitésBroadcastServiceà l'aide de la propriétépublishedOnde l'entitéBroadcastEvent. - Les entités
BroadcastEventpeuvent également être connectées aux entités de premier niveauTVEpisode,TVSeriesetMovieà l'aide de la propriétéworkPerformed. - Les entités
BroadcastEventpeuvent également être connectées aux entités de premier niveauSportsEventà l'aide de la propriétébroadcastOfEvent. - Pour les événements sans chaîne diffusés en streaming en ligne, les entités
BroadcastEventse connectent à l'entité représentant l'événement en direct à l'aide de la propriétéworkPerformedoubroadcastOfEvent, selon ce qui est diffusé en direct. Dans ce cas, la propriétépublishedOnn'est pas requise, car la connexion à une chaîne n'est pas nécessaire.
Exemples
La section suivante fournit des exemples et des extraits de code pour différents cas d'utilisation de l'action de visionnage.
Fournisseur de services de télévision nationale sur Internet
Organisation
Un fournisseur de services de télévision par protocole Internet fictif, ExampleTV Digital Service (Organization), fournit un service de télévision en direct sur Internet, qui contient les deux chaînes suivantes : ExampleTV-Movie (Organization) et ExampleTV-Comedy (Organization) :
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type":"Organization",
"@id":"http://example.com/exampletv/digital",
"name":"ExampleTV Digital Service",
"sameAs": "https://en.wikipedia.org/wiki/exampletv_digital_service"
},
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type":"Organization",
"@id":"http://example.com/exampletv/movie",
"name":"ExampleTV Movie",
"sameAs": "https://en.wikipedia.org/wiki/exampletv_movie"
},
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type":"Organization",
"@id":"http://example.com/exampletv/comedy",
"name":"ExampleTV Comedy",
"sameAs": "https://en.wikipedia.org/wiki/exampletv_comedy"
}
BroadcastService
Ces deux entités BroadcastService fournissent les détails des liens profonds et les exigences d'accès pour les chaînes fictives ExampleTV-Movie et ExampleTV-Comedy :
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type":"BroadcastService",
"@id":"https://www.example.com/exampletv/broadcast/movie",
"name": "ExampleTV-Movie",
"alternateName": [
"Example Television Movie",
"Example TV Movie"
],
"description": "A fictional Internet Protocol TV movie channel.",
"broadcastDisplayName":"ExampleTV-Movie",
"broadcastAffiliateOf":{
"@type":"Organization",
"@id":"http://www.example.com/exampletv/movie"
},
"potentialAction": {
"@type": "WatchAction",
"target": {
"@type": "EntryPoint",
"urlTemplate": "http://www.example.com/exampletv/broadcast/movie?autoplay=true",
"inLanguage": "en",
"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/GoogleVideoCast"
]
},
"actionAccessibilityRequirement": {
"@type": "ActionAccessSpecification",
"category": "subscription",
"requiresSubscription": {
"@type": "MediaSubscription",
"@id": "http://www.example.com/exampletv/basic_subscription",
"name": "Basic subscription",
"identifier": "example.com:basic",
"commonTier": true
},
"eligibleRegion": [
{
"@type": "Country",
"name": "US"
}
]
}
},
"identifier": [
{
"@type": "PropertyValue",
"propertyID": "TMS_ID",
"value": "12345"
},
{
"@type": "PropertyValue",
"propertyID": "_PARTNER_ID_",
"value": "exampletv-movie-33345"
}
]
},
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type":"BroadcastService",
"@id":"https://www.example.com/exampletv/broadcast/comedy",
"name": "ExampleTV-Comedy",
"alternateName": [
"Example Television Comedy",
"Example TV Comedy"
],
"description": "A fictional Internet Protocol TV comedy channel.",
"broadcastDisplayName":"ExampleTV-Comedy",
"broadcastAffiliateOf":{
"@type":"Organization",
"@id":"http://www.example.com/exampletv/comedy"
},
"potentialAction": {
"@type": "WatchAction",
"target": {
"@type": "EntryPoint",
"urlTemplate": "http://www.example.com/exampletv/broadcast/comedy?autoplay=true",
"inLanguage": "en",
"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/GoogleVideoCast"
]
},
"actionAccessibilityRequirement": {
"@type": "ActionAccessSpecification",
"category": "subscription",
"requiresSubscription": {
"@type": "MediaSubscription",
"@id": "http://www.example.com/exampletv/basic_subscription",
"name": "Basic subscription",
"identifier": "example.com:basic",
"commonTier": true
},
"eligibleRegion": [
{
"@type": "Country",
"name": "US"
}
]
}
},
"identifier": [
{
"@type": "PropertyValue",
"propertyID": "TMS_ID",
"value": "15555"
},
{
"@type": "PropertyValue",
"propertyID": "_PARTNER_ID_",
"value": "exampletv-comedy-12323"
}
]
}
CableOrSatelliteService
Ce CableOrSatelliteService décrit le fournisseur de services ExampleTV Digital Service qui a une couverture nationale :
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type":"CableOrSatelliteService",
"@id":"http://example.com/example_iptv/us",
"name":"Example TV Digital Service - US",
"provider": {
"@type": "Organization",
"@id": "http://example.com/exampletv/digital",
},
"areaServed":[
{
"@type":"Country",
"name": "US",
}
]
}
TelevisionChannel
Ces entités TelevisionChannel indiquent que l'IPTV ExampleTV Digital Service diffuse la programmation ExampleTV Movie sur la chaîne ExTV-Movie et la programmation ExampleTV Comedy sur la chaîne ExTV-Comedy :
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type":"TelevisionChannel",
"@id":"http://example.com/exampletv/extv-movie",
"broadcastChannelId":"ExTV-Movie",
"broadcastServiceTier":"Basic",
"inBroadcastLineup":{
"@type":"CableOrSatelliteService",
"@id":"http://example.com/example_iptv/us"
},
"providesBroadcastService":{
"@type":"BroadcastService",
"@id":"https://www.example.com/exampletv/broadcast/movie"
}
},
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type":"TelevisionChannel",
"@id":"http://example.com/exampletv/extv-comedy",
"broadcastChannelId":"ExTV-Comedy",
"broadcastServiceTier":"Basic",
"inBroadcastLineup":{
"@type":"CableOrSatelliteService",
"@id":"http://example.com/example_iptv/us"
},
"providesBroadcastService":{
"@type":"BroadcastService",
"@id":"https://www.example.com/exampletv/broadcast/comedy"
}
}
Pour obtenir d'autres exemples, consultez la section Exemples de télévision en direct.
Diffusion d'un film sur une chaîne de télévision
Un film est diffusé sur le réseau de télévision Example TV (BroadcastService) entre 17h et 19h le 12 juillet 2019.
BroadcastEvent
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type": "BroadcastEvent",
"@id": "http://example.com/live/movie/new_release",
"name": "My Favorite Movie",
"description": "John Doe spent years perfecting his survival skills in a tropical jungle.",
"startDate": "2019-07-12T17:00-08:00",
"endDate": "2019-07-12T19:00-08:00",
"videoFormat": "HD",
"isLiveBroadcast": "False",
"publishedOn": {
"@type": "BroadcastService",
"@id": "http://example.com/stations/example_tv"
},
"workPerformed": {
"@type": "Movie",
"@id": "http://www.example.com/my_favorite_movie"
}
}
BroadcastService
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type":"BroadcastService",
"@id":"http://example.com/stations/example_tv",
"name":"EXAMPLE-TV",
"broadcastDisplayName":"ABCD",
"callSign": "EXA-TV",
"videoFormat":"SD",
"broadcastTimezone":"America/Los_Angeles",
"broadcastAffiliateOf":{
"@type":"Organization",
"@id":"http://example.com/networks/abcd-network",
}
"identifier": [
{
"@type": "PropertyValue",
"propertyID": "TMS_ID",
"value": "12258"
},
{
"@type": "PropertyValue",
"propertyID": "_PARTNER_ID_",
"value": "exampletv-123456"
}
],
"potentialAction": {
"@type": "WatchAction",
"target": {
"@type": "EntryPoint",
"urlTemplate": "http://example.com/livestream",
"actionPlatform": [
"http://schema.org/DesktopWebPlatform",
"http://schema.org/MobileWebPlatform",
"http://schema.org/AndroidPlatform",
"http://schema.org/IOSPlatform",
"http://schema.googleapis.com/GoogleVideoCast",
"http://schema.org/AndroidTVPlatform"
]
},
"actionAccessibilityRequirement": {
"@type": "ActionAccessSpecification",
"category": "externalsubscription",
"availabilityStarts": "2018-07-21T10:35:29Z",
"availabilityEnds": "2019-10-21T10:35:29Z",
"requiresSubscription": {
"@type": "MediaSubscription",
"@id": "http://example.com/subscription",
"name": "ABCD",
"sameAs": "http://example.com/subscription",
"authenticator": {
"@type": "Organization",
"name": "TVE"
}
},
"eligibleRegion": [
{
"@type": "Country",
"name": "US"
}
]
}
}
}
Film
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type": "Movie",
"@id": "http://www.example.com/my_favorite_movie",
"url": "http://www.example.com/my_favorite_movie",
"name": "My Favorite Movie",
"sameAs": "https://en.wikipedia.org/wiki/my_favorite_movie",
"releasedEvent": {
"@type": "PublicationEvent",
"startDate": "2008-01-20",
"location": {
"@type": "Country",
"name": "US"
}
},
"description": "John Doe spent years perfecting his survival skills in a tropical jungle.",
"actor": [
{
"@type": "Person",
"name": "John Doe",
"sameAs": "https://en.wikipedia.org/wiki/John_Doe"
},
{
"@type": "Person",
"name": "Jane Doe",
"sameAs": "https://en.wikipedia.org/wiki/Jane_Doe"
}
],
"identifier": [
{
"@type": "PropertyValue",
"propertyID": "IMDB_ID",
"value": "tt0123456"
}
]
}
Pour obtenir d'autres exemples, consultez la section Exemples d'événements de télévision en direct.
Match sportif en direct diffusé en streaming en ligne
Événement de diffusion
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type": "BroadcastEvent",
"@id": "http://example.com/live_eevent/basketball/professional/final_game_6",
"name": "2019 Professional Basketball Finals, Game 6: Team A at Team B",
"description": "Game 6 of the 2019 Professional Basketball Finals. Team A leads the series 3-2 against Team B.",
"startDate": "2018-09-16T10:00-08:00",
"endDate": "2018-09-16T13:00-08:00",
"videoFormat": "HD",
"isLiveBroadcast": "False",
"potentialAction": {
"@type": "WatchAction",
"target": {
"@type": "EntryPoint",
"urlTemplate": "http://www.example.com/pbl_semis_game?autoplay=true",
"inLanguage": "en",
"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/GoogleVideoCast"
]
},
"actionAccessibilityRequirement": {
"@type": "ActionAccessSpecification",
"category": "subscription",
"availabilityStarts": "2018-09-16T10:00-08:00",
"availabilityEnds": "2018-09-16T10:00-08:00",
"requiresSubscription": {
"@type": "MediaSubscription",
"name": "Example Package",
"commonTier": true,
"@id": "http://www.example.com/example_package"
},
"eligibleRegion": [
{
"@type": "Country",
"name": "US"
}
]
}
},
"broadcastOfEvent": {
"@type": "SportsEvent",
"@id": "http://example.com/basketball/professional/final_game_6"
}
}
Événement sportif
{
"@context": ["http://schema.org", {"@language": "en"}],
"@type":"SportsEvent",
"@id": "http://example.com/basketball/professional/final_game_6",
"name":"2019 Professional Basketball Finals, Game 6: Team A vs Team B",
"sport":"https://en.wikipedia.org/wiki/Basketball",
"description": {
"@language": "en",
"@value": "Game 6 of the 2019 Professional Basketball Finals. Team A leads the series 3-2 against Team B."
},
"startDate": "2019-09-16T10:00-08:00",
"endDate": "2019-09-16T13:00-08:00",
"homeTeam":{
"@type":"SportsTeam",
"name":"Team B",
"sport":"https://en.wikipedia.org/wiki/Basketball",
"parentOrganization":{
"@type":"SportsOrganization",
"name":"Professional Basketball League",
"sameAs":"http://www.example.com/professional_basketball_league"
},
"athlete":[
{
"@type":"Person",
"name":"John doe"
}
]
},
"awayTeam":{
"@type":"SportsTeam",
"name":"Team A",
"sport":"https://en.wikipedia.org/wiki/Basketball",
"athlete":[
{
"@type":"Person",
"name":"Jane Doe"
}
]
},
"location":{
"@type":"Place",
"name":"Example Stadium",
"address":{
"@type":"PostalAddress",
"streetAddress":"1600 Amphitheatre Pkwy",
"addressLocality":"Mountain View",
"addressRegion":"CA",
"postalCode":"94043",
"addressCountry":"US"
}
},
"identifier": [
{
"@type": "PropertyValue",
"propertyID": "TMS_ID",
"value": "TMS ID of this game"
}
]
}
Pour obtenir d'autres exemples, consultez la section Exemples de sports.