אימות ישויות עם סכימות JSON

כדי לאמת ישויות כשיוצרים או מעדכנים את הפיד, צריך להשתמש בסכימות ה-JSON הבאות. הסכימות מבוססות על מפרט JSON Schema. הוספת בדיקת יחידה לאימות הישויות שאתם יוצרים מאפשרת לכם לזהות בעיות שעשויות להשפיע על איכות הפיד. אפשר גם להשתמש בסכימות האלה במהלך הפיתוח של הפיד כדי למנוע שגיאות נפוצות.

בחירת סכימה של פעולות מדיה

מומלץ להשתמש במפרט שבדף הזה כמקור האמין, כי יכול להיות שלא כל התכונות יושמו בסכימות האלה.

בחירת מאמת

רשימת הטמעות של מאמתים זמינה בכתובת json-schema.org.

הסכימות שסופקו נכתבו בטיוטה 7, לכן כדי שההטמעה שתבחרו תפעל כמו שצריך, היא צריכה לתמוך בגרסה הזו.

דוגמה לאימות

בדוגמה הבאה מוסבר איך לאמת את כל הישויות שנמצאות בקובץ feed.json באמצעות קובץ הסכימה schema.json ומודול Python‏ jsonschema. הישויות נמצאות בנכס 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")