コードで語るマニフェスト:行政フォームが政策データを壊す前にやるべきこと

どうも〜おかむーです!今日は行政の申請フォームや公開データの“入口”に注目して、エンジニア視点で政策データの品質を検証しますよ〜
- 申請フォームの設計不備が、政策KPIの測定をゆがめている
- フロントでのバリデーション/フォーマット不一致がCSVやAPIに伝播する具体例
- 実装で防げる改善案(JSON Schema・IDempotency・監査ログ・ETL監視)を提示
結論
フォーム設計と入力パイプラインがまずければ、どれだけ良いダッシュボードを作っても“嘘の数字”になりがちです。要するに、UI/UXとデータ工学をつなぐ実務的な契約(schema-first)を自治体レベルで標準化するのが最もコスパ良い改善策です。
レポート本文
何が問題か?これ見てくださいよ
地方自治体の公開データ(例えば東京都オープンデータやe-GovのAPIカタログ)は存在します(参考: https://portal.data.metro.tokyo.lg.jp/ 、https://www.e-gov.go.jp/digital-government/api)。ただ、実務では「申請フォームは別システム」「公開用CSVは手作業で作成」「元はPDFで受け取る」といったフローが多いんですよね。要するにデータの型・正規化・エンコーディングが壊れたまま公開される。
影響例:
- 日付フォーマット混在(YYYY/MM/DD と YYYY-MM-DD と 和暦)→ 集計がバグる
- 同一の概念に対する複数コード(free-textで「女性」「女性(妊婦)」など)→ 自動分類が壊れる
- 途中のPDF化・手入力で欠損が発生 → KPIの分母が小さく見える
技術的にどう検証するか
エンジニア的に言うと、まずは「入力契約(Input Contract)」を明文化して自動テスト化するべきです。
コード例(JSON Schemaの抜粋):
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ChildcareWaitingRegistration",
"type": "object",
"properties": {
"applicant_id": {"type": "string"},
"birth_date": {"type": "string", "format": "date"},
"desired_start": {"type": "string", "format": "date"},
"care_level_code": {"type": "string", "enum": ["0","1","2","3"]}
},
"required": ["applicant_id","birth_date"]
}
データ受け渡しのcurl例(e-GovのAPIに似せた想定):
curl -X POST https://api.metro.tokyo.lg.jp/childcare/waiting \
-H 'Content-Type: application/json' \
-d @registration.json
ETL側のチェック(pandasで型強制):
import pandas as pd
df = pd.read_csv('waiting_raw.csv')
日付を統一
df['birth_date'] = pd.to_datetime(df['birth_date'], errors='coerce')
欠損率の監視
missing = df.isnull().mean()
print(missing[missing>0])
PDF vs CSV の問題もちゃんと見る
PDFで受け取ったり公開したりする運用はまだ多いです。PDFは人間には良いけど機械的には最悪。要するにPDFはロスの温床です。可能なら入力段階から機械可読(JSON/CSV/JSONL)を採用し、PDFは最終的なレポート出力に限定すべきです。
KPIとデータのギャップをコードで見つける
例えば「保育所待機児童ゼロ」を目標にするなら、申請ベースと実績ベースで異なる定義がないかをコードで照合します。具体的には:
- 申請DBのステータス定義と公開統計のステータスマッピングを明文化
- 週次で差分レポートを自動生成(SQL + CIで検出)
SQL差分例:
SELECT date, count(*) as raw_applications FROM applications
WHERE status IN ('applied','pending')
GROUP BY date;
比較用に公開CSVを読み込んで差分アラートを出すパイプラインを組めば、運用ミスを早期に検出できます。
政策運用への提案(実装ロードマップ)
まとめ
フォームは単なるUIじゃなくて、政策データの第一線です。ここをちゃんと設計すれば、政策評価の信頼性が格段に上がります。要するに「見た目良ければOK」ではなくて「見た目+データ契約」が必要って話です。
おかむーから一言
スタートアップやってきて感じるのは、仕様書をちゃんとコードにするチームが強いってこと。行政でも同じで、仕様(schema)をコードに落とし込めばムダが減るし、市民にも優しいサービスになりますよ!
情報ソース
- https://www.zhihu.com/question/290714454
- https://metidx-gov.note.jp/n/n9468573c213b
- https://www.zhihu.com/question/6430289390
- https://www.trans-plus.jp/blog/column/202210_municipality-dx
- https://www.zhihu.com/question/38923279
- https://www.zhihu.com/question/40553450
- https://www.govtechtokyo.or.jp/services/data-utilization/
- https://www.zhihu.com/tardis/zm/art/1924492115896960699
- https://note.govtechtokyo.jp/n/n77785a8254d6
- https://www.zhihu.com/question/372341437
- https://www.jichi.ac.jp/
- https://www.e-gov.go.jp/digital-government/api
- https://www.jichi.ac.jp/web_text/
- https://portal.data.metro.tokyo.lg.jp/opendata-api/
- https://www.jichi.ac.jp/library/
シェアする
関連レポート

公共予約システムの“ログインからAPI化”ロードマップ:パスワードレスで運用コストを下げる技術提案
公共施設予約の認証とデータを段階的にAPI化して運用コストを下げる技術ロードマップを紹介します。

政府データを“つなげる”発想:省庁バラバラを超えるフェデレーション戦略
フェデレーション層で省庁データをつなぎ、PDF混在を克服する実践的な技術案を示す。

政策ダッシュボードは“作るだけ”じゃダメ!KPIを自動で監査するパイプライン設計
政策ダッシュボードの数値を自動監査するパイプライン設計案。API・スキーマ・差分管理でKPIの信頼性を上げる技術手法を紹介します。