フィードの作成時または更新時にエンティティを検証するには、次の JSON を使用します。 スキーマ。スキーマは JSON スキーマ仕様に基づいています。 生成したエンティティを検証する単体テストを追加すると、 フィードの品質に影響する問題これらのスキーマは、Terraform の 一般的なエラーを回避してください。
メディア アクション スキーマを選択する
- Video On Demand スキーマは、
Movie
、TVEpisode
、TVSeries
、TVSeason
エンティティを検証します。 - ライブテレビ スキーマは、
BroadcastEvent
、BroadcastService
、CableOrSatelliteService
、Movie
、Organization
、SportsEvent
、TelevisionChannel
、TVEpisode
、TVSeason
、TVSeries
エンティティを検証します。 - 音楽スキーマは、
MusicAlbum
、MusicGroup
、MusicPlaylist
、MusicRecording
のエンティティを検証します。 - ラジオのスキーマは、
RadioBroadcastService
エンティティを検証します。
これらのスキーマにはすべての機能が実装されているとは限らないため、このサイトの仕様を信頼できる情報源として使用してください。
バリデータを選択する
バリデータの実装の一覧は json-schema.org でご確認いただけます。
提供されているスキーマは draft 7 で記述されているため、選択した実装がこのバージョンをサポートして正常に動作する必要があります。
検証の例
次の例は、ファイル内のすべてのエンティティを検証する方法を示しています。
スキーマ ファイル schema.json
と Python モジュール jsonschema を使用した feed.json
。エンティティは
データフィード エンベロープのドキュメントで指定された dataFeedElement
プロパティ。
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")