مواصفات الخلاصة العامة للنقل العام (GTFS)
هذه الممارسات مقترَحة لوصف خدمات النقل العام في مواصفات الخلاصة العامة للنقل العام (GTFS). تم تجميع هذه الممارسات من تجربة أعضاء مجموعة عمل أفضل ممارسات مواصفات الخلاصة العامة للنقل العام (GTFS) واقتراحات ممارسة مواصفات الخلاصة العامة للنقل العام (GTFS) الخاصة بالتطبيقات. ولمزيد من المعلومات الأساسية، يُرجى الاطّلاع على الأسئلة الشائعة.
بنية المستند
ويتم تنظيم الممارسات في ثلاثة أقسام أساسية:
- نشر مجموعة البيانات والممارسات العامة: ترتبط هذه الممارسات بالبنية العامة لمجموعة بيانات GTFS والطريقة التي يتم بها نشر مجموعات بيانات GTFS.
- التمارين التي يتم تنظيمها حسب الملف: يتم تنظيم الاقتراحات حسب الملف والحقول في "GTFS" لتسهيل ممارسات الربط باستخدام مرجع GTFS الرسمي.
- التمارين التي يتم تنظيمها حسب الحالة: في بعض الحالات، مثل مسارات التكرار، قد يلزم تطبيق الممارسات على عدة ملفات وحقول. يتم دمج هذه الاقتراحات في هذا القسم.
الأسئلة الشائعة
ما هي أهمية أفضل ممارسات GTFS؟
أهداف أفضل ممارسات GTFS هي:
- تحسين تجربة العملاء لدى المستخدمين في تطبيقات وسائل النقل العام
- إتاحة إمكانية التشغيل التفاعلي للبيانات العامة لتسهيل على مطوّري البرامج نشر التطبيقات والمنتجات والخدمات وتوسيع نطاقها
- تسهيل استخدام مواصفات الخلاصة العامة للنقل العام (GTFS) في فئات التطبيقات المختلفة (بخلاف التركيز الأساسي على التخطيط للرحلة)
وبدون أفضل ممارسات تنسيق GTFS المنسّقة، يمكن أن تحدّد مختلف التطبيقات التي تستخدم GTFS المتطلبات والتوقّعات بطريقة غير منسّقة، ما يؤدي إلى متطلبات مختلفة ومجموعات بيانات خاصة بالتطبيق وانخفاض إمكانية التشغيل التفاعلي. وقبل إصدار أفضل الممارسات، كان هناك غموض أكبر وتناقضات في ما يُشكّل بيانات GTFS ذات الشكل الصحيح.
وكيف تم تطويرها؟ من طوّر هذه الشخصيات؟
طوّرت مجموعة عمل من 17 مؤسسة تشارك في مواصفات الخلاصة العامة للنقل العام (GTFS) أفضل الممارسات هذه، بما في ذلك مزوّدو التطبيقات ومستهلكو البيانات ومقدّمو خدمات النقل العام والمستشارون الذين لديهم مشاركة شاملة في مواصفات الخلاصة العامة للنقل العام. تم عقد مجموعة العمل هذه وتسهيلها من خلال معهد جبل روكي.
صوّت أعضاء مجموعة العمل على كل واحدة من أفضل الممارسات. وقد تمت الموافقة على معظم أفضل الممارسات من خلال تصويت شهير. في حالات نادرة، تمت الموافقة على أفضل الممارسات من قِبل أغلب المؤسسات.
لماذا لا يتم تغيير مرجع GTFS فقط؟
هذا سؤال وجيه. وقد أدّت عملية فحص المواصفات واستخدام البيانات واحتياجاتها إلى حدوث بعض التغييرات في المواصفات (راجِع طلبات سحب البيانات المغلقة في GitHub). وتخضع تعديلات المواصفات المرجعية ل شريط تدقيق أعلى وتعليقات أفضل الممارسات. ومع ذلك، كانت هناك حاجة إلى الموافقة على مجموعة واضحة من اقتراحات "أفضل الممارسات".
تتوقّع مجموعة العمل أن تصبح بعض أفضل ممارسات مواصفات الخلاصة العامة للنقل العام (GTFS) جزءًا من مرجع "خدمات الخلاصة العامة للنقل العام" الأساسي.
هل تتحقّق أدوات التحقّق من مواصفات الخلاصة العامة للنقل العام (GTFS) من التوافق مع أفضل الممارسات هذه؟
ليست هناك أداة للتحقق من الصحة تعمل حاليًا على التحقق من توافق جميع أفضل الممارسات. وتتحقّق العديد من أدوات التحقّق من التوافق مع بعض أفضل الممارسات هذه. للاطّلاع على قائمة بأدوات التحقّق من مواصفات الخلاصة العامة للنقل العام (GTFS)، راجِع اختبار الخلاصات. إذا كتبت أداة للتحقق من صحة GTFS تشير إلى أفضل الممارسات هذه، يُرجى إرسال رسالة إلكترونية إلى gtfs@rmi.org.
أنا أمثل مؤسسة نقل عام. ما هي الخطوات التي يمكنني اتخاذها حتى يتّبع مورّدو خدمات البرامج والمورّدون أفضل الممارسات هذه؟
ويمكنك إحالة المورِّد أو مقدِّم خدمة البرنامج إلى أفضل الممارسات هذه. نقترح عليك الرجوع إلى عنوان URL لأفضل الممارسات المتعلّقة بمواصفات GTFS، بالإضافة إلى مرجع المواصفات الأساسي عند شراء برامج إنتاج GTFS.
ما الذي يجب فعله إذا لاحظت أنّ خلاصة بيانات GTFS لا تتوافق مع أفضل الممارسات هذه؟
حدِّد جهة اتصال الخلاصة، باستخدام الحقلَين المقترَحَين feed_contact_email
أو feed_contact_url
في
feed_info.txt
في حال توفّرهما، أو ابحث عن معلومات الاتصال على مؤسسة النقل العام
أو الموقع الإلكتروني لمنتِج الخلاصة. وعند إبلاغ المُنتِج بالمشكلة، ضَع رابطًا يؤدي إلى أفضل الممارسات المحدّدة في "GTFS" قيد المناقشة. راجِع الربط بهذا المستند.
أريد اقتراح تعديل أو إضافة إلى أفضل الممارسات. كيف يمكنني إجراء هذا؟
يمكنك إرسال رسالة إلكترونية إلى gtfs@rmi.org أو فتح مشكلة أو سحب طلب في تقرير "أفضل ممارسات GTFS لأفضل الممارسات".
كيف يمكنني المشاركة؟
البريد الإلكتروني gtfs@rmi.org.
نشر مجموعة البيانات والممارسات العامة
الاقتراحات العامة |
---|
يجب نشر مجموعات البيانات على عنوان URL دائم ومتاح للجميع، بما في ذلك اسم ملف ZIP. (على سبيل المثال، www.agency.org/gtfs/gtfs.zip). من المفترض أن يكون عنوان URL قابلاً للتنزيل مباشرةً بدون الحاجة إلى تسجيل الدخول للوصول إلى الملف، وذلك لتسهيل التنزيل من خلال استخدام التطبيقات البرمجية. على الرغم من أنّه من المستحسن (وأكثر الممارسات شيوعًا) جعل مجموعة بيانات GTFS قابلة للتنزيل بشكل عام، إذا كان موفّر البيانات يحتاج إلى التحكم في الوصول إلى GTFS للترخيص أو لأسباب أخرى، ننصح بالتحكّم في الوصول إلى مجموعة بيانات GTFS باستخدام مفاتيح واجهة برمجة التطبيقات، والتي ستسهّل عمليات التنزيل التلقائية. |
يتم نشر بيانات مواصفات الخلاصة العامة للنقل العام (GTFS) في تكرارات بحيث يحتوي ملف واحد في موقع ثابت دائمًا على أحدث وصف رسمي لخدمة النقل العام (أو الوكالات). |
الاحتفاظ بالمعرّفات الدائمة (حقول المعرّف) في stop_id
وroute_id وagency_id عند تكرار البيانات متى أمكن.
|
يجب أن تحتوي مجموعة بيانات GTFS واحدة على الخدمة الحالية والقادمة (تسمى أحيانًا مجموعة بيانات "مدمجة"). يمكن استخدام دالة الدمج في أداة النقل العام من Google لإنشاء مجموعة بيانات مدمجة من خلاصتَين مختلفتَين من مواصفات الخلاصة العامة للنقل العام (GTFS).
|
إزالة الخدمات القديمة (التقاويم المنتهية الصلاحية) من الخلاصة. |
إذا بدأ تعديل خدمة خلال 7 أيام أو أقل، اعرِض تغيير هذه الخدمة من خلال خلاصة GTFS-الوقت الفعلي (تنبيهات الخدمة أو إشعارات الرحلات) بدلاً من مجموعة بيانات GTFS الثابتة. |
يجب إعداد خادم الويب الذي يستضيف بيانات GTFS للإبلاغ عن تاريخ تعديل الملف بشكل صحيح (راجع HTTP/1.1 - طلب التعليقات 2616، ضمن القسم 14.29). |
الاقتراحات التدريبية المنظّمة حسب الملف
يعرض هذا القسم الممارسات المنظَّمة حسب الملف والحقل، بما يتوافق مع مرجع مواصفات الخلاصة العامة للنقل العام.
كل الملفات
اسم الحقل | الإجراء المقترَح |
---|---|
حافظة مختلطة | يجب أن تستخدم جميع السلاسل النصية الموجّهة للعملاء (بما في ذلك أسماء المحطات وأسماء المسارات ورؤوس الرأس) أحرفًا مختلطة (وليس بالأحرف الكبيرة) مع اتّباع القواعد المحلية بالأحرف الكبيرة لأسماء الأماكن التي تعرض أحرفًا صغيرة. |
أمثلة: | |
ساحة برايتون تشرشل | |
فيليرز سور مارن | |
سوق ماركت | |
الاختصارات | تجنَّب استخدام الاختصارات في الخلاصة لكلٍّ من الأسماء والنصوص الأخرى (على سبيل المثال: "شارع التحرير") ما لم يُطلَق على الموقع الجغرافي اسم مختصر (مثل "مطار جون إف كينيدي الدولي"). وقد تحدث مشاكل في إمكانية الوصول باستخدام برامج قراءة الشاشة وواجهات المستخدمين الصوتية. يمكن تصميم برامج التصميم بحيث تتحوّل الكلمات الكاملة بشكل موثوق إلى اختصارات لعرضها، ولكن الانتقال من الاختصارات إلى الكلمات الكاملة قد يؤدي إلى زيادة احتمال حدوث أخطاء. |
وكالة txt.
اسم الحقل | الإجراء المقترَح |
---|---|
agency_id |
يجب تضمينها، حتى إذا كانت هناك وكالة واحدة فقط في الخلاصة. (اطّلِع أيضًا على اقتراح
بتضمين agency_id في
routes.txt و
fare_attributes.txt ). |
agency_lang |
يجب تضمينها. |
agency_phone |
ويجب تضمينها ما لم يتوفّر رقم هاتف لخدمة العملاء هذا. |
agency_email |
ويجب تضمينها ما لم يتوفّر عنوان بريد إلكتروني لخدمة العملاء هذه. |
agency_fare_url |
يجب تضمينها ما لم تكن الوكالة معفاة تمامًا من الأسعار. |
أمثلة:
- تجدر الإشارة إلى أن خدمات الحافلات تديرها العديد من وكالات الحافلات الصغيرة. وهناك وكالة كبيرة مسؤولة عن الجدولة والتذاكر من منظور المستخدم المسؤول عن خدمات الحافلات.ويجب أن يتم تحديد الوكالة الكبيرة على أنها وكالة ضمن الخلاصة. وحتى إذا تم تقسيم البيانات داخليًا حسب شركات حافلات صغيرة أخرى، يجب تحديد وكالة واحدة فقط في الخلاصة.
- يشغّل مقدِّم الخلاصة بوابة بيع التذاكر، ولكن هناك وكالات مختلفة تدير الخدمات فعليًا ويعرف المستخدمون أنهم مسؤولون عن ذلك. ويجب أن يتم تحديد الوكالات التي تشغّل الخدمات على أنها وكالات ضمن الخلاصة.
stop.txt
اسم الحقل | الإجراء المقترَح | ||||||||
---|---|---|---|---|---|---|---|---|---|
stop_id |
إنّ المحطات التي تقع في مواقع جغرافية مختلفة (أي المواقع الجغرافية المختلفة والمحدّدة للمركبات) على الطرق المخصّصة للإيقاف، والتي يمكن تمييزها باللافتات أو الملاجئ أو غيرها من المعلومات العامة، التي تقع في زوايا مختلفة من الشارع أو تمثّل منشأة مختلفة للصعود إلى الطائرة، مثل منصة أو حافلة، حتى لو كانت قريبة من بعضها البعض.stop_id |
||||||||
stop_id هو معرّف داخلي لا يمكن عرضه للركّاب. |
|||||||||
حافِظ على اتساق stop_id في المحطات نفسها على مستوى تكرارات البيانات (اطّلِع على
نشر مجموعة البيانات والممارسات العامة). |
|||||||||
stop_name |
يجب أن تتطابق السمة stop_name مع الاسم العلني للوكالة في محطة التوقّف أو المحطة أو منشأة الصعود إلى الطائرة، على سبيل المثال المحتوى المطبوع على جدول زمني و/أو المنشور على الإنترنت و/أو المقدّم في الموقع الجغرافي. |
||||||||
في حال عدم توفّر اسم للمحطة المنشورة، اتّبِع اصطلاحات التسمية نفسها في جميع أقسام الخلاصة. | |||||||||
تجنَّب استخدام الاختصارات باستثناء الأماكن التي غالبًا ما تُعرف باسم الاسم المختصر. يمكنك الاطّلاع على الاختصارات (رقم 2) ضمن كل الملفات. | |||||||||
قدِّم أسماء محطات توقف في حال استخدام الأحرف المختلطة، وذلك وفقًا للاصطلاحات المحلية، وذلك وفقًا لاقتراح جميع الحقول النصية الموجّهة للعملاء. | |||||||||
بشكل تلقائي، يجب ألا تحتوي السمة stop_name على كلمات عامة أو متكررة، مثل
"محطة" أو "إيقاف"، لكن يُسمح باستخدام بعض حالات الأحرف.
|
|||||||||
stop_lat وstop_lon |
يجب أن تكون مواقع الإيقاف دقيقة قدر الإمكان. يجب أن تحتوي مواقع الإيقاف على خطأ لا يزيد عن أربعة أمتار عند مقارنتها بموضع الإيقاف الفعلي. | ||||||||
ويجب وضع المواقع الجغرافية لمحطّات التوقّف بالقرب من الجانب الأيمن من الطريق حيث يصعد الراكب (أي إلى الجانب الأيمن من الشارع). | |||||||||
إذا تمّت مشاركة الموقع الجغرافي لمحطة توقّف في خلاصات بيانات منفصلة (أي أنّ وكالتَين تستخدمان محطّتَي التوقّف / مرفق الصعود نفسهما)، عليك الإشارة إلى أنّه تتمّ مشاركة محطّة التوقّف من خلال استخدام محطّتَي
stop_lat وstop_lon نفسيهما بالضبط. |
|||||||||
stop_code |
يجب تضمين السمة stop_code في مواصفات الخلاصة العامة للنقل العام (GTFS) في حال توفّر أرقام محطّة للركّاب
أو معرّفات قصيرة. |
||||||||
parent_station وlocation_type |
تحتوي العديد من المحطات أو محطات الدفع على مرافق متعددة للصعود إلى الطائرة (حسب وسيلة النقل، وقد يُطلق عليها اسم "خليج الحافلات" أو المنصة أو الرصيف أو البوابة أو غيرها من العبارات). وفي هذه الحالات، يجب أن يصف منتجو الخلاصات المحطات ومرافق الصعود إلى الطائرة (التي تُعرف أيضًا باسم محطات توقّف الأطفال) وعلاقتها.
|
||||||||
عند تسمية المحطة والطفل، توقف عن تعيين أسماء معروفة للركّاب
ويمكن أن تساعد الراكبين في تحديد المحطة ومنشأة الصعود على متن الطائرة (خليج الحافلة والمنصة والرصيف
وما إلى ذلك).
|
المسارات.txt
اسم الحقل | الإجراء المقترَح | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
agency_id |
يجب أن يتم تضمينها إذا تم تحديدها في agency.txt . |
||||||||||||||||||||
route_short_name |
يمكنك تضمين route_short_name في حال وجود تصنيف خدمة مختصر. ويجب أن
يكون هذا الاسم هو اسم الراكب المعروف للخدمة الذي لا يزيد عن 12 حرفًا. |
||||||||||||||||||||
route_long_name |
التعريف الوارد في مرجع المواصفات:
يُعد هذا الاسم أكثر وصفًا بشكل عام من في ما يلي أمثلة على أنواع الأسماء الطويلة:
|
||||||||||||||||||||
يجب ألا يحتوي route_long_name على route_short_name . |
|||||||||||||||||||||
يجب تضمين التصنيف الكامل، بما في ذلك الهوية عن الخدمة، عند تعبئة
route_long_name . أمثلة:
|
|||||||||||||||||||||
route_id |
يجب أن تشير كل الرحلات في مسار معيّن إلى النوع route_id نفسه.
|
||||||||||||||||||||
إذا كانت مجموعة المسارات تتضمّن فروعًا تحمل اسمًا مميزًا (مثل 1A و1B)، اتّبِع الاقتراحات في حالة مسار الفروع لتحديد
route_short_name وroute_long_name . |
|||||||||||||||||||||
route_color وroute_text_color |
يجب أن يكون هذا العنوان متّسقًا مع اللافتات والمعلومات المطبوعة على الإنترنت والمتعلّقة بالعملاء (وبالتالي لا يتم تضمينه في حال عدم توفّره في أماكن أخرى). |
Trips.txt
- الاطّلاع على الحالة الخاصة لمسارات التكرار: مسارات التكرار هي الحالات التي تبدأ فيها الرحلات وتنتهي عند نفس المحطة، على عكس المسارات الخطية التي تتضمن محطتين مختلفتين. ويجب وصف مسارات التكرار باتّباع ممارسات معيّنة. راجِع حالة مسار الجولة.
- الاطّلاع على حالة خاصة لمسارات "لاسو": مسارات لاسو هي مزيج من أشكال هندسية دائرية ومتكرّرة تتنقل فيها المركبات بشكل متكرر لجزء فقط من المسار. يجب وصف مسارات Lasso باتّباع ممارسات معيّنة. اطّلِع على حالة مسار "لاسو".
اسم الحقل | الإجراء المقترَح | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
trip_headsign |
لا تقدّم أسماء مسارات (متطابقة مع route_short_name وroute_long_name ) في الحقلين trip_headsign أو stop_headsign . |
||||||||||||||
يجب أن يحتوي على وجهة و/أو اتجاه و/أو نص تصنيف رحلة آخر ظاهر على
عنوان المركبة ويمكن استخدامه للتمييز بين الرحلات في المسار.
إنّ الهدف المتّبع مع معلومات الاتجاهات المعروضة على المركبة هو الهدف الأساسي والمحدّد لتحديد العناوين الرئيسية المقدَّمة في مجموعات بيانات مواصفات الخلاصة العامة للنقل العام (GTFS). ويجب تضمين المعلومات الأخرى
فقط إذا لم تحدّد هذا الهدف الأساسي. إذا تغيّرت سماعات الرأس
أثناء الرحلة، يمكنك إلغاء السمة trip_headsign باستخدام السمة stop_times.stop_headsign . في ما يلي
اقتراحات لبعض الحالات المحتملة: |
|||||||||||||||
example_table:
|
|||||||||||||||
لا تبدأ برأس رأس مع عبارة "إلى" أو "نحو". | |||||||||||||||
direction_id |
إذا كانت الرحلات في خدمة مسار قبالة الاتجاهات، حدِّد هذه المجموعات من الرحلات مع الحقل
direction_id باستخدام القيمتَين 0 و1 . |
||||||||||||||
تستخدم القيم 0 و1 بشكل متّسق في مجموعة البيانات، أي
|
إيقاف_أوقات.txt
مسارات التكرار: تتطلب مسارات التكرار اعتبارات stop_times
خاصة. (راجِع ما يلي:
حالة مسار التكرار)
اسم الحقل | الإجراء المقترَح | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
pickup_type وdrop_off_type |
بالنسبة إلى الرحلات التي لا تحقّق أرباحًا، والتي لا تقدّم خدمة الركّاب، يجب وضع علامة عليها على أنّها pickup_type وقيمة drop_off_type تبلغ 1 لجميع
صفوف stop_times . |
||||||||||||
بالنسبة إلى رحلات الأرباح، يجب وضع علامة pickup_type = 1 على النقاط (النقاط الداخلية) لمراقبة الأداء التشغيلي، وأماكن أخرى، مثل المرآب الذي لا يمكن لراكب الصعود إليه
(بدون توفّر خدمة استلام الطلب) وdrop_off_type = 1 (لا تتوفّر محطة لمغادرة الطائرة). |
|||||||||||||
timepoint |
يجب ملء الحقل timepoint . ويحدِّد
السمة stop_times التي سيحاول عامل التشغيل التقيُّد بها
(timepoint=1 )، وأن أوقات التوقف الأخرى هي تقديرات
(timepoint=0 ). |
||||||||||||
arrival_time وdeparture_time |
ويجب أن يحدّد الحقلان arrival_time وdeparture_time قيمًا زمنية عندما يكون ذلك ممكنًا، بما في ذلك الأوقات المقدّرة أو غير المقتطعة بين النقاط الزمنية. |
||||||||||||
stop_headsign |
تلغي القيم
في الحالات الموضّحة في ما يلي، قد يضلّل الخط الجنوبي مأكولات العملاء لأنه لا يتم استخدامه في لافتات المحطة. |
||||||||||||
|
|||||||||||||
|
|||||||||||||
form_dist_traveled | يجب توفير السمة shape_dist_traveled للمسارات التي لها تكرار أو مضمّنة
(تعبر المركبة أو تقطع الجزء نفسه من المحاذاة في رحلة واحدة). اطّلِع على
اقتراح shapes.shape_dist_traveled . |
calendar.txt
اسم الحقل | الإجراء المقترَح |
---|---|
جميع الحقول | يجب أن يحتوي calendar_dates.txt على عدد محدود من الاستثناءات للجدول الزمني. يجب إعداد الخدمة المجدوَلة بانتظام باستخدام calendar.txt .
|
ويمكن أن يؤدي تضمين الحقل calendar.service_name أيضًا إلى زيادة سهولة قراءة محتوى
GTFS، إلا أن ذلك لا يتم اعتماده في المواصفات. |
calendar_dates.txt
اسم الحقل | الإجراء المقترَح |
---|---|
جميع الحقول | يجب أن يحتوي calendar_dates.txt على عدد محدود من الاستثناءات للجدول الزمني. يجب إعداد الخدمة المجدوَلة بانتظام باستخدام calendar.txt .
|
ويمكن أن يؤدي تضمين الحقل calendar.service_name أيضًا إلى زيادة سهولة قراءة محتوى
GTFS، إلا أن ذلك لا يتم اعتماده في المواصفات. |
price_attributes.txt
اسم الحقل | الإجراء المقترَح |
---|---|
جميع الحقول | يجب تضمين السمة agency_id في fare_attributes.txt إذا كان الحقل
مضمّنًا في agency.txt . |
إذا تعذّر وضع نموذج لنظام دقيق، تجنّب أي التباس و اتركه فارغًا. | |
يجب تضمين الأسعار (fare_attributes.txt وfare_rules.txt ) ووضع نماذج لها بدقة قدر الإمكان. وفي الحالات الحادة التي لا يمكن فيها وضع نماذج الأسعار بدقة، يجب تمثيلها على أنّها أكثر تكلفة وليست أقل تكلفة، بحيث لا يحاول العملاء الصعود إلى الطائرة بدون سعر كافٍ. إذا تعذّر وضع نماذج للغالبية العظمى من الأسعار بشكل صحيح، يُرجى عدم تضمين معلومات الأسعار في الخلاصة. |
transaction_rule.txt
اسم الحقل | الإجراء المقترَح |
---|---|
جميع الحقول | يجب تضمين السمة agency_id في fare_attributes.txt إذا كان الحقل
مضمّنًا في agency.txt . |
إذا تعذّر وضع نموذج لنظام دقيق، تجنّب أي التباس و اتركه فارغًا. | |
يجب تضمين الأسعار (fare_attributes.txt وfare_rules.txt ) ووضع نماذج لها بدقة قدر الإمكان. وفي الحالات الحادة التي لا يمكن فيها وضع نماذج الأسعار بدقة، يجب تمثيلها على أنّها أكثر تكلفة وليست أقل تكلفة، بحيث لا يحاول العملاء الصعود إلى الطائرة بدون سعر كافٍ. إذا تعذّر وضع نماذج للغالبية العظمى من الأسعار بشكل صحيح، يُرجى عدم تضمين معلومات الأسعار في الخلاصة. |
أشكال ملفات.txt
اسم الحقل | الإجراء المقترَح |
---|---|
جميع الحقول | ومن الناحية المثالية، بالنسبة إلى المحاذاة التي تتم مشاركتها (أي في الحالات التي يعمل فيها المساران 1 و2 على الجزء نفسه من الطريق أو المسار)، يجب أن يتطابق الجزء المشترك من المحاذاة تمامًا. يساعد ذلك في تسهيل عملية رسم خرائط النقل العام العالية الجودة. |
يجب أن تتبع المحاذاة خط المنتصف على يمين الطريق الذي تنتقل إليه المركبة.
يمكن أن يكون هذا الخط هو وسط الشارع إذا لم تكن هناك ممرات محدّدة، أو خط المنتصف على جانب الطريق الذي يتحرك في الاتجاه الذي تتحرك فيه المركبة. يجب ألا "تضبط" الطرقات على نقطة رصيف أو محطة أو موقع صعود الطائرة. |
|
shape_dist_traveled |
يجب توفير السمة في كل من السمتَين إذا كانت المركبة تسير في تقاطع المسار أو تتقاطع معه عند انعقاد نقاط خلال رحلة،
|
أمّا في الحقل shape_dist_traveled ، فهو يسمح للوكالة بتحديد الطريقة التي
تتناسب بها محطّة الملف في stop_times.txt مع الشكل المناسب لها. وهناك قيمة شائعة يمكن استخدامها في الحقل shape_dist_traveled ، وهي المسافة التي تفصل بين بداية المركبة انطلاقًا من المسافة التي قطعتها المركبة (مثلاً، قراءة عداد المسافة).
|
Feed_info.txt
يجب تضمين feed_info.txt
، مع جميع الحقول أدناه.
اسم الحقل | الإجراء المقترَح |
---|---|
feed_start_date وfeed_end_date |
يجب تضمينها |
feed_version |
يجب تضمينها |
feed_contact_email وfeed_contact_url |
يُرجى إدخال إجابة واحدة على الأقل. |
الترددات.txt
اسم الحقل | الإجراء المقترَح |
---|---|
جميع الحقول | يتم تجاهل أوقات التوقّف الفعلية للرحلات التي أشار إليها frequencies.txt ، مع العلم أنّ الفواصل الزمنية للرحلات بين محطات التوقف فقط هي مهمة.
للتوضيح/سهولة القراءة بالنسبة إلى المستخدمين، ننصح بأن تبدأ وقت الإيقاف الأول للرحلة
المُشار إليها في frequencies.txt في تمام الساعة 00:00:00 (القيمة
arrival_time الأولى من 00:00:00). |
block_id |
يمكن توفيرها للرحلات المستندة إلى التردد. |
يجري ملف ads.txt
يمكن أن تكون السمة transfers.transfer_type
إحدى القيم الأربع
المحدّدة في مواصفات الخلاصة العامة للنقل العام (GTFS). ويمكن اقتباس تعريفات transfer_type
هذه من مواصفات مواصفات الخلاصة العامة للنقل العام (GTFS) أدناه، مع اقتراحات تدريب إضافية.
اسم الحقل | الإجراء المقترَح |
---|---|
transfer_type |
إذا كانت تتوفّر عدة فرص نقل تتضمّن خيارًا ممتازًا (مثل مركز نقل عام فيه وسائل راحة إضافية أو محطة تتضمّن مرافق/منصات قريبة أو متصلة)، يمكنك تحديد نقطة نقل مُقترَحة. |
ويحتسب كل مستهلك بيانات المدة الزمنية التي يحتاجها هذا الفاصل الزمني من خلال
خوارزميته الخاصة. إذا كانت هذه القيمة غير كافية، أو إذا كانت هناك شروط أخرى لم يأخذها المستهلك في الاعتبار، يمكنك إلغاء العمليات الحسابية المتعلّقة بالوقت بعد ضبط السمة |
|
تحدّد الحد الأدنى لمدة النقل إذا كانت هناك عوائق أو عوامل أخرى تزيد من وقت التنقّل بين المحطات. |
|
حدِّد هذه القيمة إذا تعذّر إجراء عمليات النقل بسبب العوائق الجسدية، أو إذا كانت غير آمنة أو معقدة بسبب عبور الطرقات الصعبة أو فجوات في شبكة المشاة. |
|
إذا تم السماح بعمليات النقل بين المقاعد (الحظر) بين الرحلات، يجب أن تكون المحطة الأخيرة من رحلة الوصول هي نفسها المحطة الأولى من رحلة المغادرة. |
الاقتراحات التدريبية المنظّمة حسب الحالة
يتناول هذا القسم بعض الحالات مع آثار على الملفات والحقول.
مسارات التكرار
في مسارات التكرار، تبدأ رحلات المركبات وتنتهي في الموقع الجغرافي نفسه (أحيانًا مركز نقل عام أو نقل عام). تعمل المركبات عادةً بشكل مستمر وتتيح للركّاب البقاء على متنها فيما تستمر المركبة في التكرار.
لذلك، يجب تطبيق اقتراحات الرأس من أجل عرض اتّجاه الرحلات على الطريق.
للإشارة إلى اتجاه السفر المتغيّر، قدِّم stop_headsigns
في ملف stop_times.txt
. يصف stop_headsign
اتجاه الرحلات المغادرة من المحطة التي تم تحديدها لها. تتيح لك إضافة stop_headsigns
في كل
محطة توقّف تغيير معلومات رأس الصفحة على طول الرحلة.
لا تحدّد رحلة دائرية واحدة في ملف stop_times.txt
للمسار الذي يعمل بين نقطتَي نهاية (مثلاً، عند ذهاب الحافلة ذهابًا وإيابًا). وبدلاً من ذلك، قسِّم الرحلة إلى اتجاهين منفصلين للرحلة.
أمثلة على وضع نماذج للرحلات الدائرية:
جولة دائرية مع تغيير رأس كل محطة:
Trip_id |
arrival_time |
departure_time |
stop_id |
stop_sequence |
stop_headsign |
---|---|---|---|---|---|
trip_1 |
06:10:00 |
06:10:00 |
stop_A |
1 |
"ب" |
trip_1 |
06:15:00 |
06:15:00 |
stop_B |
2 |
"ج" |
trip_1 |
06:20:00 |
06:20:00 |
stop_C |
3 |
"D" |
trip_1 |
06:25:00 |
06:25:00 |
stop_D |
4 |
"هـ" |
trip_1 |
06:30:00 |
06:30:00 |
stop_E |
5 |
"أ" |
trip_1 |
06:35:00 |
06:35:00 |
stop_A |
6 |
" |
رحلة دائرية برأسين رأسيين:
Trip_id |
arrival_time |
departure_time |
stop_id |
stop_sequence |
stop_headsign |
---|---|---|---|---|---|
trip_1 |
06:10:00 |
06:10:00 |
stop_A |
1 |
"صادر" |
trip_1 |
06:15:00 |
06:15:00 |
stop_B |
2 |
"صادر" |
trip_1 |
06:20:00 |
06:20:00 |
stop_C |
3 |
"صادر" |
trip_1 |
06:25:00 |
06:25:00 |
stop_D |
4 |
"الواردة" |
trip_1 |
06:30:00 |
06:30:00 |
stop_E |
5 |
"الواردة" |
trip_1 |
06:35:00 |
06:35:00 |
stop_F |
6 |
"الواردة" |
trip_1 |
06:40:00 |
06:40:00 |
stop_A |
7 |
" |
اسم الحقل | الإجراء المقترَح | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
trips.trip_id |
يمكنك تصميم نموذج ذهاب وعودة كامل للحلقة برحلة واحدة. | |||||||||||||||
stop_times.stop_id |
أدرِج المحطة الأولى/الأخيرة مرتين في stop_times.txt للرحلة المتكرّرة. مثال أدناه. غالبًا ما يتضمّن المسار الدائري الرحلات الأولى والأخيرة التي لا تسافر
في الحلقة بأكملها. ويمكنك تضمين هذه الرحلات أيضًا.
|
|||||||||||||||
trips.direction_id |
إذا كانت الحلقة تعمل في اتجاهين معاكسَين (أي في اتجاه عقارب الساعة عكس اتجاه عقارب الساعة)، حدِّد direction_id على أنّها 0 أو 1 . |
|||||||||||||||
trips.block_id |
الإشارة إلى الرحلات المتكرّرة باستخدام السمة block_id نفسها |
مسارات لاسو
تجمع مسارات لاسو بين جوانب مسار دائري ومسار اتجاهي.
- مستقيمًا من "أ" إلى "ب"
- تكرار من وإلى "ب"
- مستقيمًا من
أمثلة: |
---|
مسارات مترو الأنفاق (شيكاغو) |
ضاحية للحافلات إلى مسارات وسط المدينة (سانت ألبرت أو إدمونتون) |
CTA Brown Line (الموقع الإلكتروني للحثّ على اتخاذ إجراء وخلاصات النقل العام) |
اسم الحقل | الإجراء المقترَح | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
trips.trip_id |
يتألف النطاق الكامل من "تذكرة ذهاب وعودة للمركبة" (راجِع الرسم التوضيحي
أعلاه) من السفر من "أ" إلى "ب" ثم إلى "أ". يمكن
إظهار رحلة ذهاب وعودة للمركبة بالكامل من خلال:
trip_id واحد في trips.txt
trip_id قيم/سجلّات باللغة trips.txt ،
مع تحديد السفر المستمر حسب block_id |
||||||||||
stop_times.stop_headsign |
سيتم تمرير المحطات على طول القسم أ-ب في كلا الاتجاهين.
تسهّل السمة stop_headsign اتجاه السفر. لذلك، ننصح بتقديم
stop_headsign لهذه الرحلات.
|
||||||||||
trip.trip_headsign |
يجب أن يكون عنوان الرأس للرحلة وصفًا عالميًا للرحلة، كما هو معروض في الجداول الزمنية. يمكن أن تكون القيمة "ليندن إلى ليندن من خلال التكرار" (مثال على طريقة شيكاغو) أو "أ إلى أ من ب" (مثال عام). |
أغصان
قد تتضمن بعض المسارات أغصان. تتم مشاركة المحاذاة ومحطات التوقف بين هذه الفرع، ولكن كل منها يعرض أيضًا محطات وأقسام محاذاة مختلفة. يمكن الإشارة إلى العلاقة بين الفرعين من خلال أسماء المسارات ورؤوس الرأس والاسم المختصر للرحلة، وذلك باستخدام الإرشادات الإضافية أدناه.
اسم الحقل | الإجراء المقترَح |
---|---|
جميع الحقول | في مسارات التسمية الفرعية، ننصح باتّباع مواد أخرى لمعلومات الركّاب. في ما يلي أوصاف وأمثلة لحالتين: |
إذا كانت الجداول الزمنية واللافتات في الشارع تمثّل مسارَين يحملان اسمًا مميزًا (مثل 1A و1B)، يجب عرضهما على النحو التالي في GTFS، باستخدام حقلي route_short_name و/أو route_long_name . على سبيل المثال: تتشارك المسارات مثل 2 و2أ و2ب في منصّة جودهام ترانزيت محاذاة مشتركة في معظم المسار، ولكنها تختلف في عدة
جوانب مختلفة.
|
|
إذا كانت المعلومات التي تقدّمها الوكالة تصف الفرع بهذا المسار نفسه، استخدِم الحقول trips.trip_headsign و/أو stop_times.stop_headsign و/أو trips.trip_short_name . على سبيل المثال، ينتقل مسار GoTriangle 300 إلى مواقع جغرافية مختلفة حسب الوقت من اليوم. وخلال ساعات الذروة، تتم إضافة المزيد من الأرجل إلى المسار العادي لاستيعاب العاملين في المدينة ومغادرتها. |
لمحة عن هذا المستند
الأهداف
أهداف الحفاظ على أفضل ممارسات مواصفات الخلاصة العامة للنقل العام (GTFS) هي:
- إتاحة إمكانية التشغيل التفاعلي لبيانات النقل العام بشكل أفضل
- تحسين تجربة العملاء النهائيين في تطبيقات وسائل النقل العام
- سهِّل على مطوّري البرامج نشر التطبيقات والمنتجات والخدمات وتوسيع نطاقها.
- تسهيل استخدام مواصفات الخلاصة العامة للنقل العام (GTFS) في فئات التطبيقات المختلفة (بخلاف التركيز الأساسي على التخطيط للرحلة)
كيفية اقتراح أفضل ممارسات "GTFS" المنشورة أو تعديلها
تتطوّر تطبيقات GTFS وممارساته، لذا قد يحتاج هذا المستند إلى تعديل من حين لآخر. لاقتراح تعديل على هذا المستند، افتح طلبًا بالسحب في مستودع GTFS لأفضل الممارسات وشجِّع على إجراء التغيير. ويمكنك إرسال أي تعليقات عبر البريد الإلكتروني إلى specifications@mobilitydata.org.
جارٍ الربط بهذا المستند
يُرجى الربط هنا لتزويد منتجي الخلاصة بالإرشادات المتعلقة بصياغة بيانات GTFS بشكل صحيح. يحتوي كل اقتراح فردي على رابط إلى موضع ثابت. انقر على الاقتراح للحصول على عنوان URL لرابط الارتساء في الصفحة.
إذا كان أحد التطبيقات التي تستخدم مواصفات الخلاصة العامة للنقل العام (GTFS) يقدم متطلبات أو اقتراحات بشأن ممارسات بيانات مواصفات الخلاصة العامة للنقل العام (GTFS) التي لم يتم وصفها هنا، ننصح بنشر مستند يتضمن هذه المتطلبات أو الاقتراحات يُكمِّل أفضل الممارسات الشائعة هذه.
مجموعة عمل أفضل ممارسات GTFS
شكّلت مجموعة Rocky Mountain Institute مجموعة عمل لأفضل الممارسات في GTFS في 2016-2017، وتضم مقدّمي خدمات نقل عام ومطوّري تطبيقات ومستشارين ومؤسسات أكاديمية في GTFS لتحديد الممارسات الشائعة والتوقعات المتعلقة ببيانات GTFS. يشمل أعضاء مجموعة العمل هذه ما يلي:
- نظام كامبريدج النظامي
- المنطقة المركزية
- مركز أبحاث النقل الحضري في جامعة "جنوب فلوريدا"
- خدمات النقل
- مجموعة IBI
- Mapping
- Microsoft
- المعجز
- وزارة النقل في أوريغون
- سريع
- النقل العام
- تريليوم
- TriMet
- البنك الدولي
اليوم، تحتفظ هذا المؤسسة بـ منظمة MobilityData الدولية.