BODIK ODMに集約したデータをAPIに変換

BODIK ODCSは、自治体がオープンデータを公開するためのオープンデータ連携基盤を、無償で提供するクラウドサービスです。

九州地区と関西地区を中心に多くの自治体にご利用いただいています。

ODCSでは、「ファイル」としてデータを公開していただいていますが、そのままでは使い勝手に課題があります。

ISITでは、BODIK ODCSに公開されているデータの中から、まずは推奨データセット(デジタル庁が自治体のオープンデータの中で優先的に公開を推奨するデータ)に注目し、推奨データセットと思われるデータをAPIで利用できるようにするAPIサーバーの仕組み(WAPIと呼んでいます)を構築しています。

ここまでが以前にご紹介したODCSからWAPIへの流れとなります

ISITでは、BODIK ODM(オープン・データ・モニター)も運営しています。ODMは、国内の自治体のオープンデータを集めたワンストップポータルです。国内の自治体のオープンデータサイトから、各オープンデータサイトが提供するデータ連携機能であるハーベスティング機能を使い、オープンデータデータのメタデータ(属性情報)をBODIK ODMのオープンデータカタログサイトに収集し公開しています。

BODIK ODM:https://odm.bodik.jp/

WAPIの仕組みを使って、ODMに集約した自治体が公開している推奨データセットのデータをAPI化してみました。ISITでは、このAPIサーバーをWAPI2(なんと安直な!)と呼んでいます。

WAPI2

元になったWAPIは、言うなれば「CKANという仕組みを使っているサイトのデータをAPI化するもの」といえます。

「BODIK ODCSのデータをかってにAPI化しよう」というテーマでWAPIの開発をはじめましたが、WAPIの動きを考えると、「ODCSじゃなくてもCKANなら同じじゃないか?」と気づき、接続先をODMに切り替えたところ、問題なくAPI化できました。どうせなら専用のサーバーを立てよう、という経緯でWAPI2サーバーを構築しました。

ODMには、国内の自治体が公開するオープンデータを集約し、アクセスできるようにしていますので、API化できる自治体のカバー範囲が拡大されます。将来的には日本中の自治体のオープンデータをAPI化し、アプリで使えるようにしたいですね。

2022年7月時点の自治体カバー状況

ODCSの参加自治体数 :218自治体

ODMに集約した自治体数:311自治体

WAPI2に登録された自治体とデータセットの一覧を確認できます。

WAPI2の自治体とデータセット:https://wapi2.bodik.jp/dataset

課題

WAPIと同じように、WAPI2も、ODMに集約したデータを「かってに」API化しているので、データの精度・品質に課題があると認識しています。

データセットの特定

WAPIの仕組みでもお話しましたが、データセットのタイトルを文字列検索して対象のデータを探しています。そのため、想定外のCSVファイルが「見つかって」データベースに登録される場合があります。このようなことがないように、対象となるデータセットには専用のタグ付けのお願いを計画しています。推奨データセットとタグの関連は次のようになります。

推奨データセットタグ
AED設置箇所一覧推奨データセット, AED設置箇所
介護サービス事業所一覧推奨データセット, 介護サービス事業所
医療機関一覧推奨データセット, 医療機関
文化財一覧推奨データセット, 文化財
観光施設一覧推奨データセット, 観光施設
イベント一覧推奨データセット, イベント
公衆無線LANアクセスポイント一覧推奨データセット, 公衆無線LAN
公衆トイレ一覧推奨データセット, 公衆トイレ
消防水利施設一覧推奨データセット, 消防水利施設
指定緊急避難場所一覧推奨データセット, 指定緊急避難場所
地域・年齢別人口推奨データセット, 地域・年齢別人口
公共施設一覧推奨データセット, 公共施設
子育て施設一覧推奨データセット, 子育て施設
表1.データセットのタグ付け

CSVの精度向上

せっかくオープンデータとして公開していただいたデータですが、推奨データセットに定義されている項目と違っていると、APIとして利用するときに問題になる可能性がありますので、推奨データセットに合わせていただく必要があります。

お手元のCSVと推奨データセットの定義書との違いは、弊所が公開している「バリデータ」を使うことで確認することができますので、お試しください。

バリデータ:https://utility.bodik.jp/validator

バリデータ以外にも、オープンデータの品質向上に役立つツール群(BODIK Utility)を公開していますので、ぜひご利用ください。

APIの利用

公開したAPIは次のページで試すことができます

APIを試す:https://wapi2.bodik.jp/docs

API化することで、アプリケーションで使いやすくなります。

地図アプリ

推奨データセットの中の位置情報を持つデータを使って、地図上にマーカーを表示する地図アプリを公開しています。

地図アプリ:https://wapi2.bodik.jp/map

下の例では、北海道の札幌駅のそばの医療機関を検索した結果を地図にプロットしてみました。

図1.WAPI2を使った地図アプリ

左上のドロップダウンで、「データの種類」「表示するデータ件数」「検索する範囲」を切り替えることができます。また、地図をスワイプ・スクロールで地図の表示場所を動かし、クリックするとその地点を中心に検索しますので、ご自分のお住まいの場所でお試しください。

統計情報

「地域・年齢別人口」を使って、人口ピラミッドを表示するサンプルも公開しています。

人口ピラミッド:https://wapi2.bodik.jp/chart_population

山形県天童市のデータを使ってみました。

図2.WAPI2を使った人口ピラミッド図

ひらの