Entitäten mit JSON-Schemas validieren

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 und TVSeason.
  • Das Live-TV-Schema validiert die Entitäten BroadcastEvent, BroadcastService, CableOrSatelliteService, Movie, Organization, SportsEvent, TelevisionChannel, TVEpisode, TVSeason und TVSeries.
  • Das Music Schema validiert die Entitäten MusicAlbum, MusicGroup, MusicPlaylist und MusicRecording.
  • 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")