בדיקת DSPL היא כלי עזר שמאמת מערך נתונים של DSPL בהתאם למספר קריטריונים, כולל ציות לסכימת ה-DSPL הרשמית, עקביות של הפניות פנימיות ומבנה של קובץ CSV. הכלי יכול לאתר בעיות רבות שיגרמו לשגיאות בייבוא של DSPL, ולתקן את הבעיות האלה במהירות לפני תחילת תהליך הקלט.
שימו לב שכלי העזר לא בודק (עדיין) את מערך הנתונים של DSPL כל הבעיות האפשריות. אבל הוא יקבל את ולכן אם מערך הנתונים אומת בהצלחה על ידי הכלי, יש סיכוי גבוה שהנתונים יהיו ניתנים לייבוא ולהצגה חזותית של נתונים ציבוריים חוקר. מידע נוסף זמין בקטע פרטי הבדיקה לקבלת מידע נוסף.
מתבצעת בדיקת DSPL
היסודות
הערה: ההנחיות האלה מבוססות על ההנחה שיש לכם בוצעה כבר התקנה ההוראות המפורטות בדף הכלים של DSPL.
כדי להריץ בדיקת DSPL, עוברים לטרמינל או להנחיה במערכת :type
python dsplcheck.py [path to dataset XML or zip file]
שהמונח בסוגריים מוחלף בנתיב היחסי קובץ XML של מערך נתונים או חבילת DSPL מכווצת.
אם מערך הנתונים תקין, הכלי מדפיס 'אימות' בוצע בהצלחה" הודעה. אחרת, הוא יפיק הודעת שגיאה אחת או יותר שמתארת למה האימות נכשל. אם השגיאה השנייה מתרחשת, צריך לפתור את הבעיה את מערך הנתונים לפי ההוראות, ואז מריצים שוב את הכלי.
רמת בדיקה
כברירת מחדל, בדיקת DSPL תבחן את כל מערך הנתונים, כולל קובצי ה-CSV שיש הפניה אליו מקובץ ה-XML הראשי של ה-DSPL. התהליך הזה פועל היטב בקמפיינים עד מערכי נתונים בגודל בינוני, אבל הם עלולים להתעכב או שייגמר הזיכרון על מערכי נתונים גדולים מאוד (כלומר, מאות מגה-בייט גדול יותר).
כדי לטפל במקרים כאלה, יש בכלי רמת בדיקה
שמאפשרת להגדיר את היקף הבדיקה
הביצועים, לפי הצורך. כדי להשתמש בה, צריך להזין --checking_level=[...]
לפני הנתיב של מערך הנתונים, שבו המונח בסוגריים יוחלף באחד
הערכים הבאים:
schema_only
: מאמתים את קובץ ה-XML של מערך הנתונים לפי בסכימת ה-DSPL הרשמית, ואז לעצור.schema_and_model
: מתבצע אימות של הסכימה והמודל הבסיסי, אבל להתעלם מתוכן CSV שמופיע אחרי שורת הכותרת.full
: אימות סכימה, מודל ונתונים (ברירת מחדל).
בדיקת הפרטים
בדיקת DSPL מבצעת את רצף האימותים הבא:
- אימות של סכימת XML: מאמת שמערך הנתונים של מטא-נתונים הוא XML חוקי ותואם סכימת ה-DSPL הרשמית.
- קיים קובץ CSV: בודק שכל קובצי ה-CSV שיש אליהם הפניה ממערך הנתונים ואפשר לטעון אותם.
-
בדיקות קונספט: בדיקות שונות של כל קונספט
של מערך הנתונים, כולל:
- במערך הנתונים יש קונספט אחד לפחות*
- כל ההפניות לנושאים תקינות
- קיימת הפניה לטבלה אם הקונספט משמש כהתייחסות לא-זמן מאפיין*
- ההפניה לטבלה תקפה אם יש כזו
- בטבלה שצוינה יש עמודה שתואמת למזהה הקונספט
-
בדיקות פרוסות: בדיקות שונות של כל פרוסה
של מערך הנתונים, כולל:
- במערך הנתונים יש לפחות פלח אחד*
- לפחות פרוסה אחת מפנה למאפיין שאינו זמן*
- הפלח מכיל לפחות מדד אחד ומאפיין אחד
- בדיוק הפניות למאפיין אחד
time
מושג קנוני* - בכל פרוסה יש שילוב ייחודי של מאפיינים
- כל ההפניות למושגים מקומיים תקינות
- קיימת הפניה לטבלה
- ההפניה לטבלה תקינה
- הטבלה שצוינה כוללת עמודה לכל מאפיין ומדד בפלח
- סוגי העמודות בטבלה שאליה מתבצעת ההפניה תואמים לסוגי העמודות בפרוסות
-
בדיקות טבלה: בדיקות שונות של כל טבלה
של מערך הנתונים, כולל:
- במערך הנתונים יש טבלה אחת לפחות*
- מספר העמודות בקובץ ה-CSV זהה למספר העמודות בטבלה
- מחרוזות הכותרת בקובץ ה-CSV תואמות למזהי העמודות
- בכל עמודות התאריך יש מאפיין
format
- הפורמטים של התאריך תואמים (בערך) למושגי הזמן המשויכים,
למשל, הפורמט של העמודה
time:year
כולל לפחות תוy
אחד*
-
בדיקות נתונים בקובץ CSV: בדיקות שונות של קובצי הנתונים בפורמט CSV
מפנה לקובץ ה-XML של מערך הנתונים, כולל:
- בכל שורת CSV יש אותו מספר עמודות כמו בכותרת
- קובץ ה-CSV של הגדרת הקונספט לא יכול להכיל יותר משורה אחת לכל שורה מזהה קונספט
- קובץ ה-CSV של פרוסות מכיל לא יותר משורה אחת לכל שילוב של מאפיינים
- ערכי המאפיינים שמוזכרים בקובץ ה-CSV של פרוסה הם חוקיים
- קובץ CSV של פרוסות ממוין כראוי
- ערכי ה-CSV המספריים והצפים הם בפורמט תקין
קריטריונים שמסומנים ב-* נדרשים עבור להמחשה חזותית ב-Public Data Explorer, אבל מבחינה טכנית לא נדרשות בפורמט ה-DSPL.
מצד שני, הכלי לא בודק (עדיין) את הנושאים הבאים:
- ייבוא של מערך נתונים
- הפניות למאפיינים ולמאפיינים
- תוספי קונספט