XBRL:複合体について-第6章XBRLへの潜入-第6部多次元性

6.6。 多次元性



1次元のハイパーキューブは問題ありませんか? この最後の章では、2つのディメンションを1つのハイパーキューブに結合した場合のディメンション分類法とレポートの外観を見てみましょう。







これにより、分類法のすべての部分が変更されます。基本的に、不要になった要素を破棄し、いくつかの要素を1つの結合要素に置き換えます。









<element id="sample_age_group_type" name="age_group_type"> <simpleType> <restriction base="string"> <enumeration value="all" /> <enumeration value=".. - 20" /> <enumeration value="21 - 40" /> <enumeration value="41 - .." /> </restriction> </simpleType> </element>
      
      







 <element id="sample_hc_gender_x_age_group" name="hc_gender_x_age_group" xbrli:periodType="instant" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" nillable="true" abstract="true" />
      
      





6.6.1。 定義リンクベース



定義の参照データベースを見ると興味深いものになります。 まず、基本概念とハイパーキューブ、およびハイパーキューブとディメンション間の性別関連の関係はdefinitionLink



から削除され、ディメンションとその要素間の関係のみが残ります。







年齢関連のdefinitionLink



は、新しいハイパーキューブのdefinitionLink



置き換えることで完全に削除できます。







 <definitionLink xlink:type="extended" xlink:role="http://www.sample.com/demographics" > <loc xlink:type="locator" xlink:href="sample-2006-01-06.xsd#sample_nr_employees" xlink:label="primary_nr_employees" /> <loc xlink:type="locator" xlink:href="sample-2006-01-06-dimension.xsd#sample_hc_gender_x_age_group" xlink:label="hypercube_gender_x_age_group" /> <loc xlink:type="locator" xlink:href="sample-2006-01-06-dimension.xsd#sample_dim_gender" xlink:label="dimension_gender" /> <loc xlink:type="locator" xlink:href="sample-2006-01-06-dimension.xsd#sample_dim_age_group" xlink:label="dimension_age_group" /> <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="scenario" xlink:from="primary_nr_employees" xlink:to="hypercube_gender_x_age_group" order="1" priority="0" use="optional" /> <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="hypercube_gender_x_age_group" xlink:to="dimension_gender" xbrldt:targetRole="http://www.sample.com/genderDimension" order="1" priority="0" use="optional" /> <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="hypercube_gender_x_age_group" xlink:to="dimension_age_group" order="2" priority="0" use="optional" /> </definitionLink>
      
      





hypercube-dimension



アークが順序付けられていることに注意してください。 また、性別ディメンションへのアークのtargetRole



属性は、ディメンションメンバーが定義されたロールを示していることに注意してください。 これにより、ある基本セットから別の基本セットに切り替えて、 DRSを形成できます。







6.6.2。 報告書



レポートコンテキストを変更して、両方のディメンションのすべての値を提供する必要があります。 次の例は、可能なコンテキストの一部を示しています(完全なリストを指定すると、スクロールにうんざりします)。







 <context id="c_start_gm"> <entity> <identifier scheme="http://www.statistics.org">12-34567</identifier> </entity> <period> <instant>2005-01-01</instant> </period> <scenario> <xbrldi:explicitMember dimension="sd:dim_gender">sd:male</xbrldi:explicitMember> <xbrldi:typedMember dimension="sd:dim_age_group"> <sd:age_group_type>all</sd:age_group_type> </xbrldi:typedMember> </scenario> </context> <context id="c_end_gf_age_up_to_20"> <entity> <identifier scheme="http://www.statistics.org">12-34567</identifier> </entity> <period> <instant>2005-12-31</instant> </period> <scenario> <xbrldi:explicitMember dimension="sd:dim_gender">sd:female</xbrldi:explicitMember> <xbrldi:typedMember dimension="sd:dim_age_group"> <sd:age_group_type>.. - 20</sd:age_group_type> </xbrldi:typedMember> </scenario> </context>
      
      





最初のコンテキストは、年齢に関係なく、レポート期間の開始時の男性従業員数に関する事実を伝えるために使用できます。 2番目のコンテキストは、報告期間の終了時点で20歳未満の女性従業員の数に関する事実です。







測定の順序は、定義参照データベースと同じであることに注意してください。







このようなレポートの視覚化は、必ずしも表形式で表示されるアプリケーションのように見えるとは限りません(どこかで最終的な値が失われています)。







画像







6.6.3。 疑わしい場合は、デフォルト値を使用してください。



性別のグループに関係なく、年齢グループごとに事実を伝えたいレポートの起草者が何らかの形で生活を楽にすることができるかどうか見てみましょう。 覚えているように、 domain_genderドメイン要素を使用して、 すべての性別を示すことができます。 これをデフォルトのディメンションメンバーにすることで支援できます。







 <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dimension_gender" xlink:to="domain_gender" order="1" priority="0" use="optional" />
      
      





これで、コンテキストは次のようになります。







 <context id="c_start_age_up_to_20"> <entity> <identifier scheme="http://www.statistics.org">12-34567</identifier> </entity> <period> <instant>2005-01-01</instant> </period> <scenario> <xbrldi:typedMember dimension="sd:dim_age_group"> <sd:age_group_type>.. - 20</sd:age_group_type> </xbrldi:typedMember> </scenario> </context>
      
      





XBRLレポート作成ソフトウェアdomain_genderの値を自動的に置き換えます。







6.6.4女性に年齢を尋ねない



ディメンション分類法の最後の仕上げは、要素の特定の組み合わせの除外です。 私たちは女性に彼女の年齢について尋ねない本当の紳士であると仮定しましょう。 ロールとハイパーキューブを定義します。







 <link:roleType roleURI="http://www.sample.com/gentleman" id="gentleman"> <link:definition>A gentlemen never asks a lady about her age</link:definition> <link:usedOn>link:definitionLink</link:usedOn>
      
      





 <element id="sample_hc_female_x_age_group" name="hc_female_x_age_group" xbrli:periodType="instant" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" nillable="true" abstract="true" />
      
      





女性の性別とすべての年齢層はハイパーキューブに含まれており、 紳士の役割を使用して他のハイパーキューブと分離しています。







 <definitionLink xlink:type="extended" xlink:role="http://www.sample.com/gentleman" > </definitionLink>
      
      





必要なロケーターを作成します。







 <loc xlink:type="locator" xlink:href="sample-2006-01-06.xsd#sample_nr_employees" xlink:label="primary_nr_employees" /> <loc xlink:type="locator" xlink:href="sample-2006-01-06-dimension.xsd#sample_hc_female_x_age_group" xlink:label="hypercube_female_x_age_group" /> <loc xlink:type="locator" xlink:href="sample-2006-01-06-dimension.xsd#sample_dim_gender" xlink:label="dimension_gender" /> <loc xlink:type="locator" xlink:href="sample-2006-01-05-dimension.xsd#sample_female" xlink:label="member_female" /> <loc xlink:type="locator" xlink:href="sample-2006-01-06-dimension.xsd#sample_dim_age_group" xlink:label="dimension_age_group" />
      
      





ハイパーキューブfem_x_age_groupには、 gender_x_age_groupと同じ2つのディメンションが含まれています







 <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="hypercube_female_x_age_group" xlink:to="dimension_gender" order="1" priority="0" use="optional" /> <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="hypercube_female_x_age_group" xlink:to="dimension_age_group" xbrldt:targetRole="http://www.sample.com/ageGroupDimension" order="2" priority="0" use="optional" />
      
      





ただし、性別ディメンションの要素のドメインには女性のみが含まれます。







最後に、 notAll



の基本概念と新しいハイパーキューブの間にnotAll



関係を作成します。これにより、その中に示されている要素の組み合わせの使用が禁止されます。 これにより、あらゆる年齢層の女性の事実を伝える機会が非常に効果的に奪われます。







 <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/notAll" xbrldt:contextElement="scenario" xlink:from="primary_nr_employees" xlink:to="hypercube_female_x_age_group" order="1" priority="0" use="optional" /> <!-- link hypercube to dimensions -->
      
      





おわりに



これで、XBRLでの作業は終了です。 この章で示したように、多くのことを行うことができますが、XBRL仕様で示された境界内にとどまりながら、分類法とその参照データベースを作成する方法を注意深く検討する必要があります。










翻訳者からのPS



この翻訳が、XBRLの基本を少し理解し、おそらく新しい知識を実践するのに役立つことを願っています。







XBRLのトピックに興味がある場合は、質問、新しい記事のアイデア、英語から役立つと思われる資料を翻訳するための提案を送ってください。







アンケートにご参加ください。ご関心とご意見をお寄せいただきありがとうございます。















All Articles