Para validar entidades ao criar ou atualizar seu feed, use o seguinte JSON Esquemas. Os esquemas são baseados na especificação do Esquema JSON. Ao adicionar um teste de unidade para validar as entidades geradas, é possível detectar problemas que possam afetar a qualidade do feed. Também é possível usar esses esquemas durante o desenvolvimento do seu feed para evitar erros comuns.
Selecionar um esquema de ações de mídia
- O esquema do Video On Demand valida as entidades
Movie
,TVEpisode
,TVSeries
eTVSeason
. - O esquema de TV ao vivo valida as entidades
BroadcastEvent
,BroadcastService
,CableOrSatelliteService
,Movie
,Organization
,SportsEvent
,TelevisionChannel
,TVEpisode
,TVSeason
eTVSeries
. - O Esquema de música valida as entidades
MusicAlbum
,MusicGroup
,MusicPlaylist
eMusicRecording
. - O Esquema de opção valida entidades
RadioBroadcastService
.
Use a especificação neste site como fonte, já que esses esquemas podem não ter todos os recursos implementados.
Escolher um validador
Encontre a lista de implementações do validador em json-schema.org (link em inglês).
Os esquemas fornecidos estão escritos no rascunho 7, portanto, a implementação escolhida precisa ser compatível com essa versão para funcionar corretamente.
Exemplo de validação
O exemplo a seguir mostra como validar todas as entidades presentes em um arquivo
feed.json
usando o arquivo de esquema schema.json
e o módulo Python jsonschema. As entidades estão no
propriedade dataFeedElement
conforme especificado na documentação do envelope do feed de dados.
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")