複数のサイトで公開される鉄道に関するオープンデータを見やすく加工して提供するサイトを作りましたので、ここで紹介します。
鉄道会社・路線・駅のページの例です。一度開いて見てみてください。
鉄道会社の例(JR東海のページ):
路線の例(東海道新幹線のページ):
駅の例(東海道新幹線の東京駅のページ:
各ページに.json
や.xml
をつけてアクセスすると、そのページで使っているデータ(RDF)をダウンロードすることもできます。
https://uedayou.net/jrslod/東海旅客鉄道.json
https://uedayou.net/jrslod/東海旅客鉄道/東海道新幹線.xml
https://uedayou.net/jrslod/東海旅客鉄道/東海道新幹線/東京.ttl
特徴
鉄道駅LODには以下の特徴があります。
- 日本の鉄道会社・路線・駅のデータを閲覧・ダウンロード可能
- 提供する鉄道データはすべてオープンデータ
- サイトからは鉄道会社、路線、駅の順番でブラウジングが可能
- URLに鉄道会社、路線、駅名を入力して該当データに直接アクセスが可能
- URLに入力する名称は、別名や略称にも一部対応
(「東日本旅客鉄道」を「JR東日本」、「近畿日本鉄道」を「近鉄」など) - 鉄道会社・路線・駅データからは位置情報も取得可能
- 駅ページからはYahoo!路線情報・NAVITIMEの時刻表ページに遷移可能
- URLに拡張子(JSON/XMLなど)をつけることで、任意のファイル形式でデータを取得可能
- Linked Open Dataに対応、コンテントネゴシエーションによりRDFデータを取得可能
- 駅名検索が可能(画面上部ナビゲーションバーより)
以下では、Webページ上での使い方を主に説明します。
サイト構成
鉄道駅LODのサイトは
鉄道会社 > 路線 > 駅
のように階層構造になっています。
それに対応して鉄道会社、路線、駅についての各ページのURLも
https://uedayou.net/jrslod/[鉄道会社]/[路線]/[駅]
のようになりますので、URLが直感的でわかりやすくなっています。
例えば、東海道新幹線の東京駅のURLは
https://uedayou.net/jrslod/東海旅客鉄道/東海道新幹線/東京
となります。
このようにURLに直接入力して、該当データを閲覧もできるので、一部、別名、略称を入力しても、転送されるようになっています。
「東海旅客鉄道」は「JR東海」とも呼ばれますが、JR東海
でもアクセスできます。
https://uedayou.net/jrslod/JR東海/東海道新幹線/東京
トップページ
トップページには、全鉄道会社のページへのリンクがあります。
地域ごとに分類された部分からも鉄道会社のページに遷移できますし、地図上の路線図をクリックしても遷移できます。
トップページ
鉄道会社のページ
鉄道会社のページからは、その鉄道会社が運営する路線のページのリンクがあります。サイトに登録された別名・略称や全路線を地図で閲覧することができます。鉄道会社の説明、公式Webページ、画像なども表示されます(一部ないものがあります)。
JR東海のページ
路線のページ
路線ページは、路線に紐づく全ての駅のページへのリンクがあります。
駅リンクは、路線図として地図と直線上に表示し、できるだけわかりやすくしています。加えて、路線の説明、画像、路線距離があるものもあります。
東海道新幹線のページ
駅のページ
駅ページには、隣の駅への各リンクがあります。また、その駅から乗り換え可能な駅へのリンクもありますので、あたかもその駅から電車に乗ったり乗り換えたりしながら駅を行き来するような気分をWebページのブラウジングで味わえるかも?しれません。
とりあえず、その雰囲気を味わえるように、駅の看板っぽいデザインにしたつもりですが、似てなかったらすいません。
また、Yahoo!路線情報・NAVITIMEの駅情報・時刻表ページへのリンクがあります。表示中の駅の周辺情報、時刻表はこれらのページを参照してください。
その他、その駅の説明、住所、位置(地図上)、画像(写真)も閲覧できます。
東海道新幹線 東京駅のページ
駅名検索
画面上部の検索フォームに駅名を入力してエンターキーを押すと、サイト内の駅を検索することができます。ブラウジングがめんどくさい人はこちらを使ってください。
データダウンロード
このサイトで使用しているデータのほぼすべては、JSONやXMLでダウンロードすることができます。
データはオープンデータ(オープンライセンスにより提供されるデータ、データの提供元の提示などとても緩いライセンスさえ守れば二次利用・商用利用等自由に利用が可能なデータ)です。
ダウンロードは、画面上部のクラウドアイコンをクリックすることにより、ダウンロードダイアログが開きますので、利用したいフォーマットでダウンロードしてください。
ダウンロードしたデータについては、後日別の記事で解説する予定です。
例えば以下のようなJSONデータがダウンロードできます。
{
"https://uedayou.net/jrslod/東海旅客鉄道/東海道新幹線/東京": {
"http://www.w3.org/2000/01/rdf-schema#label": [{
"type": "literal",
"value": "東京",
"lang": "ja"
}],
"http://www.wikidata.org/prop/direct/P833": [{
"type": "uri",
"value": "https://uedayou.net/jrslod/東京地下鉄/丸ノ内線/東京"
}, {
"type": "uri",
"value": "https://uedayou.net/jrslod/東日本旅客鉄道/京葉線/東京"
}, {
"type": "uri",
"value": "https://uedayou.net/jrslod/東日本旅客鉄道/総武本線/東京"
}, {
"type": "uri",
"value": "https://uedayou.net/jrslod/東日本旅客鉄道/東海道線/東京"
}, {
"type": "uri",
"value": "https://uedayou.net/jrslod/東日本旅客鉄道/東北新幹線/東京"
}, {
"type": "uri",
"value": "https://uedayou.net/jrslod/東日本旅客鉄道/東北本線/東京"
}, {
"type": "uri",
"value": "https://uedayou.net/jrslod/東日本旅客鉄道/山手線/東京"
}, {
"type": "uri",
"value": "https://uedayou.net/jrslod/東京地下鉄/丸ノ内線/大手町"
}, {
"type": "uri",
"value": "https://uedayou.net/jrslod/東京地下鉄/東西線/大手町"
}, {
"type": "uri",
"value": "https://uedayou.net/jrslod/東京地下鉄/千代田線/大手町"
}, {
"type": "uri",
"value": "https://uedayou.net/jrslod/東京地下鉄/半蔵門線/大手町"
}, {
"type": "uri",
"value": "https://uedayou.net/jrslod/東京都交通局/三田線/大手町"
}, {
"type": "uri",
"value": "https://uedayou.net/jrslod/東京地下鉄/有楽町線/有楽町"
}, {
"type": "uri",
"value": "https://uedayou.net/jrslod/東日本旅客鉄道/東海道線/有楽町"
}, {
"type": "uri",
"value": "https://uedayou.net/jrslod/東日本旅客鉄道/山手線/有楽町"
}],
"http://www.wikidata.org/prop/direct/P465": [{
"type": "literal",
"value": "0000CD"
}],
"http://schema.org/description": [{
"type": "literal",
"value": "日本の東京都千代田区にある日本を代表する東日本旅客鉄道・東海旅客鉄道・東京地下鉄のターミナル駅。辰野金吾設計",
"lang": "ja"
}],
"http://www.wikidata.org/prop/direct/P81": [{
"type": "uri",
"value": "https://uedayou.net/jrslod/東海旅客鉄道/東海道新幹線"
}],
"http://ja.dbpedia.org/property/所属路線": [{
"type": "literal",
"value": "東海道新幹線",
"lang": "ja"
}],
"http://www.wikidata.org/prop/direct/P137": [{
"type": "uri",
"value": "https://uedayou.net/jrslod/東海旅客鉄道"
}],
"http://dbpedia.org/ontology/operatedBy": [{
"type": "literal",
"value": "東海旅客鉄道",
"lang": "ja"
}],
"http://www.w3.org/2003/01/geo/wgs84_pos#lat": [{
"type": "literal",
"value": "35.68099",
"datatype": "http://www.w3.org/2001/XMLSchema#double"
}],
"http://www.w3.org/2003/01/geo/wgs84_pos#long": [{
"type": "literal",
"value": "139.76811",
"datatype": "http://www.w3.org/2001/XMLSchema#double"
}],
"http://www.opengis.net/ont/geosparql#asWKT": [{
"type": "literal",
"value": "LINESTRING(139.76807 35.68296, 139.76811 35.68099, 139.76746 35.67936)"
}],
"http://www.w3.org/2002/07/owl#sameAs": [{
"type": "uri",
"value": "http://www.wikidata.org/entity/Q283196"
}, {
"type": "uri",
"value": "https://ja.wikipedia.org/wiki/東京駅"
}, {
"type": "uri",
"value": "https://en.wikipedia.org/wiki/Tokyo_Station"
}, {
"type": "uri",
"value": "http://ja.dbpedia.org/resource/東京駅"
}, {
"type": "uri",
"value": "http://dbpedia.org/resource/Tokyo_Station"
}, {
"type": "uri",
"value": "https://transit.yahoo.co.jp/station/top/22828/"
}, {
"type": "uri",
"value": "https://transit.yahoo.co.jp/station/rail/22828/"
}, {
"type": "uri",
"value": "https://www.navitime.co.jp/poi?node=00006668&ncm=1"
}, {
"type": "uri",
"value": "https://www.navitime.co.jp/diagram/lineList?node=00006668"
}],
"http://xmlns.com/foaf/0.1/homepage": [{
"type": "uri",
"value": "http://railway.jr-central.co.jp/station-guide/shinkansen/tokyo/"
}],
"http://dbpedia.org/ontology/address": [{
"type": "uri",
"value": "東京都千代田区丸の内一丁目9-1"
}],
"http://imi.go.jp/ns/core/rdf#住所": [{
"type": "uri",
"value": "http://uedayou.net/loa/東京都千代田区丸の内一丁目9"
}],
"http://www.wikidata.org/prop/direct/P197": [{
"type": "uri",
"value": "https://uedayou.net/jrslod/東海旅客鉄道/東海道新幹線/品川"
}, {
"type": "uri",
"value": "http://www.wikidata.org/entity/Q801442"
}]
},
"https://uedayou.net/jrslod/東海旅客鉄道/東海道新幹線/品川": {
"http://www.w3.org/1999/02/22-rdf-syntax-ns#first": [{
"type": "uri",
"value": "left"
}]
}
}
SPARQLエンドポイント
鉄道駅LODのデータをSPARQLで検索できるSPARQLエンドポイントを実験的に公開しています。
高度な検索をしたい方は利用してください。詳細は以下の記事にまとめています。
ダウンロードしたデータの活用法
ダウンロードしたデータがどう活用できるか、というのはなかなか想像がつかない場合もあるかと思います。
そこでサンプルになるようなアプリを作成しました。
「鉄道駅LOD」で提供する位置情報は、Webアプリで一般的に使われるGeoJSONという形式では提供していないので、鉄道駅LODの位置情報をGeoJSON形式に変換してダウンロードできるWebアプリを作りました。上記サイトから、実際に使うことができます。
使い方は以下にまとめました。
このWebアプリのソースコードを GitHub にて公開中です。
このアプリは、Vue.js というJavascriptフレームワークで作成しました。
Webアプリの作成ではよくつかわれるものの一つですので、アプリを作るときには参考になると思います。
少し変わった活用事例として鉄道路線を当てるクイズゲームも作りました。
こちらについては、別のQiitaの記事を投稿していますので、そちらを参照してください。
鉄道駅LODはCORS(Cross-Origin Resource Sharing)に対応しているため、Webブラウザ上で実行されるJavaScriptから直接JSONファイルを読み込むことができます。
鉄道駅LOD GeoJSON ダウンローダー、路線王、どちらもサーバサイドの実装なしに実現しています。
同じ仕組みのデータ提供サイトも公開中
鉄道駅LODとほぼ同じ仕組みでデータを提供するサイトを複数公開しています。
詳しくは、以下のページを参照してください。
住所データ:
図書館データ:
LODチャレンジ2020でデータセット部門優秀賞 受賞
「鉄道駅LOD」は、オープンデータアプリ・データセット・アイデアコンテストのLODチャレンジ2020に応募し、データセット部門優秀賞をいただくことができました。
【プレスリリース】Linked Open Data チャレンジ Japan 2020 受賞作品発表
https://2020.lodc.jp/awardPressRelease2020.html