SportsEvents – Modellierung, Best Practices und Beispielfeed

Definition

Ein SportsEvent ist ein Entitätstyp, der ein Sportspiel oder eine vollständige Wiederholung eines Sportspiels darstellt.

Was kann als SportsEvent modelliert werden? Ein Sportspiel
Was kann nicht als SportsEvent modelliert werden?

Jegliche Kurzinhalte, Clipinhalte oder begleitende Inhalte. Hier ist die Liste:

  • Zufällige Recaps oder kurze Clips noch einmal abspielen
  • Vorschauen des Spiels
  • Höhepunkte des Spiels
  • Drehpannen
  • Clips von Interviews mit Spielern
  • Videos mit Einblicken hinter die Kulissen
  • Spielrezensionen (von Nutzern oder anderweitig)
  • Zufällige kurze Clips aus dem Spiel

Wie gehe ich mit solchen begleitenden Inhalten um?

Gängige Anwendungsfälle für SportsEvents

S.-Nr. Beschreibung Entitäten erforderlich
Fall 1 Ich muss ein SportsEvent modellieren, das Teil meines Video-on-Demand-Katalogs ist. SportsEvent für das Spiel
Fall 2

Ich muss ein SportsEvent modellieren, das Teil meines Live-TV-Katalogs und online gestreamt wird

Das Spiel wird über das Internet gestreamt und ist mit keinem Kanal verknüpft.

SportsEvent für das Spiel

BroadcastEvent für die Übertragung des Spiels.

Fall 3 Ich möchte ein SportsEvent modellieren, das Teil meines Live-TV-Katalogs ist und online auf einem Kanal gestreamt wird.

SportsEvent für das Spiel

Broadcast für die Ausstrahlung des Spiels.

BroadcastService, Organization, TelevisionChannel, CableOrSatelliteService Entitäten, die den Kanal und das Paket repräsentieren.

Fall 4 Kombinationen der drei oben genannten Fälle. Wenn Sie einen Teil der vorherigen Anwendungsfälle kombinieren, müssen Sie die Entitätstypen in der entsprechenden Spalte „Erforderliche Entitäten“ angeben.

Best Practices und Einblicke zu einigen Prüfungen

Seriennummer Entitäten erforderlich Vorgaben
Fall 1

Ich muss ein SportsEvent modellieren, das Teil meines Video-on-Demand-Katalogs ist.

Entitäten erforderlich

  • SportsEvent für das Spiel

Richtlinien für die Modellierung

Der Deeplink zum Spiel muss in der Entität „SportEvent“ über die Property „SportEvent.potentialAction“ angegeben werden.

Fall 2

Ich muss ein SportsEvent modellieren, das Teil meines Live-TV-Katalogs und online gestreamt wird.

Das Spiel wird über das Internet gestreamt und ist mit keinem Kanal verknüpft.

Entitäten erforderlich

  • SportsEvent für das Spiel
  • BroadcastEvent für die Ausstrahlung des Spiels

Richtlinien für die Modellierung

Unterfall 1: Das Spiel ist nur live verfügbar und nicht Teil des Video-on-Demand-Katalogs.

  • Die Entität BroadcastEvent muss angegeben werden, um den Zeitplan der Übertragung freizugeben.
  • Der Deeplink zum Spiel muss für die Entität BroadcastEvent mit der Property BroadcastEvent.potentialAction angegeben werden.
  • Da das Spiel nur live angesehen werden kann, darf die Entität SportsEvent keine Deeplinks haben. Das heißt, SportsEvent.potentialAction darf nicht angegeben werden.
  • BroadcastEvent.broadcastOfEvent muss angegeben werden, da das Spiel an keine Kanalübertragung gebunden ist.

Unterfall 2: Das Spiel ist live und als Teil des Video-on-Demand-Katalogs verfügbar. Dies kann passieren, wenn eine Spielwiederholung übertragen wird.

  • Die Entität BroadcastEvent muss angegeben werden, um den Zeitplan der Übertragung freizugeben.
  • Der Deeplink zum Spiel muss in der Entität BroadcastEvent mit der Property BroadcastEvent.potentialAction angegeben werden.
  • Da das Spiel im Rahmen des Video-on-Demand-Katalogs live angesehen werden kann, muss die SportsEvent-Entität auch einen Deeplink haben. Die SportsEvent.potentialAction muss angegeben werden, um den Nutzer zum Video-on-Demand-Katalog weiterzuleiten.
  • BroadcastEvent.publishedOn darf nicht angegeben werden, da das Spiel an keine Kanalübertragung gebunden ist.

Durchzuführende Qualitätsprüfungen

  • Setze die Eigenschaft BroadcastEvent.isLiveBroadcast auf true, wenn das Spiel tatsächlich läuft. Setze die Eigenschaft bei einer erneuten Spielaufnahme nicht auf true.
  • Für BroadcastEvents, die nicht live sind, darf BroadcastEvent.startDate normalerweise nicht vor dem tatsächlichen SportsEvent startDate liegen.
  • BroadcastEvents sollte keine publishedOn -Property haben, da die Übertragungsstreams im Internet und nicht an einen Kanal angehängt ist.
Fall 3

Ich muss eine SportsEvent modellieren, die Teil meines Live-TV-Katalogs ist und online auf einem Kanal gestreamt wird.

Entitäten erforderlich

  • SportsEvent, der das Spiel repräsentiert.
  • BroadcastEvent für die Ausstrahlung des Spiels.
  • BroadcastService, Organization, TelevisionChannel, CableOrSatelliteService Entitäten, die den Kanal und das Paket repräsentieren.

Richtlinien für die Modellierung

Unterfall 1: Das Spiel ist nur live verfügbar und nicht Teil des Video-on-Demand-Katalogs.

  • Teile den Zeitplan der Übertragung. Dazu geben Sie die Entität BroadcastEvent an.
  • Stelle den Kanal und das Programm des Anbieters dar. Geben Sie dazu die Entitäten BroadcastService, Organization, TelevisionChannel und CableOrSatelliteService an.
  • Geben Sie den Deeplink BroadcastService an. Stellen Sie sie mit dem Attribut BroadcastService.potentialAction dar.
  • Gib die Property BroadcastEvent.potentialAction nicht an.
  • Da das Spiel nur live angesehen werden kann, darf die Entität SportsEvent keinen Deeplink haben. Gib beispielsweise nicht SportsEvent.potentialAction an.
  • Geben Sie BroadcastEvent.publishedOn an und verweisen Sie auf die Entität BroadcastService, die den Kanal darstellt, auf dem die Übertragung stattfindet.

Unterfall 2: Das Spiel ist live und als Teil des Video-on-Demand-Katalogs verfügbar. Dies kann passieren, wenn eine Spielaufzeichnung übertragen wird.

  • Geben Sie die Entität BroadcastEvent an, um den Zeitplan der Übertragung freizugeben.
  • Gib die Entitäten BroadcastService, Organization, TelevisionChannel und CableOrSatelliteService an, die den Kanal und das Anbieterpaket darstellen.
  • Geben Sie den Deeplink BroadcastService zu dem Kanal an, auf dem die Spielübertragung stattfindet. Er wird durch die Property BroadcastService.potentialAction dargestellt.
  • Gib das Attribut BroadcastEvent.potentialAction nicht an.
  • Da das Spiel live und als Teil des Video-on-Demand-Katalogs angesehen werden kann, muss die SportsEvent-Entität auch einen Deeplink haben. Beispielsweise kann SportsEvent.potentialAction angegeben werden, über das der Nutzer zum Video-on-Demand-Katalog weitergeleitet wird.
  • Geben Sie BroadcastEvent.publishedOn an und verweisen Sie auf die Entität BroadcastService, die den Kanal darstellt, auf dem die Übertragung stattfindet.

Durchzuführende Qualitätsprüfungen

  • Setze die Eigenschaft BroadcastEvent.isLiveBroadcast auf true, wenn das Spiel tatsächlich läuft. Setze die Eigenschaft bei einer erneuten Spielaufnahme nicht auf true.
  • Für nicht live übertragene BroadcastEvents-Werte kann BroadcastEvent.startDate in der Regel nicht vor dem tatsächlichen SportsEvent-startDate liegen.
  • Da das Spiel auf einem Kanal ausgestrahlt wird, fügen Sie über die Property BroadcastService.potentialAction einen Deeplink hinzu. Die Entität BroadcastEvent darf in diesem Fall keinen Deeplink haben.

Beispiele

Fall 1: Eine Sportveranstaltung, die Teil des Video-on-Demand-Katalogs ist


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

Fall 2: Eine Sportveranstaltung, die Teil des Live-TV-Katalogs ist und online gestreamt wird

Übertragungsereignis


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

Sportveranstaltung


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

Fall 3: Eine Sportveranstaltung, die Teil des Live-TV-Katalogs ist und online auf einem Kanal gestreamt wird

Übertragungsereignis


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

Sportveranstaltung


{
  "@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 Entitäten gemäß Definition im Abschnitt Live-TV-Kanal unter „Konzepte“

Wie gehe ich mit begleitenden Inhalten um?

Was gilt als begleitende Inhalte?
  • Zufällige Recaps oder kurze Clips noch einmal abspielen
  • Vorschauen des Spiels
  • Höhepunkte des Spiels
  • Drehpannen
  • Clips von Interviews mit Spielern
  • Videos mit Einblicken hinter die Kulissen
  • Spielrezensionen (von Nutzern oder anderweitig)
  • Weitere zufällige kurze Clips aus dem Spiel
Seriennummer Anwendungsfall Richtlinien für die Modellierung
Fall 1 Mein Video-on-Demand-Katalog enthält begleitende Inhalte.
  • Dies wird nicht unterstützt und kann daher nicht im Feed angegeben werden.
  • Sie können jedoch ViTA verwenden, um einen Teil dieser Inhalte bereitzustellen. Weitere Informationen zu ViTA erhalten Sie von Ihrem Google-Ansprechpartner.
Fall 2 Mein Live-Katalog enthält begleitende Inhalte

Unterfall 1: Inhalte können live im Internet gestreamt werden

  • Geben Sie die Entität BroadcastEvent an, um den Zeitplan der Übertragung freizugeben.
  • Geben Sie den Deeplink des Inhalts mit der Property BroadcastEvent.potentialAction an.
  • Füge alle zugehörigen Metadaten (zum Clip) direkt zur BroadcastEvent hinzu. Bilder können beispielsweise mit der Eigenschaft BroadcastEvent.image hinzugefügt werden. Altersfreigaben können mit der BroadcastEvent.contentRating -Property hinzugefügt werden.
  • Da dieser Inhaltstyp kein SportsEvent ist, darf der Feed keine SportsEvent-Entität enthalten. Daher darf die Eigenschaft broadcastOfEvent für BroadcastEvent nicht angegeben werden.
  • Da sie nicht an einen Kanal gebunden ist, solltest du die publishedOn -Property nicht im BroadcastEvent angeben.

Unterfall 2: Inhalte können im Internet auf einem Kanal live gestreamt werden

  • Die Entität BroadcastEvent muss angegeben werden, um den Zeitplan der Übertragung freizugeben.
  • Die Entitäten BroadcastService, Organization, TelevisionChannel und CableOrSatelliteService müssen zur Darstellung des Kanals und des Anbieterpakets angegeben werden.
  • Der Deeplink zum Spiel muss einfach der BroadcastService -Deeplink sein, der durch die Property BroadcastService.potentialAction dargestellt wird.
  • Das Attribut BroadcastEvent.potentialAction darf nicht angegeben werden.
  • Alle zugehörigen Metadaten (zum Clip) müssen direkt dem BroadcastEvent hinzugefügt werden. Bilder können beispielsweise mit der Eigenschaft BroadcastEvent.image hinzugefügt werden. Altersfreigaben können über die BroadcastEvent.contentRating-Property hinzugefügt werden.
  • Da dieser Inhaltstyp kein SportsEvent ist, darf der Feed keine SportsEvent-Entität enthalten. Daher darf die Eigenschaft broadcastOfEvent für das BroadcastEvent nicht angegeben werden.
  • Da er an einen Kanal gebunden ist, musst du die publishedOn-Eigenschaft im BroadcastEvent angeben.
Fall 3 Ich biete begleitende Inhalte als Teil meines Video-on-Demand- und Live-TV-Katalogs an

Da der begleitende Video-on-Demand-Sportinhalt derzeit nicht im Feed akzeptiert wird, ähnelt dies Fall 2. Folgen Sie der Anleitung.

Häufig gestellte Fragen

F: Wo finde ich die zugehörigen Spezifikationen für die oben genannten Entitäten?

A: Die erforderlichen Spezifikationen finden Sie hier.

Allgemeine Dokumentation Link
SportsEvent Link
BroadcastService, Organization, TelevisionChannel , CableOrSatelliteService Link
BroadcastEvent Link

F: Gibt es ein ausführlicheres Dokument, in dem erklärt wird, wie die Live-TV-Kanäle und -Pakete aussehen?

A: Ja. Weitere Details finden Sie unter „Konzepte“ im Abschnitt Live-TV-Kanal. Sie können gern Lesezugriff anfordern, wenn Sie das Dokument nicht ansehen können.

F: Unterstützt ViTA auch vollständige Livespiele und vollständige Spielaufzeichnungen?

A: ViTA unterstützt Metadaten zu ligabasierten vollständigen Live-Spielen und vollständigen Spielwiederholungen (zusätzlich zu einem Teil der begleitenden Inhalte).

  • Für Partner, die bereits einen funktionierenden Media Actions-Feed bei Google oder ein Video-on-Demand- oder Live-TV-Angebot haben, muss der Feed erweitert werden und auch die unterstützten SportsEvent-Typen enthalten sein.

    • Kurzfristig können Partner ViTA für die Aufnahme von begleitenden Inhalten verwenden. Die Unterstützung aller Arten von Inhalten über den Feed sollte langfristig eingeführt werden.
  • Für Partner, die kein Video-on-Demand-Angebot oder Live-TV-Angebot haben, aber nur Ligabasierte Sportveranstaltungen und begleitende Inhalte anbieten, ist ViTA eine gute Option für den Einstieg. Weitere Informationen zu ViTA erhalten Sie von Ihrem Google-Ansprechpartner.