BODIK APIは、BODIK ODMにあつめた自治体が公開する「自治体標準オープンデータセット」のデータファイルをデータベースに記録し、アプリケーションからはWebAPIで利用できるようにするAPIサーバーです。
BODIK APIの機能概要
CKAN / データカタログサイトについて
クローラー
最初に、CKANのメタデータに記載されているライセンスを確認します。BODIK APIは次のライセンスで公開されているデータを取り込みます。
ライセンス | ライセンス内容 |
---|---|
CC-BY | 著作権者の表示 |
CC-BY-SA | 著作権者の表示、ライセンスの継承 |
CC 0 | いかなる権利も保有しない |
次に、CKANのメタデータをチェックして、次のいずれかの条件に合致したとき、そのデータセットは自治体標準オープンデータセットであると判断します。
- 自治体標準オープンデータセット用のタグ(表1のタグセット1)をすべて持っている
- 推奨データセット用のタグ(表1のタグセット2)をすべて持っている
- データセットのタイトルに指定された文字列をすべて含む
表1に、自治体標準オープンデータセット別の判定条件を示します。
自治体標準オープンデータセット名 | タグセット1 | タグセット2 | データセットタイトル |
---|---|---|---|
AED設置箇所一覧 | 自治体標準ODS、AED設置箇所 | 推奨データセット、AED設置箇所 | AED |
介護サービス事業所一覧 | 自治体標準ODS、介護サービス事業所 | 推奨データセット、介護サービス事業所 | 介護サービス |
医療機関一覧 | 自治体標準ODS、医療機関 | 推奨データセット、医療機関 | 医療機関一覧 |
文化財一覧 | 自治体標準ODS、文化財 | 推奨データセット、文化財 | 文化財一覧 |
観光施設一覧 | 自治体標準ODS、観光施設 | 推奨データセット、観光施設 | 観光施設一覧 |
イベント一覧 | 自治体標準ODS、イベント | 推奨データセット、イベント | イベント一覧 |
公衆無線LANアクセスポイント | 自治体標準ODS、公衆無線LAN | 推奨データセット、公衆無線LAN | 公衆無線LAN |
公衆トイレ一覧 | 自治体標準ODS、公衆トイレ | 推奨データセット、公衆トイレ | 公衆トイレ一覧 |
公共施設 | 自治体標準ODS、公共施設 | 推奨データセット、公共施設 | 公共施設一覧 |
消防水利施設一覧 | 自治体標準ODS、消防水利施設 | 推奨データセット、消防水利施設 | 消防水利施設一覧 |
指定緊急避難場所一覧 | 自治体標準ODS、指定緊急避難場所 | 推奨データセット、指定緊急避難場所 | 指定緊急避難場所 |
地域・年齢別人口 | 自治体標準ODS、地域・年齢別人口 | 推奨データセット、地域・年齢別人口 | 年齢別 、人口 |
子育て施設一覧 | 自治体標準ODS、子育て施設 | 推奨データセット、子育て施設 | 子育て施設一覧 |
食品等営業許可・届出一覧 | 自治体標準ODS、食品等営業許可 | 食、営業許可 | |
学校給食献立情報メタデータ | 自治体標準ODS、学校給食メタ | 学校給食、献立、メタ | |
学校給食献立情報 | 自治体標準ODS、学校給食 | 学校、給食 | |
小中学校通学区域情報メタデータ | 自治体標準ODS、通学区域メタ | 学校、通学、域、メタ | |
小中学校通学区域情報 | 自治体標準ODS、通学区域 | 通学区 |
例えば、あるデータセットが「地域・年齢別人口」であるか?を確認する場合は次の手順で確認します。
条件1:タグセット1を確認する
CKANのデータセットのタグに「自治体標準ODS」と「地域・年齢別人口」という2つのタグが付けられていたら、そのデータセットは「地域・年齢別人口」のデータセットであると判断します。
条件1に適合しない場合、次の条件2を確認します。
条件2:タグセット2を確認する
CKANのデータセットのタグに「推奨データセット」と「地域・年齢別人口」という2つのタグが付けられていたら、そのデータセットは「地域・年齢別人口」のデータセットであると判断します。
条件2にも適合しない場合、次の条件3を確認します。
条件3:データセットのタイトルを確認する
CKANのデータセットのタイトル文字列に「年齢別」と「人口」という文字列が含まれていたら、そのデータセットは「地域・年齢別人口」のデータセットであると判断します。
条件3にも適合しない場合、そのデータセットは「地域・年齢別人口」ではないと判断します。
インポータ
クローラが特定したデータセットで公開されているリソースファイルのうち、ファイルフォーマットが「CSV」のリソースファイルを対象とします。
最初にリソースファイルの更新状況を確認し、新規登録、あるいは前回の取り込み時以降に更新されている場合は、取り込みの対象となります。
データを取り込むとき、CSVの項目を確認して「自治体標準オープンデータセット」に完全に合致していない場合は、自治体標準データセットに合わせて登録します。
- 自治体標準オープンデータセットに定義されていない項目は削除します。
- 自治体標準オープンデータセットに定義された項目が抜けている場合は、その項目を追加し、値はブランクで登録します。
この処理により、すべての自治体が「自治体標準オープンデータセット」にそろえてデータを公開したものとしてデータベースに記録されます。
自治体のオープンデータ担当者様へのお願い
BODIK APIは、表1に示した条件で、機械的に自治体標準オープンデータセットのデータを探し、特定しています。そのため、自治体標準オープンデータセットのデータを公開しているにも関わらず、CKANへの登録状況(タグやデータセットのタイトル)がこの条件に合致していないと、BODIK APIに登録されません。
そのような場合は次の対応をご検討ください。
- 自治体標準オープンデータセットあるいは推奨データセットのデータをCKANに公開する際、表1にあるタグをセットすると、BODIK APIの対象になります。
- ファイルフォーマットが「CSV」のリソースファイルを対象としています。
- 1行目が項目名、2行目以降はデータ行になっているCSVが対象です。
- Excelには対応していません。
- 自治体標準オープンデータセット
- 緯度、経度のあるデータセットでは、「緯度」「経度」の項目がないとBODIK APIに取り込まれません。
- 「地域・年齢別人口」は、5歳刻みの男女別人数の項目のすべてがないとBODIK APIに取り込まれません。
WebAPIサーバー
自治体標準オープンデータセットのGETメソッドのエンドポイントを提供します。
その他にも、POSTメソッドのエンドポイントや各種情報取得のエンドポイントを提供します。
詳細は「BODIK APIマニュアル」をご参照ください。
BODIK APIが扱うその他のデータ
BODIK APIは、BODIK ODMに公開されている「自治体標準オープンデータセット」のデータをデータベースに登録し、WebAPIで利用することができるようにしたAPIサーバーですが、他にも利用できるデータがあります。
BODIK定義の共通データセット
自治体標準オープンデータセット以外に、複数の自治体で共通に扱うべきとBODIKが判断し、BODIKが定義するデータセットです。
このタイプとしては、次のようなデータセットが考えられます。
- 自治体標準オープンデータセットに準じて、全国共通にまとめたいデータセット
- 特定の県が県下の自治体で共通にまとめたいデータセット
このタイプのAPIは、BODIK APIのPOSTメソッドで利用することができます。
自治体固有のデータセット
自治体が自分のCKANに公開している特定のデータセットをAPIにして利用したいときに、「自治体固有のデータセット」として登録することができます。
このタイプのAPIは、BODIK APIのPOSTメソッドで利用することができます。
詳細はBODIKチームにご相談ください。
お試しデータセット(MyAPI)
開発者が手元のCSVファイルから独自のAPI(有効期限あり)を作成し、自前のアプリケーションで利用することができます。
最短10分程度で、手元のCSVの内容をWebAPIで利用することができます。データのAPI活用の確認としてご利用ください。
このタイプのAPIは、BODIK APIのPOSTメソッドで利用することができます。
詳細は「BODIK API MyAPI」をご参照ください。