2019年3月、横浜市オープンデータポータル が開設され、同時に「保育所等に関するデータ」のWEB API(SPARQLエンドポイント)が公開されました。
このAPIデータは、共通語彙基盤の語彙とデータ構造が用いられています。
保育所等のデータを共通語彙基盤対応のLODとして公開したのは全国初であり、非常に先進的な取り組みといえるでしょう。このような優れたデータの公開が、他の自治体でも進むことを願っています。
さて今回、私が作成しました「横浜市保育所&幼稚園MAP」は、上記APIを用いたWEBアプリケーションです。必要な情報をAPIからそのつど取得しますので、横浜市が公開している最新情報を常に利用できるところが特徴です。スマートフォンでの閲覧にも対応しています。
このアプリが、横浜市在住の方の、保育・教育施設選びのヒントの一つとなれることを願っています。
また、共通語彙基盤対応LODの活用例の一つとして、技術者の方にも参考にしていただければ幸いです。
横浜市保育所&幼稚園MAP
技術的なこと
当アプリのソースコードは GitHub で公開しています。( Mit License )
当アプリで利用しているSPARQLクエリは ブログ で解説しています。
WEB地図を扱うライブラリは Leaflet を利用しています。オープンストリートマップと地理院地図の切り替えが可能です。
横浜市APIはCORS(クロスオリジンリソースシェアリング)に対応していないようですので、ブラウザjavascriptから直接ajax通信でリクエストすると、クロスドメイン制限で弾かれてしまいます。そのため、javascriptにPHPをかませ、サーバー側からリクエストしています。
施設の座標情報(緯度経度)は横浜市APIからは提供されていません。そこで、APIから取得した住所一覧をジオコーディングし、全施設の緯度経度データ(csv)を作成しました。
施設IDと座標情報データ by Masahiro Hayashi
上記の座標情報データと、APIデータとをマッチングさせ、WEB地図上に表示させています。
一括ジオコーディングには、東京大学空間情報科学研究センター提供の CSVアドレスマッチングサービス を利用させていただきました。
また、今後新しい施設が追加されることを想定し、プログラム本体に Yahoo!ジオコーダAPI を組み込んであります。
注意事項
このアプリは作者が個人的に作成したものであり、横浜市がその機能や内容について保障したものではありません。利用に関して発生した損害等について、横浜市及び作者は一切の責任を負いません。
表示されるデータは「更新日現在」のものであり、現状とは異なります。データが誤っているものも多々あります。施設の空き状況など、正確な最新の情報は、施設に直接お尋ねください。
地図上の施設の場所は、所在地住所をジオコーディングした緯度経度のポイントです。そのため、正確な位置からズレている場合があります。参考程度にとどめておいてください。