目次


XML 的思索

XBRL を使って財務報告を分析する

財務報告書ファイルを十分理解できるように Extensible Business Reporting Language の解釈方法を学ぶ

Comments

コンテンツシリーズ

このコンテンツは全#シリーズのパート#です: XML 的思索

このシリーズの続きに乞うご期待。

このコンテンツはシリーズの一部分です:XML 的思索

このシリーズの続きに乞うご期待。

ウォール・ストリートなど世界中のマーケットのニュースを追っている人であれば、業績を発表する企業がアナリストやトレーダーの反応を誘ってその企業の株をより多く売買するように、利益や損失を発表するのを聞いたことがあるはずです。どの会社にとっても、そうした発表の準備や発表後の期間は最も気がかりなものです。会社の幹部は、プレスリリースを行い、アナリストや報道関係者と電話会議を行い、また関連の活動についての発表を行うこともよくあります。しかしこうした活動の中で最も重要なものは、監視機関 (米国の場合は Securities and Exchange Commission、つまり SEC) に提出される正式な報告書である財務諸表です。これらの報告書には独自の専門用語や市場特有のセマンティクスがあり、報告書の作成は標準的な要件や規約に合致するように注意深く行う必要があります。

正式なビジネス・レポートは、商業的な活動および趨勢に関する情報の宝庫になっており、金融サービス業界ではそうした財務情報の交換フォーマットを標準化するために、早くから XBRL (Extensible Business Reporting Language) の形で XML を活用してきました。XBRL はビジネス・レポートや関連するセマンティクスを表現するためのオープンで使用料不要の標準であり、最新バージョン (2005年4月にリリースされた 2.1) は成熟したものになっています。XBRL は、約 450 の大企業や政府機関、NGO (Non-Governmental Organization: 非政府組織) などから成る国際的な非営利の協議会である XII (XBRL International, Inc.) の下で常に管理されています。XII は XBRL について、XBRL のホームページで以下のように述べています。

XBRL はビジネス・データや財務データを電子データとしてやりとりするための言語であり、世界中のビジネス・レポートに革命を起こしています。XBRL を利用すると、ビジネス情報を準備、分析、交換する上で大きなメリットがあります。財務データの提供や利用に関するすべての場合において、XBRL を利用することよってコストを削減することができると同時に、効率を高め、正確さと信頼性を改善することができます。・・・ [XBRL] の背景にある考え方は単純です。財務情報を (標準的なインターネットのページや印刷された文書などのような) テキストのブロックとして扱う代わりに、XBRL は個々のデータ項目に対して識別タグを付与するのです。こうしておけばコンピューターで読み取ることができます。例えば、企業の純利益には独自の固有タグがあります。

確かに XBRL は法的な力のおかげで着実に広がりつつあります。2008年12月の時点で、SEC は大企業に対して、財務諸表、特に年次財務報告書 (10-K) と四半期財務報告書 (10-Q) に XBRL を使うように要求しています。この命令は 2009年末までにフォーチュン 1500 社のほとんどに適用され、2010年末までには株式を公開しているすべての会社に適用されます。

私は以前、このシリーズの「XML的思索: 金融サービス業界におけるXMLを垣間見る」の中で XBRL について触れました (この記事へのリンクは「参考文献」を参照)。それ以来 XBRL 仕様は、特に企業レポートの透明性や、そうした報告書と金融サービスとの関係から、重要さを増しています。この記事では XBRL フォーマットについて詳しく説明し、XBRL での重要な構成体をおおよそ把握できるようにします。

XBRL の典型的な使い方

XBRL の典型的な使い方にはいくつかの側面があります。XBRL 文書は、タクソノミーなどのメタデータとして体系付けられたセマンティクスをベースに、XLink を使って構成されています。これらのタクソノミーは XBRL でのセマンティクスの透明性を高めるための仕組みであり、XII 自体が管理する Global Ledger Framework も含め、業界や世界の財務報告の標準を参照しています。財務報告書はこうしたセマンティクスを反映したインスタンス文書であり、注意深く統制されたコンテキストによって財務情報 (XBRL の用語では「business facts (ビジネス・ファクト)」) を伝えます。このコンテキストでは、例えばビジネス・ファクトに関連する企業や個人、関連する評価基準の単位、日付および時刻、関連するすべての事実、タクソノミーにおける定義への参照、XBRL インスタンスにレポートされている事実の微妙な意味合いを明確にするためのあらゆるメタデータ、などについて明確に言及しています。

この記事では簡単な報告書のサンプルを使う代わりに、実際の報告書を使うことにしました。ここでは IBM® が 2008 会計年度第三四半期の財務報告書として SEC に提出した 10-Q 報告書から抜粋して使用します。EDGAR システムにアップロードされる SEC 向け報告書ファイル全体は PKI (public-key infrastructure) 署名ブロックになっており、このブロックの中に HTML版と XBRL 版の両方の報告書が含まれた SGML 文書が含まれています (図 1)。

図 1. SEC 向け報告書ファイルの構造
SEC 向け報告書ファイルの構造
SEC 向け報告書ファイルの構造

私が調べた報告書には 7 つのテキスト・セクションがあり、1 つのセクションが HTML、6 つのセクションが XBRL です。各セクションには FILENAME 要素の中で指定されるファイル名があります。これは実質的にアーカイブ・ファイル・フォーマットであり、UNIX™ のTAR や圧縮機能のない ZIP と変わりません。表 1 はこうして組み込まれている文書の概要です。

表 1. IBM の第三四半期の 10-Q 報告書ファイルに組み込まれている 7 つのセクション
ファイル名内容役割
a08-28338_18k.htmHTML10-Q 報告書フォームのテキスト
ibm-20081028.xmlXBRL インスタンスこの報告書の中心となるビジネス・ファクト
ibm-20081028.xsdXLink が埋め込まれている W3C XML スキーマXBRL 定義に IBM 固有の構成体を加えたもの
ibm-20081028_cal.xmlXLink のリンクベース値の計算に関する詳細のタクソノミー
ibm-20081028_def.xmlXLink のリンクベースビジネス・ファクトの基本定義を提供するタクソノミーへのリンク
ibm-20081028_lab.xmlXLink のリンクベースビジネス・ファクトの XLink ラベルを提供するタクソノミーへのリンク (外部へのリンクをサポートします)
ibm-20081028_pre.xmlXLink のリンクベースビジネス・ファクトを提示するために追加のヒントを提供するタクソノミーへのリンク

XML を簡単に調べる

リスト 1 は ibm-20081028.xml の抜粋です。このファイルは埋め込まれている XBRL ファイルの 1 つであり、また報告書の中心となる部分を記述したファイルでもあります。

リスト 1. IBM の 10-Q 報告書ファイルから引用した、ビジネス・ファクトの中心の XBRL
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<xbrli:xbrl
  xmlns:xbrli="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.us/dei/2008-03-31"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:us-gaap="http://xbrl.us/us-gaap/2008-03-31"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xbrl.org/2006/xbrldi http://www.xbrl.org/2006/xbrldi-2006.xsd">
  <link:schemaRef xlink:href="ibm-20081028.xsd" xlink:type="simple"/>
  <xbrli:context id="D-20073Q">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000051143</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2007-07-01</xbrli:startDate>
      <xbrli:endDate>2007-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="D-20083Q">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000051143</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2008-07-01</xbrli:startDate>
      <xbrli:endDate>2008-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:unit id="Shares">
    <xbrli:measure>xbrli:shares</xbrli:measure>
  </xbrli:unit>
  <xbrli:unit id="USD-DecimalMinus6">
    <xbrli:measure>iso4217:USD</xbrli:measure>
  </xbrli:unit>
  <dei:EntityCommonStockSharesOutstanding contextRef="I-2008-09-30" decimals="0"
	unitRef="Shares">1343457986</dei:EntityCommonStockSharesOutstanding>
  <dei:EntityRegistrantName contextRef="D-20083Q">International Business Machines
	Corporation</dei:EntityRegistrantName>
  <dei:CurrentFiscalYearEndDate
	contextRef="D-20083Q">--12-31</dei:CurrentFiscalYearEndDate>
  <dei:DocumentType contextRef="D-20083Q">10-Q</dei:DocumentType>
  <dei:DocumentReportType contextRef="D-20083Q">Transition
	Report</dei:DocumentReportType>
  <us-gaap:SalesRevenueServicesNet contextRef="D-20083Q" decimals="-6"
       unitRef="USD-DecimalMinus6">14773000000</us-gaap:SalesRevenueServicesNet>
  <us-gaap:SalesRevenueServicesNet contextRef="D-20073Q" decimals="-6"
       unitRef="USD-DecimalMinus6">13657000000</us-gaap:SalesRevenueServicesNet>
  <us-gaap:SalesRevenueGoodsNet contextRef="D-20083Q" decimals="-6"
	unitRef="USD-DecimalMinus6">9892000000</us-gaap:SalesRevenueGoodsNet>
  <us-gaap:SalesRevenueGoodsNet contextRef="D-20073Q" decimals="-6"
	unitRef="USD-DecimalMinus6">9833000000</us-gaap:SalesRevenueGoodsNet>
  <us-gaap:Revenues contextRef="D-20083Q" decimals="-6" id="f7"
	unitRef="USD-DecimalMinus6">25302000000</us-gaap:Revenues>
  <us-gaap:Revenues contextRef="D-20073Q" decimals="-6"
	unitRef="USD-DecimalMinus6">24119000000</us-gaap:Revenues>
  <us-gaap:CostOfServices contextRef="D-20083Q" decimals="-6"
	unitRef="USD-DecimalMinus6">10230000000</us-gaap:CostOfServices>
  <us-gaap:CostOfServices contextRef="D-20073Q" decimals="-6"
	unitRef="USD-DecimalMinus6">9855000000</us-gaap:CostOfServices>
  <us-gaap:CostOfGoodsSold contextRef="D-20083Q" decimals="-6"
	unitRef="USD-DecimalMinus6">3789000000</us-gaap:CostOfGoodsSold>
  <us-gaap:CostOfGoodsSold contextRef="D-20073Q" decimals="-6"
	unitRef="USD-DecimalMinus6">3960000000</us-gaap:CostOfGoodsSold>
  <us-gaap:GrossProfit contextRef="D-20083Q" decimals="-6" id="f9"
	unitRef="USD-DecimalMinus6">10959000000</us-gaap:GrossProfit>
  <us-gaap:GrossProfit contextRef="D-20073Q" decimals="-6"
	unitRef="USD-DecimalMinus6">9956000000</us-gaap:GrossProfit>
</xbrli:xbrl>

最初の部分にはビジネス・コンテキストを設定する構成体が含まれています。ビジネス・ファクトを「役務収益による純収入が $14,773,000,000」と表現しても一向に構いませんが、基本となるコンテキストが指定されない限り、そうした表現はほとんど無意味です。それは 1 年全体の収入なのでしょうか。それとも四半期、あるいは 1 週間の収入なのでしょうか。それは 1968年の四半期の収入なのでしょうか、それとも 2008年の四半期の収入なのでしょうか (物価の上昇のため、年が異なると数字の意味も大きく変わります)。私の会社のように小規模なコンサルティング会社であれば、収入を表す数字がこんなに大きければ非常に驚きますが、ここでのコンテキストは当然ながら IBM の収入を意味します。XBRL は、ビジネス・ファクトに関するこうしたコンテキストを設定する手段を提供します。最初の 2 つの xbrli:context 要素はビジネス・ファクトに使用される時間のコンテキストを設定します。つまり D-20073Q は2007 会計年度の第三四半期を意味し、D-20083Q は2008 会計年度の第三四半期を意味します。この 2 つの期間のデータを使うことで、異なる年の間での比較を行うことができますが、これは財務分析にとって非常に重要です。純収入 150 億ドルという数字は前年同期が 100 億ドルであれば好業績かもしれませんが、200 億ドルと比較するのであれば業績悪化です。

その次の 2 つの xbrli:unit 要素は評価基準の単位を定義します。1 つは非常に単純で、株式の数にすぎません。しかし単純なものであっても非常に細かくコンテキストが記述されていることが多いのです。頭の切れる作成者が、虚偽の報告書の原因となる株式 (shares) の定義を操作するような事態は避ける必要があるため、株式の単位は標準的な XBRL のタクソノミー自体によって定義されています。もう一方の評価基準の単位は米ドルであり、これは 3 文字で通貨コードを記述する国際標準である ISO 4217 の定義に従っています (「USD」は米ドルを表します)。この場合は、値を百万ドル単位に丸めて表現しています。この単位が「USD-DecimalMinus6」と呼ばれる理由は、値を 10 の -6 乗して小数部分を除いてから乗数として復元することと等価なためです。この場合も XBRL では、レポーターやアナリストがそうした詳細まで明確に理解しようとすると一苦労します。

次に、ビジネス・ファクトそのものがあり、ここで IBM の財務実績を好きなだけ調べることができます。例えば、IBM の 2008 会計年度の第三四半期における株式発行高は 1,343,457,986 株、役務収益による純収入は $14,773,000,000 であり、2007 年同期の $13,657,000,000 と比較すると $116,000,000 の増加です。リスト 1 は、ほんの一部の抜粋ですが、本来の報告書には膨大な数のビジネス・ファクトが記載されています。ここで、米国での GAAP (Generally Accepted Accounting Principle: 一般に認められた会計基準) を表現する XBRL を参照する名前空間が使われていることに注目してください (GAPP は会計報告書に関して国全体で平等な基準を課すためのものであり、国際的な標準の基礎となるものでもあります)。

さらに詳しい内容 - タクソノミー

上記では、XBRL ではビジネス・コンテキストに細かな配慮がされている様子を簡単に調べました。しかしリスト 1 で示したものは、そのごく一部にすぎません。ビジネス・ファクトを支える極めて細かい (そして退屈な) 実際の部分は、報告書の中の 7 つのファイルのうちの 3 つであるタクソノミーの中にあります。ここでは参照とラベルに焦点を当てるタクソノミー・ファイルについて説明します。リスト 2 は用語の正式な定義へのリンクを提供する ibm-20081028_def.xml の抜粋です。

リスト 2. IBM の 10-Q 報告書ファイルの定義のタクソノミーの抜粋
<?xml version="1.0" encoding="utf-8"?>
<linkbase
  xmlns="http://www.xbrl.org/2003/linkbase"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xbrldt="http://xbrl.org/2005/xbrldt"
  xsi:schemaLocation="http://www.xbrl.org/2003/linkbase
	http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd
	http://xbrl.org/2005/xbrldt
	http://www.xbrl.org/2005/xbrldt-2005.xsd">
  <roleRef xlink:type="simple"
    xlink:href="ibm-20081028.xsd#IBMConsolidatedStatementOfEarnings"
    roleURI="http://www.ibm.com/us/fr/ci/ibm/IBMConsolidatedStatementOfEarnings" />
  <roleRef xlink:type="simple"
    xlink:href="ibm-20081028.xsd#DocumentInformation"
    roleURI="http://www.ibm.com/us/fr/ci/DocumentInformation" />
  <roleRef xlink:type="simple"
    xlink:href="ibm-20081028.xsd#EntityInformation"
    roleURI="http://www.ibm.com/us/fr/ci/EntityInformation" />
  <definitionLink xlink:type="extended"
    xlink:role="http://www.ibm.com/us/fr/ci/ibm/IBMConsolidatedStatementOfEarnings">
    <loc xlink:type="locator"
      xlink:label="us-gaap_StatementLineItems"
      xlink:href="http://xbrl.us/USG/elts/us-gaap.xsd#us-gaap_StatementLineItems"/>
    <loc xlink:type="locator"
      xlink:label="us-gaap_StatementTable"
      xlink:href="http://xbrl.us/USG/elts/us-gaap.xsd#us-gaap_StatementTable" />
    <definitionArc xlink:type="arc"
      xlink:arcrole="http://xbrl.org/int/dim/arcrole/all"
      xlink:from="us-gaap_StatementLineItems"
      xlink:to="us-gaap_StatementTable"
      order="1"
      use="optional"
      xbrldt:contextElement="segment" />
  </definitionLink>
  <definitionLink xlink:type="extended"
    xlink:role="http://www.ibm.com/us/fr/ci/EntityInformation">
    <loc xlink:type="locator"
      xlink:label="dei_EntityInformationLineItems"
      xlink:href="http://xbrl.us/(USG)/non-gaap/(XSD)#dei_EntityInformationLineItems" />
    <loc xlink:type="locator"
      xlink:label="ibm_EntitiesTable"
      xlink:href="ibm-20081028.xsd#ibm_EntitiesTable" />
    <definitionArc xlink:type="arc"
      xlink:arcrole="http://xbrl.org/int/dim/arcrole/all"
      xlink:from="dei_EntityInformationLineItems"
      xlink:to="ibm_EntitiesTable"
      order="27"
      use="optional"
      xbrldt:contextElement="segment" />
    <loc xlink:type="locator"
      xlink:label="dei_EntityCommonStockSharesOutstanding"
xlink:href="http://xbrl.us/USG/non-gaap/dei.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <definitionArc xlink:type="arc"
      xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member"
      xlink:from="dei_EntityInformationLineItems"
      xlink:to="dei_EntityCommonStockSharesOutstanding"
      order="35"
      use="optional" />
  </definitionLink>
</linkbase>

ここではタクソノミー・リンクの表現方法のうち、まわりくどい方法や難解な方法を省略しました。またフォーマット上の制限から長い属性値を変更せざるをえず、場合によっては「us-gaap/1.0」というストリングを「(USG)」で置き換え、また場合によっては「dei-2008-03-31.xsd」というストリングを「(XSD)」と省略しました。そうした上で残ったものを見ると、基本的な考え方を理解できるはずです。リンクベースの中で、先頭のリンク (roleRef 要素) は報告書全体に関係する定義を提供しています。報告書の特定の側面を参照する定義は、次に説明する definitionLink 要素で表現されています。

XLink を掘り下げる

XBRL は XML でハイパーリンクを作成するための W3C 標準である XLink の複雑な側面を活用しています。XBRL を扱う際に XLink に関して覚えておく必要のある最も重要な事項は、リンクはすべての要素に付けられるということです。これは例えば HTML で a 要素や link 要素によってリンクが表現されるのとは異なります。XBRL では確かに標準的なリンク要素を定義しますが (例えば roleReflocdefinitionArc など)、公開者はリンクを非常に柔軟に使うことができます。IBM では特別な構成体を大量に使用しているため、そうした構成体を定義する XML スキーマを報告書ファイルの中に含めています。

definitionLink xlink:type="extended" は複合型の XLink であることを示しています。このリンクの特徴は何よりも、複数の arc を使ってリンクを表現することができ、しかも外部へのリンクを表現することができます。つまり拡張リンクを使うと、リンクベースとは全く別のところにある XML 要素にリンクすることができるのです (この場合では、中心となる XBRL 報告書の中の要素にリンクしています)。IBM はこの拡張リンクそのものに、ある役割を割り当てています。つまり xlink:role="http://www.ibm.com/us/fr/ci/ibm/IBMConsolidatedStatementOfEarnings は、このタクソノミーが IBM の定義による損益計算書であることを表現しています (この URL をトラバースすると IBM のホームページにリダイレクトされますが、それは付随的なことにすぎません。多くの arc を持つ拡張リンクの概念を理解するためには、ミラー・サイトを持つサイトからダウンロードするためのリンクを考えてみてください。概念的には必要なソフトウェアへのリンクは 1 つしかありませんが、実際にはそのソフトウェアを取得できるリソースは数多く考えられ、それぞれのリソースが別々の arc なのです。こうした複数の arc を表現するために、「locator」型の XLink 要素を使ってエンドポイントに「マーク」または「ラベル」を指定します。実際の arc は xlink:type="arc" を持つ要素の中で定義され、そうした要素の中にはエンドポイントをマークとして指定する xlink:from 要素と xlink:to 要素が含まれています。下記のコードはリスト 2 をさらに調べ、1 つのまとまった拡張リンクの例を抽出したものです。

  <definitionLink xlink:type="extended"
    xlink:role="http://www.ibm.com/us/fr/ci/EntityInformation">
    <loc xlink:type="locator"
      xlink:label="dei_EntityInformationLineItems"
      xlink:href="http://xbrl.us/(USG)/non-gaap/(XSD)#dei_EntityInformationLineItems" />
    <loc xlink:type="locator"
      xlink:label="dei_EntityCommonStockSharesOutstanding"
xlink:href="http://xbrl.us/USG/non-gaap/dei.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <definitionArc xlink:type="arc"
      xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member"
      xlink:from="dei_EntityInformationLineItems"
      xlink:to="dei_EntityCommonStockSharesOutstanding"
      order="35"
      use="optional" />
  </definitionLink>

これは要するに、普通株式発行高に関する情報が企業情報の行の項目 (entity information line items) のドメインにあることを表現しており、この表現は XBRL タクソノミーの Web リソースの定義へのリンクによって正式なものになります。

まとめ

XBRL が複雑なものであることは間違いありません。最近のニュースには、金融商品がいかに複雑なものになりうるか、それが巨大な多国籍企業を扱う場合にも決して容易にならないばかりか、小さな企業を扱う場合であってさえ容易ではなくなる、といったコメントがあふれています。XBRL の考え方はそうした複雑さを隠すことではなく、むしろすべてを明らかにし、少なくともすべての情報がアクセス可能で透明なものになるようにすることです。この記事では XBRL における XML の基本的な仕組みの大部分を説明しましたが、この仕組みを学ぶためには何時間も必要です。しかし通常のビジネスでもフォーマットの作成や分析には、財務上および技術上の専門知識が大量に必要になるものです。この記事では米国での財務報告書ファイルに近々 XBRL の使用が義務化されることに触れました。XBRL の使用の義務化は、世界中の証券システムだけではなく、もっと小規模な部門レベルの社内レポートにも広がりつつあります。さらに、もっと広い領域での、法律で規制されているレポート作成要求 (例えば税金の申告書、労働や環境への影響に関する報告書など) にも広がる可能性があります。XBRL はまもなくビジネスにおける最も重要な XML フォーマットの 1 つになるかもしれません。この記事が XBRL を処理するための最初の足がかりとして役立つものであったことを祈っています。


ダウンロード可能なリソース


関連トピック


コメント

コメントを登録するにはサインインあるいは登録してください。

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=XML
ArticleID=369250
ArticleTitle=XML 的思索: XBRL を使って財務報告を分析する
publish-date=01062009