コードで語るマニフェスト:FAQとルールを構造化して政策の「説明責任」を自動化する

どうも〜おかむーです!今日はちょっとエンジニアっぽい話をしますよ〜
- 政策説明(FAQや要件)は人向け文章で終わってないですか?機械が理解できる形にすると再利用性が爆上がりします
- JSON-LDやOpenAPIで政策ルールを型定義すると、検証・可視化・自動申請が現実的になる
- 既存のe-Gov APIや都のオープンデータを使って、段階的に「説明責任のAPI化」を進める設計案を示します
結論
政策の文章(PDFやHTML)はそのままでは検証や自動化に弱いです。エンジニア的に言うと、FAQや給付要件をJSON-LD/JSON Schema/OpenAPIで構造化すれば「住民→自治体→第三者サービス」の相互運用が可能になり、政策の説明責任と実行可能性が高まります!要するに、まずは"説明の仕様化"から始めようということです。
レポート本文
背景:今の問題点
これ見てくださいよ。デジタル庁や都のオープンデータにはAPIが用意されてるけど(例:e-Gov API, 東京都オープンデータAPI)、政策説明はPDFや散在するHTMLに埋もれてることが多いです(参考:Digital庁の利用者視点ガイドや機械可読性ルール案)。要するに、機械に読ませられないから再利用されないんですよね。
- 人向け文書=ソースオブトゥルースになっている
- 要件や適格性が文章で散在→エラーや解釈差が発生
- 第三者サービス(NPO、民間事業者)が自動連携しにくい
提案:FAQ+ルールを構造化するアプローチ
エンジニア的に言うと、まずは以下をAPI設計で定義します:
こうすることで、フロントはJSで即時バリデーション、自治体内のバッチ処理は同じスキーマでETL、外部サービスはAPI一本で利用できるようになるんです。
具体的コード例(イメージ)
// FAQのJSON-LD抜粋
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [{
"@type": "Question",
"name": "補助金の対象は誰ですか?",
"acceptedAnswer": {"@type": "Answer","text": "市内に居住し、要件A〜Cを満たす個人・事業者です。"}
}]
}
# OpenAPIでの検証エンドポイント(抜粋)
paths:
/validateEligibility:
post:
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/EligibilityInput'
responses:
'200':
description: Valid or not
これを受けるバックエンドはJSON Schemaで入力を厳密に検証して、理由付きでOK/NGを返す。エンジニアならわかると思うんですけど、これはAPI一本でサービス側のUXが劇的に良くなるパターンです。
実装ステップと現実的な移行計画
- ステップ0:現状リストアップ(PDF/HTML/運用ルール)→ e-Gov APIや都のオープンデータと紐づけ
- ステップ1:FAQをJSON-LDで公開(低コスト、SEOにも効く)
- ステップ2:主要申請フローの属性をJSON Schema化(最優先で1〜2件)
- ステップ3:OpenAPIで検証APIを公開、CIでスキーマ互換性テストを回す
- ステップ4:外部開発者向けドキュメント+サンプルコードを提供(GitHub + APIカタログ)
この流れは、デジタル庁の機械可読性ルール案にも親和性が高いです(フォーマットはExcel/CSV優先、メタデータ必須など)。
政策の数値目標と実績のギャップを可視化する方法
政策目標(例:高齢者住宅補助、年間1000件)をスキーマのメタデータに「target」フィールドとして入れておきます。APIで実績を定期的にPUTしていけば、ダッシュボードやアラートで差分を自動検出できます。
- 例:/metrics/policy/{policy_id} にmonthly_countをPOST
- これをPrometheus/Grafanaや簡易Lambdaで監視
要するに、目標値をスキーマ化しておけば、実績との比較がコードでできる。人手でExcelを突き合わせる時代は終わりです!
メリットとリスク
メリット
- 再利用性と検証可能性が上がる
- 住民の自己解決が進み窓口負荷が下がる
- 民間事業者の参画がしやすくなる
リスク
- 法的文言と実装の齟齬(解決策:法務と共同でスキーマのバージョニング運用)
- 旧システムとの連携コスト(段階的移行で吸収)
まとめ
文章ベースの政策説明はもう限界。まずはFAQをJSON-LDにして、重要な申請ロジックをJSON Schema/OpenAPIで定義するところから始めよう。これだけで検証・自動化・外部連携の土台ができて、政策の説明責任と実効性がグッと上がります。
おかむーから一言
テクノロジーで社会をアップデートするって言うと大げさだけど、まずは"説明をコードにする"って小さな一歩が強烈に効くんです。僕はこれをやりたいし、一緒に作れる自治体が増えてほしい!
参考リンク:e-Gov API(https://www.e-gov.go.jp/digital-government/api)、東京都オープンデータ(https://portal.data.metro.tokyo.lg.jp/opendata-api/)、機械可読性ルール案(digital.go.jp)および各種自治体のUX改善事例を参照。
情報ソース
- https://zenn.dev/govtechtokyo/articles/b65dc687e50918
- https://picks-design.com/blog/5751/
- https://lg.reserva.be/ux-design/
- https://www.trans-plus.jp/blog/column/202210_municipality-dx
- https://note.com/leal_wasp2727/n/n9eb1ff8bdcb5
- 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/
- 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.soumu.go.jp/menu_news/s-news/01toukatsu01_02000186.html
- https://www.zhihu.com/question/38923279
シェアする
関連レポート

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

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

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