4.9.5 タクソノミー文書の保存
(1) 使用するインターフェース
タクソノミー文書の保存で使用するインターフェースを次の表に示します。
表4-43 タクソノミー文書の保存で使用するインターフェース
項番 | 使用するインターフェース | 説明 |
---|
1 | com.hitachi.xbrl.util.XBRLDocumentWriterFactory | XBRLDocumentWriterオブジェクトを生成するためのAPIを提供します。 |
2 | com.hitachi.xbrl.util.XBRLDocumentWriter | org.w3c.Documentをストリームに書き出します。 |
3 | com.hitachi.xbrl.simple.taxonomy.SimpleTaxonomy | 編集できる単純なタクソノミー文書全体を表します。 |
(2) サンプルコード
タクソノミー文書を保存するコードは次のとおりです。
// 単純なタクソノミー文書を表すSimpleTaxonomyからorg.w3c.Documentへ変換
Document[] docs = sdoc.transform();
// XBRLDocumentWriterFactoryの作成
XBRLDocumentWriterFactory wf = dm.newDocumentWriterFactory();
// XBRLDocumentWriterの作成
XBRLDocumentWriter writer = wf.newDocumentWriter();
writer.setIndent(true);
// タクソノミースキーマを保存する
FileOutputStream schemaFile =
new FileOutputStream("output/simple_extension_taxonomy.xsd");
writer.write(schemaFile, docs[0]);
schemaFile.close();
// ラベルリンクを保存する
FileOutputStream labelFile =
new FileOutputStream("output/simple_extension_taxonomy_label.xml");
writer.write(labelFile, docs[1]);
labelFile.close(); |
このサンプルコードは,編集できるタクソノミー文書全体を表すSimpleTaxonomyオブジェクトのtransform()メソッドを使い,タクソノミー本体,ラベルリンクベースをそれぞれに対応するorg.w3c.dom.Documentオブジェクトへ変換します。変換後のDocumentオブジェクトは,XML形式のファイルに次の名称で保存します。
- タクソノミー本体のファイル名
「4.9.1 タクソノミー文書の拡張」でSimpleTaxonomyオブジェクトを生成したときに指定したファイル名で保存してください。
なお,このサンプルコードでは,ファイル名は次のように設定されています。
simple_extension_taxonomy.xsd
- ラベルリンクベースのファイル名
ラベルリンクベースファイルの命名規則に従ったファイル名で保存してください。命名規則については,「3.1.1(3) 関係を追加・削除した場合に生じる影響」を参照してください。
なお,このサンプルコードでは,ファイル名は次のように設定されています。
simple_extension_taxonomy_label.xml