機械可読性ルール適合チェックツール「Harunobu」

デジタル庁では、「行政データにおける機械可読性に関するルール」に沿って、手元のデータがどの程度ルールに適合しているかを点検・採点できる判定ツール「Harunobu」をGitHubで公開しています。採点結果を確認することで、データのどこをどう直せばよいかを把握し、機械可読性の改善につなげることができます。

目次

1. Harunobuとは

Harunobuは、Excel・CSV・TSVファイルの機械可読性を「行政データにおける機械可読性に関するルール」に照らして点検し、100点満点で採点する判定ツールです。デジタル庁が開発し、GitHubで公開しています。採点結果には違反箇所とその理由が示されるため、結果を確認しながらデータの改善点を検討することができます。

本ツールは利用者の手元の環境(ローカル環境)で動作させることが可能なほか、ライブラリとしてデータ処理を行うシステムに組み込むこともできます。AIによる判定補助機能をONにしない限り(※1)、判定はプログラムの中で機械的なロジックで行われます。読み込ませたファイルの内容が外部のサーバー等に送信されることはないため、未公開の行政データや、編集中で機密性を含む可能性のある作業用ファイルも、安心してチェックすることができます。

  • ※1:「AIによる判定補助機能」を任意で有効化した場合に限り、ご自身で設定した外部AIサービス(Gemini、ChatGPT、Claude等)のAPIに対してデータが送信されます。同機能をご利用の際は、所属組織のセキュリティポリシーに従ってご判断ください。

Harunobuによるルール適合チェックの流れを表した図。左から右に向かって5段階の処理がある。第1段階はファイルをアップロード。点検したいデータをExcel・CSV・TSVなどのファイル形式で取り込めることが示されている。第2段階はチェックを実行。コード化された機械可読性ルールに沿って3段階のレベル別で採点できることが示されている。第3段階は採点結果の出力。ルール違反の箇所と理由が確認でき、採点されたデータが図として示されている。例として問題箇所(室蘭市・釧路市のセル)が赤くハイライトされた状態で表示されている。第4段階はデータクレンジング。人やAIツール(人物がPCを操作するイラスト)が効率的かつ機械的にデータを修正する段階。第5段階は機械可読性の確保。AIや分析ツールで利用して「機械可読性が改善されたデータ」の例としてpref_nameとcity_nameの列見出しを持つ整形済みの図表が表示されている。ルール適合チェックHarunobuはCLI・ブラウザUI・Python APIで使用することができ、第1段階から第3段階まで活用することができる。

2. 何ができるか(3つの利用形態)

Harunobuは利用目的に合わせて、3つの利用形態を提供しています。画面操作で直感的にファイルを確認したい実務担当者から、大量データの自動点検や自組織のシステムへの組み込みを行いたいエンジニアまで、幅広いニーズに対応可能です。いずれの形態も判定ロジックは共通しており、GitHubからダウンロードして手元の環境(ローカル)で安全に実行できます。

利用形態概要想定する利用状況
ブラウザ画面(Streamlit UI)ファイルをアップロードして画面上で採点・結果確認WebUIでの動作確認
コマンドライン(CLI)CLI上で実行(例:harunobu analyze データ.xlsx)して結果を取得定型チェック・バッチ処理
Python APIから呼び出しライブラリとしてプログラム内で呼び出しシステムへの組み込み

3. 使い方(ブラウザ画面)

ブラウザ画面(Streamlit UI)では、次の5ステップで採点できます。採点結果を見ながら、データの改善すべき箇所を検討できます。

3-1. ファイルをアップロード

点検したいファイルを選択します。ファイル形式はExcel・CSV・TSVに対応しており、複数選択も可能です。

「機械可読性チェックツール Harunobu」のファイルアップロード画面。左側にワークフローナビゲーションがあり、「1.ファイルアップロード」「2.データプレビュー」「3.レイアウト検出」「4.チェック実行」「5.採点結果」の5ステップが縦に並び、現在「1.ファイルアップロード」が赤色でアクティブ表示されている。右側のメインエリアでは「ファイルアップロード」のセクションに、xlsx・csv・tsv形式のボタンが表示されており、harunobu_sample.xlsx(22.4KB)がアップロード済みで、ファイル数:1、フォーマット:XLSX、合計サイズ:0.02MBが表示されている。画面下部に「次へ:データプレビュー」のボタンがある。

3-2. データをプレビュー

読み込んだ内容を画面で確認します。

「機械可読性チェックツール Harunobu」のデータプレビュー画面。左ナビゲーションでは1に緑のチェックがつき、「2.データプレビュー」がアクティブ(赤)。アップロード済みファイルにharunobu_sample.xlsx(20.3KB)がある。最下部に「最初からやり直す」ボタンがある。右メインエリアに、ファイル名:harunobu_sample.xlsx、フォーマット:XLSX、シート数:1が表示され、Sheet1を選択中。行数15、列数8、結合セル1箇所のデータが表として表示されており、年・月、都道府県、市区町村、項目、値1から3のデータが確認できる。「機械可読性テスト」のタイトル行や結合セルを含むマルチヘッダーも確認できる。画面下部左に「アップロード」、右に「レイアウト検出」ボタンがある。

3-3.レイアウトを検出

表の範囲やヘッダーなどのレイアウトを自動で推定します。

「機械可読性チェックツール Harunobu」のレイアウト検出バリデーション画面。左ナビゲーションではワークフローの1と2に緑のチェックがつき、「3.レイアウト検出」がアクティブ(赤)。アップロード済みファイルにharunobu_sample.xlsx(20.5KB)があり、レベル別スコアにL1(強制0点):0、L2(強制0点):0、L3:未チェックの表示がある。最下部に「最初からやり直す」ボタンがある。右メインエリアの「シートを選択する」欄に、Sheet1が表示されている。ファイル名:harunobu_sample.xlsx、検出テーブル数:1、テーブル外セル:2が表示されている。Sheet1(15行×8列)に元データと検出結果のタブがあり、検出結果タブにスプレッドシートが表示されている。各セルに「T1ヘッダー[text]」「T1ボディ[text]」「T1ヘッダー[numeric]」「T1ヘッダー[empty]」「T1ボディ[mixed]」「T1ボディ[numeric]」等のラベルが付与されている。F5セルに「セル結合されたマルチヘッダー」の注記がある。

3-4.チェックを実行

チェックのレベル(軽量チェック・標準チェック・詳細チェック)を選択して判定を実行します。

「機械可読性チェックツール Harunobu」のチェック実行画面。左ナビゲーションではワークフローの1から3まで緑のチェックがつき、「4.チェック実行」がアクティブ(赤)。アップロード済みファイルにharunobu_sample.xlsx(20.5KB)があり、レベル別スコアにL1(強制0点):0、L2(強制0点):0、L3:未チェックの表示がある。最下部に「最初からやり直す」ボタンがある。右メインエリアに、対象ファイルとしてharunobu_sample.xlsxが表示されている。チェックのレベル選択として「軽量チェック」「標準チェック」「詳細チェック」の3つのラジオボタンがあり、標準チェックが選択されている。チェック対象は「レベル1」「レベル2」で、「構造+データ品質チェック」と記載されている。画面下部左に「データプレビュー」、右に「チェック実行」ボタンがある。

3-5.採点結果を確認し、改善点を検討

レベルごとのスコアと、違反したルール・違反箇所・理由が一覧表示されます。結果はJSONやCSVでダウンロードでき、どこをどう直せば機械可読性が高まるかの検討に活用できます。重大なルール違反があるレベルは「強制0点」となり、その理由も明示されます。

「機械可読性チェックツール Harunobu」の採点結果画面。左ナビゲーションではワークフローの1から4まで緑のチェックがつき、「5.採点結果」がアクティブ(赤)。アップロード済みファイルにharunobu_sample.xlsx(20.3KB)があり、レベル別スコアにL1:65、L2(強制0点):0、L3:未チェックの表示がある。最下部に「最初からやり直す」ボタンがある。右メインエリア上部にレベル別スコアとして、レベル1:65点(合格8/12)、レベル2:0点(強制0点・合格3/4)、レベル3:未チェックの3つのサマリーカードが並ぶ。カード下部に「レベル2は強制0点です。重大ルール(L2-02(致命的))に違反したためです。」という赤い警告バナーが表示されている。Sheet1 テーブル1のチェック結果として、L1-01からL1-13のレベル1ルールと、L2-01からL2-06のレベル2ルールの合否がカードで一覧表示されており、赤色が不合格、グレーが判定適用外を示す。画面下部の「違反箇所」テーブルには27件の違反(error:4、info:7、warning:16)がルールID・シート・セル範囲・重大度・理由つきで一覧表示されている。

4. 使い方(CLI)

Harunobuは、ブラウザ画面だけでなく、コマンドライン(CLI)での実行にも対応しています。コマンド一つで採点を実行でき、結果をJSONまたはCSVのファイルとして出力できるため、複数ファイルの定型的なチェックや、既存の業務フローへの組み込みにも活用できます。インストール方法やコマンドの詳しい使い方は、GitHubリポジトリ(GitHub) のREADMEファイルをご確認ください。

「コマンドライン(CLI)でのHarunobu実行例」を表した画像。左側に「点検したいデータ」として、Excelスプレッドシートのサンプル画像が表示されており、B列からH列・7行目から24行目に、年・月、都道府県、市区町村、項目、値1から3のデータが含まれる。B7:H12の範囲が赤い破線枠でハイライトされ、F9:F10のセルが赤色でハイライトされている(令和7年1月のデータ:1,234と1,111)。右側に「採点結果(CLI)」が表示されており、"範囲":"B7:H12"、"ヘッダー範囲":"B7:H7"、"ルールID":"L1-12"、"セル範囲":"F9:F10"、"説明":"セル結合(データ領域)"と"ルールID":"L1-07"、"セル範囲":"F9"、"説明":"セル内改行による複数データ"と表示されている。

5. 留意事項

  • Harunobuは「行政データにおける機械可読性に関するルール」をベースとした実装例です。Harunobuの判定ロジックはルールそのものではないことにご注意ください。また、いくつかのルールについては機械的な判定が難しいと判断し、Harunobuでは判定対象外となっています。
  • Harunobuは「行政データにおける機械可読性に関するルール」をベースとした判定・修正プログラムの開発を妨げるものではありません。Harunobuを独自に発展させたプログラム開発を行いたい場合は、GitHubリポジトリ(GitHub) のFork機能をご活用ください。
  • その他、Harunobuにおける既知の制限事項については、GitHubリポジトリのlimitations.md(GitHub) ファイルをご確認ください。

6. お問合せ先

ご質問やアイディアは、ご意見・ご要望よりお寄せください。

7. 関連情報