Alcuni tipi di entità richiedono di stabilire la relazione tra i contenuti del feed. Queste informazioni aiutano Google a mostrare agli utenti l'ordine e la struttura corretti dei tuoi contenuti e a identificare i contenuti corretti quando la query di un utente è ambigua.
Seleziona il tipo di contenuti che fornisci:
Programma TV
如果您是电视节目提供商,则需要在媒体目录 Feed 中添加 TVEpisode、TVSeason 和 TVSeries 实体类型。您可以通过在了解可用的实体类型部分中过滤出这些类型,找到这些实体的定义。
确定关系
确保在这些资源之间建立以下关系:
partOfSeries 和 partOfSeason 属性将电视节目实体类型关联在一起。TVEpisode实体需要您提供partOfSeries属性,该属性用于指定剧集的TVSeries实体的@id和name。"partOfSeries": { "@type": "TVSeries", "@id": "http://www.example.com/my_favorite_tv_show", "name": "My Favorite TV Show", },如果您的 Feed 包含电视剧季,则对于
TVSeason实体,您还需要在partOfSeries属性中指定其TVSeries实体。TVEpisode实体需要您提供partOfSeason属性,该属性用于指定剧集的TVSeason实体的@id和seasonNumber。"partOfSeason": { "@type": "TVSeason", "@id": "http://www.example.com/my_favorite_tv_show/s7", "seasonNumber": 7 },如果
TVEpisode实体在 Feed 中没有对应的TVSeason实体,请按以下步骤为TVEpisode实体提供partOfSeason.@id和partOfSeason.seasonNumber属性:- 获取其
partofSeries.@id,并附加占位符查询字段(例如 ?season1),以创建唯一的partOfSeason.@id(例如 http://www.example.com/my_favorite_tv_show?season1)。 - 将
partOfSeason.seasonNumber设置为 1。
TVSeason实体的现有partOfSeason.@id,也可以将此占位符partOfSeason.@id替换为TVSeason实体的实际@id。- 获取其
示例
TVSeries
我最喜欢的电视节目
{
"@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
我最喜欢的电视节目(第 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
我最喜欢的电视节目第 3 集(第 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": { … },
…
}
Musica
Se sei un fornitore di contenuti musicali, devi aggiungere i tipi di entità MusicGroup, MusicAlbum e MusicRecording al feed del tuo catalogo multimediale. Puoi trovare le definizioni di queste entità nella sezione Informazioni sui tipi di entità disponibili filtrando in base a questi tipi.
MusicGroup, MusicAlbum e MusicRecording consentono alla tua app o piattaforma di riprodurre altri contenuti di una playlist (MusicPlaylist) dopo la riproduzione di tutti i contenuti dell'entità iniziale. Esamina il seguente scenario:
- Un'entità
MusicAlbumcontiene un elenco di brani dell'album XYZ (un'entità iniziale). - Un'entità
MusicPlaylistcontiene una playlist di brani simili a quelli dell'album XYZ. - L'entità
MusicAlbuminclude l'entitàMusicPlaylistcome Azione basata su entità.
In questa configurazione, una volta riprodotti tutti i brani dell'album XYZ, l'app può continuare a riprodurre i brani della playlist fornita dall'entità MusicPlaylist.
Azione basata su entità e Azione basata su entità seminata
Le azioni di ascolto supportano due tipi di azioni:
- Azione sull'entità: riproduce un artista, un album o un brano specifico (un'entità iniziale). Sono inclusi
MusicGroup,MusicAlbum,MusicRecording. - Azione basata su entità: riproduce contenuti simili all'entità di partenza. Sono inclusi
MusicPlaylist.- Dopo aver completato un'azione basata su entità, la tua app o piattaforma potrebbe avviare un'azione basata su entità.
- Un'azione basata su entità può includere la riproduzione dei contenuti dell'entità di base.
Ti consigliamo di includere un'azione basata su entità in ogni azione basata su entità.
Identifica le relazioni
- Per
MusicGroup, se fornisci un'azione basata su entità, identifica@idenamedel relativoMusicPlaylist. - Per
MusicAlbumeMusicRecording, devi identificare a qualeMusicGroupappartengono.- Identifica
@idenamedel suoMusicGroup. - Se fornisci un'azione basata su entità, identifica
@idenamedel relativoMusicPlaylist.
- Identifica
- Per
MusicPlaylist,- Se applicabile, identifica il
genreche rappresenta meglio i contenuti della playlist. - Se la playlist è selezionata manualmente, identifica
numTracks.- L'assenza di
numTracksindica a Google che la playlist è una playlist infinita generata automaticamente.
- L'assenza di
- Se applicabile, identifica il
Esempio
MusicGroup
- Artista: Il mio artista preferito
{
"@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: Il mio album preferito
- Artista: Il mio artista preferito
{
"@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
- Brano: La mia canzone preferita
- Artista: Il mio artista preferito
{
"@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
- Una playlist personalizzata: "I brani pop più ascoltati degli anni '10"
{
"@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 in diretta
Se sei un fornitore di TV in diretta, devi aggiungere i tipi di entità Organization, BroadcastService, CableOrSatelliteService e TelevisionChannel nel feed del catalogo multimediale per rappresentare la programmazione del tuo canale. Potresti anche dover fornire le entità BroadcastEvent, TVSeries, TVEpisode, Movie e SportsEvent per rappresentare l'EPG (Electronic Program Guide) associata. Puoi trovare le definizioni di queste entità nella sezione Informazioni sui tipi di entità disponibili filtrando in base a questi tipi. Per una spiegazione più dettagliata, visita la pagina Canali TV in diretta.
Relazioni tra entità che rappresentano i canali TV in diretta
La figura seguente mostra la relazione tra le entità Organization, BroadcastService, CableOrSatelliteService e TelevisionChannel:
- L'entità
Organization(operatore) che rappresenta il fornitore del feed e anche l'organizzazione principale del servizioCableOrSatelliteServicesono collegate utilizzando la proprietàprovidernell'entitàCableOrSatelliteService. - Le entità
Organizationcorrispondenti alle entitàBroadcastServicesono collegate utilizzando la proprietàbroadcastAffiliateOfnell'entitàBroadcastService. - Le entità
TelevisionChannelsi connettono all'entitàCableOrSatelliteService, che rappresenta la selezione a cui appartengono, utilizzando la proprietàinBroadcastLineup. - Le entità
TelevisionChannelsi connettono all'entitàBroadcastService, la cui programmazione è fornita da questo canale, utilizzando la proprietàprovidesBroadcastService.
Ti consigliamo vivamente di consultare la pagina del concetto relativa ai canali TV in diretta per esempi concreti di come deve essere stabilita la relazione tra le entità BroadcastService e Organization.
Relazioni tra i canali e la relativa guida ai programmi (EPG)
La figura seguente mostra come l'entità BroadcastEvent si collega al resto delle entità nel feed.
- Le entità
BroadcastEvent, che rappresentano la guida ai programmi (EPG) di unBroadcastService, sono collegate alle entitàBroadcastServiceutilizzando la proprietàpublishedOnnell'entitàBroadcastEvent. - Le entità
BroadcastEventpossono essere collegate anche alle entitàTVEpisode,TVSeries,Moviedi primo livello utilizzando la proprietàworkPerformed. - Le entità
BroadcastEventpossono essere collegate anche alle entitàSportsEventdi primo livello utilizzando la proprietàbroadcastOfEvent. - Per gli eventi senza canale trasmessi in streaming online, le entità
BroadcastEventsi connettono all'entità che rappresenta l'evento dal vivo utilizzando la proprietàworkPerformedobroadcastOfEvent, a seconda di ciò che viene trasmesso in live streaming. In questi casi, la proprietàpublishedOnnon è obbligatoria perché il collegamento a un canale non è necessario.
Esempi
La sezione seguente fornisce esempi e snippet per vari casi d'uso di Watch Action.
Provider di servizi TV nazionali su internet
Organizzazione
Un fornitore di servizi di TV su protocollo internet immaginario, ExampleTV Digital Service (Organization), fornisce un servizio TV in diretta su internet, che include i seguenti due canali: ExampleTV-Movie (Organization) ed 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
Queste due entità BroadcastService forniscono i dettagli dei link diretti e dei requisiti di accesso per i canali fittizi ExampleTV-Movie e 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
Questo CableOrSatelliteService descrive il fornitore di servizi ExampleTV Digital Service che ha copertura nazionale:
{
"@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
Queste entità TelevisionChannel indicano che il servizio digitale IPTV ExampleTV trasmette la programmazione ExampleTV Movie sul canale ExTV-Movie e la programmazione ExampleTV Comedy sul canale 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"
}
}
Per altri esempi, consulta la sezione Esempi di TV in diretta.
Trasmissione di un film su un canale TV
Il 12 luglio 2019, un film viene trasmesso dalla rete televisiva Example TV (BroadcastService) tra le 17:00 e le 19:00.
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"
}
]
}
Per altri esempi, consulta la sezione Esempi di eventi TV in diretta.
Una partita di sport trasmessa in diretta online
Evento di trasmissione
{
"@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"
}
}
Evento sportivo
{
"@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"
}
]
}
Per altri esempi, consulta la sezione Esempi di sport.