פערים בין נתוני GTFS / SIRI של משרד התחבורה לבין נתוני רכבת ישראל

במסגרת המעבר מה־API של רכבת ישראל למקורות המידע המוסדרים של משרד התחבורה, מיפינו פערים שמשפיעים ישירות על הנוסעים. המסמך מציג כל פער עם דוגמה מוחשית, ולצידו היכן בפרוטוקול ניתן להשלים את המידע החסר. הממצאים אומתו מחדש ב־4.8.2026 מול הפיד הפעיל (בתוקף 3–12.8) ומול הזרם החי של SIRI, אלא אם צוין תאריך אחר בסעיף.

עצירות עם המתנה של 1–2 דק׳ ב־GTFS
99.3%
לעומת כ־3% בלבד בנתוני רכבת ישראל
מידע על רציפים ב־GTFS
אין
שדה הרציף ריק בכל 70 תחנות הרכבת בפיד
סוגי עדכוני זמן־אמת שאינם מוזרמים ב־SIRI
3 מתוך 5
עיכובים ושינויי רציף מוזרמים; ביטולים, שינויי מסלול ותגבורים — לא
חלק א׳ · המידע הסטטי (GTFS)

1אין מידע על הרציף שבו עוצרת הרכבת

נתון הרציף — קריטי להתמצאות הנוסע בתחנה — קיים בנתוני רכבת ישראל אך נעדר לחלוטין מה־GTFS: כל 70 תחנות הרכבת מופיעות בפיד כרשומה שטוחה אחת לתחנה, ללא תחנות־בנות ברמת רציף ועם שדה רציף ריק בכל הרשומות.

אתר רכבת ישראל
08:24רכבת 522 · לנתניה רציף 6
08:54רכבת 226 · לירושלים רציף 2
GTFS · משרד התחבורה
08:24רכבת 522 · לנתניה אין נתון
08:54רכבת 226 · לירושלים אין נתון
היכן משלימים בפרוטוקול: GTFS תומך ברציפים באופן מובנה — תחנות־בנות ברמת רציף בקובץ stops.txt (location_type=0 עם parent_station ו־platform_code), והפניית שורות stop_times.txt של הרכבות אליהן. הנתון קיים במערכות רכבת ישראל — ה־API הקיים מחזיר רציף מתוכנן לכל רכבת בכל תחנה.

2זמני עצירה מנופחים — המתנה "מלאכותית" של 1–2 דקות כמעט בכל תחנה

שיעור עצירות הביניים שבהן מוצגת המתנה של 1–2 דקות (פער בין זמן ההגעה לזמן היציאה), בהשוואה בין שני המקורות — נמדד על כלל העצירות בפיד הפעיל (כ־53 אלף עצירות ביניים):

GTFS · משרד התחבורה
99.3%
נתוני רכבת ישראל
~3%
0%25%50%75%100%

התוצאה אינה רק נסיעה שנראית ארוכה יותר — הנוסע מפספס את הרכבת. דוגמה: רכבת 264 (הפרברית לבנימינה) בתחנת חדרה מערב:

מקור הגעה יציאה
GTFS · משרד התחבורה 17:10 17:12 שתי דקות אחרי היציאה בפועל
אפליקציית רכבת ישראל 17:10 17:10
בפועל · מסכי המידע ברכבת 17:08 17:10

רכבת ישראל מפרסמת זמן אחד לכל תחנה — למעט תל אביב סבידור מרכז, התחנה היחידה שבה מתפרסמת המתנה אמיתית (אלה כ־3% העצירות שבגרף). הזמן המתפרסם הוא בפועל זמן היציאה; הרכבת מגיעה לרוב כדקה־שתיים לפניו. ב־GTFS אותו זמן נרשם כזמן ההגעה, ועליו נוספת ההמתנה המלאכותית ב־departure_time — כך שזמן היציאה המוצג לנוסע (17:12) מאוחר מהיציאה בפועל (17:10). נוסע שמגיע לרציף ב־17:11 בהסתמך על ה־GTFS מפספס את הרכבת. בנוסף, זמני הנסיעה מוצגים ארוכים מהאמת, וחישובי החלפות בין רכבות מתעוותים.

היכן משלימים בפרוטוקול: פרסום arrival_time ו־departure_time אמיתיים ב־stop_times.txt, ללא תוספת מלאכותית. הנתונים קיימים במערכות רכבת ישראל — מסכי המידע בתוך הרכבות מציגים את זמני ההגעה בפועל.

3ימים חריגים (עבודות ושינויי לוח) אינם מעודכנים

דוגמה מהפיד הפעיל כעת: השווינו את לוח הזמנים המלא ליום ראשון 9.8.2026 — כל רכבת ורשימת העצירות שלה — בין ה־GTFS לבין מערכות רכבת ישראל. ה־GTFS מציג את הלוח הבסיסי ואינו משקף את התוכנית התפעולית בפועל:

אוגוסט 2026
9
יום ראשון
הפער ב־GTFS לאותו יום כמות דוגמאות
רכבות שמוצגות ב־GTFS אך לא ייצאו בפועל ✕4 רכבות רכבות 500 ו־501 (ציר בית שמש), 958 (רחובות–הרצליה), 1614 (תל אביב–הרצליה)
רכבות שייצאו בפועל אך חסרות ב־GTFS ✕7 רכבות רכבות 614, 784, 953, 968, 8718 מופיעות בפיד בימים אחרים ונשמטו דווקא ביום זה; רכבות 1501 ו־7507 אינן בפיד כלל
רכבות עם רשימת עצירות שגויה ✕135 רכבות עצירת לוד גני אביב שגויה ב־97 רכבות (ב־57 מוצגת עצירה שלא תתבצע, ב־40 העצירה חסרה); חדרה מערב חסרה ב־16 רכבות קו באר שבע–כרמיאל; חולון וולפסון ובת ים יוספטל חסרות ב־16 (ראו סעיף 4); קרית חיים וחוצות מפרץ חסרות ב־6

נוסע שמתכנן נסיעה לפי ה־GTFS ימתין לרכבת שלא תגיע, או יוותר על רכבת שדווקא כן תצא. המספרים הם רף תחתון: עוד 96 רכבות לא ניתנות להשוואה מלאה. מהמניין נופו רכבות מוצאי־שבת החוצות חצות, שמתויגות ביום שונה בכל מערכת. רשימת הרכבות המלאה זמינה — נשמח להעביר.

היכן משלימים בפרוטוקול: המנגנון כבר קיים — הפיד מתחדש מדי לילה, והשירות מוגדר ב־calendar_dates.txt ברמת תאריך בודד. נדרש שהתוכנית התפעולית של רכבת ישראל (עבודות, סגירות, שינויים נקודתיים) תוזרם ל־GTFS במקום לוח הזמנים הבסיסי בלבד.

4עצירות חסרות באופן שיטתי — וכל הזמנים שאחריהן שגויים

הצלבה מול היומן התפעולי היומי של רכבת ישראל חשפה דפוס שיטתי: 16 רכבות בציר תל אביב–באר שבע (611, 615, 619, 623, 626, 630, 635, 646, 651, 654, 658, 659, 662, 663, 667, 670) עוצרות בפועל בחולון וולפסון ובבת ים אלי כהן־יוספטל — אך ב־GTFS שתי העצירות חסרות בדיוק ברכבות האלה, בעוד ש־96 רכבות אחרות בפיד כן עוצרות בהן. מכיוון שה־GTFS מציג את הרכבות כחולפות ללא עצירה, כל תחנה במורד המסלול מוצגת מוקדם בשתי דקות בדיוק — 174 זמנים שגויים ביום אחד. דוגמה: רכבת 611 —

נתוני רכבת ישראל · רכבת 611
14 עצירות בפועל
GTFS · משרד התחבורה
12 עצירות חסרות: חולון וולפסון · בת ים אלי כהן־יוספטל

ברכבת 611, שלוש העצירות שלפני חולון תואמות את היומן לדקה; משם ואילך — תשע עצירות רצופות בסטייה של 2+ דקות. נוסע בחולון או בבת ים כלל לא ידע שהרכבת עוצרת בתחנה שלו, ונוסע בהמשך המסלול מקבל זמנים שגויים. פערים נוספים ברשימות עצירות זוהו ליום ראשון 9.8 (ראו סעיף 3) — נשמח להעביר רשימה מלאה.

5רכבות תגבור ותוספות ללוח אינן מגיעות ל־GTFS ול־SIRI

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

נתוני רכבת ישראל
06:06רכבת 543 · מודיעין מכבים רעות ← ירושלים ✓פעילה 4–6.8
GTFS · משרד התחבורה
06:06רכבת 543 · מודיעין מכבים רעות ← ירושלים ✕לא קיימת עד 9.8

דוגמה מאומתת (4.8.2026): רכבת 543 פועלת בפועל בימים שלישי–חמישי השבוע, אך בפיד — שמתחדש מדי לילה — היא מופיעה רק החל מיום ראשון 9.8. גם ביומן התפעולי היומי של רכבת ישראל מופיעות רכבות (543, 701) שאינן קיימות בפיד כלל, וביום ראשון 9.8 מצאנו 7 רכבות נוספות שפועלות ואינן בפיד (ראו סעיף 3).

היכן משלימים בפרוטוקול: תוספות מתוכננות מראש — הכללתן במחזור הלילי של ה־GTFS (trips.txt + calendar_dates.txt לתאריך הרלוונטי). תוספות באותו היום — במסגרת SIRI-SM הקיים: הזרמת הנסיעה כ־MonitoredStopVisit בכל תחנות המסלול — FramedVehicleJourneyRef (תאריך + מספר רכבת), OriginRef / DestinationRef, OriginAimedDepartureTime, ו־OnwardCalls עם זמן הגעה ורציף לכל תחנה — כך שאפליקציה יכולה להציג את הנסיעה במלואה גם ללא רשומה ב־GTFS. חשוב שהנסיעה תיכלל גם בסנאפשוטים (AllActiveTripsFilter / AllPlannedTripsFilter).
יצוין כפער: הערוץ שהתקן מגדיר לשינויי לוח באותו היום — שירות SIRI-ET (Estimated Timetable, עם סימון מפורש של נסיעות שנוספו ושבוטלו) — אינו פרוס כיום בישראל.

6לוח החגים מגיע ל־GTFS באיחור

תאריכי החגים ידועים חודשים מראש, והפיד מתחדש מדי לילה לחלון של עשרה ימים — ובכל זאת ה־GTFS ממשיך להציג לוח זמנים רגיל לימי חג גם כשהם כבר בתוך החלון. השווינו את הפידים שנשמרו בין 7.9 ל־14.9.2026, סביב ראש השנה ויום כיפור:

ספטמבר 2026
12–13
ראש השנה
ספטמבר 2026
21
יום כיפור
יום מה מופיע ב־GTFS הפער
שבת 12.9 · ראש השנה 84 רכבות בין 20:30 ל־23:59 — לוח מוצאי שבת רגיל, בכל הפידים (7–11.9) ✕רכבות בזמן החג
ראשון 13.9 · ראש השנה עד 10.9: לוח מלא של יום ראשון (684–773 רכבות). מ־11.9: 90 רכבות, כולן מ־20:30 !תוקן יומיים לפני החג
ראשון 20.9 · ערב יום כיפור 881 רכבות, היציאה האחרונה ב־23:55 (פידים מ־11.9 ומ־14.9) ✕רכבות אחרי כניסת הצום
שני 21.9 · יום כיפור 682 רכבות בין 00:32 ל־23:55 — לוח יום חול רגיל (פיד מ־14.9) ✕רכבות לאורך כל הצום
חלק ב׳ · מידע בזמן אמת (SIRI)

7עדכוני זמן־אמת: הפרוטוקול תומך בהכול — רק חלק מוזרם בפועל

בדקנו את הזרם החי (4.8.2026, 505 ביקורים מנוטרים ב־77 רכבות פעילות): דיווחי עיכובים מוזרמים ותקינים, ושדה הרציף מגיע בכל ביקור ומשקף גם שינויי רציף בזמן אמת. ביטולים, שינויי מסלול ורכבות תגבור אינם קיימים בזרם כלל:

סוג עדכון השדה בפרוטוקול SIRI מוזרם בפועל בנתוני רכבת ישראל
דיווחי עיכובים ✓ExpectedArrivalTime ✓מוזרם
שינוי רציף ✓ArrivalPlatformName ✓מוזרם
ביטול רכבת / דילוג על תחנה ✓ArrivalStatus=cancelled ✕לא מוזרם
קיצור מסלול / שינוי תחנת יעד ✓DestinationRef + OnwardCalls ✕לא מוזרם
רכבות תגבור שנוספו ללוח ✓נסיעה חדשה בזרם ✕לא קיים

ממצא נלווה: שדה ArrivalStatus מדווח onTime באופן גורף — בבדיקה, כל 505 הביקורים דווחו onTime, כולל רכבות באיחור של 4–6 דקות. כלומר גם הערך delayed וגם הערך cancelled אינם מאוכלסים בפועל. אומת בזמן אמת גם מול אפליקציות נוספות המבוססות על SIRI (למשל "אוטובוס קרוב").

היכן משלימים בפרוטוקול: השדות כבר מוגדרים ב־SIRI-SM וקיימים במבנה התשובה — נדרש לאכלס אותם: ArrivalStatus אמיתי (delayed / cancelled) בכל MonitoredCall ו־OnwardCall; עדכון DestinationRef כשנסיעה מקוצרת; והזרמת נסיעות תגבור כ־journey חדש (הפירוט בסעיף 5). להודעות חופשיות על שינויים בשירות — ראו חלק ג׳.

8מקרה בוחן — 7.7, שיבוש מסלול שלא שוקף ב־SIRI

בעקבות עיכובים בתנועת הרכבות, שתי נסיעות שונו באופן מהותי. באפליקציה הרשמית של רכבת ישראל השינויים הוצגו — ב־SIRI קיצור המסלול לא שוקף כלל.

רכבת 522 בית שמש ← נתניה בפועל: סיימה את נסיעתה בהרצליה
מתוכנן
רציף 6
בפועל
קטע שלא בוצע
סיום הנסיעה · רציף 3 לא הגיעה לנתניה
בית שמש
מוצא
תל אביב — סבידור
הרצליה
נתניה
יעד
רכבת 525 נתניה ← בית שמש בפועל: החלה את נסיעתה בהרצליה
מתוכנן
רציף 4
בפועל
קטע שלא בוצע
יציאה בפועל · רציף 3 לא יצאה מנתניה
בית שמש
יעד
תל אביב — סבידור
הרצליה
נתניה
מוצא מתוכנן
שינויי המסלול לא שוקפו ב־SIRI: לא קיצור המסלול ולא שינוי תחנת המוצא/היעד — הנסיעות המשיכו להופיע בזרם כאילו הן מתנהלות כמתוכנן עד סוף המסלול.
באפליקציה הרשמית של רכבת ישראל כל המידע כן הוצג — כלומר הנתונים קיימים אצל המפעיל. נשמח להבין האם הם מועברים למשרד התחבורה, ואם כן — כיצד ניתן לצרוך אותם.
חלק ג׳ · הודעות על שינויים בשירות

9הודעות שירות מתפרסמות רק ב־API הסגור של רכבת ישראל

הודעות לנוסעים על שינויים בשירות — עבודות מתוכננות, שינויי לוח זמנים, הסדרים חלופיים — מתפרסמות כיום אך ורק דרך ה־API הסגור של רכבת ישראל (railupdates). למידע הזה אין ערוץ בנתוני משרד התחבורה — לא ב־GTFS ולא ב־SIRI. בפועל, גם לאחר שהעברנו את לוח הזמנים ל־GTFS, אנו נאלצים להמשיך להעביר את ההודעות כפי שהן מה־API הסגור — כך שניתוק מלא ממנו אינו אפשרי כל עוד זה המצב.

מה נדרש: ערוץ מוסדר להודעות, באחת משתי הדרכים: השארת ה־API הקיים של רכבת ישראל פתוח לשימוש, או פרסום ההודעות דרך מערכת "מורן" של משרד התחבורה.
חלק ד׳ · מידע על הרכבת

10הרכב הרכבת — מספר קרונות, נגישות והעלאת אופניים

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

הנתון נתוני רכבת ישראל GTFS · משרד התחבורה
סוג הרכבת שמגיעה ✓קיים ✕אין שדה
מספר הקרונות ברכבת ✓קיים ✕אין שדה
מספר מקומות הישיבה ✓קיים ✕אין שדה
קרון נגיש לכיסא גלגלים ✓ברמת הקרון ✕השדה קיים בפיד, וריק
קרון שמותר להעלות בו אופניים ✓ברמת הקרון ✕השדה אינו קיים בפיד

נבדק בפיד מ־30.8.2026: העמודה wheelchair_accessible קיימת ב־trips.txt וריקה בכל 1,118 נסיעות רכבת ישראל שבפיד (1,058 קווים, agency_id=2); העמודה bikes_allowed אינה קיימת בפיד; ואין בו שדה שמתאר את הרכב הרכבת. ה־API של רכבת ישראל מחזיר לכל רכבת מספר קרונות, מספר מקומות וסוג רכבת, ורשומה לכל קרון עם סימון נגישות ואופניים.