uCosminexus Business Reporting Processor 開発者ガイド
ここでは,既存の関係を禁止し,新たな関係を追加するサンプルコードについて説明します。
既存の関係を禁止し,新たな関係を追加するために使用するクラスおよびインターフェースを次の表に示します。
表4-42 既存の関係の禁止や新たな関係の追加で使用するクラスおよびインターフェース
| 項番 | 使用するクラスおよびインターフェース | 説明 |
|---|---|---|
| 1 | com.hitachi.xbrl.taxonomy.XBRLTaxonomyDocument | タクソノミー文書全体を表します。 |
| 2 | com.hitachi.xbrl.taxonomy.XBRLTaxonomyElement | タクソノミー文書に記述される要素の要素宣言を表します。 |
| 3 | com.hitachi.xbrl.taxonomy.XBRLLabel | 要素のラベルを表します。 |
| 4 | com.hitachi.xbrl.link.XBRLLabelRelationship | ラベルリンクに記述されている関係のうち,一つの関係を表します。 |
| 5 | com.hitachi.xbrl.simple.taxonomy.SimpleEdge | 単純なタクソノミー文書を構成する関係ネットワークの一辺(一つの関係)を表します。 |
| 6 | com.hitachi.xbrl.simple.taxonomy.SimpleLabel | 単純なタクソノミー文書のラベルを表します。 |
| 7 | com.hitachi.xbrl.simple.taxonomy.SimpleLabelEdge | 単純なタクソノミー文書を構成するラベルリンクの一辺(一つの関係)を表します。 |
| 8 | com.hitachi.xbrl.simple.taxonomy.SimpleTaxonomy | 編集できる単純なタクソノミー文書全体を表します。 |
| 9 | com.hitachi.xbrl.util.XBRLConstants | ユーザーアプリケーションで利用できる定数を定義します。 |
既存の関係を禁止し,新たな関係をXBRL DOMに追加するコードは次のとおりです。
// SimpleTaxonomyの作成時に複製されたXBRLTaxonomyDocumentを取得
XBRLTaxonomyDocument baseDoc = sdoc.getBaseTaxonomyDocument();
// 既存の関係を禁止する
XBRLTaxonomyElement item2 =
baseDoc.getElement(
"http://www.hitachi.com/2004/XBRL",
"investmentsAndAdvances");
if (item2 != null) {
List<XBRLLabelRelationship> list =
item2.getLabelRelationships(
XBRLConstants.XBRL21_ROLE_LINK,
XBRLConstants.XBRL21_ARCROLE_CONCEPT_LABEL);
for (XBRLLabelRelationship rs : list) {
XBRLLabel label = (XBRLLabel) rs.getTo();
if ("ja".equals(label.getLang())) {
SimpleEdge prohibitedEdge =
sdoc.createProhibitedEdge(rs);
sdoc.addEdge(prohibitedEdge);
}
}
}
// 新たな関係を作成
SimpleLabel newLabel =
sdoc.createLabel(
XBRLConstants.XBRL21_ROLE_LABEL,
"ja",
"投資と前貸金");
SimpleLabelEdge newEdge =
sdoc.createLabelEdge(
XBRLConstants.XBRL21_ROLE_LINK,
XBRLConstants.XBRL21_ARCROLE_CONCEPT_LABEL,
item2,
newLabel);
sdoc.addEdge(newEdge);
|
このサンプルコードでは,次に示す既存のアイテムに対し,既存の日本語ラベルとの関係を禁止して,新たな日本語ラベルとの関係を作成しています。
<element id="investmentsAndAdvances" name="investmentsAndAdvances"
type="xbrli:monetaryItemType" substitutionGroup="xbrli:item"
xbrli:periodType="instant" xbrli:balance="credit"/>
|
これによって既存の日本語ラベルとの関係が禁止されます。禁止される関係は次のとおりです。
<link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
<link:loc
xlink:type="locator"
xlink:href="sample_taxonomy1_xbrl_2_1.xsd#investmentsAndAdvances"
xlink:label="assets.investmentsAndAdvances"
xlink:title="assets.investmentsAndAdvances"/>
<link:label
xlink:type="resource"
xlink:label="label_assets.investmentsAndAdvances_ja"
xlink:title="assets.investmentsAndAdvances_ja"
xml:lang="ja">投資及び貸付金</link:label>
<link:labelArc
xlink:type="arc"
xlink:from="assets.investmentsAndAdvances"
xlink:to="label_assets.investmentsAndAdvances_ja"
xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label"
xlink:title="assets.investmentsAndAdvances to label_assets.investmentsAndAdvances_ja"/>
</link:labelLink>
|
新たに,次に示す日本語ラベルとの関係が追加されます。
<link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
<link:loc xlink:href="sample_taxonomy1_xbrl_2_1.xsd#investmentsAndAdvances"
xlink:label="hi_investmentsAndAdvances" xlink:type="locator"/>
<link:loc xlink:href="linkbase_label1_xbrl_2_1.xml#element(/1/1/12)"
xlink:label="label_assets.investmentsAndAdvances_ja" xlink:type="locator"/>
<link:label xlink:label="hi_investmentsAndAdvances_ja"
xlink:role="http://www.xbrl.org/2003/role/label"
xlink:type="resource" xml:lang="ja">投資と前貸金</link:label>
<link:labelArc order="1" priority="1" use="prohibited"
xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label"
xlink:from="hi_investmentsAndAdvances" xlink:to="label_assets.investmentsAndAdvances_ja"
xlink:type="arc"/>
<link:labelArc order="1" priority="0" use="optional"
xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label"
xlink:from="hi_investmentsAndAdvances" xlink:to="hi_investmentsAndAdvances_ja"
|
All Rights Reserved. Copyright (C) 2006, 2008, Hitachi, Ltd.