जीटीएफ़एस के लिए 'Google ट्रांज़िट' एक्सटेंशन

परिचय

Google Transit टीम, Transit की सामान्य फ़ीड की विशेषताएं (जीटीएफ़एस) को बेहतर बनाने के लिए लगातार काम कर रही है, ताकि हमारे पार्टनर की ज़रूरतों को पूरा किया जा सके. जीटीएफ़एस विशेषताओं में शामिल करने के लिए कई एक्सटेंशन का सुझाव दिया गया है. Google Maps में Transit के लिए पार्टनर जो फ़ीड सबमिट करते हैं उसमें फ़िलहाल इन एक्सटेंशन का इस्तेमाल कर सकते हैं. इन सुविधाओं की पूरी सूची नीचे दी गई है.

जीटीएफ़एस विशेषताओं का विस्तार करने के लिए अगर आपके पास सुझाव हैं, तो जीटीएफ़एस में बदलाव करने की आधिकारिक तरीका देखें.

किसी खास किराये के लिए ज़्यादा से ज़्यादा ट्रांसफ़र की संख्या

कई एजेंसी वाले फ़ीड में किराया विशेषताओं की सुविधा देने के लिए, आगे दिए गए एक्सटेंशन का सुझाव दिया गया है:

फ़ील्ड का नाम ज़रूरी है ज़्यादा जानकारी
transfers ज़रूरी नहीं 'Google ट्रांज़िट' 0 से 5 तक के मानों को स्वीकार करता है; GTFS विवरण के मुताबिक यह 0 से 2 तक के मानों को स्वीकार करता है. किराये के लिए ज़्यादा से ज़्यादा कितने ट्रांसफ़र (ब्लॉक ट्रांसफ़र के अलावा) की अनुमति है, वह संख्या तय करने के लिए इस फ़ील्ड का इस्तेमाल करें.

आईसी कार्ड का किराया (जापान)

इंटिग्रेटेड सर्किट (आईसी) कार्ड ऐसा प्रीपेड स्मार्टकार्ड है जिसे रीचार्ज किया जा सकता है. इसका इस्तेमाल सिर्फ़ जापान में ट्रेन, सबवे, बस, और मोनोरेल का किराया चुकाने में किया जा सकता है. ज़्यादातर आईसी कार्ड, जैसे कि 'पेस्मो' और 'सुपर अर्बन इंटेलिजेंट कार्ड' (एसयूआईसीए), यात्रियों को अक्सर छूट देते हैं. सिर्फ़ Google के लिए काम करने वाले नीचे दिए गए एक्सटेंशन आईसी कार्ड के किराये के मॉडल पर काम करते हैं.

fare_attributes.txt

फ़ील्ड का नाम ज़रूरी है ज़्यादा जानकारी
ic_price ज़रूरी नहीं अगर आईसी कार्ड इस्तेमाल करने वाले व्यक्ति को छूट दी जाती है, तो मान छूट मिलने के बाद, किराये की रकम होगा. अगर आईसी कार्ड इस्तेमाल करने वाले व्यक्ति को छूट नहीं दी जाती है, तो मान को -1 करें. अगर कोई आईसी कार्ड किसी सार्वजनिक परिवहन एजेंसी के साथ काम नहीं करता है, तो मान को -1 करें.

दूसरी तरह के रास्ते

जीटीएफ़एस में फ़िलहाल कई तरह के रास्ते तय किए गए हैं. इनका इस्तेमाल यह बताने के लिए किया जा सकता है कि किसी खास रास्ते (जैसे, बस बनाम रेल बनाम फ़ेरी) की सेवा किस तरह की है. रास्तों के बेहतर समूह की सुविधा देने के लिए, routes.txt route_type फ़ील्ड के लिए एक्सटेंशन इस्तेमाल करने का सुझाव दिया गया है. ज़्यादा जानकारी के लिए, बढ़ाए गए सभी तरह के जीटीएफ़एस रास्ते देखें.

स्टेशन वाहन प्रकार

किसी खास स्टॉप पर सेवाएं देने वाले वाहनों के प्रकार का ज़िक्र करने की सुविधा देने के लिए, एक एक्सटेंशन का सुझाव दिया गया है.

stops.txt

फ़ील्ड का नाम ज़रूरी है ज़्यादा जानकारी
vehicle_type ज़रूरी नहीं

स्टॉप पर इस्तेमाल किए जाने वाला वाहन किस तरह का है, उस बारे में जानकारी देने के लिए इस फ़ील्ड का इस्तेमाल करें. यह हमारे सुझाए गए जीटीएफ़एस रास्तों के बढ़ाए गए तरीकों के मानों के साथ-साथ, routes.txt route_type का सही मान स्वीकार करता है.

यात्रा के रास्ते में बदलाव

जो यात्राएं सामान्य तौर पर तय किए गए समय के हिसाब से नहीं शुरू होतीं, या खास मौकों या पहले से तय की गई रुकावटों (जैसे कि रेलवे का ट्रैक बनाने का काम) की वजह से सामान्य रास्ते की बजाय किसी और रास्ते से तय की जाती हैं, उनकी तरफ़ ध्यान खींचना उपयोगी होता है. कभी-कभी दी जाने वाली ऐसी सेवाओं की तरफ़ ध्यान खींचने के लिए हम trips.txt में एक एक्सटेंशन जोड़ने का सुझाव देते हैं.

trips.txt

फ़ील्ड का नाम ज़रूरी है ज़्यादा जानकारी
exceptional ज़रूरी नहीं

कुछ खास हालातों में कभी-कभी दी जाने वाली सेवाओं की तरफ़ ध्यान खींचने के लिए इस फ़ील्ड को 1 पर सेट करें. ऐसी सेवाओं के उदाहरण हैं: खास मौकों की वजह से जोड़ी गई सेवाएं या पहले से तय की गई रुकावटों (जैसे कि रेलवे का ट्रैक बनाने का काम) की वजह से सामान्य रास्ते की बजाय किसी और रास्ते से तय की जाने वाली यात्रा सेवाएं. आम सेवाओं के लिए इस फ़ील्ड को 0 पर सेट करें.

एक रास्ते से दूसरे रास्ते और एक यात्रा से दूसरी यात्रा के बीच ट्रांसफ़र

GTFS विवरण एजेंसी को फ़िलहाल transfers.txt फ़ाइल का इस्तेमाल करके ट्रांसफ़र सिमैंटिक्स तय करने, और पसंदीदा ट्रांसफ़र, समयबद्ध ट्रांसफ़र और प्रतिबंधित ट्रांसफ़र की सुविधाएं देने की इजाज़त देता है. फ़िलहाल ये ट्रांसफ़र केवल स्टॉप पर लागू होते हैं. Google को कई एजेंसी से फ़ीडबैक मिला है कि वे रास्ते के स्तर पर या यात्रा के स्तर पर भी और ज़्यादा ट्रांसफ़र जानकारी देने की सुविधा चाहती हैं. इन एजेंसी के साथ काम करते हुए, हमने रूट-टू-रूट और ट्रिप-टू-ट्रिप ट्रांसफ़र की मॉडलिंग का सुझाव दिया है और हम GTFS समुदाय के सुझाव का इंतज़ार कर रहे हैं.

वजह

हम चाहते हैं कि स्टॉप युग्म की सभी यात्राओं के लिए एक ही ट्रांसफ़र तय किए बिना, उस स्टॉप युग्म के लिए खास रास्तों के बीच या खास यात्राओं के बीच भी हम ट्रांसफ़र तय कर पाएं.

उदाहरण के लिए:

  • अगर दो यात्राएं एक ही प्लैटफ़ॉर्म पर पहुंचती हैं और एक-दूसरे का इंतज़ार करती हैं, तो हम इन दोनों यात्राओं के बीच एक समयबद्ध ट्रांसफ़र तय करना चाहते हैं. लेकिन हम नहीं चाहते कि इस ट्रेन स्टेशन पर सभी ट्रांसफ़र समयबद्ध ट्रांसफ़र हों.

  • कोई ट्रेन अगर अक्सर 30 मिनट तक की देरी से चलती है और उसके स्टॉप पर पहुंचने और वहां से जाने के लिए तय किए गए समय के बीच 35 मिनट से कम का फ़ासला हो, तो हम नहीं चाहते कि इस ट्रेन से किसी दूसरे ट्रेन में ट्रांसफ़र किए जाएं.

ज़्यादा जानकारी

transfers.txt में चार वैकल्पिक फ़ील्ड जोड़ें:

  • from_route_id
  • to_route_id
  • from_trip_id
  • to_trip_id

from_route_id और to_route_id फ़ील्ड में एक route_id (जिसे routes.txt में तय किया गया है) हो सकता है, जो दिए गए ट्रांसफ़र को लागू करने के दायरे को कम करता है. अगर from_route_id दिया गया है, तो ट्रांसफ़र from_stop_id पर सिर्फ़ दिए गए रास्ते के आईडी से आने वाली यात्रा पर लागू होगा. अगर to_route_id दिया गया है, तो ट्रांसफ़र to_stop_id पर सिर्फ़ दिए गए रास्ते के आईडी से जाने वाली यात्रा पर लागू होगा.

from_trip_id और to_trip_id फ़ील्ड में trip_id शामिल हो सकता है, जिसे trips.txt में तय किया गया है. अगर from_trip_id दिया गया है, तो from_route_id को नज़रअंदाज़ कर दिया जाता है. अगर to_trip_id दिया गया है, तो to_route_id को अनदेखा कर दिया जाता है. अगर from_trip_id दिया गया है, तो ट्रांसफ़र from_stop_id पर सिर्फ़ दिए गए यात्रा के आईडी से आने वाली यात्रा पर लागू होगा. अगर to_trip_id दिया गया है, तो ट्रांसफ़र to_stop_id पर सिर्फ़ दिए गए यात्रा आईडी से जाने वाली यात्रा पर लागू होगा.

ट्रांसफ़र की खासियत

कुछ ट्रांसफ़र दूसरों की तुलना में ज़्यादा विशिष्ट होते हैं. हम एक आसान-सा रैंकिंग सिस्टम बनाना चाहते हैं ताकि यह तय किया जा सके कि किसी ट्रांसफ़र को कब लागू किया जाना चाहिए. इस तरह हम एक ट्रांसफ़र की "खासियत" तय करते हैं.

अगर सिर्फ़ from_stop_id दिया गया है, तो ट्रांसफ़र के स्रोत की खासियत 0 होती है. अगर from_route_id दिया गया है, तो 1 होती है. अगर from_trip_id दिया गया है, तो 2 होती है. यही बात टारगेट पर लागू होती है: अगर सिर्फ़ to_stop_id दिया गया है, तो 0. अगर to_route_id दिया गया है, तो 1. अगर to_trip_id दिया गया है, तो 2. इन दोनों मानों के जोड़ से, 0 और 4 के बीच (0 और 4 समेत), ट्रांसफ़र की खासियत पता चलती है. आने वाली यात्रा और जाने वाली यात्रा के दिए गए युग्म के लिए, इन दोनों यात्राओं के बीच लागू होने वाली सबसे बड़ी खासियत वाले ट्रांसफ़र को चुना जाता है. इसलिए, यात्राओं के किसी भी युग्म के लिए, ऐसे दो ट्रांसफ़र नहीं होने चाहिए कि उन दोनों की खासियत बराबर और सबसे ज़्यादा हो.

साफ़ तौर पर तय नहीं किए नियम का उदाहरण:

from_stop_id,to_stop_id,from_route_id,to_route_id,transfer_type
stopFrom,stopTo,routeFrom,,0
stopFrom,stopTo,,routeTo,1

इन दोनों ट्रांसफ़र की खासियत 1 है. हालांकि, routeFrom रास्ते के आईडी से शुरू होकर स्टॉप stopFrom तक की यात्रा और routeTo रास्ते के आईडी से शुरू होकर स्टॉप stopTo तक की यात्रा के बीच ट्रांसफ़र के लिए, इन दोनों नियमों में से किसी एक नियम को लागू किया जा सकता है.