uCosminexus Business Reporting Processor 開発者ガイド
「4.5.1 インスタンス文書の読み込み」で読み込んだXBRL2.0に準拠するインスタンス文書のXBRL DOMに,脚注リンクを追加するサンプルコードについて説明します。
脚注リンクの構成要素は,ロケータ,リソース,アークから成り立ちます。それぞれ,<link:loc>要素,<link:footnote>要素,<link:footnoteArc>要素を使用して記述します。
<link:footnoteArc>要素では,一つのリンクを双方向で表現する必要があるため,ロケータ(<link:loc>要素)からリソース(<link:footnote>要素)へのアーク,およびリソース(<link:footnote>要素)からロケータ(<link:loc>要素)へのアークの両方が必要です。
uCosminexus Business Reporting Processorでは,リソース(<link:footnote>要素)を生成して関連づける要素に登録すると,ロケータ(<link:loc>要素)とアーク(<link:footnoteArc>要素)も自動で追加されます。
ここでは,非数値アイテムに日本語と英語の脚注リンクを追加します。二つの脚注リンクを追加するので,リソースおよびアークが2要素ずつ追加されます。
脚注リンクを追加する非数値アイテム<hi:note>要素の値を次の表に示します。
表4-16 脚注リンクを追加する非数値アイテムの値
| 項番 | 名称 | 要素/属性 | 値 |
|---|---|---|---|
| 1 | nonNumericContext | 属性 | NNC01 |
| 2 | hi:note | 要素 | This is a sample! |
追加する<link:footnote>要素を次の表に示します。
表4-17 追加する<link:footnote>要素
| 項番 | 属性名 | 値 | |
|---|---|---|---|
| 1 | xlink:type | resource | |
| 2 | xlink:label | dst_point_ja | dst_point_en |
| 3 | xml:lang | ja | en |
<link:footnote>要素の値は日本語(ja)「これは脚注リンクです。」,英語(en)「This is a footnote-link.」とします。
追加される<link:loc>要素および<link:footnoteArc>要素を次の表に示します。
表4-18 追加される<link:loc>要素および<link:footnoteArc>要素
| 要素名 | 属性名 | 値 |
|---|---|---|
| <link:loc>要素 | xlink:type | locator |
| xlink:label | src_point | |
| xlink:href※ | ITM01 | |
| <link:footnoteArc>要素 (<link:loc>要素から<link:footnote>要素へのアーク) |
xlink:type | arc |
| xlink:from | (locatorで設定されたlabel:src_point) | |
| xlink:to | (footnoteで設定されたlabel:dst_point_ja) (footnoteで設定されたlabel:dst_point_en) |
|
| xlink:arcrole | http://www.xbrl.org/linkprops/arc/fact-footnote | |
| xlink:show | replace | |
| xlink:actuate | onRequest | |
| <link:footnoteArc>要素 (<link:footnote>要素から<link:loc>要素へのアーク) |
xlink:type | arc |
| xlink:from | (footnoteで設定されたlabel:dst_point_ja) (footnoteで設定されたlabel:dst_point_en) |
|
| xlink:to | (locatorで設定されたlabel:src_point) | |
| xlink:arcrole | http://www.xbrl.org/linkprops/arc/footnote-fact | |
| xlink:show | replace | |
| xlink:actuate | onRequest |
注※ xlink:href属性では,インスタンス文書の本文中の要素をidまたはxpointer(Xpath方式)で指し示す必要があります。
脚注リンクの追加で使用するクラスおよびインターフェースを次の表に示します。
表4-19 脚注リンクの追加で使用するクラスおよびインターフェース
| 項番 | 使用するクラスおよびインターフェース | 説明 |
|---|---|---|
| 1 | com.hitachi.xbrl.instance.XBRLFootnote | 脚注を表します。 |
| 2 | com.hitachi.xbrl.instance.XBRLInstanceElement | インスタンス文書に記述される要素を表します。 |
| 3 | com.hitachi.xbrl.instance.XBRLInstanceDocument | インスタンス文書全体を表します。 |
インスタンス文書のXBRL DOMに脚注リンクを追加するコードは次のとおりです。
// 脚注の作成(日本語)
XBRLFootnote footnote_ja = idoc.createFootnote("ja", null, null);
footnote_ja.setValue("これは脚注リンクです。");
// 脚注の作成(英語)
XBRLFootnote footnote_en = idoc.createFootnote("en", null, null);
footnote_en.setValue("This is a footnote-link.");
// すべてのnote要素(アイテム)を取得
List<XBRLInstanceElement> elist =
idoc.getElements("http://www.hitachi.com/2003/XBRL", "note");
// 最初の要素に脚注を追加して関連づける
XBRLInstanceElement element = elist.get(0);
element.addFootnote(footnote_ja);
element.addFootnote(footnote_en);
|
コーディング結果として,生成される脚注リンクは次のとおりです。
<link:footnoteLink xlink:type="extended">
<link:footnote xlink:label="src_point" xlink:type="resource" xml:lang="ja">
これは脚注リンクです。</link:footnote>
<link:loc xlink:href="#ITM01" xlink:label="dst_point_ja" xlink:type="locator" />
<link:footnoteArc xlink:actuate="onRequest"
xlink:arcrole="http://www.xbrl.org/linkprops/arc/footnote-fact"
xlink:from="src_point" xlink:show="replace" xlink:to="dst_point_ja"
xlink:type="arc" />
<link:footnoteArc xlink:actuate="onRequest"
xlink:arcrole="http://www.xbrl.org/linkprops/arc/fact-footnote"
xlink:from="dst_point_ja" xlink:show="replace" xlink:to="src_point"
xlink:type="arc" />
<link:footnote xlink:label="dst_point_en" xlink:type="resource"
xml:lang="en">This is a footnote-link.</link:footnote>
<link:footnoteArc xlink:actuate="onRequest"
xlink:arcrole="http://www.xbrl.org/linkprops/arc/footnote-fact"
xlink:from="dst_point_en" xlink:show="replace" xlink:to="dst_point_ja"
xlink:type="arc" />
<link:footnoteArc xlink:actuate="onRequest"
xlink:arcrole="http://www.xbrl.org/linkprops/arc/fact-footnote"
xlink:from="dst_point_ja" xlink:show="replace" xlink:to="dst_point_en"
xlink:type="arc" />
</link:footnoteLink>
|
All Rights Reserved. Copyright (C) 2006, 2008, Hitachi, Ltd.