経済

無料ツールで決算データの裏側を見る――XBRLを初めて開く日の手順

議論参加:ハナ (投資を始めたばかりの読者) / ケイ (AI活用を支援するデータ技術者) / ユウタ (XBRL作成支援の経験者) / テツオ (企業開示を検証する編集担当)

関連記事:Arelle のコマンドラインで有報を仕分ける実践は連載第3回で扱う。

XBRLをはじめる #2

第1回で触れた XBRL(エックスビーアールエル) は、企業の決算にある数字や文章へ「これは売上高」「この期間の数字」といった機械が読める意味を添える共通の書式だ。今回は、その意味づけを画面で一度だけ確かめる。目的はプログラミングを始めることではない。AIが拾った「売上高」が、どの期間・単位・範囲の数字なのかを自分で確かめられるようになることだ。

今日のゴールは、数字を一つ見つけて、書類名・期間・単位・連結/単体をメモすること。

まず、この五つだけ

専門語を全部覚える必要はない。まずは次の五つだけ押さえれば十分だ。

言葉ひとことで言うとこの記事での役割
XBRL決算の数字や文章に意味を添える共通書式「売上高」などの値を、機械にも区別できるようにする。
EDINET金融庁が運営する、上場企業などの法定開示書類の閲覧サイト有価証券報告書と、そのXBRLデータを入手する入口。
iXBRL人が読むHTMLの見た目と、XBRLの意味づけを一つにした形式表を読みながら、数字の裏に付いた情報も確かめられる。
ファクトXBRLで扱う「一つの値、または文章」たとえば「この会社の、この期間の、売上高」や、本文中の一つの文章。
タクソノミXBRLの項目名と意味を定める用語辞典「売上高」と表示されたファクトが、どの定義の売上高なのかを区別する。

このあと出る コンテキスト は、ファクトの「誰の、いつの、どの範囲の情報か」を示す付帯情報だと思えばよい。最初は、売上高の金額だけでなく、期間・ユニット・連結/単体までを一組で見る習慣を作る。

連結/単体も最初に確認する:連結は親会社と子会社を合算した数字、単体は原則として親会社一社の数字である。同じ「売上高」でも、両者を混ぜて比べると意味が変わる。

いきなり全社比較をしない

ハナ(投資を始めたばかりの読者)は「まず何社分ダウンロードすればよいですか」と聞いた。ユウタ(XBRL作成支援の経験者)の答えは明快だった。まずは一社、一書類、一つの数字で十分だ。

最初の題材は、よく知っている会社の有価証券報告書がよい。新しいニュースを追う必要も、銘柄を選ぶ必要もない。EDINET(金融庁が運営する法定開示書類の閲覧サイト)で会社名を検索し、書類のタイトルと提出日を確認する。

最初に決めることなぜ必要か
会社自分が商品やサービスを知っている一社数字の背景を想像しやすい
書類有価証券報告書通期の数字と文章を一緒に確認しやすい
項目連結売上高会社規模をつかむ出発点になる
比較相手前年の同じ書類期間を混ぜにくい

XBRLを開く道具は「答えを出すAI」ではない

Arelle は、XBRLを表示・確認・検証するための無料のオープンソースソフトウェアだ。XBRL Japanの学習資源一覧でも紹介されている。Arelleの公式説明によれば、画面でXBRLを探索でき、インラインXBRL(iXBRL。人が読むHTMLの中にXBRLの意味づけを埋め込んだ形式) にも対応する。

ケイ(AI活用を支援するデータ技術者)は、最初からAIに接続しない方がよいと提案した。道具を開いて最初に見るのは、「この数字が正しいか」ではなく、数字にどんな説明が付いているかだ。

図は編集部による作業の整理。ツールの画面やメニュー名はバージョンによって変わるため、導入時は公式の案内を確認する。

実際の画面では、最初にタグ(数字や文章へ付けた、機械が読める項目名)や項目名が多く並び、数字だけを探すと迷いやすい。そこで順番を固定する。EDINETの書類画面からXBRLデータを取得し、展開したファイルをツールで開く。表示された項目から売上高など一つを選び、その数字のそばにある期間・単位・連結/単体の情報を読む。見つけたら、必ずEDINETのHTMLまたはPDFの同じ表へ戻る。

ここでいう「取得」は、ブラウザで書類を閲覧・ダウンロードする手作業を指す。EDINET API(プログラムから書類を取得するための窓口)はAPIキーとログイン認証が必要になる。今回の最初の練習にAPIは要らない。

実際に開く:EDINETからArelleまで

ここからは、2026年7月19日に確認した画面に沿って、最初の一回をなぞる。会社名は例として表示しているだけなので、自分が読みたい一社・一書類に置き換えてよい。書類の提出時期や画面の細かな配置は変わりうるが、見る場所は同じだ。

1. EDINETの検索結果で「XBRL」を押す

EDINETの「書類詳細検索」で、会社名または証券コードを入れて検索する。最初は「有価証券報告書」のように、通期の数字と文章をまとめて読める書類を一つ選ぶ。検索結果の表には、書類ごとに PDF / XBRL / CSV の列がある。ここで押すのは XBRL だ。PDFではない。

EDINETの検索結果。書類ごとにPDF、XBRL、CSVの列が並び、XBRLリンクが表示されている

スナップショット1:EDINETの書類詳細検索の結果。2026年7月19日に確認。ここでは提出者コード7203の検索例を表示している。実際には、読みたい会社と書類の行にある「XBRL」を選ぶ。

クリックすると、通常はXBRLデータ一式が圧縮ファイルで保存される。ダウンロードしたファイルをダブルクリックして展開し、できたフォルダを開く。中に XBRL、その下に PublicDoc というフォルダがあることを確認する。

ここで止まってよい確認:ダウンロードした書類のタイトルと提出日が、EDINETで選んだものと一致しているか。違っていたら、まだツールを開かずに取り直す。

2. Arelleでは「PublicDoc」のマニフェストを開く

Arelleを起動し、メニューから File → Open File… を選ぶ。展開したフォルダの XBRL/PublicDoc を開き、まず manifest_PublicDoc.xml を選ぶ。マニフェストとは、この提出書類を構成する複数のHTMLファイルの一覧(目次)だ。ファイル名は書類によって細部が違うことがあるが、manifestPublicDoc を含むXMLファイルが入口だ。

操作は次の4手でよい。

  1. Arelleを起動する。最初だけ、Help → Manage plug-ins を開き、Inline XBRL Document Set が有効かを確認する。これは、マニフェストに書かれた複数のiXBRLファイルを「一つの提出書類」としてまとめて読み込むための追加機能(プラグイン)だ。
  2. 上部メニューの File を押し、Open File… を選ぶ。
  3. EDINETから展開した XBRL/PublicDoc フォルダへ移動する。
  4. manifest_PublicDoc.xml を選択し、右下の Open を押す。

「ファイル名は表示されたのに、本文や項目が出ない」というときは、まず手順1へ戻る。マニフェストを一つのXMLとして開いただけでは、そこに列挙されたインラインXBRL一式まで読み込まれないことがある。

ArelleのOpen File画面。EDINET書類を展開したPublicDocフォルダでmanifest_PublicDoc.xmlが選択されている

スナップショット3:Arelleの「Open File…」画面。manifest_PublicDoc.xml が選択され、右下の「Open」が押せる状態になっている。個別の _ixbrl.htm ではなく、このファイルを選ぶ。

マニフェストには、提出本文書を構成するすべてのインラインXBRLファイル(末尾が _ixbrl.htm)が列挙されている。これを開けば、Arelleは一つの章だけでなく、報告書全体に対応するファイル群を読み込む。最初の練習でも、個別の _ixbrl.htm を直接選ぶのではなく、このマニフェストを選ぶ。

なぜマニフェストから開くのか:有価証券報告書は複数のインラインXBRLに分かれている。一つだけ開くと、ほかの表や本文のタグを読み込めない。manifest_PublicDoc.xml は、それらをまとめて指定する目次の役割を果たす。

次は、実際のEDINET書類に含まれていたマニフェストの一部だ。<ixbrl> が続くことからも、一書類が複数のHTMLに分かれていることが分かる。Arelleには、この一覧を自分で一つずつ開かせるのではなく、マニフェストを一度だけ渡す。

<instance id="jpcrp030000" type="PublicDoc" ...>
  <ixbrl>0000000_header_..._ixbrl.htm</ixbrl>
  <ixbrl>0101010_honbun_..._ixbrl.htm</ixbrl>
  <ixbrl>0102010_honbun_..._ixbrl.htm</ixbrl>
  <!-- この後にも、本文・表に対応するファイルが続く -->
</instance>

スナップショット2:EDINETの有価証券報告書に実際に含まれる manifest_PublicDoc.xml の一部。会社コードや日付を含むファイル名は書類ごとに異なるが、Arelleで開く入口はこのマニフェストである。

3. 数字を読むなら、Fact Tableより「iXBRL Viewer」

「Open」を押して読み込みが終わると、タイトルに manifest_PublicDoc.xml が表示される。左側の Inline XBRL Document Set は、複数ファイルを一つの書類として読めたかを示す一覧だ。右側の Fact Table(ファクトを表形式で一覧する画面)は項目を機械的に探すには便利だが、初めて読む人には期間や値が横に並びすぎて見づらい。

そこで、実際に数字を読むときはArelleに含まれる iXBRL Viewer を使う。メニューの Tools → iXBRL Viewer → Save Viewer… で閲覧用HTMLを作成し、そのHTMLを開く。提出書類の表と文章を、元のレイアウトに近い形で表示し、タグ付きの数値や文章(ファクト)を選んだときに詳細を確認できる。

ArelleのiXBRL Viewerで有価証券報告書を表示し、「提出書類」というファクトを選択した画面。右側のFact Propertiesに概念名、日付、ファクト値、エンティティ、型が表示されている

スナップショット4:ArelleのiXBRL Viewerで、EDINET書類の「提出書類」というテキストのファクトを選択した実際の画面。左側は人が読む書類、右側は選択したファクトの概念名、日付、値、提出主体、データ型などを確認する領域である。数値のファクトを選べば、同じ場所で期間・単位も確認できる。

最初は、次の順番で見れば十分だ。

  1. 表の見出しで、連結か単体か、どの期間を並べているかを確認する。
  2. 色の付いたファクトを一つ選ぶ。右側の情報から、何を表すファクトかを確認する。数値なら期間と単位、文章なら日付と内容を確かめる。
  3. EDINETのHTMLまたはPDFへ戻り、同じ表の説明文や注記を読む。

4. 連結損益計算書の「売上高」を選ぶ

次は数字の例だ。表の見出しで 「②【連結損益計算書】」 を確認し、当期列の 「売上高」 を選ぶ。選択したセルが青枠になり、右側の Fact Properties がその数字の説明で埋まる。

ArelleのiXBRL Viewerで連結損益計算書を表示し、売上高5,917,953百万円を選択した画面。右側のFact Propertiesには期間、Fact Value、Accuracy、Scale、Entity、Concept、Type、Balanceが表示されている

スナップショット5:EDINETの有価証券報告書で、連結損益計算書の「売上高」を選択した実際の画面。左の表は 百万円 表示の 5,917,953、右の Fact Value は基礎単位である の 5,917,953,000,000 と表示される。右側の期間は 2024年4月1日から2025年3月31日で、概念は売上高だと確認できる。

この一枚で確認したいのは、数字の大きさではなく、次の対応だ。

  • 表の 「連結損益計算書」:単体の数字と混ぜないための範囲の手掛かり。
  • 表の 「百万円」 と右の Scale: millions:表で読みやすく縮めた桁を、機械が元の値へ戻す手掛かり。
  • 右の Date:提出日ではなく、この売上高が表す期間。
  • 右の Concept(コンセプト):同じ「売上」と見えても、どの定義の項目なのかを示す識別子。

Fact Propertiesは「数字の住所」を分解する画面

Fact Properties はArelleの画面上の呼び名で、XBRL仕様で定められた一つの項目名ではない。 ただし、そこにはXBRLのファクトと、その意味を決める情報が並ぶ。XBRL 2.1仕様では、ファクトには「何を表すか」を示す コンセプト と、「誰の、いつの情報か」を示す コンテキスト が結び付く。コンテキストにはエンティティ(提出主体)と期間が入る。iXBRLは、表に表示した数字にも、コンセプト・コンテキスト・ユニット・スケールなどを結び付ける。

右側に出る項目XBRL/iXBRLでの対応ここで分かること
Conceptname で指定されるタクソノミのコンセプト「売上高」のような表示名と、機械が区別するコンセプトの識別子。似た表示名でも同じ項目とは限らない。
DatecontextRef が参照する contextperiod当期・前期、期首時点か、期間の数字か。提出日ではない。
Entity同じ contextentity/identifierどの提出企業・報告主体のファクトか。連結か単体かは、表の見出しやコンセプト・コンテキストも併せて読む。
Fact Valueファクトの値。iXBRLでは表示値に format、符号、scale を適用した値画面の「5,917,953」と、機械が読む「5,917,953,000,000円」がどうつながるか。
Unit(ユニット。数値のとき)unitRef が参照する unit円・株・比率など。数値以外の文章ファクトには通常付かない。
Accuracydecimals または precision監査の合否や「情報の正しさ」ではなく、丸めの細かさ。画面の millions は百万単位までの丸めを読む手掛かりである。
Scaleix:nonFractionscale人が読む表の表示倍率。6なら表示値に10の6乗を掛けるため、百万円表示と円の値をつなげられる。
Type / Balance / Labelsタクソノミで定義されるデータ型、借方・貸方属性、表示ラベル金額か文字列か、会計上の通常残高、読者向けの名称を確認する補助情報。Balance は業績の良し悪しや増減を直接示すものではない。
ChangeViewerが比較対象から計算した変化率元のファクトに埋め込まれた属性ではない。どの期間どうしを比べたかは、原文の表で確認してから読む。

この表で特に誤解しやすいのが AccuracyChange だ。Accuracyは「この数字が正しいと保証された度合い」ではなく、どの桁まで丸めているかを示す。ChangeはViewerが比較できる数値を見つけて計算した変化率だ。どちらも便利だが、それだけで分析や投資判断はできない。

ここまで確認したら、Arelleだけで結論を出さない。書類名、期間、単位、連結/単体を控え、EDINETのHTMLまたはPDFで同じ表を開く。 その表の説明文や注記まで読む。この往復が、最初の練習でいちばん大切な部分だ。

画面で起きることまずすることしないこと
同じようなファイルが多いmanifest_PublicDoc.xml から開き、表の見出しを確かめるファイル名だけで連結・単体を決める
数字が見つかった期間・単位・範囲をメモし、原文の表へ戻る数字だけをAIへ貼って判断を求める
欲しい表が見つからない左側の書類一覧とEDINETの原文で表の見出しを確かめる「開示されていない」と即断する

迷ったら、四つだけ見る

ツール上で数字を探すと、名前や分類が多く表示される。全部を理解しなくてよい。テツオ(企業開示を検証する編集担当)が勧めた確認順は次の四つだ。

  1. 概念:これは何の数字か。売上高か、営業利益か。
  2. 期間:いつからいつまでか。通期か、四半期か、累計か。
  3. 単位:円か、百万円か、株数か。
  4. 範囲:連結か、単体か、特定セグメントか。

一つでも不明なら、AIへ渡す前に原文へ戻る。数字が見つからないときも、ゼロと決めつけない。「その書類では別の表現になっている」「開示の粒度が異なる」「対象外である」可能性がある。

AIを使うのは、確認の後

最初のメモができたら、AIには次のように頼める。

この数値について、書類名、提出日、期間、単位、連結/単体を変えずに表にしてください。数字の増減理由が書かれた原文の段落も候補として示し、判断はしないでください。

ここで重要なのは、「分析して」「買いですか」と頼まないことだ。AIは検索と整理を手伝える。しかし、ツールが示す構造と原文の説明を確認する役目は、まだ人が担う。

次回までの練習

ノートに次の一行だけ残す。

会社名/書類名/提出日/項目名/期間/単位/連結・単体/原文ページまたは見出し

この一行があれば、次回はAIの回答を検証できる。

出典を読むときのポイント

  • 金融庁「EDINET Q&A」:ブラウザでの書類閲覧に手続が不要なこと、XBRL技術資料が分析利用者向けに用意されていること、APIにはキーとログイン認証が必要なことを確認した。
  • 金融庁「EDINET API仕様書」:インラインXBRL書類をAPIで取得した場合のファイル構成と、閲覧画面の情報との違いを確認した。この記事の最初の練習はAPI利用を前提にしない。
  • Arelle公式サイト:Arelleが無料のオープンソースXBRLプラットフォームで、GUIからXBRLとインラインXBRLを探索できるとする公式説明を確認した。
  • XBRL 2.1仕様(XBRL International):ファクトを概念と文脈で意味づけ、文脈に提出主体と期間を含める仕組み、数値ファクトの単位と丸めの属性を確認した。
  • Inline XBRL 1.1仕様(XBRL International):人が読むHTML上の数値と、概念・文脈・単位・表示倍率(scale)を結び付ける属性を確認した。

特定の投資判断を勧めるものではありません。

キーワード:#XBRL#EDINET#構造化データ#財務データ

出典