6.2。 結果の改善
昨日 、結果に非常に満足していました。 しかし、私たちは良い夜の睡眠をとり、これがまだ私たちが受けたいものではないことに気付きました。
この例のレポートフォームには、合計値のほか、性別や年齢層でグループ化するためのセクションが含まれていました。 そして、彼女はレポートの上部にこのい見出し「 http://www.xbrl.org/2003/role/link 」を持っていませんでした。
結局のところ、レポート視覚化アプリケーションは、presentationLink要素を使用してレポートセクションを定義し、その役割をセクションタイトルとして表示します。 最初のアプローチでは、onlyいタイトルの外観を説明する唯一のpresentationLinkにデフォルトのロールを使用しました。
したがって、最初に行う必要があるのは、少なくとも何かを意味するヘッダーを使用してレポートのセクションを設定することです。
注:日付を2006-01-01から2006-01-02に変更して、以前の開発のコピーを使用します。 さらに、今日はいくつかのバージョンを作成するため、それぞれが独自のフォルダー(a、b、cなど)を作成し、すべてのファイル名でそれを示します。 以前のバージョンに関連する変更のみを詳細に説明します。
6.2.1。 パーティションのセットアップ
レポートのセクションを構成するには、いくつかの変更を行う必要があります。
- レポートの各セクションに1つずつ、プレゼンテーションリンクベースの新しいロールを作成します。
- 各セクションでルート要素として使用する抽象概念を定義します。
- 新しいpresentationLinkをプレゼンテーションリンクベースに追加します。
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
として定義されます:
-
roleURI
ロール名は URIとして指定されます。 通常行われているように、独自のサイトからURIを使用しました。 -
id
識別子は、外部ドキュメントからロールにアクセスするために使用されます。 分類体系内で一意である必要があります。 -
link:definition
この子要素には、ユーザーフレンドリーなロールの説明が含まれています。 分類法またはレポートを表示する場合、この値をセクションタイトルとして使用できます。これにより、レポートを視覚化するための簡単なアプリケーションが作成されます。 -
link:usedOn
この子要素は、ロールが使用できるリンクのタイプを決定します。 このような要素は複数存在する可能性がありますが、この場合、ロールはプレゼンテーションリンクベースによってのみ使用されます。
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" />
-
xlink:type
関係のタイプによって、「単純」を示します。 -
xlink:href
この属性は役割を示します。 ロケーターのhref
属性と同様に、ここでは分類法スキーマのロール識別子が使用されます。 -
roleURI
プレゼンテーションリンクベース内では、ロールはURIによってアクセスされます。 この例では、分類スキーマで指定されたものと同じURIを使用します。
これで、レポートのセクションごとに個別の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。 結果レポート
そこで、私たちが達成したものは次のとおりです。
私はあなたのことは知りませんが、かなりうまくいったようです。 各セクションは理解可能で自給自足になりました。 これを今日の最終結果としましょう。