JSON şemalarıyla varlıkları doğrulama

Feed'inizi oluştururken veya güncellerken varlıkları doğrulamak için aşağıdaki JSON kullanın Şemalar. Şemalar, JSON Şeması spesifikasyonuna dayanır. Oluşturduğunuz varlıkları doğrulamak için birim testi ekleyerek sorunları da belirleyebilirsiniz. Bu şemaları feed'inizin geliştirilmesini sağlar.

Medya İşlemleri şeması seçin

  • Seç-İzle Video Şeması Movie, TVEpisode, TVSeries ve TVSeason varlıklarını doğrular.
  • Canlı TV Şeması BroadcastEvent, BroadcastService, CableOrSatelliteService, Movie, Organization, SportsEvent, TelevisionChannel, TVEpisode, TVSeason ve TVSeries varlıklarını doğrular.
  • Music Schema (Müzik Şeması) MusicAlbum, MusicGroup, MusicPlaylist ve MusicRecording varlıklarını doğrular.
  • Radio Schema, RadioBroadcastService varlığı doğrular.

Bu şemalarda, tüm özellikler uygulanmamış olabileceğinden bilgi kaynağı olarak bu sitedeki spesifikasyonu kullanın.

Doğrulayıcı seçme

Doğrulayıcı uygulamalarının listesini json-schema.org adresinde bulabilirsiniz.

Sağlanan şemalar taslak 7'de yazılmış olduğundan, seçtiğiniz uygulamanın düzgün çalışması için bu sürümü desteklemesi gerekir.

Doğrulama örneği

Aşağıdaki örnekte, bir dosyadaki tüm varlıkların nasıl doğrulanacağı gösterilmektedir schema.json şema dosyasını ve jsonschema python modülünü kullanarak feed.json. Varlıklar, veri feed'i zarfı dokümanlarında belirtildiği gibi dataFeedElement özelliğini kullanmanız gerekir.


    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")