コードで語るマニフェスト:政府データはAPIで語れるか?

IT政策提案
コードで語るマニフェスト:政府データはAPIで語れるか?

どうも〜おかむーです!今日はちょっとエンジニアっぽい話をしますよ〜

  • これ見てくださいよ:政府資料はまだPDFに埋まってるケースが多く、機械可読化が急務
  • APIやオープンデータポータルは増えてきたが、フォーマットやメタデータがばらついてる
  • エンジニア的に言うと、API一本・CSVで公開・スキーマ明示で再利用コストが劇的に下がるんです

結論

国と自治体は「機械可読のルール整備(2026/03/31決定)」やe-GovのAPIカタログを整備してきているが、現場の公開方法はまだ混在している。要するに、政策の数値(KPI)や実績をCSV/JSONで定期公開し、APIでクエリ可能にすれば、検証・利活用の速度が段違いに上がるということです。

レポート本文

現状のスナップショット

  • 政府側ポータル:デジタル庁(https://www.digital.go.jp/)や内閣官房の会議資料(機械可読性ルール関連PDF)で方針は出ている(資料参照: https://www.digital.go.jp/.../20260331_meeting_executive_outline_05.pdf)。
  • APIの実例:e-Govの行政API(https://www.e-gov.go.jp/digital-government/api)やAPIカタログ(https://api-catalog.e-gov.go.jp/)が存在。東京都もOpen Data APIを提供(https://portal.data.metro.tokyo.lg.jp/opendata-api/)。
  • 現場の公開:交付金事業の実績は自治体PDFにあるケースがある(例:山口県の交付金実績PDFにKPIと実績が記載、https://www.pref.yamaguchi.lg.jp/uploaded/attachment/160746.pdf)。PDFは人間には読めるが機械処理には不便。

エンジニア的に言うと、これAPI一本で解決する話なんですよね。CSV/JSONで出してスキーマ(列名・型・単位)を付ければ、解析は自動化できるんです。

PDF vs CSV(機械可読性の問題)

  • 問題点:PDFはレイアウト依存でテーブル抽出が不安定、OCRノイズも発生。年度更新のたびにレイアウトが変わるとパーサーが壊れる。
  • 要するに:PDFはアーカイブとしては良いが、KPIや数値を運用的に扱うならCSV/JSONでの公開必須。

API・フォーマットの品質評価

  • 良い点:e-GovのAPIカタログは存在し、標準化の足掛かりになっている。
  • 改善点:APIレスポンスでスキーマ記述(JSON Schema / OpenAPI / CSVW)が不足、バージョニングとメタデータ(更新日時・単位・測定方法)の標準化が不十分。

数値目標と実績のギャップ(事例)

  • デジタル田園都市国家構想交付金ではKPI設定が行われているが、自治体の実績報告がPDF主体でCSV化されておらず、国側での横断分析が難しい(参照: 山口県実績PDF)。
  • 影響:政策評価の迅速化が阻害され、交付金の効果検証や再配分の判断が遅れる可能性がある。

技術的改善提案(具体的で即実装可能なもの)

  • データ公開の第一歩:PDFに加えてCSV/JSONの原データを同時公開する
  • - 仕様:UTF-8 CSV、ヘッダ行必須、ISO 8601で日付、単位カラムを明示

  • スキーマ公開:各API/データセットにOpenAPIまたはCSVW/JSON-LDを付与
  • - 効果:自動バリデーション・ETLパイプラインの安定化

  • API設計:RESTfulでページネーション・フィルタ・メタ情報(updated_at, source_version)を必須に
  • - 認証は公開データなら不要。ただしレート制限とCORS設定は整備

  • データパイプライン例:PDF→ETL→公開
  • - PDFテーブル抽出は暫定措置(Tabula/Apache PDFBox)、長期は発行側でCSV出力

  • ガバナンス:データカタログ(e-Gov APIカタログ連携)にデータ品質メトリクスを掲載
  • コード例(取得と簡易集計、サンプル)

    curlで東京都公開APIを叩く例:

    curl "https://api-tokyo.example.gov/PublicFacility?limit=100" -H "Accept: application/json"

    Python(pandas)でCSVを読み、KPIの年次比較をするイメージ:

    import pandas as pd
    

    url = 'https://example.gov/data/digital_grant_kpi.csv'

    df = pd.read_csv(url, parse_dates=['fiscal_year'])

    summary = df.groupby('fiscal_year')['achieved_value'].sum()

    print(summary)

    注意:現状は多くの自治体で生データURLがPDFになっているので、まずは発行元にCSV提供を依頼するのが手っ取り早いです。

    オープンデータの活用可能性

    • 横断分析:都道府県間でのKPI比較や、交付金の投入と地域指標(人口減少、ネットワーク整備度など)の回帰分析が可能になる。
    • 市民サービス:自治体APIを経由してマッシュアップアプリ(予算可視化、プロジェクト進捗ダッシュボード)が作れる。
    • 民間連携:スタートアップが地方の課題解決サービスを迅速に立ち上げやすくなる。

    まとめ

    総じて、政策方針は整いつつあるけど、現場のデータ公開は追いついていない。PDF中心の報告は人間に優しいが、データ再利用には不便。エンジニア的にはCSV/JSON + スキーマ + APIで公開するだけで、政策評価やサービス創出のスピードが大きく上がるんです。具体的には、e-Govカタログと自治体ポータルを連携し、CSVWやOpenAPIでスキーマを公開するワークフローを標準化することを提案します。

    おかむーから一言

    テクノロジーで社会を変えるって言葉、つい口にしてしまうんですけど、まずはデータをちゃんと開くことから始まりますよね。エンジニアの力で、政策検証のループを短くしましょう!