Verwenden Sie die folgenden JSON-Schemas, um Entitäten beim Erstellen oder Aktualisieren Ihres Feeds zu validieren. Die Schemas basieren auf der JSON-Schemaspezifikation. Wenn Sie einen Unit-Test hinzufügen, um die von Ihnen generierten Entitäten zu validieren, können Sie Probleme erkennen, die sich auf die Feedqualität auswirken. Sie können diese Schemas auch während der Entwicklung Ihres Feeds verwenden, um häufige Fehler zu vermeiden.
Schema für Medienaktionen auswählen
- Das Video-on-Demand-Schema validiert die Entitäten
Movie
,TVEpisode
,TVSeries
undTVSeason
. - Das Live-TV-Schema validiert die Entitäten
BroadcastEvent
,BroadcastService
,CableOrSatelliteService
,Movie
,Organization
,SportsEvent
,TelevisionChannel
,TVEpisode
,TVSeason
undTVSeries
. - Das Music Schema validiert die Entitäten
MusicAlbum
,MusicGroup
,MusicPlaylist
undMusicRecording
. - Das Radio Schema validiert
RadioBroadcastService
-Entitäten.
Verwenden Sie die Spezifikation auf dieser Website als „Source of Truth“, da in diesen Schemas möglicherweise nicht alle Funktionen implementiert sind.
Prüfer auswählen
Eine Liste der Validierungsimplementierungen finden Sie unter json-schema.org.
Die bereitgestellten Schemas sind in Draft 7 geschrieben. Die von Ihnen ausgewählte Implementierung muss diese Version unterstützen, damit sie ordnungsgemäß funktioniert.
Beispiel für eine Validierung
Im folgenden Beispiel wird gezeigt, wie alle Entitäten in einer Datei feed.json
mithilfe der Schemadatei schema.json
und des Python-Moduls jsonschema validiert werden. Die Entitäten befinden sich in der Property dataFeedElement
, wie in der Dokumentation zum Data Feed-Envelope angegeben.
import json
from jsonschema import validate
# Loading the schema file
with open("schema.json", "r") as fp:
schema = json.load(fp)
# Opening the feed
with open("feed.json", "r") as fp:
feed = json.load(fp)
# Validating each entity in the feed
for entity in feed["dataFeedElement"] :
try:
validate(schema=schema, instance=entity)
print("Entity validated successfully")
except Exception as e:
# e may contain an explanation as to why the entity wasn't valid
print("Failed to validate the entity")