דוגמה להעברת נתונים בבלוק

העברת קבוצה של נסיעות (Block transfer), שנקראת גם העברה במושב, זמינה כשקבוצת הנסיעות עומדת בתנאים הבאים:

  1. הנסיעות הן רצופות.
  2. אותו רכב מבצע את שני הנסיעות.
  3. הנסיעות מוקצות עם אותו ערך block_id בקובץ trips.txt בפיד התחבורה הציבורית.

דרישות מוקדמות

כדי שמפות Google תזהה שאפשר להעביר נסיעות ברצף, צריך לעמוד בדרישות המוקדמות הבאות:

  1. לנסיעות צריך להיות אותו ערך block_id ב-trips.txt. המשמעות היא שהנסיעה בוצעה באותו רכב.
  2. הנסיעות צריכות לפעול באותו ימים, או בימים רצופים אם נסיעה חוצה את חצות הלילה.
  3. הנסיעות צריכות להיות רצופות ולא חופפות.
  4. התחנה האחרונה של הנסיעה הנכנסת והתחנה הראשונה של הנסיעה היוצאת חייבות להיות זהות (מומלץ) או קרובות פיזית.

משתמשים ב-block_id כדי להפעיל העברות בלוקים

אפשר לבצע העברות בלוקים בין נסיעות רצופות במסלולים שונים או באותו מסלול, אם המסלול הוא קו מעגלי. משתמשים בשדה block_id כדי לציין אילו נסיעות נמצאות בבלוק אחד ואיפה אפשר לבצע העברות במושב.

דוגמה 1: חסימה של העברות לנסיעות מתוזמנות

בדוגמה הזו, נניח את הערכים הבאים בכל קובץ:

trips.txt

route_id trip_id block_id
RouteA RouteATrip1 Block1
RouteB RouteBTrip1 Block1


stop_times.txt

trip_id arrival_time departure_time stop_id stop_sequence
RouteATrip1 12:00:00 12:01:00 A 1
RouteATrip1 12:05:00 12:06:00 B 2
RouteATrip1 12:15:00 C 3
RouteBTrip1 12:18:00 C 1
RouteBTrip1 12:22:00 12:23:00 D 2
RouteBTrip1 12:30:00 E 3

בדוגמה הזו:

  • משתמש שמחפש מסלול מהתחנה א' לתחנה ה' יתבקש לעלות על המסלול א' בתחנה א' בשעה 12:00 ולהישאר ברכב כשהוא יגיע לתחנה ג' בסיום RouteATrip1. הסיבה לכך היא שאותו רכב משמש את RouteBTrip1 במסלול ב'.
  • נוסעים בקו RouteATrip1 שרוצים להמשיך לתחנה ב-RouteBTrip1 יכולים להישאר ברכב במהלך ההעברה.
  • נוסעים בנסיעות אחרות ברכבים אחרים באותם מסלולים לא יכולים להשתמש באפשרות הזו כי הם משתמשים ברכב אחר בכל נסיעה.

דוגמה 2: חסימה של העברות לנסיעות שמבוססות על תדירות עם זמני נסיעה מדויקים

אפשר להעביר מינויים רק לנסיעות שמבוססות על תדירות ועומדות באחד מהתנאים הבאים, בנוסף לדרישות שמפורטות בקטע תנאים מוקדמים:

  • אם הנסיעה היא לולאה, היא חייבת להתחיל ולהסתיים באותה עצירה.
  • ב-frequencies.txt, הערך של השדה exact_times חייב להיות 1.

בדוגמה הבאה מוסבר איך להגדיר את הערכים לתנאי השני:

trips.txt

route_id trip_id block_id
route1 route1_trip1 block_2
route2 route2_trip1 block_2


stop_times.txt

trip_id arrival_time departure_time stop_id stop_sequence
route1_trip1 08:00:00 08:04:00 stop1 1
route1_trip1 08:10:00 08:14:00 stop2 2
route1_trip1 08:20:00 stop3 3
route2_trip1 08:24:00 stop3 1
route2_trip1 08:30:00 08:34:00 stop4 2
route2_trip1 08:40:00 08:44:00 stop5 3


frequencies.txt

trip_id start_time end_time headway_secs exact_times
route1_trip1 08:00:00 08:20:00 600 1
route2_trip1 08:24:00 08:44:00 600 1

בדוגמה הזו:

  • משתמש שמחפש מסלול מ-stop1 ל-stop5 יתבקש לעלות על האוטובוס ב-stop1 בשעה 08:00 ב-route1. לאחר מכן המשתמש נשאר ברכב כשהוא מגיע ל-stop3 בסיום route1_trip1. הסיבה לכך היא שאותו רכב משמש את route2_trip1 עבור route2.
  • נוסעים בקו route1_trip1 שרוצים להמשיך לתחנה ב-route2_trip1 יכולים להישאר ברכב במהלך ההעברה.
  • נוסעים בנסיעות אחרות ברכבים אחרים באותם מסלולים לא יכולים להשתמש באפשרות הזו כי הם משתמשים ברכב אחר בכל נסיעה.
  • ניקח לדוגמה את route1_trip1. הערך של headway_secs הוא מחצית המרווח בין start_time ל-end_time. במקרה כזה, המשמעות היא שיש שתי נסיעות. מידע נוסף על השימוש ב-headway_secs זמין בחומר העזר בנושא לוחות זמנים ב-GTFS באתר gtfs.org.

חסימת העברה בקו לולאה

בקו מעגלי, התחנה הראשונה והאחרונה של הנסיעה זהות ויש להן את אותו ערך של stop_id. הדרישה הזו חלה גם על נסיעות לפי לוח זמנים וגם על נסיעות לפי תדירות.

אם לנסיעות ברצף באותו מסלול יש את אותו ערך block_id, המערכת מאפשרת העברה בתוך הרכב או העברה בתוך המושבים, כך שהנוסעים בנסיעה הראשונה יכולים להישאר ברכב כשהוא ממשיך במסלול הבא.

בלוקים תקינים בפיד GTFS

כדי שאפשר יהיה להעביר בלוקים, צריך להגדיר בלוק אחד או יותר בפיד בצורה נכונה. כדי לעבור את תהליך האימות, נסיעות ששייכות לאותו בלוק לא יכולות לחפוף, וצריך להיות להן אותו ערך route_type (רכבת תחתית, רכבת, אוטובוס וכו'). נסיעות יכולות להשתייך לאותו בלוק גם אם הן מתרחשות בימים שונים. אם מוגדרים בלוקים בפיד סטטי, הם יופיעו בדוח האימות בכרטיסייה Overview (סקירה כללית).