Identificar a relação entre tipos de entidade

Alguns tipos de entidade exigem que você estabeleça a relação entre o conteúdo no seu feed. Essas informações ajudam o Google a mostrar a ordem e a estrutura adequadas do seu conteúdo aos usuários e a identificar o conteúdo correto quando a consulta de um usuário é ambígua.

Selecione o tipo de conteúdo que você fornece:

Se você é um provedor de programas de TV, adicione os tipos de entidade TVEpisode, TVSeason e TVSeries ao seu feed do catálogo de mídia. Encontre as definições dessas entidades na seção Entenda os tipos de entidade disponíveis filtrando por esses tipos.

Identificar as relações

Verifique se as seguintes relações foram estabelecidas entre eles:

Figura: as propriedades partOfSeries e partOfSeason conectam os tipos de entidade de programas de TV.
  • Uma entidade TVEpisode exige que você forneça a propriedade partOfSeries, que especifica o @id e o name da entidade TVSeries do episódio.

    "partOfSeries": {
      "@type": "TVSeries",
      "@id": "http://www.example.com/my_favorite_tv_show",
      "name": "My Favorite TV Show",
    },
    
  • Se o feed tiver temporadas de TV, uma entidade TVSeason também vai exigir que você especifique a entidade TVSeries dela na propriedade partOfSeries.

  • Uma entidade TVEpisode exige que você forneça a propriedade partOfSeason, que especifica o @id e o seasonNumber da entidade TVSeason do episódio.

    "partOfSeason": {
      "@type": "TVSeason",
      "@id": "http://www.example.com/my_favorite_tv_show/s7",
      "seasonNumber": 7
    },
    

    Se uma entidade TVEpisode não tiver uma entidade TVSeason correspondente no feed, siga estas etapas para fornecer as propriedades partOfSeason.@id e partOfSeason.seasonNumber para a entidade TVEpisode:

    • Pegue o partofSeries.@id e anexe um campo de consulta de marcador de posição (por exemplo, ?season1) para criar um partOfSeason.@id exclusivo (por exemplo, http://www.example.com/my_favorite_tv_show?season1).
    • Defina partOfSeason.seasonNumber como 1.
    Depois, se você decidir fornecer temporadas de TV no feed, poderá reutilizar o partOfSeason.@id existente para a entidade TVSeason correspondente ou substituir esse marcador de posição partOfSeason.@id pelo @id real da entidade TVSeason.

Exemplo

Meu programa de TV favorito

{
  "@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":{  },
  ...
}

Meu programa de TV favorito (7ª temporada)

{
  "@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":{  },
  ...
}

Episódio 3 de Meu programa de TV favorito (7ª temporada)

{
  "@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":{  },
  ...
}

Se você for um provedor de rádio, adicione o tipo de entidade RadioBroadcastService ao feed do catálogo de mídia. Você pode encontrar as definições dessas entidades na seção Entenda os tipos de entidade disponíveis filtrando por esse tipo.

Identificar as relações

Como há apenas um tipo de entidade para essas integrações, embora não haja relações explícitas que precisem ser estabelecidas, colete as seguintes informações para as entidades RadioBroadcastService:

  • description: a descrição da estação de rádio.
  • broadcastDisplayName: o nome de exibição da estação de rádio.
  • areaServed: a área em que a estação de rádio está disponível.
  • callSign: o indicativo oficial da estação de rádio emitido pelo governo. Para estações de rádio da América do Norte, essa propriedade é obrigatória.
  • broadcastFrequency: a especificação de frequência da estação de rádio.
    • Para estações de rádio AM/FM terrestres, essa propriedade é obrigatória.
    • Para conteúdo somente de streaming on-line, o valor é definido como INTERNET_STREAM.
  • broadcastAffiliateOf: a rede em que essa estação de rádio transmite programas. Se a estação de rádio não fizer parte de nenhuma afiliação, essa propriedade não será necessária.
  • broadcaster: a organização que é proprietária e opera a estação de rádio.
  • parentService: a estação de rádio mãe. Se a estação de rádio for um repetidor ou tradutor de outra estação, essa propriedade será obrigatória.

Exemplo

{
  "@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": {  },
  
}

Se você é um provedor de música, adicione os tipos de entidade MusicGroup, MusicAlbum e MusicRecording ao seu feed do catálogo de mídia. Encontre as definições dessas entidades na seção Entenda os tipos de entidade disponíveis filtrando por esses tipos.

MusicGroup, MusicAlbum e MusicRecording permitem que seu app ou plataforma reproduza mais conteúdo de uma playlist (MusicPlaylist) depois que todo o conteúdo da entidade de semente for reproduzido. Confira o seguinte cenário:

  • Uma entidade MusicAlbum contém uma lista de músicas do Álbum XYZ (uma entidade de semente).
  • Uma entidade MusicPlaylist contém uma playlist de músicas semelhantes às do Álbum XYZ.
  • A entidade MusicAlbum inclui a entidade MusicPlaylist como uma ação iniciada por entidade.

Nessa configuração, depois que todas as músicas do Álbum XYZ forem tocadas, o app poderá continuar tocando músicas da playlist fornecida pela entidade MusicPlaylist.

Ação de entidade e ação com semente de entidade

As ações de escuta oferecem suporte a dois tipos de ações:

  • Ação de entidade: toca um artista, álbum ou música específico (uma entidade semente). Isso inclui MusicGroup, MusicAlbum e MusicRecording.
  • Ação com base na entidade: reproduz conteúdo semelhante à entidade de referência. Ele inclui MusicPlaylist.
    • Depois de concluir uma ação de entidade, seu app ou plataforma poderá iniciar uma ação com semente de entidade.
    • Uma ação com entidade semente pode incluir a reprodução do conteúdo da entidade semente.

Recomendamos que você inclua uma ação iniciada pela entidade em cada ação de entidade.

Identificar as relações

  • Para MusicGroup, se você fornecer uma ação com semente de entidade, identifique @id e name do MusicPlaylist.
  • Para MusicAlbum e MusicRecording, é necessário identificar a qual MusicGroup eles pertencem.
    • Identifique @id e name do MusicGroup.
    • Se você fornecer uma ação com semente de entidade, identifique @id e name do MusicPlaylist.
  • Para MusicPlaylist,
    • Se aplicável, identifique o genre que melhor representa o conteúdo da playlist.
    • Se a playlist for selecionada manualmente, identifique numTracks.
      • A ausência de numTracks informa ao Google que a playlist é gerada automaticamente e não tem fim.

Exemplo

  • Artista: My Favorite Artist
{
  "@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":{  },
  },
  ...
}
  • Álbum: My Favorite Album
  • Artista: My Favorite Artist
{
  "@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":{  },
  },
  ...
}
  • Música: My Favorite Song
  • Artista: My Favorite Artist
{
  "@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":{  },
  },
  ...
}
  • Uma playlist personalizada: "As melhores músicas pop da década de 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":{  },
  ...
}

Se você for um provedor de TV ao vivo, adicione os tipos de entidade Organization, BroadcastService, CableOrSatelliteService e TelevisionChannel no feed do catálogo de mídia para representar a programação do seu canal. Talvez você também precise fornecer as entidades BroadcastEvent, TVSeries, TVEpisode, Movie e SportsEvent para representar o guia de programação eletrônica (EPG, na sigla em inglês) associado. Encontre as definições dessas entidades na seção Entenda os tipos de entidade disponíveis filtrando por esses tipos. Para uma explicação mais detalhada, acesse a página Canais de TV ao vivo.

Relações entre entidades que representam canais de TV ao vivo

A figura abaixo mostra como as entidades Organization, BroadcastService, CableOrSatelliteService e TelevisionChannel estão relacionadas:

Os links entre os tipos de entidade de canal de TV ao vivo
Figura: os links entre os tipos de entidade de canal de TV ao vivo.

  • A entidade Organization (operadora) que representa o provedor de feed e também a organização pai do serviço CableOrSatelliteService são conectadas usando a propriedade provider na entidade CableOrSatelliteService.
  • As entidades Organization correspondentes às entidades BroadcastService são conectadas usando a propriedade broadcastAffiliateOf na entidade BroadcastService.
  • As entidades TelevisionChannel se conectam à entidade CableOrSatelliteService, que representa a programação a que elas pertencem, usando a propriedade inBroadcastLineup.
  • As entidades TelevisionChannel se conectam à entidade BroadcastService, cuja programação é fornecida por este canal, usando a propriedade providesBroadcastService.

É altamente recomendável consultar a página de conceito dos canais de TV ao vivo para conferir exemplos concretos de como a relação entre as entidades BroadcastService e Organization precisa ser estabelecida.

Relações entre canais e o guia de programação (EPG)

A figura abaixo mostra como a entidade BroadcastEvent se vincula ao restante das entidades no feed.

Os links entre os tipos de entidade de evento de TV ao vivo
Figura: os links entre os tipos de entidade de evento da TV ao vivo.

  • As entidades BroadcastEvent, que representam o guia de programação (EPG) de um BroadcastService, são conectadas às entidades BroadcastService usando a propriedade publishedOn na entidade BroadcastEvent.
  • As entidades BroadcastEvent também podem ser conectadas a entidades TVEpisode, TVSeries e Movie de nível superior usando a propriedade workPerformed.
  • As entidades BroadcastEvent também podem ser conectadas a entidades SportsEvent de nível superior usando a propriedade broadcastOfEvent.
  • Para eventos sem canal transmitidos on-line, as entidades BroadcastEvent se conectam com a entidade que representa o evento ao vivo usando a propriedade workPerformed ou broadcastOfEvent, dependendo do que está sendo transmitido ao vivo. Nesses casos, a propriedade publishedOn não é necessária, já que a conexão com um canal não é obrigatória.

Exemplos

A seção a seguir oferece exemplos e snippets para vários casos de uso de ações no YouTube.

Provedor de serviços de TV nacional na Internet

Um provedor de serviços de TV por protocolo de Internet fictício, ExampleTV Digital Service (Organization), oferece um serviço de TV ao vivo na Internet, que contém os seguintes canais: ExampleTV-Movie (Organization) e 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"
}

Essas duas entidades BroadcastService fornecem os detalhes dos links diretos e o requisito de acesso para os canais fictícios 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"
    }
  ]
}

Este CableOrSatelliteService descreve o provedor de serviços ExampleTV Digital Service, que tem cobertura nacional:

{
  "@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",
    }
  ]
}

Essas entidades TelevisionChannel indicam que o IPTV do ExampleTV Digital Service tem a programação ExampleTV Movie no canal ExTV-Movie e a programação ExampleTV Comedy no canal 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"
  }
}

Consulte a seção Exemplos de TV ao vivo para conferir mais exemplos.

Transmissão de um filme em um canal de TV

Um filme é transmitido na rede de televisão Example TV (BroadcastService) entre 17h e 19h em 12 de julho de 2019.

{
  "@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"
  }
}
{
  "@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"
        }
      ]
    }
  }
}
{
  "@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"
    }
  ]
}

Consulte a seção Exemplos de eventos de TV ao vivo para conferir mais exemplos.

Uma transmissão de jogo esportivo ao vivo on-line


{
  "@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"
  }
}

{
  "@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"
    }
  ]
}

Consulte a seção Exemplos de esportes para conferir mais exemplos.