項目間の対応関係を用いた XBRL財務報告書自動変換ツールの試作 大阪大学基礎工学部情報科学科 井上研究室 渡辺貴史
財務報告書とは 企業などが定期的に公表する財務情報の報告 財務情報は年度ごと,組織や業種ごとに文書構造が異なるという特徴がある 財務報告書(貸借対照表) XBRLの登場 財務情報 財務 報告書 A B C 報告書の 作成 形式の異なる複数の報告書の作成が必要 大部分が手作業 非効率的で 信頼性が低い 企業などが定期的に公表する財務情報の報告 財務情報は年度ごと,組織や業種ごとに文書構造が異なるという特徴がある
XBRLとは XMLをベースとする財務報告記述のための標準化言語 ユーザが定義したタグやデータ構造での記述が可能 タクソノミ インスタンス リンクベース コンテキスト 資産の部 流動資産 要素間の関係 定義の例 要素間の関係定義 情報の付加 XMLをベースとする財務報告記述のための標準化言語 ユーザが定義したタグやデータ構造での記述が可能 各種報告書に適した柔軟な記述 プラットホームやソフトウェアに依存しない 2000 parent child weight=“2” 財務情報 財務 報告書 A B C 情報公開の加速 分析作業効率化 財務報告書作成の効率化 XBRLデータ 要素の定義 財務情報の記述 情報の付加 1000
XBRLの問題点 解決手段としてXBRLデータの 自動生成を考える 財務情報 XBRLデータ A B C XBRLデータ 財務 報告書 財務情報をXBRLデータ化することでデータ交換や分析作業は効率化された XBRLデータへの変換作業は手作業の部分が多いので効率が悪く信頼性が低い 解決手段としてXBRLデータの 自動生成を考える
問題点の解決手法 同じ財務活動についての報告書であれば形式が異なる文書間でも同じデータ項目が含まれる 財務情報 XBRL文書 B XBRLデータ 財務 報告書 同じ財務活動についての報告書であれば形式が異なる文書間でも同じデータ項目が含まれる 財務情報として等価な項目ならばその値も等しい(あるいは値の変換が可能) データ項目間の対応関係を定義できれば自動的に値を取得できる タクソノミ インスタンス 既存の XBRL文書 作成する 対応関係定義 要素定義 XBRL文書 A 自動変換 C 対応項目取得 財務 報告書 A C データ項目間の対応関係を用いた XBRL文書の自動変換の実現 本研究の目的
対応定義文書 対応関係の定義をあらかじめ記述しておき変換に利用する 対応関係の記述と定義内容を以下のように定める 対応関係の記述 定義内容 リンクベースを参考にXMLを用いて記述する 定義内容 対応する要素の関連付け 必要なデータのみを取得をするための条件の指定 データを適切な値に変換するための加工式の指定 全国の支社の 財務データ 関西地区の支社 の財務データ 文書A 文書B 関西地区のデー タのみ取得する 50(百万円) (千円) 文書A 文書B 50000 1000倍
XBRL財務報告書 自動変換手法 ②項目間の 対応関係 ①文書形式 ③要素の値 ⑤出力 ④インスタンスの生成 XBRL財務 報告書自動 データ項目間対応定義文書 ②項目間の 対応関係 変換元のXBRL文書 変換先のXBRL文書 ①文書形式 タクソノミ タクソノミ リンクベース リンクベース XBRL財務 報告書自動 変換ツール ③要素の値 ⑤出力 インスタンス インスタンス ④インスタンスの生成
インスタンスの生成 対応する要素の値の取得 条件の判定 値の加工処理 子要素の追加と計算処理 値の追加 属性処理
対応する要素の値の取得 対応定義文書における対応関係の記述 <equivalentArc xlink:actuate=“onRequest” xlink:arcrole=“element-element” xlink:from=“tax2_資産” xlink:show=“replace” xlink:title=“equivalent” xlink:to=“tax1_資産の部" xlink:type="arc" /> 条件を指定する場合は cond=“条件文要素のID” を追加する 計算を指定する場合は calculation=“true” を追加する 5000 対応する要素の値を取得する 対応する要素を探す 資産の部 資産 5000 流動資産 非流動資産 3000 2000
条件の処理 対応に条件を指定することで必要なデータ項目のみ処理する 条件文の指定 条件式の指定 <conditionalStatement if="exp1" type="numeric" id="cs1" /> 条件式の指定 <condition id=“exp1” operator=“greater than” type=“element” xlink:href=“C:\test\testData\tax1.xsd#資産の部" value=“3000" /> “資産の部”の値が 3000より大きい 5000>3000 条件の判定結果が真 5000 2000<3000 条件の判定結果が偽 対応する要素を探す 対応する要素を探す 資産の部 資産 5000 2000
値の加工 対応する要素間の値の調整に用いる 値の加工式の指定 定式の指定 <conditionalStatement if="exp1" then=“f1+n“ else=“f1-n" type="numeric"/> 定式の指定 (数値)<formula id="f1" exp="n * 10"/> (文字列)<str id="s1" exp="START + n"/> (5000*10)+5000 =55000 (n * 10) + n n = 5000 (2000*10)-2000 =18000 (n * 10) - n n = 2000 5000>3000 条件の判定 結果が真 2000<3000 条件の判定 結果が偽 対応する要素を探す 対応する要素を探す 5000 資産の部 資産 2000
ツールによる変換例 変換元文書 変換先文書
ツールによる変換例 子要素からの計算処理 単純な要素対応 条件:値が3000より大きい 真:(n * 10) + n
まとめ 項目間の対応関係を用いてXBRL財務報告書の自動変換ツールを試作した 今後の課題 財務報告書の作成が手作業と比べて効率的になった 作成した文書の信頼性が向上した 今後の課題 コンテキストの処理 対応関係がないデータ項目などの修正支援 条件や値の加工の指定方法の改善