uCosminexus Business Reporting Processor 開発者ガイド
既存のタクソノミー文書を読み込んで編集できる状態にするためのサンプルコードについて説明します。
タクソノミー文書の拡張で使用するクラスおよびインターフェースを次の表に示します。
表4-39 タクソノミー文書の拡張で使用するクラスおよびインターフェース
| 項番 | 使用するクラスおよびインターフェース | 説明 |
|---|---|---|
| 1 | com.hitachi.xbrl.XBRLDocumentManager | XBRL文書の入出力やタクソノミー文書のキャッシュを管理します。 |
| 2 | com.hitachi.xbrl.taxonomy.XBRLTaxonomyDocumentBuilderFactory | XBRLTaxonomyDocumentBuilderオブジェクトを生成するためのAPIを定義します。 |
| 3 | com.hitachi.xbrl.taxonomy.XBRLTaxonomyDocumentBuilder | タクソノミー文書からXBRLTaxonomyDocumentオブジェクトを取得するためのAPIを定義します。 |
| 4 | com.hitachi.xbrl.taxonomy.XBRLTaxonomyDocument | タクソノミー文書全体を表します。 |
| 5 | com.hitachi.xbrl.simple.taxonomy.SimpleTaxonomyBuilderFactory | SimpleTaxonomyBuilderオブジェクトを生成するためのAPIを定義します。 |
| 6 | com.hitachi.xbrl.simple.taxonomy.SimpleTaxonomyBuilder | SimpleTaxonomyオブジェクトを生成するためのAPIを定義します。 |
| 7 | com.hitachi.xbrl.simple.taxonomy.SimpleTaxonomy | 編集できる単純なタクソノミー文書全体を表します。 |
| 8 | com.hitachi.xbrl.util.XBRLConstants | ユーザーアプリケーションで利用できる定数を定義します。 |
タクソノミー文書を拡張するコードには,次の処理を定義する必要があります。
タクソノミー文書を拡張するコードは次のとおりです。
/*
* タクソノミー文書を読み込む
*/
// 初期化
XBRLDocumentManager.init();
XBRLDocumentManager dm = XBRLDocumentManager.getInstance();
// XBRLTaxonomyDocumentBuilderFactoryの作成
XBRLTaxonomyDocumentBuilderFactory tbf =
dm.newTaxonomyDocumentBuilderFactory();
// XBRLバージョンの設定
tbf.setXBRLVersion(XBRLConstants.XBRL_2_1);
// タクソノミー文書のパース時に妥当性検証を行う設定
// tbf.setValidating(true);
//XBRLTaxonomyDocumentBuilderの作成
XBRLTaxonomyDocumentBuilder tb = tbf.newTaxonomyDocumentBuilder();
// エラーハンドラの設定
SampleErrorHandler eh = new SampleErrorHandler();
tb.setErrorHandler(eh);
// エンティティリゾルバの設定
SampleEntityResolver er = new SampleEntityResolver();
tb.setEntityResolver(er);
// タクソノミー文書のパース
String filename = "input/sample_taxonomy1_xbrl_2_1.xsd";
File[] taxonomy = { new File(filename) };
XBRLTaxonomyDocument tdoc = tb.parse(taxonomy);
System.out.println("タクソノミー文書のパースに成功しました。");
/*
* ここからタクソノミー文書の拡張
*/
// SimpleTaxonomyBuilderFactoryの作成
SimpleTaxonomyBuilderFactory sbf =
dm.newSimpleTaxonomyBuilderFactory();
// SimpleTaxonomyBuilderの作成
SimpleTaxonomyBuilder sb = sbf.newSimpleTaxonomyBuilder();
// タクソノミー文書(sample_taxonomy1_xbrl_2_1.xsd)を拡張元として
// 単純タクソノミー文書を表すSimpleTaxonomyを作成
SimpleTaxonomy sdoc =
sb.newSimpleTaxonomy(
"http://www.hitachi.com/2004/XBRL/extension",
"hi2",
"simple_extension_taxonomy.xsd",
tdoc);
|
All Rights Reserved. Copyright (C) 2006, 2008, Hitachi, Ltd.