Per convalidare le entità quando crei o aggiorni il feed, utilizza il seguente JSON Schemi. Gli schemi si basano sulle specifiche degli schemi JSON. Aggiungendo un test delle unità per convalidare le entità generate, puoi rilevare problemi che potrebbero influire sulla qualità del feed. Puoi utilizzare questi schemi anche lo sviluppo del feed per evitare errori comuni.
Seleziona uno schema delle azioni multimediali
- Lo schema di Video On Demand convalida le entità
Movie
,TVEpisode
,TVSeries
eTVSeason
. - Lo schema per TV in diretta convalida le entità
BroadcastEvent
,BroadcastService
,CableOrSatelliteService
,Movie
,Organization
,SportsEvent
,TelevisionChannel
,TVEpisode
,TVSeason
eTVSeries
. - Music Schema convalida le entità
MusicAlbum
,MusicGroup
,MusicPlaylist
eMusicRecording
. - Radio Schema convalida
RadioBroadcastService
entità.
Utilizza la specifica su questo sito come fonte attendibile, poiché in questi schemi potrebbero non essere implementate tutte le funzionalità.
Scegli uno strumento di convalida
Puoi trovare l'elenco delle implementazioni dello strumento di convalida sul sito json-schema.org.
Gli schemi forniti sono scritti nella bozza 7, pertanto l'implementazione scelta deve supportare questa versione per funzionare correttamente.
Esempio di convalida
L'esempio seguente mostra come convalidare tutte le entità presenti in un file
feed.json
utilizzando il file di schema schema.json
e il modulo Python jsonschema. Le entità si trovano
proprietà dataFeedElement
come specificato nella documentazione relativa alla busta del feed di dati.
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")