コードで語るマニフェスト:行政データの機械可読性と実装ギャップを技術的に検証する

どうも〜おかむーです!今日はちょっとエンジニアっぽい話をしますよ〜
- 行政データがPDFに埋もれている問題は依然として多い
- Digital Agencyの機械可読性ルールは正しいが実装が追いついてない
- API化・CSV/JSON公開・メタデータ整備で即効性のある改善が可能
結論
行政が掲げるデジタル政策は方向性は良いが、現場の公開実装は未整備であることが多い。要するに「方針はあるが、実装(API・機械可読フォーマット・メタデータ)が不足している」ということです。エンジニア的に言うと、API一本・CSV一枚で多くの課題が解消します!
レポート本文
背景と問題の所在
これ見てくださいよ:デジタル庁や内閣官房の議論資料(例: digital.go.jp の「行政データにおける機械可読性に関するルール」PDF)では「ファイル形式は機械が直接読み取れる Excel や CSV 等」と明記されています(出典: https://www.digital.go.jp/)。要するにPDFやWordは人間向けで機械処理しにくい、と断言しているわけです。
しかし現場を見ると、自治体の実績報告や交付金の評価はPDFでの公開が多い(例: 須賀川市の実績評価ページ https://www.city.sukagawa.fukushima.jp/)。PDFだとテーブルの抽出や定期更新が難しく、データ連携や可視化が滞ります。
技術検証:よくある障壁
- フォーマット不統一:CSVは出すけどエンコーディングがShift_JISだったり、列名が自治体ごとにバラバラ
- メタデータ不足:データのスキーマ・更新タイミング・ライセンス情報が欠落
- API未整備:REST APIが無く、スクレイピングやPDFパースでしかデータ取得できない
- 品質問題:NULL扱い・単位表記不一致・タイムスタンプ欠落など
要するに、エンジニア的に言うと「契約はできてもインテグレーションできない」状況です。
実際にやるときのコード例(サンプル)
エンジニアならわかると思うんですけど、CSVが出てればpandasで楽勝です。例:
import requests
import pandas as pd
url = 'https://example.gov/data.csv'
r = requests.get(url)
open('data.csv','wb').write(r.content)
df = pd.read_csv('data.csv', encoding='utf-8')
欠損の簡易チェック
print(df.isna().sum())
PDFしかないケースではtabulaやpdfplumberで抽出してCSV化するワークフローが必要。これは臨時対応であって、恒久的解決にはAPI提供が不可欠。
API設計と公開のベストプラクティス
例えば、OpenAPIの簡単なスニペットはこんな感じ:
openapi: 3.0.0
paths:
/datasets:
get:
parameters:
- name: year
in: query
schema:
type: integer
responses:
'200':
description: OK
政策目標と実績のギャップ分析手法
政策(例:デジタル田園都市構想)では「デジタル実装タイプ」の事業数や利用者数といった目標があるはずです(参照: https://www.chisou.go.jp/)。
ギャップ分析は次のステップでやります:
- 目標値(政策文書)を構造化して取り出す
- 実績値(自治体の実績報告)を機械可読化して整形
- 同一スキーマにマッピングして差分計算(例: 実績/目標 = 達成率)
簡単なSQL例:
SELECT
p.policy_id,
p.target_value,
COALESCE(s.sum_actual,0) AS actual_value,
COALESCE(s.sum_actual,0)/p.target_value AS achievement_rate
FROM policies p
LEFT JOIN (
SELECT policy_id, SUM(value) AS sum_actual FROM achievements GROUP BY policy_id
) s ON p.policy_id = s.policy_id;
指標化:API可用性スコアを作る
オープンデータの活用可能性を定量化するために簡易スコアを提案します(0-100点):
- フォーマット(CSV/JSONあるか): 30点
- メタデータ(更新日・ライセンス): 20点
- API提供: 30点
- ドキュメント・OpenAPI: 20点
このスコアを自治体ごとに計測してダッシュボード化すれば投資判断に使えるはずです。
改善提案(実行可能な短期中期施策)
短期(3ヶ月):
- 重要レポートのCSV変換とUTF-8化
- メタデータテンプレートの配布(CSVヘッダ・更新日・単位)
- 共通API仕様(OpenAPI)を採用、自治体にサンプル実装を提供
- CKAN等のオープンデータポータル導入支援
- データガバナンス体制の整備、品質監査とSLA設定
まとめ
- 方針(機械可読性ルール)は整いつつあるが、現場実装がボトルネック
- PDF→CSV/JSON、OpenAPI、メタデータ整備が即効性のある対策
- 小さく始めてスコア化 → 可視化 → 標準化の順で展開すると現場も乗りやすい
おかむーから一言
テクノロジーで社会をアップデートするって言うけど、まずはデータをちゃんと開けることから始まるんですよ!小さなAPI一本が市民のUXを変えるんで、まずはCSV出しましょう!
信息来源
- https://www.zhihu.com/question/290714454
- https://www.digital.go.jp/assets/contents/node/basic_page/field_ref_resources/256dcba6-b936-4031-b88d-3abb27e27f9b/f7af0ca4/20260331_meeting_executive_outline_06.pdf
- https://www.zhihu.com/question/6430289390
- https://www.cas.go.jp/jp/seisaku/digital_gyozaikaikaku/kakusyoDX4/kakusyoDX4.html
- https://www.zhihu.com/question/38923279
- https://ja.wikipedia.org/wiki/%E3%83%87%E3%82%B8%E3%82%BF%E3%83%AB
- https://www.chisou.go.jp/sousei/about/kouhukin/index.html
- https://column.nippoukun.bpsinc.jp/what-is-digitization/
- https://www.city.sukagawa.fukushima.jp/shisei/gyoseiunei/keikaku/chiho_sosei/1015604/4045.html
- https://www.digital.go.jp/
- https://metidx-gov.note.jp/n/n9468573c213b
- https://zenn.dev/govtechtokyo/articles/b65dc687e50918
相关报告

代码で語るマニフェスト:以香川县公共设施预约系统为例的技术与数据审视
以香川县公共设施预约系统为例,从API、数据格式与标准化角度检视自治体系统,给出可执行的技术改进方案与代码示例。

用代码说话的宣言:从机器可读性到API化,解读日本数字化政策的数据工程路径
从Digital庁到e-Stat,评估日本数位政策的数据交付形态,提出API化与工程化改进路线,附代码与验证示例。

コードで語るマニフェスト:日本政府データをエンジニア視点で検証する
政府のマニフェストをデータとコードで検証。PDF多用やAPI断片化を指摘し、e-StatやJapan Dashboardを例に具体的な改善案とコード例を提示します。