Một số loại thực thể yêu cầu bạn thiết lập mối quan hệ giữa nội dung trong nguồn cấp dữ liệu của bạn. Thông tin này giúp Google hiển thị thứ tự và cấu trúc phù hợp của nội dung cho người dùng và xác định nội dung chính xác khi truy vấn của người dùng mơ hồ.
Chọn loại nội dung bạn cung cấp:
Chương trình truyền hình
If you're a TV show provider, you need to add the TVEpisode
, TVSeason
, and TVSeries
entity types in your media catalog feed. You can find the definitions for these entities in the Understand the available entity types section by filtering for these types.
Identify the relationships
Ensure the following relationships are established among them:
![](https://developers.google.cn/static/actions/media/images/image-media-actions-32.png?authuser=0&hl=vi)
partOfSeries
and partOfSeason
properties connect the TV show entity types together.A
TVEpisode
entity requires you to provide thepartOfSeries
property, which specifies the@id
andname
of the episode'sTVSeries
entity."partOfSeries": { "@type": "TVSeries", "@id": "http://www.example.com/my_favorite_tv_show", "name": "My Favorite TV Show", },
If your feed contains TV seasons, a
TVSeason
entity also requires you to specify itsTVSeries
entity in thepartOfSeries
property.A
TVEpisode
entity requires you to provide thepartOfSeason
property, which specifies the@id
andseasonNumber
of the episode'sTVSeason
entity."partOfSeason": { "@type": "TVSeason", "@id": "http://www.example.com/my_favorite_tv_show/s7", "seasonNumber": 7 },
If a
TVEpisode
entity doesn't have a correspondingTVSeason
entity in the feed, take the following steps to provide thepartOfSeason.@id
andpartOfSeason.seasonNumber
properties for theTVEpisode
entity:- Take its
partofSeries.@id
and attach a placeholder query field (for example, ?season1) to create a uniquepartOfSeason.@id
(for example, http://www.example.com/my_favorite_tv_show?season1). - Set
partOfSeason.seasonNumber
to 1.
partOfSeason.@id
for the correspondingTVSeason
entity or replace this placeholderpartOfSeason.@id
with the actual@id
of theTVSeason
entity.- Take its
Example
TVSeries
My Favorite TV Show
{
"@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
My Favorite TV Show (season 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
Episode 3 of My Favorite TV Show (season 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":{ … },
...
}
Đài
If you're a radio provider, you need to add the RadioBroadcastService
entity type in your media catalog feed. You can find the definitions for these entities in the Understand the available entity types section by filtering for this type.
Identify the relationships
Since there is only one entity type for such integrations, while there are no explicit relationships that need to be established, ensure that you collect the following information for the RadioBroadcastService
entities:
description
: The description of the radio station.broadcastDisplayName
: The display name of the radio station.areaServed
: The area where the radio station is available.callSign
: The official government-issued callsign of the radio station. For North America radio stations, this property is required.broadcastFrequency
: The frequency specification of the radio station.- For terrestrial AM/FM radio stations, this property is required.
- For online streaming-only content, the value is set to
INTERNET_STREAM
.
broadcastAffiliateOf
: The network of which this radio station provides programming. If the radio station is not part of any affiliation, this property is not required.broadcaster
: The organization who owns and operates the radio station.parentService
: The parent radio station. If the radio station is a repeater or translator of another radio station, this property is required.
Example
{
"@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": { … },
…
}
Âm nhạc
If you're a music provider, you need to add the MusicGroup
, MusicAlbum
, and MusicRecording
entity types in your media catalog feed. You can find the definitions for these entities in the Understand the available entity types section by filtering for these types.
MusicGroup
, MusicAlbum
, and MusicRecording
let your app or platform play more content from a playlist (MusicPlaylist
) once all the content from the seed entity is played. Check out the following scenario:
- A
MusicAlbum
entity contains a list of songs from Album XYZ (a seed entity). - A
MusicPlaylist
entity contains a playlist of songs that are similar to the songs from Album XYZ. - The
MusicAlbum
entity includes theMusicPlaylist
entity as an Entity-seeded Action.
In this setup, once all the songs from Album XYZ are played, your app can continue to play songs from the playlist provided by the MusicPlaylist
entity.
Entity Action and Entity-seeded Action
Listen Actions support two types of Actions:
- Entity Action: Plays a specific artist, album, or song (a seed entity). It includes
MusicGroup
,MusicAlbum
,MusicRecording
. - Entity-seeded Action: Plays content similar to the seed entity. It includes
MusicPlaylist
.- After completing an Entity Action, your app or platform may initiate an Entity-seeded Action.
- An Entity-seeded Action can include playback of the content from the seed entity.
We recommend you include an Entity-seeded Action in every Entity Action.
Identify the relationships
- For
MusicGroup
, if you provide an Entity-seeded Action, identify@id
andname
of itsMusicPlaylist
. - For
MusicAlbum
andMusicRecording
, you need to identify whichMusicGroup
they belong to.- Identify
@id
andname
of itsMusicGroup
. - If you provide an Entity-seeded Action, identify
@id
andname
of itsMusicPlaylist
.
- Identify
- For
MusicPlaylist
,- If applicable, identify
genre
that best represents the content in the playlist. - If the playlist is hand curated, identify
numTracks
.- The absence of
numTracks
tells Google that the playlist is an auto-generated, endless playlist.
- The absence of
- If applicable, identify
Example
MusicGroup
- Artist: 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":{ … },
},
...
}
MusicAlbum
- Album: My Favorite Album
- Artist: 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":{ … },
},
...
}
MusicRecording
- Song: My Favorite Song
- Artist: 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":{ … },
},
...
}
MusicPlaylist
- A custom playlist: "Top Pop Songs of the 2010s"
{
"@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 trực tiếp
Nếu là nhà cung cấp dịch vụ Truyền hình trực tiếp, bạn cần thêm các loại thực thể Organization
, BroadcastService
, CableOrSatelliteService
và TelevisionChannel
vào nguồn cấp dữ liệu danh mục truyền thông để đại diện cho nhóm kênh của mình. Bạn cũng có thể cần cung cấp các thực thể BroadcastEvent
, TVSeries
, TVEpisode
, Movie
và SportsEvent
để đại diện cho EPG (hướng dẫn lập trình bầu cử) liên kết. Bạn có thể tìm định nghĩa cho các thực thể này trong phần Tìm hiểu các loại thực thể hiện có bằng cách lọc tìm các loại thực thể này. Để biết giải thích chi tiết hơn, bạn có thể truy cập trang Kênh truyền hình trực tiếp.
Mối quan hệ giữa các pháp nhân đại diện cho các kênh truyền hình trực tiếp
Hình dưới đây cho thấy mối liên hệ giữa các thực thể Organization
, BroadcastService
, CableOrSatelliteService
và TelevisionChannel
:
![Liên kết giữa các loại thực thể kênh truyền hình trực tiếp](https://developers.google.cn/static/actions/media/images/image-live-tv-channel-01.jpg?authuser=0&hl=vi)
- Thực thể
Organization
(toán tử) đại diện cho nhà cung cấp nguồn cấp dữ liệu, đồng thời là tổ chức mẹ của dịch vụCableOrSatelliteService
cũng được kết nối bằng thuộc tínhprovider
trên thực thểCableOrSatelliteService
. - Các thực thể
Organization
tương ứng với thực thểBroadcastService
được kết nối bằng thuộc tínhbroadcastAffiliateOf
trên thực thểBroadcastService
. - Các thực thể
TelevisionChannel
kết nối với thực thểCableOrSatelliteService
, đại diện cho dòng giới thiệu mà chúng thuộc về bằng cách sử dụng thuộc tínhinBroadcastLineup
. - Các thực thể
TelevisionChannel
kết nối với thực thểBroadcastService
có kênh mà chương trình này cung cấp bằng cách sử dụng thuộc tínhprovidesBroadcastService
.
Bạn nên xem qua trang khái niệm Kênh truyền hình trực tiếp để biết các ví dụ cụ thể về cách thiết lập mối quan hệ giữa các tổ chức BroadcastService và Tổ chức.
Mối quan hệ giữa các kênh và hướng dẫn lập trình (EPG)
Hình dưới đây cho thấy cách thực thể BroadcastEvent
liên kết với các thực thể còn lại trong nguồn cấp dữ liệu.
![Mối liên kết giữa các loại thực thể sự kiện Truyền hình trực tiếp](https://developers.google.cn/actions/media/images/image-live-tv-event-01.png?authuser=0&hl=vi)
- Các thực thể
BroadcastEvent
, đại diện cho hướng dẫn lập trình (EPG) củaBroadcastService
, được kết nối với các thực thểBroadcastService
bằng cách sử dụng thuộc tínhpublishedOn
trên thực thểBroadcastEvent
. - Bạn cũng có thể kết nối
BroadcastEvent
thực thể với thực thểTVEpisode
,TVSeries
,Movie
cấp cao nhất bằng cách sử dụng thuộc tínhworkPerformed
. - Bạn cũng có thể kết nối
BroadcastEvent
thực thể với thực thểSportsEvent
cấp cao nhất bằng cách sử dụng thuộc tínhbroadcastOfEvent
. - Đối với những sự kiện trực tiếp không có kênh, các thực thể
BroadcastEvent
sẽ kết nối với thực thể đại diện cho sự kiện trực tiếp bằng thuộc tínhworkPerformed
hoặcbroadcastOfEvent
, tuỳ thuộc vào nội dung đang được phát trực tiếp. Trong những trường hợp như vậy, bạn không cần dùng thuộc tínhpublishedOn
vì không cần kết nối với kênh.
Ví dụ
Phần sau đây cung cấp các ví dụ và đoạn mã cho nhiều trường hợp sử dụng của Hành động xem.
Nhà cung cấp dịch vụ truyền hình quốc gia trên Internet
Tổ chức
Nhà cung cấp dịch vụ truyền hình giao thức Internet hư cấu, ExampleTV Digital Service (Organization
), cung cấp dịch vụ Truyền hình trực tiếp trên Internet gồm hai kênh sau: ExampleTV-Movie (Organization
) và 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"
}
Dịch vụ phát sóng
Hai thực thể BroadcastService
này cung cấp thông tin chi tiết về các đường liên kết sâu và yêu cầu về quyền truy cập đối với các kênh hư cấu ExampleTV-Movie và 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"
}
]
}
Dịch vụ truyền hình cáp hoặc vệ tinh
CableOrSatelliteService
này mô tả nhà cung cấp dịch vụ Dịch vụ kỹ thuật số ExampleTV có phạm vi quốc gia:
{
"@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",
}
]
}
Kênh Truyền Hình
Các thực thể TelevisionChannel
này cho biết rằng IPTV ExampleTV Digital Service có chương trình ExampleTV Movie trên kênh ExTV-Movie
và chương trình ExampleTV Comedy trên kênh 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"
}
}
Xem phần Ví dụ về chương trình truyền hình trực tiếp để biết thêm ví dụ.
Phát sóng một bộ phim trên kênh truyền hình
Một bộ phim được phát sóng trên mạng truyền hình Example TV (BroadcastService
) từ 5 giờ chiều đến 7 giờ tối ngày 12 tháng 7 năm 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"
}
}
Dịch vụ phát sóng
{
"@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"
}
]
}
}
}
Phim
{
"@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"
}
]
}
Xem phần Ví dụ về sự kiện truyền hình trực tiếp để biết thêm ví dụ.
Trận đấu thể thao trực tiếp được phát trực tuyến
Sự kiện phát sóng
{
"@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"
}
}
Sự kiện thể thao
{
"@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"
}
]
}
Xem phần Ví dụ thể thao để biết thêm ví dụ.