Code-Savvy Manifesto: Checking Japan’s Administrative Data for Machine-Readability

IT Policy Proposals
Code-Savvy Manifesto: Checking Japan’s Administrative Data for Machine-Readability

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

  • Government PDFs still dominate; new rules push for CSV/Excel but practice lags
  • API-first and DCAT metadata would unlock reuse—技術的にはシンプルな話なんです
  • 具体的な改善案とコード例で、どこを直せばすぐ良くなるか示します!

結論

日本のデジタル行政はルール整備が進んでいて(digital.go.jp、内閣官房の資料参照)、機械可読性の方向は合っている。ただし現場ではPDFや人向け文書が残りがちで、API・CSV公開・メタデータ整備を技術的に徹底すれば、政策評価と市民利用の両方が一気に改善する。

Report: what I checked and what it means

これ見てくださいよ。デジタル庁や内閣官房の資料(例: "行政データにおける機械可読性に関するルール")は、「ファイル形式はExcelやCSV等の機械が直接読み取れる形式で」と明記しています(決定資料: digital.go.jp, cas.go.jp)。要するに、PDFやWordのまま公開しているとエンジニアがデータを再利用できないということです。

現場の事例として、デジタル田園都市国家構想交付金のサイトや自治体の実績評価(例: 須賀川市の評価ページ)では、事業の報告や評価がPDFで掲載されがち。PDFは人間には読めても、コードから直接解析するには工数が増えるんですよね。

エンジニア的に言うと、これAPI一本で解決する話なんです。具体的に足りないのは:

  • 機械可読フォーマット(CSV/JSON/Parquet)での一次データ公開
  • DCATやschema.orgを用いたメタデータカタログ
  • OpenAPI仕様で定義されたAPIとCORS設定
  • ライセンス明記(Open Data Commons / CC0等)

技術的なハマりどころ

  • PDFにテーブルが埋められている → 人力でTabula/Adobeで抽出するかOCRが必要
  • Excelは公開されるが加工済みで列名が不整合 → スキーマを公開していない
  • APIがあっても認証・レート制限・レスポンス形状が未記載 → 自動化が困難

簡単なコード例(実務で使える)

CSVを直接読み込む(Python/pandas):

import pandas as pd

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

df = pd.read_csv(url)

print(df.head())

PDFの表を抽出する(tabula-py):

import tabula

dfs = tabula.read_pdf('report.pdf', pages='all', multiple_tables=True)

手動でスキーマを当てる必要あり

簡易API呼び出し(curl + jq):

curl 'https://api.city.gov/open/grants?year=2024' | jq '.items[] | {id, amount, project}'

政策目標 vs 実績の視点

デジタル田園都市国家構想はデジタル実装支援を掲げ、交付金で地方の取り組みを促している(chisou.go.jp)。要するに「投資している」けど、投資効果を横断的に検証するには統一されたデータフォーマットと公開APIが必須。現状は自治体ごとに形式がバラバラで、合算・比較分析に工数がかかる。

改善提案(エンジニア視点で実装可能)

  • データ公開パイプラインのテンプレ化
  • - 出力はCSV/NDJSON/JSON-LD/Parquetを選択肢に

    - 自動テストでスキーマ検証(Great Expectations等)

  • メタデータとカタログ化
  • - DCAT+schema.orgでデータセットをカタログ化し、CKANやGitHub Pagesで公開

  • OpenAPIでAPIを明文化
  • - サンプルクライアントを同梱して利活用を促進

  • PDF残存対策
  • - PDFはアーカイブ用に限定、原データは必ず機械可読で公開

    - 過去PDFはTabula/ocrmypdfで構造化してCSV化し、差分公開

  • 政策評価の標準指標を定義
  • - 交付金投下額、成果指標、ベースラインをCSVで定期公開

    期待される効果

    • 研究者・市民による迅速な二次分析
    • 自治体間比較の自動化で政策改善サイクルの短縮
    • オープンデータを起点としたスタートアップや自治体DXの促進

    まとめ

    ルールは整いつつあるけど、運用がポイント。エンジニア的には「APIとマシンリーダブルなファイル、ちゃんと書かれたメタデータ」があれば大半の課題は解決します。PDFが悪というわけじゃないけど、一次データはCSV/JSONで出してほしいんですよね。正直、ここは改善の余地ありまくりだと思ってます!

    おかむーから一言

    テクノロジーで社会をアップデートするのは言葉じゃなくてデータの開放なんですよ。コード書く人ならわかると思うんですけど、API一本で未来が変わるケースって本当にあるんです。さあ、CSV出そうぜ!