コンテンツにスキップ

Fares v1

fare_attributes.txtfare_rules.txt で構成されるFares v1 は、歴史的に GTFS で運賃情報を記述するための公式の方法でした。しかし、2 つのファイルは、効率的に記述できる要素の幅が限られており、実装があいまいです。 Fares v2 は現在開発中の拡張プロジェクトで、Fares v1の制限に対処することを目的としています。

機関の運賃規則を定義する

トロント交通委員会の地下鉄ネットワークで乗客が PRESTO カードを使用して支払う場合、乗車料金は 3.20 カナダドルです。乗客は、2 時間以内に TTC が運営する他の地下鉄、路面電車、またはバス路線に乗り換えることもできます。

このサービスは、fare_attributes.txtfare_rules.txt、および transfers.txt ファイルを使用して表すことができます。最初のファイル fare_attributes.txt には、交通機関の運賃が記載されています。以下は、プレスト運賃の例です:

** fare_attributes.txt**

fare_id,price,currency_type,payment_method,transfers,transfer_duration
presto_fare,3.2,CAD,1,,7200
  • 運賃は、price とcurrency_typeの下に表示されます。
  • 乗客は、地下鉄に乗る前に、駅の改札口で運賃を支払う必要があります。これは payment_method=1 で表されます
  • フィールド transfers は、無制限の乗り換えを表すために空白のままにされています
  • フィールドtransfer_duration は、2 時間の乗り換えウィンドウに対応します (秒単位)

2 番目のファイル fare_rules.txt は、運賃をルートおよびそのルートの出発地/目的地に結び付けて、運賃を旅程に割り当てます。

そのために、2 つの地下鉄路線が routes.txt で以下のように定義されています:

** routes.txt**

agency_id、 route_id、route_type
TTC、Line1、1
TTC、Line2、1

この例では、Bloor-Yonge 駅での乗り換えがモデル化されています。そのため、この駅は 2 つの別々の停留所としてモデル化されています。1 つ目は 1 号線が停車する Bloor 駅、2 つ目は2.号線が停車する Yonge 駅です。両方の駅に zone_id=ttc_subway_stations が設定されており、すべての地下鉄駅を 1 つの料金ゾーンにグループ化しています。

** stops.txt**

stop_id,stop_name,stop_lat,stop_lon,zone_id
Bloor,Bloor Station,,43.670049,-79.385389,ttc_subway_stations
Yonge,Yonge Station,,43.671049,-79.386789,ttc_subway_stations

fare_rules.txtでは、PRESTO運賃は、次の関係を使用して地下鉄の路線と駅の両方に関連付けられています:

  • fare_id=presto_fareの場合、乗客はLine 1 (route_id=line1)の任意の2つの駅間を移動でき、 origin_id=ttc_subway_stations および destination_id=ttc_subway_stations

** fare_rules.txt**

fare_id、 route_id、origin_id、destination_id
presto_fare、line1、ttc_subway_stations、ttc_subway_stations
presto_fare、line2、ttc_subway_stations、ttc_subway_stations

3 番目のファイル transfers.txt は、異なるルート間の乗り換えポイントを定義します。 Bloor-Yonge 駅での乗り換えをモデル化するには、次の 2 つのエントリが必要です。

** transfers.txt**

from_stop_id、to_stop_id、from_route_id、to_route_id、transfer_type
Bloor、Yonge、line1、line2、0
Yonge、Bloor、line2、line1、0
  • 最初のモデルは、Bloor 駅から Yonge 駅までのfrom_route_idto_route_idto_route_idして、Line 2 から Line 1 への乗り換えをモデル化します
  • 乗り換えに関する特定の要件や考慮事項がないため、 transfer_typeの値は 0 です

ソースの例