General Transit Feed Specification (GTFS) は、公共交通機関の時刻表と地理的情報に関するオープンフォーマットである[1]。GTFSのような共通のフォーマットで情報が公開されることで、複数の公共交通機関の情報を利用する経路検索などのアプリケーション開発が容易になる。
構成
GTFSのデータは複数のCSV形式によるテキストファイルに記述され、ひとつのZIPファイルにまとめられる[2]。テキストエディタや表計算ソフトで扱え、小規模事業者でもデータを作成しやすいことがCSV形式が選ばれた理由である[3]。
GTFSを構成するテキストファイルは次の通りである[2]。
agency
- 交通機関の基礎的な情報。
stops
- 停車地。駅やバス停などに関する情報。
routes
- ルート
trips
- 旅程
stop_times
- 停車時刻
calendar
- 運行日の曜日による定義。
calendar_dates
- 運行日の日付による定義。(省略可能)
fare_attributes
- 「料金クラス」(省略可能)
fare_rules
- 料金の適用ルール(省略可能)
shapes
- 運行経路を地図上に描画するためのシェイプ情報。(省略可能)
frequencies
- 運行間隔。時刻表がなく運行間隔のみが定まっている交通機関で使用する。(省略可能)
transfers
- 乗り換えに関する補足情報。(省略可能)
feed_info
- GTFSフィード自体に関する情報。(省略可能)
GTFSリアルタイム
GTFSリアルタイム (GTFS-realtime) は、公共交通機関のリアルタイムな運行状況に関するオープンフォーマットである[4]。GTFSとは異なり、遅延や運休などのリアルタイムな運行状況を対象とする。
GTFSリアルタイムで扱える情報の種類は次の通りである[5]。
- 「ルート最新情報」 - 個々の運行の遅れの状況について提供する。
- 「運行情報」 - 運行の大局的な状況やその原因について提供する。
- 「車両位置情報」 - 運行中の車両の現在位置について提供する。
GTFSデータが一つのファイルとして提供されるのに対し、GTFSリアルタイムはAPIによって提供される[6]。データ形式はProtocol Buffers形式を使用する[4]。
GTFSの利用
GTFSは公共交通機関のオープンデータに関してデファクトスタンダードとなっている。Googleの運営するGoogle乗換案内では、交通事業者からの情報提供をGTFSおよびGTFSリアルタイムによって受け付けており[7]、同様にいくつかのアプリケーションがGTFSに対応している。また、公開されているGTFSデータの情報を集約するウェブサイトも存在する。
歴史
GTFSの原形となったのは、2005年にGoogleがオレゴン州ポートランドの公共交通機関TriMet(英語版)との協働によってGoogle Transit(Google乗換検索)を立ち上げた際に使用されたデータである。2006年、Googleはこのデータ形式をGoogle Transit Feed Specificationとして公開した[3][8]。これがGTFSの最初のバージョンである。以降、GTFSの仕様はGoogleや交通事業者、データ利用者などからなるコミュニティによってメンテナンスされており、何度か変更や拡張が行われている。2009年には、Googleの名を冠していることによる無用な誤解や忌避を解消するために、名称がGoogle Transit Feed SpecificationからGeneral Transit Feed Specificationへ改められた[3][9][10]。
標準的なバス情報フォーマット
標準的なバス情報フォーマット(ひょうじゅんてきなバスじょうほうフォーマット)は、日本の国土交通省がGTFSを拡張して策定したデータフォーマットである。日本においては、中小バス事業者が経路検索の対象とされないことが多かったことから、これを改善するために策定され、2017年3月に公開された[11][12][13]。
脚注