Журнал ВРМ World

Мировая история развития технологий управления эффективностью бизнеса – обзоры зарубежных публикаций

Спецификация "Extensible Business Reporting Language (XBRL) 2.0a" (часть 2)

Вторая статья завершает рассмотрение Рекомендации XBRL International
"Extensible Business Reporting Language (XBRL) 2.0a". В ней перечислены
основные правила построения реальных документов и таксономий на языке XBRL.

Напомним, что язык XBRL - это набор элементов и атрибутов, которые используются для построения таксономий и реальных документов, описываемых с помощью созданных таксономий. В состав рассматриваемой Рекомендации также входит набор XBRL-схем (xsd-файлов), на которые необходимо ссылаться (импортировать) при составлении таксономий.

Ниже изложены основные правила формирования реальных документов и таксономий.

Синтаксис реальных документов

Рекомендация XBRL 2.0a устанавливает общие правила, которым должны подчиняться реальные документы. Кроме того, реальные документы XBRL обязательно должны быть состоятельными (действительными, valid) документами.

Базовый синтаксис реальных документов, описанных в спецификации, опирается на XML Schema. Описанными элементами являются item, context, tuple и group.

Элемент item

Как уже было упомянуто, элемент item (статья) представляет отдельный факт или бизнес-измерение. Этот элемент определен как абстрактный элемент, другими словами, он не может не появляться в тексте реального документа. Следовательно, все элементы, которые описанны в документе таксономии XBRL и сообщаются в реальном документе, должны быть либо (а) членами группы подстановки (substitution group) для item, либо (б) членами группы подстановки, первоначально основанной на item. Элемент item определен в XBRL-схеме реального документа (xbrl-instance.xsd):


<!-- itemType -->
<complexType name="itemType">
    <simpleContent>
        <extension base="anySimpleType">
            <anyAttribute namespace="##any" processContents="lax"/>
        </extension>
    </simpleContent>
</complexType>

<!-- item -->
<element name="item" type="xbrli:itemType" abstract="true"/>


Элемент item определяется как расширения типа данных anyType. У каждого члена группы подстановки может быть задан наиболее подходящий тип. Благодаря этому каждая замена item в экземпляре проверяется на состоятельность по собственному типу данных, который, например, может быть типом monetary (поддерживается XBRL), или другим более сложным типом, включая разметку:



<ci:notesToFinancialStatements.concentrationsNote nonNumericContext="c1">
    Некоторый текст.
</ci:notesToFinancialStatements.concentrationsNote>


В этом примере атрибут nonNumericContext - это IDREF к соответствующему виду элемента контекста (см. ниже). У элемента item всегда должен быть атрибут контекста, который упоминает об элементе контекста.

Элементы контекста numericContext и nonNumericContext

Элементы контекста: numericContext и nonNumericContext - это контейнеры для различных метаданных, находящихся в атрибутах и содержании элемента. Они предоставляют контекст, необходимый для понимания финансового факта, содержащегося в элементе item. Элемент nonNumericContext включает метаданные и атрибуты, относящиеся к текстовым фактам; элемент numericContext обеспечивает схожие элементы для числовых фактов. В качестве иллюстрации приведем определение элемента numericContext (xbrl-instance.xsd):


<element name="numericContext">
    <complexType>
        <sequence>
            <element name="entity" type="xbrli:entityType"/>
            <element name="period" type="xbrli:periodType"/>
            <element name="unit" type="xbrli:unitType"/>
            <element ref="xbrli:scenario" minOccurs="0"/>
        </sequence>
        <attribute name="id" type="ID" use="required"/>
        <attribute name="precision" type="positiveInteger" use="required"/>
        <attribute name="cwa" type="boolean" use="required"/>
    </complexType>
</element>


В определении этого элемента участвует несколько элементов и атрибутов, ниже дано краткое описание каждого из них:

  • Элемент entity указывает организацию (компанию, правительственное учреждение, физическое лицо), для которой данный финансовый факт является истинным. Этот элемент является необходимым содержанием для каждого элемента контекста.
  • Элемент period устанавливает момент или период времени, на который ссылается элемент item.
  • Элемент unit указывать стандарт, который относится к измерению величин. Поскольку предполагается, что большинство измерений будут иметь денежную размерность, для элемента unit должно использоваться обозначение валют по стандарту ISO 4217. (Этот элемент является факультативным для элемента nonNumericContext.
  • Факультативный элемент scenario позволяет включать дополнительную разметку, которая может содержать сведения о различных финансовых фактах.
  • Атрибут id является обязательным атрибутом, идентифицирующим контекст.
  • Атрибут precision выражает арифметическую точность измерения и, следовательно, должен быть целым числом. Этот атрибут задается только для элемента numericContext.
  • Атрибут cwa - это булева величина, показывающей состоятельность "допущения закрытого мира" ("Closed World Assumption"). Он также задается только для элемента numericContext.

Элемент tuple

Несмотря на то, что большинство бизнес-фактов может быть понято самостоятельно, некоторые из них зависят друг от друга, особенно если какой-либо факт многократно передается. Например, если при предоставлении информации об управлении компании, необходимо соотнести имя каждого менеджера с его/ее должностью. Такие наборы фактов (должность менеджера/имя менеджера) называются элементами tuple.

Следует напомнить, что поскольку элемент tuple является абстрактным, все элементы этого типа должны быть группами подстановки, "ведущими свое начало" из tuple.

Элемент group

Элемент group является общим контейнером для словаря XBRL. Он должен быть корневым элементом реальных документов XBRL.

Синтаксис таксономий

Согласно "Рекомендации XBRL 2.0a", таксономии должны состоять из списка элементов, атрибутов или определения типов данных. Кроме того, в них могут быть описаны отношения между элементами или между этими элементами и элементами других таксономий. Таксономии определяются с помощью словаря XML Schema и ряда элементов, которые реализуют базы связей (linkbase) XLink.

Любой документ таксономии должен быть состоятельным экземпляром документа XML Schema. В каждом документе таксономии необходимо задать стандартный элемент import, чтобы ссылаться на XBRL-схемы. Каждая таксономия должна импортировать XBRL-схему реального документа (xbrl-instance.xsd).

В XBRL-схеме реального документа определяет абстрактные элементы item и tuple. Эти определения используются в объявлениях групп подстановки (substitution group). В XBRL-схеме реального документа также определены основные типы данных, применяемые в таксономиях. (Эта XBRL-схема импортирует схему базы связей (xbrl-linkbase.xsd).)

Некоторые элементы и атрибуты, определенные в XBRL-схемах

Тип данных monetary

В XBRL-схеме определен тип данных monetary (денежный), который должен быть использован при объявлении любого элемента создаваемой таксономии, если этот элемент представляет денежную величину. В качестве иллюстрации приведем определение этого типа (xbrl-instance.xsd):


    <simpleType name="monetary">
        <annotation>
                <documentation>
            Это тип данных для тех финансовых понятий в таксономии,
                    которые обозначают единицы валют.
            Элементы item экземпляра с этим типом должны иметь единицу
                    измерения из пространства имен валют ISO4217.
                </documentation>
        </annotation>
        <restriction base="decimal"/>
    </simpleType>


Элемент element

Для элемента element должны быть указаны атрибуты name (имя), substitutiongroup (группа подстановки) и type (тип данных). Кроме того, для этого элемента могут быть приведены факультативные атрибуты id и balance:


<schema xmlns="http://www.w3.org/2001/XMLSchema"
 xmlns:xbrli="http://www.xbrl.org/2001/instance">
<element id="myCredit" name="myCredit" xbrli:balance="credit"
    type="xbrli:monetaryItemType" substitutionGroup="xbrli:item"/>
<element id="myDebit" name="myDebit" xbrli:balance="debit"
    type="xbrli:monetaryItemType" substitutionGroup="xbrli:item"/>
</schema>


Базы связей

Рекомендация XBRL 2.0a задает пять видов баз расширенных связей, которые могут быть использованы в создаваемых таксономиях:

  • связи отношения: calculation (вычисления), definition (определения) и presentation (презентации) - управляют отношениями между элементами таксономии;
  • связи меток (label) задают написание текста, ассоциированного с элементами таксономии, на различных языках;
  • связи "литературы" указывают ссылки на официальные источники (интерактивные или "бумажные").

Данные базы расширенных связей должны находиться в контейнере документа XLink. Этим контейнером документа может быть документ XML Schema таксономии или отдельный документ, который содержит элемент базы связей в качестве корневого элемента.

Для задания элементов связи Рекомендация XBRL 2.0a опирается на атрибуты связей XLink, описанные в соответствующей спецификации W3C (xlink:type, xlink:show, xlink:actuate, xlink:title и другие). Кроме того, в XBRL-схеме баз связей определены элементы calculationArc, presentationArc, definitionArc и ряд других элементов, которые используются для выражения отношений между элементами таксономий. Например, в приведенном ниже примере между текущими активами (current assets) и расходами будущих лет (prepaid expenses) существует отношение подведения итогов. Расходы будущих лет добавляют все свое значение в текущие активы. Дополнительные атрибуты show, actuate и title сообщают приложению, поддерживающему Xlink, как перемещаться по базе связей и что отображать в качестве заголовка (title) этого события:


<calculationArc
    xlink:type="arc"
    xlink:from="ci_currentAssets.prepaidExpenses"
    xlink:to="ci_assets.currentAssets"
    xlink:show="replace"
    xlink:actuate="onRequest"
    xlink:title="calculation: Go up to ci_assets.currentAssets"
    xlink:arcrole="http://www.xbrl.org/linkprops/arc/child-parent"
    weight="1"/>


Проверка состоятельности

В Рекомендации XBRL 2.0a также указывается, что задействованные приложения могут выполнять проверку состоятельности реального документа по базовой XBRL-схеме, хотя это требование не является обязательным. Необходимо предусмотреть проверку состоятельности реального документа по всем таксономиям, на которые он ссылается, в соответствии с правилами XML Schema.

Семантика таксономий

В Рекомендации XBRL 2.0a отмечается, что таксономии XBRL могут и должны быть расширяемыми, то есть должны обеспечивать возможность ссылаться на другие таксономии, что является ключевой функциональностью XBRL.

Вопросы целостности данных и их конфиденциальности

Спецификация XBRL 2.0a не содержит каких-либо рекомендаций по использованию методов безопасной передачи бизнес-информации. По мнению авторов рассматриваемого документа, вопросы целостности и конфиденциальности лежат вне сферы интересов языка XBRL, основная задача которого - передача действительного содержания в согласованном формате данных.

Автор: По материалам зарубежных сайтов