Wydarzenia sportowe – modelowanie, sprawdzone metody i przykładowy plik danych

Definicja

SportsEvent to typ elementu reprezentujący mecz sportowy lub pełną powtórkę meczu sportowego.

Co można modelować jako SportsEvent? mecz sportowy,
Czego nie można modelować jako SportsEvent?

wszelkie krótkie treści lub klipy albo treści dodatkowe; Oto lista:

  • Losowe podsumowanie lub ponowne odtwarzanie krótkich klipów
  • Podgląd gry
  • Najciekawsze momenty meczu
  • Wpadki w grach
  • Klipy z wywiadami z zawodnikami
  • Filmy zza kulis
  • recenzje gier (utworzone przez użytkowników lub inne),
  • losowe krótkie klipy z meczu,

Jak postępować w przypadku takich treści dodatkowych?

Typowe przypadki użycia SportsEvents

S.No. Opis Wymagane encje
Przypadek 1 Muszę modelować SportsEvent, który jest częścią mojego katalogu wideo na żądanie. SportsEvent reprezentuje grę.
Przypadek 2

Chcę modelować SportsEvent, który jest częścią mojego katalogu telewizji na żywo i jest transmitowany online

Gra jest przesyłana strumieniowo przez internet i nie jest powiązana z żadnym kanałem.

SportsEvent reprezentuje grę.

BroadcastEvent reprezentujący transmisję meczu.

Przypadek 3 Muszę modelować SportsEvent, który jest częścią mojego katalogu telewizji na żywo i jest transmitowany online na kanale.

SportsEvent reprezentuje grę.

Broadcast reprezentujące transmisję meczu.

BroadcastService, Organization, TelevisionChannel, CableOrSatelliteService podmioty reprezentujące kanał i program.

Przypadek 4 Kombinacje 3 poprzednich przypadków. Jeśli połączysz podzbiór wcześniejszych przypadków użycia, musisz podać typy elementów w odpowiedniej kolumnie „Wymagane elementy”.

Sprawdzone metody i informacje o kilku przeprowadzanych przez nas weryfikacjach

S.No. Wymagane encje Wytyczne
Przypadek 1

Muszę modelować SportsEvent, który jest częścią mojego katalogu wideo na żądanie.

Wymagane encje

  • SportsEvent reprezentujący grę

Wytyczne dotyczące modelowania

Precyzyjny link do gry musi być podany w elemencie SportsEvent za pomocą właściwości SportsEvent.potentialAction.

Wymogi związane z jakością

  • Ustaw SportsEvent.potentialAction.actionAccessibilityRequirement.availabilityStarts co najmniej 14 dni przed SportsEvent.startDate. Nie chodzi o to, aby wymagać dostarczania danych o wydarzeniach sportowych z 14-dniowym wyprzedzeniem. Dane o wydarzeniach mogą być dostarczane później. Wartość availabilityStarts musi być jednak ustawiona co najmniej 14 dni przed wydarzeniem.
  • Ustaw SportsEvent.potentialAction.actionAccessibilityRequirement.availabilityEnds po SportsEvent.endDate.
Przypadek 2

Chcę modelować SportsEvent, które jest częścią mojego katalogu telewizji na żywo i jest transmitowane online.

Gra jest przesyłana strumieniowo przez internet i nie jest powiązana z żadnym kanałem.

Wymagane encje

  • SportsEvent reprezentujący grę
  • BroadcastEvent reprezentujące transmisję meczu,

Wytyczne dotyczące modelowania

Przypadek 1. Mecz jest dostępny tylko na żywo (a nie w katalogu filmów na żądanie)

  • Aby udostępnić harmonogram transmisji, należy podać element BroadcastEvent.
  • Precyzyjny link do gry musi być podany w elemencie BroadcastEvent za pomocą właściwości BroadcastEvent.potentialAction.
  • Ponieważ mecz jest dostępny tylko na żywo, encja SportsEvent nie może zawierać żadnych precyzyjnych linków. Oznacza to, że nie można podać wartości SportsEvent.potentialAction.
  • BroadcastEvent.broadcastOfEvent musi być podany, ponieważ gra nie jest powiązana z żadną transmisją kanałową.

Podprzypadek 2. Mecz jest dostępny na żywo i w katalogu filmów na żądanie (może się to zdarzyć, gdy transmitowana jest powtórka meczu)

  • Aby udostępnić harmonogram transmisji, musisz podać podmiot BroadcastEvent.
  • Precyzyjny link do gry musi być podany w elemencie BroadcastEvent za pomocą właściwości BroadcastEvent.potentialAction.
  • Ponieważ mecz jest dostępny do obejrzenia na żywo w ramach katalogu filmów na żądanie, element SportsEvent musi też mieć precyzyjny link. Aby przekierować użytkownika do katalogu filmów na żądanie, musisz podać SportsEvent.potentialAction.
  • BroadcastEvent.publishedOn nie może być podany, ponieważ gra nie jest powiązana z żadną transmisją kanałową.

Wymogi związane z jakością

  • Ustaw właściwość BroadcastEvent.isLiveBroadcast na true, gdy gra jest transmitowana na żywo. W przypadku powtórki meczu nie ustawiaj właściwości na true.
  • W przypadku BroadcastEvents, które nie są transmitowane na żywo, BroadcastEvent.startDate zwykle nie może być wcześniejsza niż rzeczywista SportsEvent startDate.
  • BroadcastEvents nie powinna mieć właściwości publishedOn , ponieważ transmisja jest strumieniowana w internecie i nie jest powiązana z kanałem.
Przypadek 3

Chcę modelować SportsEvent, który jest częścią mojego katalogu telewizji na żywo i jest transmitowany online na kanale.

Wymagane encje

  • SportsEvent, który reprezentuje grę.
  • BroadcastEvent – reprezentuje transmisję meczu.
  • BroadcastService, Organization, TelevisionChannel, CableOrSatelliteService podmioty reprezentujące kanał i program.

Wytyczne dotyczące modelowania

Przypadek 1. Mecz jest dostępny tylko na żywo (a nie w katalogu filmów na żądanie)

  • Udostępnij harmonogram transmisji. W tym celu podaj jednostkę BroadcastEvent.
  • reprezentują kanał i ofertę dostawcy, Aby to zrobić, podaj jednostki BroadcastService, Organization, TelevisionChannelCableOrSatelliteService .
  • Podaj precyzyjny link do usługi BroadcastService. Przedstaw go za pomocą właściwości BroadcastService.potentialAction.
  • Nie podawaj właściwości BroadcastEvent.potentialAction.
  • Ponieważ mecz jest dostępny tylko na żywo, encja SportsEvent nie może mieć żadnego precyzyjnego linku. Nie podawaj na przykład SportsEvent.potentialAction.
  • Podaj BroadcastEvent.publishedOn i skieruj go na BroadcastService podmiot reprezentujący kanałBroadcastService, na którym będzie transmitowane wydarzenie.

Podprzypadek 2. Mecz jest dostępny na żywo i w ramach katalogu wideo na żądanie (może się to zdarzyć, gdy transmitowana jest powtórka meczu)

  • Podaj encję BroadcastEvent, aby udostępnić harmonogram transmisji.
  • Podaj encje BroadcastService, Organization, TelevisionChannelCableOrSatelliteService reprezentujące kanał i ofertę dostawcy.
  • Podaj BroadcastServiceprecyzyjny link do kanałuBroadcastService.potentialAction, na którym będzie transmitowana gra. Jest on reprezentowany przez właściwość BroadcastService.potentialAction.
  • Nie podawaj właściwości BroadcastEvent.potentialAction.
  • Ponieważ mecz jest dostępny na żywo i w katalogu filmów na żądanie, element SportsEvent musi też zawierać precyzyjny link. Możesz na przykład podać SportsEvent.potentialAction , który przekierowuje użytkownika do katalogu wideo na żądanie.
  • Podaj BroadcastEvent.publishedOn i skieruj go na BroadcastService podmiot reprezentujący kanałBroadcastService, na którym będzie transmitowane wydarzenie.

Wymogi związane z jakością

  • Ustaw właściwość BroadcastEvent.isLiveBroadcast na true, gdy gra jest transmitowana na żywo. W przypadku powtórki meczu nie ustawiaj właściwości na true.
  • W przypadku BroadcastEvents, które nie są transmitowane na żywo, BroadcastEvent.startDate zwykle nie może być wcześniejsza niż rzeczywista SportsEvent startDate.
  • Ponieważ gra jest transmitowana na kanale, dodaj precyzyjny link za pomocą właściwości BroadcastService.potentialAction. W tym przypadku encja BroadcastEvent nie może mieć precyzyjnego linku.

Przykłady

Przypadek 1. Wydarzenie sportowe, które jest częścią katalogu wideo na żądanie


{
  "@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 at 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": "2018-09-16T10:00-08:00",
  "endDate": "2018-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"
    }
  ],
"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-01T10:00-08:00",
      "availabilityEnds": "2019-10-21T10:35:29Z",
      "requiresSubscription": {
        "@type": "MediaSubscription",
        "name": "Example Package",
        "commonTier": true,
        "@id": "http://www.example.com/example_package"
       },
      "eligibleRegion": [
        {
          "@type": "Country",
          "name": "US"
        }
      ]
    }
  }
}

Przypadek 2. Wydarzenie sportowe, które jest częścią katalogu telewizji na żywo i jest transmitowane online

Transmitowane wydarzenie


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

Wydarzenie sportowe


{
  "@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 at 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": "2018-09-16T10:00-08:00",
  "endDate": "2018-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"
    }
  ]
}

Przypadek 3. Wydarzenie sportowe, które jest częścią katalogu telewizji na żywo i jest transmitowane online na kanale

Transmitowane wydarzenie


{
  "@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",
  "publishedOn": {
    "@type": "BroadcastService",
    "@id": "http://example.com/stations/example_tv"
  },
  "broadcastOfEvent": {
    "@type": "SportsEvent",
    "@id": "http://example.com/basketball/professional/final_game_6"
  }
}

Wydarzenie sportowe


{
  "@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 at 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": "2018-09-16T10:00-08:00",
  "endDate": "2018-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"
    }
  ]
}

BroadcastService, CableOrSatelliteService, TelevisionChannel, Organization podmioty zdefiniowane w sekcji Kanał telewizji na żywo w artykule Pojęcia

Jak radzić sobie z treściami dodatkowymi?

Co zalicza się do treści dodatkowych?
  • losowe podsumowanie lub ponowne odtwarzanie krótkich klipów;
  • Podgląd gry
  • Najciekawsze momenty meczu
  • Wpadki w grach
  • Klipy z wywiadami z zawodnikami
  • Filmy zza kulis
  • recenzje gier (utworzone przez użytkowników lub inne),
  • inne losowe krótkie klipy z gry,
S.No. Przypadek użycia Wytyczne dotyczące modelowania
Przypadek 1 W moim katalogu filmów na żądanie znajdują się treści dodatkowe.
  • Nie jest to obsługiwane i nie można podać w pliku danych.
  • ViTA może jednak służyć do udostępniania podzbioru tych treści. Aby dowiedzieć się więcej o ViTA, skontaktuj się z przedstawicielem Google.
Przypadek 2 Mam w katalogu treści dodatkowe

Podprzypadek 1. Treści są dostępne do transmisji na żywo w internecie

  • Podaj encję BroadcastEvent, aby udostępnić harmonogram transmisji.
  • Podaj precyzyjny link do treści za pomocą właściwości BroadcastEvent.potentialAction .
  • Dodaj wszelkie powiązane metadane (do klipu) bezpośrednio do elementu BroadcastEvent . Obrazy można np. dodać za pomocą właściwości BroadcastEvent.image . Oceny wiekowe można dodać za pomocą właściwości BroadcastEvent.contentRating .
  • Ponieważ ten typ treści nie jest SportsEvent, plik danych nie może zawierać elementu SportsEvent. W związku z tym nie należy podawać właściwości broadcastOfEvent w przypadku BroadcastEvent .
  • Nie jest on powiązany z kanałem, więc nie podawaj właściwości publishedOn BroadcastEvent.

Podprzypadek 2. Treści są dostępne do transmisji na żywo w internecie na kanale

  • Aby udostępnić harmonogram transmisji, musisz podać podmiot BroadcastEvent.
  • Aby przedstawić kanał i ofertę dostawcy, należy podać elementy BroadcastService, Organization, TelevisionChannel CableOrSatelliteService.
  • Precyzyjny link do gry musi być po prostu BroadcastService precyzyjnym linkiem reprezentowanym przez właściwość BroadcastService.potentialAction , która musi być podana.
  • Nie należy podawać właściwości BroadcastEvent.potentialAction.
  • Wszelkie powiązane metadane (klipu) muszą być dodane bezpośrednio do elementu BroadcastEvent. Obrazy można np. dodać za pomocą właściwości BroadcastEvent.image. Kategorie wiekowe można dodawać za pomocą właściwości BroadcastEvent.contentRating.
  • Ponieważ ten typ treści nie jest SportsEvent, plik danych nie może zawierać elementu SportsEvent. W związku z tym nie należy podawać właściwości broadcastOfEvent w elemencie BroadcastEvent.
  • Ponieważ jest ona powiązana z kanałem, podaj właściwość publishedOn w przypadku BroadcastEvent.
Przypadek 3 Mam treści dodatkowe dostępne w katalogu wideo na żądanie i telewizji na żywo.

Treści sportowe na żądanie nie są obecnie akceptowane w pliku danych, więc jest to podobne do przypadku 2.  Postępuj zgodnie z instrukcjami.

Najczęstsze pytania

P: Gdzie znajdę powiązane specyfikacje wymienionych wcześniej elementów?

O: Wymagane specyfikacje znajdziesz tutaj.

Ogólna dokumentacja Link
SportsEvent Link
BroadcastService, Organization, TelevisionChannel , CableOrSatelliteService Link
BroadcastEvent Link

P: Czy jest bardziej szczegółowy dokument, który wyjaśnia, jak modelować kanały telewizji na żywo i ich programy?

O: Tak. Więcej informacji znajdziesz w sekcji Kanał telewizji na żywo w artykule Pojęcia. Jeśli nie możesz wyświetlić dokumentu, poproś o uprawnienia do wyświetlania.

P: Czy ViTA obsługuje też pełne mecze na żywo i powtórki całych meczów?

O: ViTA obsługuje metadane dotyczące pełnych transmisji na żywo i powtórek całych meczów (oprócz podzbioru treści dodatkowych).

  • W przypadku partnerów, którzy mają już działający plik danych dotyczący działań związanych z multimediami w Google lub oferują wideo na żądanie lub telewizję na żywo, Google wymaga rozszerzenia pliku danych i uwzględnienia w nim obsługiwanych typów SportsEvent.

    • W krótkiej perspektywie partnerzy mogą używać ViTA do przetwarzania treści dodatkowych. Obsługa wszystkich typów treści w pliku danych będzie wprowadzana stopniowo w dłuższej perspektywie.
  • Dla partnerów, którzy nie oferują filmów na żądanie ani telewizji na żywo, ale udostępniają tylko sport ligowy i powiązane treści dodatkowe, ViTA to świetna opcja na początek. Aby dowiedzieć się więcej o ViTA, skontaktuj się z przedstawicielem Google.