オープンデータのライセンス・出典・時点の遵守
官公庁データを商用システムに載せる際の、ライセンス確認・出典表示・時点明示・未公表値の非推定をまとめた設計原則。
官公庁が公開するオープンデータ(ハザードマップ、統計、区域指定情報など)を商用システムに取り込む際に、ライセンス条件・出典表示・時点情報を守るための設計原則。kurage-products に並ぶ行政系・防災系の製品群で、一貫して最重要の制約として扱われている。同カタログは販売代理店向けに全商品の「価格/商品ページ/デモ/ライセンス/概要」を並べる形式を取っており、ライセンス欄が商品仕様の一部として常に開示されること自体が、この原則の運用形態になっている。
なぜ設計原則になるか
hazard-map-judgment のように、判定エンジンの価値は「どのデータを取り込めるか」で決まる。しかし日本の行政データは次の点でばらついている。
- ライセンスがデータごとに異なる(CC BY 4.0 / CC BY 2.1 JP / 政府標準利用規約 / 独自規約 / 非公開)
- 商用利用を認めない自治体、そもそも非公開の自治体が存在する
- 整備年度・更新時期が都道府県や市町村ごとに違う
- そもそも公表されていない値がある(空き状況・定員・締切日など)
- 提供元が「ツールによる定期的な収集は控えるよう」求めている情報がある
そのため「取り込めばよい」ではなく、取り込んでよいかをコードで判定し、根拠を画面に出すことが製品要件になる。行政データのライセンス判断は法務の一工程ではなく、判定エンジンの信頼性そのものを支える設計要素として位置づけられている。カタログ上でも、取適法チェックが「内容は公正取引委員会の資料から作り」、最低賃金チェックが「厚生労働省の資料から入れてあり」、制度カレンダーが「日付はすべて省庁の公式ページで確認したもの」と、出所を商品説明の水準で明記する書き方が徹底されている。
実装上の要点(kurage-products より)
商用利用可否をコードに持ち、テストで固定する
災害危険区域マップでは、商用利用を認めていない自治体・非公開の自治体は取り込まない設計とし、利用条件の一覧をコードに持ち、テストで固定していると明記されている。ライセンス判断を人の記憶やコメントに頼らず、機械的に検証可能な形で保持する発想である。
取り込み対象そのものも、条件を満たすソースに限定されている。災害危険区域は国土交通省の国土数値情報から全国21,067区域・588自治体・36都道府県を取り込み、収録している条例は119種類にのぼる。区域名・指定理由・根拠条例・告示番号・告示年月日まで返し、1,100区域には災害危険基準高(例: 名古屋市臨海部防災区域 第1種は1階床高N.P.+4メートル)まで含む。盛土規制区域マップは国土数値情報A56から全国104,309区域・1,539市区町村・43都道府県を取り込み、データは CC BY 4.0 で出典表示のみという条件で使う。区域の種別・指定した主体(都道府県/指定都市/中核市)・告示番号・施行年月日まで返す作りになっている。
出典表示を実装に組み込む
- 補助金ナビはデジタル庁のJグランツ公開APIから日次で取り込み、規約に沿って出典表示まで実装済み
- 補助金AIチャット/給付金AIチャットも、jGrantsなどの公開情報から規則で絞り込み、結果をAIが説明する構成を取る
- 入札情報ナビは中小企業庁の官公需ポータルサイトの検索APIから毎日取り込み、各案件は元の公告へリンクする(デモでは直近120日・約2万6千件・発注機関1,440)
- 取引先チェックは国税庁の法人番号・インボイス公表データを毎月組み直し、確認が要る取引先を上に並べる
- 地震ハザードマップ(名古屋版)は名古屋市の地番参考図を CC BY 4.0 で利用し、982,180筆の区画を取り込む
- 津波浸水想定マップは国土数値情報の津波浸水想定(商用利用可・再配信可)を使用
- 避難所マップは国土地理院の指定緊急避難場所データ(CC BY 4.0)を全国47都道府県・115,447件ぶん利用
- 洪水・内水ハザードマップは国土数値情報「洪水浸水想定区域(1次メッシュ単位)第4.0版」を全国分(104メッシュ・約2,100万面)取り込み、内水は名古屋市版(CC BY)を同梱
- 土砂災害ハザードマップは国土数値情報(データ時点2026-03-06)から約179万区域を取り込む
- 重説チェックはマップあいち(CC BY 2.1 JP・営利利用可)から愛知県32市区町村・約165万面の津波災害警戒区域を取り込む手順を同梱
- 商圏分析はe-Statの統計と国土地理院タイルを、月額のデータ利用料ゼロで使う
- 感染症マップは国立健康危機管理研究機構の感染症発生動向調査速報を毎週、名古屋市は週報PDFから16区の数字を読み取って取り込み、数字は公式の値をそのまま出し、受診の判断はしない
- 施設検索は自治体の一覧PDF・個人利用予定表(PDF/HTML)を取り込み、各行に出典リンクと取得日時を添える
- 出典はデータ本体にとどまらない。重説チェックでは名古屋市の公式FAQ「名古屋市内で指定されているところはありません」を出典つきで引用して第一号の造成宅地防災区域を示す
取得の自粛要請に従う
ライセンスが許すか、公表されているか、に加えて提供元が示す取得の作法という第三の判断軸がある。防災AIチャット+判定セットは、国土交通省「川の防災情報」がツールによる定期的な収集を控えるよう求めているため、川の水位を取り込まずリンクで案内すると明記している。同製品は外部の有料APIを使わず、気象庁の警報・注意報、観測(アメダス雨量・キキクル・台風の最接近)、市区町村の避難情報という公開情報だけで1画面を組み、判断は内閣府ガイドラインの警戒レベルに沿った規則で出す。「取り込めるが、取り込まない」という選択を仕様として書き残すことが、ここでの遵守の形になっている。
データ時点を必ず添える
evidence-traceability と直結する。整備年度が県ごとに違う、市町村ごとに更新時期が違うといった事情から、判定結果にはそのデータの時点を必ず表示する。時点が確認できないデータでは判定しない、という強い方針も取られている。避難所マップは「時点が確認できないデータでは判定しない」、土砂災害ハザードマップは「判定結果には必ずデータ時点を添え、時点を確認できないデータでは判定しません」と明記する。津波浸水想定マップも整備年度が県ごとに違うため、判定結果にその県の時点を必ず表示する。制度ナビのように、期限を過ぎた制度を自動で「受付終了」に切り替える仕組みも、時点を画面に残す発想の延長にある。
取り込むデータ側の性質も、こうした表示を必要とする。内水は自治体ごとのデータであり、名古屋市版を同梱しつつ他自治体はShapefileを1件足すだけで同じ画面で動く。都市計画ナビは国土交通省の都市計画データ(令和7年度)で全国1,377市区町村・約41.8万区域を収録し、民泊チェックは全国102,159面・1,215市区町村を収録する、といったように年度を持つデータが前提になっている。感染症マップが毎週・毎日取り込む速報や学級閉鎖一覧、入札情報ナビの日次、取引先チェックの毎月組み直しも、時点を保つための更新周期として設計されている。
未収録と区域外を混同しない
unknown-vs-outside-distinction で扱う原則と表裏一体。国のデータに未収録の県(津波浸水想定では東京都・福井県・香川県など)を黙って「区域外」と返すと、安全だと誤解させる。盛土規制法の区域指定が未公表の自治体(青森・香川・佐賀・沖縄)でも同様に「未指定」と明示する。重説チェックでは判定を「該当(確定)/非該当/確認できない/指定対象外/当社データなし」の5つに分け、空欄や「該当なし」で流すと重要事項説明の誤りに直結するため、確認漏れが紙の上に残る作りにしている。防災AIチャットも「取得できなかった情報は『出ていない』と書かずに『取得できない』と明示します」と述べ、避難情報の取得失敗を「発令なし」と読み替えさせない。ライセンス遵守と並んで、データの空白を安全と誤読させないことが設計の芯になっている。
公表されていない値を推定で埋めない
administrative-data-publication-gap として独立する論点が、ライセンス遵守と同じ層で扱われている。取り込む権利があるかどうかとは別に、そもそも公表されていない値を作らないという規律である。
- 学童保育ナビは、学童の国の公表がPDFだけで市区町村名で数字が出るのは待機児童50人以上の88市町村に限られ、全国16,330人のうち31.4%はどこの市か分からないことを明示する。保育所はExcelで全1,741市区町村ぶんが出ているため住所から引ける。公表されていない市町村は「未公表」と書き、推定した数字は出さない
- 訪問介護・ケアマネナビ、障害者グループホームナビ、放課後等デイサービスナビ、就労継続支援ナビはいずれも「空き状況は公表がないため出しません」と明記する。グループホームは定員も公表されていないので出さない
- 公表データから消えた事業所は facility-data-churn として可視化するが、消えた理由は公表されていないので「廃止した」とは書かない
- 陳情ナビは、陳情の締切日が名古屋市会から公表されていないため表示せず、開会日を示して事務局に確認するよう案内する。「推測した日付を住民に示しません」と明記する
- 質問主意書アシストは、下書きの引用を原文と一字一句照合し、合わないものは出さない
- 要介護認定ナビは厚生労働省の認定調査員テキストの文言をそのまま使い、言い換えない。区分の境目は省令の条文つきで示し、公開されていない係数を使う要介護度の判定はしない
- 民泊チェックは自治体の上乗せ条例を原文のまま返し、都市計画ナビも条文を原文のまま引用する
- NISA枠計算は金融庁の対象商品一覧を指数と地域で分類するが、制度の枠計算そのものは入力された取引から決定論的に行い、入力はブラウザの外に出さない
権利の確認(ライセンス)と値の存在確認(公表の有無)を分けて扱い、どちらも満たさないものは画面に出さない、という整理になっている。
製品本体のライセンスとデータのライセンス
本製品群では、自社が書いたコードのライセンスと、取り込んだデータのライセンスが別層として扱われる。
| 層 | 例 |
|---|---|
| 製品本体(ソース同梱・改変自由) | MIT(防災・行政系のほぼ全製品) |
| 取り込むオープンデータ | CC BY 4.0 / CC BY 2.1 JP / 国土数値情報(出典表示) |
| 取り込む公表データ | 国税庁の法人番号・インボイス、Jグランツ公開API、官公需ポータル検索API、e-Stat、国立健康危機管理研究機構の速報、名古屋市週報PDF |
| 引用する原文 | 内閣府資料(被災者支援ナビ・避難情報ガイドライン)、厚生労働省 認定調査員テキスト、公正取引委員会資料、金融庁 対象商品一覧、e-Gov法令検索の条文(AfterCare Navi は34件の引用を検算)、自治体の民泊上乗せ条例、質問主意書と政府答弁書の本文、国会会議録 |
| 手元で動かす生成AI | ローカルLLM(gemma 等)やオープンウェイトモデル — open-weight-model / local-llm |
| 同梱OSSの本家ライセンス | GNU AGPLv3(OpenVPM 日本語版・非公式)、BSD 3条項(TheyWorkForYou)、AGPL-3.0(広聴AI)、Apache-2.0(CodeAlmanac)、MIT(Decap CMS ほか) |
MITの製品本体に CC BY のデータを同梱する形は、oss-vendoring の論点と重なる。オンプレミスで自社内に閉じて運用する(self-hosting)ことが、再配布範囲を広げないための実務的な解にもなっている。外部の有料APIを使わず追加費用0円という方針も、ライセンスが明快なデータだけで構成する帰結として現れる。
なお無償提供のプロダクトの扱いには差がある。補助金AIチャット、出店・商圏AIチャット、土地AIチャット、介護相談AIチャット、給付金AIチャット、情報発信トラッカーはライセンス欄が未設定(None)であり、ソース配布を伴わず導入相談の受付にとどまる。一方でアプリランチャーは無料でもMITとして配布される。条件が定まっていないものは配布物にしない/条件が定まっているものは無料でも配布するという切り分けとして読める。
OSS導入キットにおける本家ライセンスの確認
oss-japanese-localization のキット群では、ライセンス遵守の対象は行政データではなく本家OSSのライセンスになる。キット自体の価格は一律5,500円で、実機で測った手順と落とし穴を同梱する形式を取る。
- OpenVPM 日本語版は本体が GNU AGPLv3 で、本家とは提携していない非公式版であることを明示(openvpm)
- TheyWorkForYou キットは mySociety の BSD 3条項の下で動かす(theyworkforyou)
- Alaveteli キットは AGPL の本家を Docker で立て、日本語既定で動くまで実測する(alaveteli)
- FixMyStreet キットは日本の市区町村境界で動かす導入手順として提供する(fixmystreet)
- 広聴AI のローカル導入キットは AGPL-3.0 を引き継ぎ、OpenAI キーなし・完全ローカルで意見データを外に出さない構成を実測する(kouchou-ai / kouchou-ai-local-kit)
- Planka キットは「第三者向けホスティングは商用ライセンス」という線引き確認表を同梱する(planka-japanese-kit)
- CodeAlmanac キットは Apache-2.0 の上に、当社が実装した systemd 対応を本家へ PR 提出している(oss-upstream-contribution / codealmanac-japanese-kit)
- Krayin CRM キットも全2,392キーの日本語訳を本家へプルリクエスト提出中という形で、翻訳の権利処理を本家側に返している(krayin-crm-japanese-kit)
- LibreDesk、FreeScout、BillionMail、Docmost、Vikunja、EspoCRM、paperless-ngx、Appsmith、PDFMathTranslate、Decap CMS などのキットは、いずれも本家の条件を引き継ぎつつ、実機で踏んだ落とし穴と復旧手順を同梱する(libredesk-japanese-kit / freescout-japanese-kit / billionmail-japanese-kit / docmost-japanese-kit / vikunja-japanese-kit / espocrm-japanese-kit / paperless-ngx / appsmith / pdfmathtranslate-japanese-kit / decap-cms-japanese-kit)
キット本体が MIT でも、土台のOSSの条件は別に確認が要る。ここでも「判断を表とテストに落とす」という同じ発想が現れる。
関連する設計思想
- deterministic-core — 判定は決定論的に行い、根拠条文・データ時点・出典を添える
- config-declared-scope — 取り込むデータと利用条件を設定・宣言で管理する
- oss / oss-vendoring / oss-upstream-contribution — 取り込んだオープンデータと同梱ソースの扱い
- self-hosting — オンプレミスに置くことで、データの再配布範囲を自社内に閉じられる
- saas-subscription-replacement — 月額SaaSの置き換えとして、公表データとOSSだけで運用を組む
- ai-modifiable-software — 他都市版は同種のオープンデータを差し替えて作る前提
- municipality-data-swap-expansion — データを1本足すだけで他自治体へ広げる設計
- public-data-daily-ingestion — 日次・毎週・毎月という更新周期で時点を保つ
- administrative-data-publication-gap / unknown-vs-outside-distinction — 公表の空白を推定で埋めず、安全と誤読させない
- facility-data-churn — 公表データから消えた事業所を、理由を書かずに可視化する
- no-external-data-egress — データを外部に送らない方針と、ライセンス条件を守る方針が重なる
- measured-pitfall-catalog — OSSキットで本家条件と実測の落とし穴を同居させる形式
- social-impact-pricing — 誤ると損害が大きい領域ほど高く値付けする
- kappstore-ecosystem / kurage-app-store — この原則を守った製品を流通させる場所
製品横断での現れ方
kurage-app-store が扱う行政・防災系製品のほぼ全てが、この原則を明示している。
| 製品 | 主なデータ源 | ライセンス/条件 |
|---|---|---|
| 地震ハザードマップ | 名古屋市 地番参考図(982,180筆) | CC BY 4.0 |
| 津波浸水想定マップ | 国土数値情報 津波浸水想定(35都道府県) | 商用利用可・再配信可 |
| 盛土規制区域マップ | 国土数値情報 A56(104,309区域) | CC BY 4.0(出典表示のみ) |
| 災害危険区域マップ | 国土数値情報 災害危険区域(21,067区域・119条例) | 自治体ごとに判定、商用不可は不取込 |
| 土砂災害ハザードマップ | 国土数値情報(時点2026-03-06) | 国土数値情報 |
| 避難所マップ | 国土地理院 指定緊急避難場所(115,447件) | CC BY 4.0 |
| 洪水・内水ハザードマップ | 国土数値情報 第4.0版+名古屋市 | CC BY(内水は市の条件) |
| 重説 災害項目チェック | マップあいち+名古屋市FAQ | CC BY 2.1 JP(営利利用可) |
| 防災AIチャット+判定セット | 気象庁の警報・観測、市区町村の避難情報 | 川の水位は収集自粛要請に従いリンク案内 |
| 都市計画ナビ | 国土交通省 都市計画データ(令和7年度) | 国土数値情報 |
| 民泊できる場所チェック | 用途地域+自治体の上乗せ条例 | 条例は原文のまま引用 |
| 感染症マップ | 国立健康危機管理研究機構の速報+名古屋市週報PDF | 公式の値をそのまま表示 |
| 補助金ナビ | Jグランツ公開API(日次) | 規約に沿った出典表示 |
| 入札情報ナビ | 官公需ポータル 検索API(日次) | 各案件は元の公告へリンク |
| 取引先チェック | 国税庁 法人番号・インボイス公表データ(毎月) | 出典表示・毎月組み直し |
| 商圏分析 | e-Stat 統計+国土地理院タイル | 政府統計・GSIタイル |
| 取適法チェック/最低賃金チェック/制度カレンダー | 公正取引委員会・厚生労働省・各省庁の公式ページ | 原文のまま引用・公式ページで日付確認 |
| 要介護認定ナビ/AfterCare Navi | 厚生労働省テキスト・e-Gov法令検索 | 原文のまま引用・34件を検算 |
| 制度ナビ/陳情ナビ | 名古屋市版45制度・市会の書式 | 出典リンク表示、未公表の締切は出さない |
まとめ
オープンデータのライセンス遵守は、単なる法務チェックではなく製品の信頼性設計の一部として扱われている。出典と時点を画面に残し、取り込めないものは取り込まないと決め、空白を「安全」と読み替えさせず、公表されていない値を推定で埋めない。この四点セットが、行政データを商用システムに載せる際の実務的な解になっている。製品本体はMIT、データはCC BY、土台のOSSはAGPLやBSD、生成AIはオープンウェイトモデルという複数層の条件を見分けて運用することが、この製品群の前提になっている。販売代理店向けにライセンス欄を商品仕様として開示する形式は、この前提を流通側にも共有する仕組みである。
See also: kurage-articles-index
Kurage.AI に質問する
