アクセシブルな公共データ設計をコードで語る:データの「見える化」だけじゃ足りない理由

どうも〜おかむーです!今日は公共データの“アクセシビリティ”をエンジニア視点で掘り下げますよ〜
- 政府APIやCSVは増えてるけど、障害のある人に届く形で公開されてないケースが多い
- 要するに「機械可読」だけじゃなく「誰でも使える」メタデータとエンドポイントが必要です
- 技術的にできる改善(メタデータ拡張・自動テスト・公開API)を具体提案します
結論
アクセシビリティは見た目の配慮だけじゃなく、データとAPI設計レイヤーで担保する必要があります。要するに、データセットに“代替情報(alt)”“フォーマット優先順”“機械判定可能なアクセシビリティメタ”を付けて、公開パイプラインで自動検証するのが最速で効果的です。
レポート本文
背景:いまの状況(資料参照)
政府の行政APIカタログ(https://api-catalog.e-gov.go.jp/info/ja/apicatalog/list)やe-Govポータル(https://www.e-gov.go.jp/digital-government/api)を見れば、API化の取り組みが進んでいるのは明らかです。ただ、データそのものがPDFに埋め込まれていたり、CSVに必要な代替テキストが欠けていたりと、アクセシブル配慮が抜けているケースが散見されます(例:病院データCSVの公開例 https://www.digital.go.jp/.../xxxxxx_hospital.csv を参照)。
エンジニア的に言うと、これは「メタデータ不足」と「公開ワークフローの検証不足」の問題なんですよね。
問題点を技術的に整理する
- フォーマット偏重:CSV/JSONはあるけど、図表の代替テキストや音声用トランスクリプトがない
- メタデータ欠落:DCATやschema.orgでアクセシビリティ情報を表現していない
- 検証パイプライン不在:CIでアクセシビリティ項目を自動チェックしてない
要するに、データ公開は「ファイルを置く」フェーズで止まってるんです。
実装提案:機械可読アクセシビリティを設計する
1) データセットメタにアクセシビリティフィールドを追加
- 推奨スキーマ(JSON-LD / DCAT拡張)例(これ見てくださいよ):
{
"@context": "https://schema.org/",
"@type": "Dataset",
"name": "自治体施設データ",
"accessibility": {
"accessMode": ["text","visual"],
"accessModeSufficient": ["textToSpeech"],
"altTextAvailable": true,
"altTextFields": ["image_alt","chart_description"],
"transcriptAvailable": true
}
}
要するに「このデータセットは目や耳に障害がある人向けにどんな代替情報を持ってるか」がすぐわかるってことです。
2) APIでのアクセシビリティ自己宣言エンドポイント
- 例: GET /datasets/{id}/.well-known/accessibility → JSONで状態を返す
- これで自動クライアント(支援ツールや検索エンジン)が判定できます
3) CIパイプラインでの自動テスト(GitHub Actions例)
- チェック内容例:altText列の有無、PDFに埋め込まれた表のCSV化、有効なlang属性
- Pythonでの簡易チェックスニペット(これもコード書く人ならわかると思うんですけど〜):
import csv
def check_alt_column(path):
with open(path, newline='') as f:
r = csv.DictReader(f)
return 'image_alt' in r.fieldnames
print(check_alt_column('xxxxxx_hospital.csv'))
4) フロントの配慮:WCAGに沿ったデータビジュアライズ
- グラフには必ずテーブル版を用意
- 機械可読なCSV/JSONに加え、音声向けの要約(short/long)を提供
政策評価との接続
総務省のオープンデータ戦略(https://www.soumu.go.jp/.../opendata03.html)で言及されている標準API規格に、このアクセシビリティ拡張を入れると運用しやすいです。政策KPI(例:公開データのアクセシビリティ対応率)を定義しておけば、数値目標と実績のギャップも定量的に追えます。
実運用の注意点
- ライセンスと個人情報は別レイヤーで検討する(アクセシビリティ情報は公開の範囲で)
- 小さな自治体には負担になるので、テンプレートとツールを提供するのが現実的
まとめ
アクセシビリティは単なるUIの話じゃなく、データ設計・API・公開ワークフロー全体の話です。要するに「誰でも使えるデータ」を目指すなら、メタデータ拡張、自己宣言API、CIによる自動検証の3本柱を入れていくのが現場で効くアプローチです。
おかむーから一言
テクノロジーで社会をアップデートするって言うなら、最初にやるべきは“誰でも使える形で出す”ことです!小さなチェック項目をコードに落とし込んで、公開フローに組み込んでいきましょう〜
情報ソース
- https://www.e-gov.go.jp/digital-government/api
- https://www.soumu.go.jp/menu_seisaku/ictseisaku/ictriyou/opendata/opendata03.html
- https://japan-opendata.github.io/awesome-japan-opendata/
- https://www.jichi.ac.jp/
- https://api-catalog.e-gov.go.jp/info/ja/apicatalog/list
- https://www5.cao.go.jp/j-j/wp/wp-je24/csv/d1-1-4.csv
- https://www.jinji.go.jp/content/900024615.csv
- https://www.digital.go.jp/assets/contents/node/basic_page/field_ref_resources/0066e8a8-6734-44ab-a9a9-8e09ba9cb508/xxxxxx_hospital.csv
- https://www.env.go.jp/content/900398071.csv
- https://www.mofa.go.jp/mofaj/kids/ichiran/files/info.csv
- https://ja.wikipedia.org/wiki/%E5%85%AC%E5%85%B1
- https://www.intec.co.jp/column/smartcity-08.html
- https://kotobank.jp/word/%E5%85%AC%E5%85%B1-494676
- https://www.digital.go.jp/resources/data_case_study_private
- https://www.takeda.tv/saga/blog/post-230907/
シェアする
関連レポート

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

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

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