对于某些实体类型,您需要在 Feed 中的内容之间建立关系。这些信息有助于 Google 向用户显示内容的正确顺序和结构,并在用户的查询含糊不清时识别正确的内容。
选择您提供的内容类型:
电视节目
如果您是电视节目提供商,则需要在媒体目录 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":{ … },
...
}
电台
如果您是广播电台提供商,则需要在媒体目录 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": { … },
…
}
音乐
如果您是音乐提供商,则需要在媒体目录 Feed 中添加 MusicGroup
、MusicAlbum
和 MusicRecording
实体类型。您可以通过在了解可用的实体类型部分中过滤出这些类型,找到这些实体的定义。
MusicGroup
、MusicAlbum
和 MusicRecording
可让您的应用或平台在播放种子实体中的所有内容后,播放播放列表 (MusicPlaylist
) 中的更多内容。请查看以下场景:
MusicAlbum
实体包含专辑 XYZ(种子实体)中的歌曲列表。MusicPlaylist
实体包含与专辑 XYZ 中的歌曲类似的歌曲播放列表。MusicAlbum
实体将MusicPlaylist
实体作为实体启动的操作包含在内。
在这种设置下,播放 Album XYZ 中的所有歌曲后,您的应用可以继续播放 MusicPlaylist
实体提供的播放列表中的歌曲。
实体操作和实体启动的操作
聆听 Action 支持两种类型的 Action:
- 实体操作:播放特定音乐人、专辑或歌曲(种子实体)。包括
MusicGroup
、MusicAlbum
、MusicRecording
。 - 以实体为种子的 Action:播放与种子实体类似的内容。其中包括
MusicPlaylist
。- 完成实体操作后,您的应用或平台可能会发起实体启动的操作。
- 以实体为种子的 Action 可以包含播放种子实体中内容的操作。
我们建议您在每个实体操作中添加实体种子操作。
确定关系
- 对于
MusicGroup
,如果您提供实体启动的 Action,请标识其MusicPlaylist
的@id
和name
。 - 对于
MusicAlbum
和MusicRecording
,您需要确定它们属于哪个MusicGroup
。- 确定其
MusicGroup
的@id
和name
。 - 如果您提供的是实体启动的 Action,请指明其
MusicPlaylist
的@id
和name
。
- 确定其
- 对于
MusicPlaylist
:- 请指明最能代表播放列表中内容的
genre
(如果适用)。 - 如果播放列表是手动挑选的,请标识
numTracks
。- 如果没有
numTracks
,则表示播放列表是自动生成的无限播放列表。
- 如果没有
- 请指明最能代表播放列表中内容的
示例
MusicGroup
- 音乐人:我最喜欢的音乐人
{
"@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
- 专辑:我最喜欢的专辑
- 音乐人:我最喜欢的音乐人
{
"@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
- 歌曲:我喜爱的歌曲
- 音乐人:我最喜欢的音乐人
{
"@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
- 自定义播放列表:“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":{ … },
...
}
电视直播
如果您是直播电视提供商,则需要在媒体目录 Feed 中添加 Organization
、BroadcastService
、CableOrSatelliteService
和 TelevisionChannel
实体类型,以代表您的频道阵容。您可能还需要提供 BroadcastEvent
、TVSeries
、TVEpisode
、Movie
和 SportsEvent
实体来表示关联的 EPG(电子节目单)。您可以前往了解可用的实体类型部分,通过过滤这些类型来查找这些实体的定义。如需了解详细说明,请访问 Live TV 频道页面。
表示直播电视频道的实体之间的关系
下图显示了 Organization
、BroadcastService
、CableOrSatelliteService
和 TelevisionChannel
实体之间的关系:

- 代表 Feed 提供方以及
CableOrSatelliteService
服务的父级组织的Organization
(运营商)实体通过CableOrSatelliteService
实体的provider
属性相关联。 - 与
BroadcastService
实体对应的Organization
实体使用BroadcastService
实体的broadcastAffiliateOf
属性进行关联。 TelevisionChannel
实体使用inBroadcastLineup
属性与CableOrSatelliteService
实体(表示它们所属的阵容)连接。TelevisionChannel
实体使用providesBroadcastService
属性与BroadcastService
实体相关联,该实体提供此频道的节目。
强烈建议您查看直播电视频道概念页面,查看有关如何建立 BroadcastService 和 Organization 实体之间关系的具体示例。
频道与其节目指南 (EPG) 之间的关系
下图显示了 BroadcastEvent
实体如何与 Feed 中的其余实体相关联。

BroadcastEvent
实体代表BroadcastService
的节目单 (EPG),使用BroadcastEvent
实体的publishedOn
属性与BroadcastService
实体相关联。BroadcastEvent
实体还可以使用workPerformed
属性连接到顶级TVEpisode
、TVSeries
、Movie
实体。BroadcastEvent
实体还可以使用broadcastOfEvent
属性连接到顶级SportsEvent
实体。- 对于在线直播的无频道活动,
BroadcastEvent
实体使用workPerformed
或broadcastOfEvent
属性与代表直播活动的实体相关联,具体取决于正在直播的内容。在这种情况下,由于不需要连接到通道,因此publishedOn
属性不是必需的。
示例
以下部分提供了各种观看操作用例的示例和代码段。
互联网上的全国性电视服务提供商
组织
ExampleTV Digital Service (Organization
) 是一家虚构的互联网协议电视服务提供商,在互联网上提供直播电视服务,其中包含以下两个频道:ExampleTV-Movie (Organization
) 和 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
这两个 BroadcastService
实体提供了虚构频道 ExampleTV-Movie 和 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
此 CableOrSatelliteService
描述了覆盖全国范围的服务提供商 ExampleTV Digital Service:
{
"@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
以下 TelevisionChannel
实体表明 ExampleTV Digital Service IPTV 在频道 ExTV-Movie
上提供 ExampleTV Movie 节目,在频道 ExTV-Comedy
上提供 ExampleTV 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"
}
}
如需查看更多示例,请参阅 Live TV 示例部分。
在电视频道上播放电影
某部电影于 2019 年 7 月 12 日下午 5 点至 7 点在电视网络 Example TV (BroadcastService
) 上播出。
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"
}
]
}
}
}
电影
{
"@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"
}
]
}
如需查看更多示例,请参阅直播电视事件示例部分。
在线直播的体育赛事
广播活动
{
"@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"
}
]
}
如需查看更多示例,请参阅体育赛事示例部分。