XBRL2.0の場合の,DTSの読み込み範囲と,読み込み範囲の指定方法について説明します。
DTS読み込み時には,XBRL文書に記載されている属性値を基に,参照先のXBRL文書が読み込まれます。DTS読み込み時に参照される要素と属性の一覧を次の表に示します。
表2-3 DTS読み込み時に参照される要素と属性の一覧(XBRL2.0の場合)
XBRL文書種別 | 参照される要素と属性 | 読み込まれるXBRL文書 |
---|---|---|
インスタンス文書 | <xbrli:group>要素のxsi:schemaLocation属性 | タクソノミー本体 |
<link:linkbaseRef>要素のxlink:href属性 | リンクベース | |
タクソノミー文書 | <xsd:import>要素のschemaLocation属性 | タクソノミー本体 |
<link:linkbaseRef>要素のxlink:href属性 | リンクベース |
次に,各XBRL文書の読み込み範囲とその指定方法を説明します。
XBRL2.0のインスタンス文書を解析する場合,次の順番でDTSが読み込まれます。
また,XBRL Internationalによって提供されるXMLスキーマ定義では,リンクベースの定義に使用する<link:linkbase>要素の子要素に,リンクベースの参照に使用する<link:linkbaseRef>要素を記述できます。しかし,uCosminexus Business Reporting Processorでは,<link:linkbase>要素の子要素として<link:linkbaseRef>要素が記述されていた場合,警告を通知します。DTSに含めることはできません。
インスタンス文書を解析する場合のDTSの読み込み範囲を次の図に示します。なお,XBRL2.0の仕様ではDTSの範囲が明記されていないため,XBRL2.1で明記されたDTSの範囲と比較して,説明します。
図2-5 インスタンス文書を解析する場合のDTSの読み込み範囲(XBRL2.0の場合)
この図は,インスタンス文書のxsi:schemaLocation属性に,「タクソノミー本体2」および「タクソノミー本体3」が指定されている例です。インスタンス文書の<link:linkbaseRef>要素には,「リンクベース5」への参照が指定されています。
この例では,「タクソノミー本体2」の基底タクソノミー文書である「タクソノミー本体0」,および「タクソノミー本体0」が参照している「リンクベース0」が読み込まれます。ただし,「リンクベース1」が参照している「タクソノミー本体4」は,DTSには含まれません。
XBRL2.0のタクソノミー文書だけを解析する場合,基点となるタクソノミー本体をすべて指定する必要があります。基点となるタクソノミー本体とは,DTSの読み込み時に出発点となるタクソノミー本体のことです。
タクソノミー文書を解析する場合のDTSの読み込み範囲を次の図に示します。なお,XBRL2.0の仕様ではDTSの範囲が明記されていないため,XBRL2.1で明記されたDTSの範囲と比較して,説明します。
図2-6 タクソノミー文書を解析する場合のDTSの読み込み範囲(XBRL2.0の場合)
この図は,「タクソノミー本体2」を読み込んだ場合の例です。この例では,「タクソノミー本体3」は読み込まれません。「タクソノミー本体3」をDTSに含めたい場合,「タクソノミー本体2」および「タクソノミー本体3」を基点となるタクソノミー本体として指定する必要があります。
タクソノミー文書は,複数の階層に拡張できます。通常は,タクソノミー文書が複数の階層に拡張されている場合,いちばん基となった基底タクソノミー文書までが読み込まれます。
しかし,多くの階層に拡張されたタクソノミー文書を読み込むには,大量のメモリやリソースが必要になります。また,初めて読み込むDTSが予想以上に多くの階層から構成されていてメモリが不足するおそれもあります。
このため,読み込むタクソノミー文書の階層の上限を指定できます。指定した上限値に達した場合,エラーとなり,処理が中断されます。
図2-7 DTSとして読み込むタクソノミー文書の階層の数え方