XBRL:複合体について-第6章XBRLへのダイビング-パート2.結果の改善

6.2。 結果の改善


昨日 、結果に非常に満足していました。 しかし、私たちは良い夜の睡眠をとり、これがまだ私たちが受けたいものではないことに気付きました。


こののレポートフォームには、合計値のほか、性別や年齢層でグループ化するためのセクションが含まれていました。 そして、彼女はレポートの上部にこのい見出し「 http://www.xbrl.org/2003/role/link 」を持っていませんでした。


結局のところ、レポート視覚化アプリケーションは、presentationLink要素を使用してレポートセクションを定義し、その役割をセクションタイトルとして表示します。 最初のアプローチでは、onlyいタイトルの外観を説明する唯一のpresentationLinkにデフォルトのロールを使用しました。


したがって、最初に行う必要があるのは、少なくとも何かを意味するヘッダーを使用してレポートのセクションを設定することです。


注:日付を2006-01-01から2006-01-02に変更して、以前の開発のコピーを使用します。 さらに、今日はいくつかのバージョンを作成するため、それぞれが独自のフォルダー(a、b、cなど)を作成し、すべてのファイル名でそれを示します。 以前のバージョンに関連する変更のみを詳細に説明します。


6.2.1。 パーティションのセットアップ


レポートのセクションを構成するには、いくつかの変更を行う必要があります。



6.2.1.1。 新しい役割


レポート視覚化アプリケーションは、プレゼンテーションリンクデータベースのpresentationLinkを使用してセクションを識別します。 セクション名は、presentationLinkロールから取得されます。 そのため、正しい名前を示すために、分類法で新しいロールを定義する必要があります。


この例のレポートフォームは、合計、性別、年齢の3つのセクションに分かれているため、それらに対応する役割を決定します。 それらはappinfo要素内に配置され、 appinfo要素はannotation要素内にあります。


 <link:roleType roleURI="http://www.sample.com/totalEmployees" id="totalEmployees"> <link:definition>Total number of employees</link:definition> <link:usedOn>link:presentationLink</link:usedOn> </link:roleType> <link:roleType roleURI="http://www.sample.com/genderDemographics" id="genderDemographics"> <link:definition>Gender related demographics on employees</link:definition> <link:usedOn>link:presentationLink</link:usedOn> </link:roleType> <link:roleType roleURI="http://www.sample.com/ageDemographics" id="ageDemographics"> <link:definition>Age related demographics on employees</link:definition> <link:usedOn>link:presentationLink</link:usedOn> </link:roleType> 

ロールはlink:roleType 2つの属性と2 link:roleType持つlink:roleTypeとして定義されます:



6.2.1.2。 抽象ルートの概念


前回使用した1つの抽象ルート概念の代わりに、各セクションに1つずつ、3つの新しい概念を定義します。


 <element id="sample_section_totals" name="section_totals" xbrli:periodType="instant" type="xbrli:stringItemType" substitutionGroup="xbrli:item" abstract="true" nillable="true" /> <element id="sample_section_gender" name="section_gender" xbrli:periodType="instant" type="xbrli:stringItemType" substitutionGroup="xbrli:item" abstract="true" nillable="true" /> <element id="sample_section_age" name="section_age" xbrli:periodType="instant" type="xbrli:stringItemType" substitutionGroup="xbrli:item" abstract="true" nillable="true" /> 

各概念は、1つのプレゼンテーション階層のルート要素として使用できます。


6.2.1.3。 プレゼンテーションリンク


最後の手順は、プレゼンテーションリンクベースを更新することです。 まず、新しいロールを使用できるようにする必要があります。 これを行うには、新しいリンクを定義します。


 <roleRef xlink:type="simple" xlink:href="sample-2006-01-02a.xsd#totalEmployees" roleURI="http://www.sample.com/totalEmployees" /> <roleRef xlink:type="simple" xlink:href="sample-2006-01-02a.xsd#genderDemographics" roleURI="http://www.sample.com/genderDemographics" /> <roleRef xlink:type="simple" xlink:href="sample-2006-01-02a.xsd#ageDemographics" roleURI="http://www.sample.com/ageDemographics" /> 


これで、レポートのセクションごとに個別のpresentationLinkを定義できます。


 <presentationLink xlink:type="extended" xlink:role="http://www.sample.com/totalEmployees" > <loc xlink:type="locator" xlink:href="sample-2006-01-02a.xsd#sample_section_totals" xlink:label="concept_section_totals" /> <loc xlink:type="locator" xlink:href="sample-2006-01-02a.xsd#sample_nr_employees_total" xlink:label="concept_nr_employees_total" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_section_totals" xlink:to="concept_nr_employees_total" order="1" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" /> </presentationLink> <presentationLink xlink:type="extended" xlink:role="http://www.sample.com/genderDemographics" > <loc xlink:type="locator" xlink:href="sample-2006-01-02a.xsd#sample_section_gender" xlink:label="concept_section_gender" /> <loc xlink:type="locator" xlink:href="sample-2006-01-02a.xsd#sample_nr_employees_male" xlink:label="concept_nr_employees_male" /> <loc xlink:type="locator" xlink:href="sample-2006-01-02a.xsd#sample_nr_employees_female" xlink:label="concept_nr_employees_female" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_section_gender" xlink:to="concept_nr_employees_male" order="1" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_section_gender" xlink:to="concept_nr_employees_female" order="2" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" /> </presentationLink> <presentationLink xlink:type="extended" xlink:role="http://www.sample.com/ageDemographics " > <loc xlink:type="locator" xlink:href="sample-2006-01-02a.xsd#sample_section_age" xlink:label="concept_section_age" /> <loc xlink:type="locator" xlink:href="sample-2006-01-02a.xsd#sample_nr_employees_age_up_to_20" xlink:label="concept_nr_employees_age_up_to_20" /> <loc xlink:type="locator" xlink:href="sample-2006-01-02a.xsd#sample_nr_employees_age_21_to_40" xlink:label="concept_nr_employees_age_21_to_40" /> <loc xlink:type="locator" xlink:href="sample-2006-01-02a.xsd#sample_nr_employees_age_41_and_up" xlink:label="concept_nr_employees_age_41_and_up" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_section_age" xlink:to="concept_nr_employees_age_up_to_20" order="1" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_section_age" xlink:to="concept_nr_employees_age_21_to_40" order="2" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_section_age" xlink:to="concept_nr_employees_age_41_and_up" order="3" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" /> </presentationLink> 

各presentationLink要素は、レポートの対応するセクションに定義されたロールを使用します。 presentationLink内の階層も、対応するセクションに関連する概念のみから形成されます。


6.2.1.4。 何が起こったのか見てみましょう

簡単なアプリケーションを使用してレポートを視覚化すると、より良い結果が得られます。 レポートは3つのセクションに分かれており、それぞれに独自のタイトルがあります。


画像


新しいレポートを作成したことに注意してください。 その中のデータは過去のものと同じであり、唯一の違いはそれが参照する分類法です。


ただし、面倒なことが1つあります。セクションは、希望する順序でリストされていません。 プレゼンテーション階層では、子の順序を指定できますが、分類レベルではセクションに対して同じことはできません。


この問題の解決策の1つは、レポート視覚化アプリケーションの肩に問題をシフトすることです。 よくあることですが、この単純なアプリケーションはセクションをアルファベット順にソートします。 ロールの説明を変更することにより、セクションの順序を設定できます。


画像


これですべてが良くなりましたが、アルファベット順の並べ替えなどのレポート視覚化ソフトウェアの機能に依存しないでください。 実際には、これは珍しいことではありませんが、より良い解決策を考え出そうとします。


6.2.2。 開発に戻る


そのため、3つのセクションを作成するとレポートがより構造化されましたが、結果はまだ十分ではありません。


別の可能性もあります。プレゼンテーションリンクを使用すると、概念の階層を定義できますが、これまでのところ、 フラットな階層のみを使用しました。 おそらく、階層の面でより多くのことを達成しようとする必要があります。


6.2.2.1。 新しい役割

セクション見出しを定義するために別々のロールを使用することは良いアイデアでした。したがって、このバージョンでは、これらの目的のために1つのロールを残します。


 <link:roleType roleURI="http://www.sample.com/employeeDemographics" id="employeesDemographics"> <link:definition>Employees demographics</link:definition> <link:usedOn>link:presentationLink</link:usedOn> </link:roleType> 

6.2.2.2。 抽象的な概念

抽象概念「presentation_root」と、以前のバージョンのセクションの抽象ルート概念はそのままにします。 これにより、美しい階層を構築するのに十分な概念が得られます。


6.2.2.3。 ショートカット

これまで、私たちが定義する抽象的な概念にはラベルが付けられていませんでした。 現在のバージョンではそれらを追加します。 プロセスの詳細については説明しません。 これはすべて、すでに調査したものです。


6.2.2.4。 階層化されたプレゼンテーションリンク

このバージョンのプレゼンテーションリンクベースは、複数のレベルを持つ階層を定義します。


 <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_presentation_root" xlink:to="concept_section_totals" order="1" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_section_totals" xlink:to="concept_nr_employees_total" order="1" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_presentation_root" xlink:to="concept_section_gender" order="2" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_section_gender" xlink:to="concept_nr_employees_male" order="1" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_section_gender" xlink:to="concept_nr_employees_female" order="2" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_presentation_root" xlink:to="concept_section_age" order="3" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_section_age" xlink:to="concept_nr_employees_age_up_to_20" order="1" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_section_age" xlink:to="concept_nr_employees_age_21_to_40" order="2" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_section_age" xlink:to="concept_nr_employees_age_41_and_up" order="3" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" /> 

presentation_root抽象概念の下には、3つの子抽象セクションルート概念があります。 それぞれには、対応するセクションの子概念が含まれています。


6.2.2.5。これを見てください!

レポートの新しいバージョンの結果は次のとおりです。


画像


このような階層により、概念の正確な場所と順序を示すことができます。 しかし、これはまだ受け取りたいものではありません。 1つのセクションのみの使用に戻る必要がありました。 誰かがレポートのセクションの1つだけを使用したい場合はどうなりますか? 3つ目のバージョンがあると思います!


6.2.3。 レポートセクションの改訂


今日の3番目の最終バージョンでは、レポートのセクションについて少し考えてみましょう。 すでにいくつかの異なるセクションを作成することを学びました。 しかし、それは本当に正しかったですか?


XBRLレポートのセクションには、関連情報をグループ化する機能があることに注意してください。 誰かが1つのセクションのみを使用することを決定しても、完全なレポートを受け取ることを期待する場合があります。


おそらくこれはこの例には当てはまりませんが、実際の分類法を見ると、レポートのセクションは同じデータを異なる形式で表示することがよくあります。例は、貸借対照表と損益のセクションを含む分類法です。


人口統計に興味がある人は、従業員の総数だけで満足したいと思うでしょうか? おそらく、しかしありそうもない。 一方、性別または年齢グループごとの人口統計データの詳細を見て、合計も確認したい(セクションに3つ以上の概念がある複雑なレポートを想像してください)。


レポートを性別と年齢の人口統計の2つのセクションに分割するとどうなりますか。各セクションには合計が含まれますか? これは、新しいバージョンで行うことです。


6.2.3.1。 役割

最初のバージョン(2006-01-02a)と同様にセクションを定義しますが、性別と年齢のみです。


6.2.3.2。 抽象的な概念

後で見るように、抽象的な概念はもう必要ありません。


6.2.3.3。 プレゼンテーション階層

各セクションに合計を追加すると、分類法ですでに定義されている概念をプレゼンテーション階層のルートとして使用する機会が与えられ、新しい抽象概念を作成できなくなります。


 <presentationLink xlink:type="extended" xlink:role="http://www.sample.com/genderDemographics" > <loc xlink:type="locator" xlink:href="sample-2006-01-02c.xsd#sample_nr_employees_total" xlink:label="concept_nr_employees_total" /> <loc xlink:type="locator" xlink:href="sample-2006-01-02c.xsd#sample_nr_employees_male" xlink:label="concept_nr_employees_male" /> <loc xlink:type="locator" xlink:href="sample-2006-01-02c.xsd#sample_nr_employees_female" xlink:label="concept_nr_employees_female" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_nr_employees_total" xlink:to="concept_nr_employees_male" order="1" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_nr_employees_total" xlink:to="concept_nr_employees_female" order="2" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" /> </presentationLink> <presentationLink xlink:type="extended" xlink:role="http://www.sample.com/ageDemographics" > <loc xlink:type="locator" xlink:href="sample-2006-01-02c.xsd#sample_nr_employees_total" xlink:label="concept_nr_employees_total" /> <loc xlink:type="locator" xlink:href="sample-2006-01-02c.xsd#sample_nr_employees_age_up_to_20" xlink:label="concept_nr_employees_age_up_to_20" /> <loc xlink:type="locator" xlink:href="sample-2006-01-02c.xsd#sample_nr_employees_age_21_to_40" xlink:label="concept_nr_employees_age_21_to_40" /> <loc xlink:type="locator" xlink:href="sample-2006-01-02c.xsd#sample_nr_employees_age_41_and_up" xlink:label="concept_nr_employees_age_41_and_up" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_nr_employees_total" xlink:to="concept_nr_employees_age_up_to_20" order="1" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_nr_employees_total" xlink:to="concept_nr_employees_age_21_to_40" order="2" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" /> <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="concept_nr_employees_total" xlink:to="concept_nr_employees_age_41_and_up" order="3" priority="0" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" /> </presentationLink> 

6.2.3.4。 結果レポート

そこで、私たちが達成したものは次のとおりです。


画像


私はあなたのことは知りませんが、かなりうまくいったようです。 各セクションは理解可能で自給自足になりました。 これを今日の最終結果としましょう。







Source: https://habr.com/ru/post/J335788/


All Articles