Difference between revisions of "XBRL"

From Open Risk Manual
Line 181: Line 181:
 
== References ==
 
== References ==
 
* [https://www.sec.gov/page/osd_xbrlglossary  SEC XBRL Glossary of Terms]
 
* [https://www.sec.gov/page/osd_xbrlglossary  SEC XBRL Glossary of Terms]
 +
* ESEF Reporting Manual, Preparation of Annual Financial Reports in Inline XBRL
 +
* [[wikipedia:xbrl Wikipedia]]
 +
  
 
[[Category:Risk Data]]
 
[[Category:Risk Data]]

Revision as of 10:17, 11 October 2021

Definition

XBRL (eXtensible Business Reporting Language) is an open standard for exchanging business information. XBRL provides a semantic framework to encode the information usually communicated in Business Reporting. Business data submitted as XBRL filings, that is, where information is annotated according to a predefined schema can be processed programmatically by computers. Extensibility is a very important aspect of the standard as the nature of business reporting requires is open ended. The XBRL Specification is developed and published by XBRL International.

Technology and Specifications

XBRL is primarily based on XML and associated technologies: XML Schema, XLink and XPoint. XML is a very general format, XBRL is actually a very constrained version.

  • The Base XBRL Specification is 2.1
  • The Inline XBRL Specification is 1.1


iXBRL (Inline XBRL) is a development of XBRL in which the XBRL metadata are embedded in an HTML document, e.g., a published report and accounts. It requires the HTML document to be well-formed but does not otherwise specify the required XML format. Typically, iXBRL is implemented within HTML documents, which are displayed or printed by web browsers without revealing the XBRL metadata inside the document. The specification does, however, provide a normative schema which requires that any schema-valid iXBRL document should be in XHTML format.

Terminology

  • An XBRL Instance (or XBRL File) contains the business facts being reported.
  • An instance along with a taxonomy forms a complete submission (report or filling).
  • An XBRL Taxonomy defines metadata about what the facts mean and how they related to each other. It is the analog of a class specification in OOP, whereas an instance is a concrete object conforming to that taxonomy. A taxonomy may include formulae and validation rules.
  • An Business Concept (also Business Element) is any abstract notion that describes an aspect of a business entity (e.g., an asset)
  • A Business Fact is a literal value that is tagged in a given XBRL Context: Minimally, a Fact is a concrete instance of a Business Concept (aspect). It concerns a concrete Business Entity, a given time point or Period and is expressed in a given Unit.
  • XBRL Context. Entity and report-specific information (reporting period, segment information, and so forth) required by XBRL that allows tagged data to be understood in relation to other information. More aspects can be created and provided along a fact to provide further context.
  • A Conformance suite is a set of tests
  • A processor is an application that can parse an instance.
  • An XBRL Document contains one or more XBRL Instances
  • Qname (Qualified Name) is the unique XML name of each accounting definition

XBRL Dimensions or Axes

An axis differentiates facts and each axis represents a way that the facts may be classified. For example, Revenue for a period might be reported along a business unit axis, a country axis, a product axis, and so forth. The base XBRL specification essentially defines three dimensions (axes):

  • reporting period
  • reporting entity (i.e.; a company or a division thereof), and
  • a reporting scenario


Additional dimensions can be developed using the Dimensions Module

Glossary

  • Abstract. An attribute of an element to indicate that the element is only used in a hierarchy to group related elements together. An abstract element cannot be used to tag data in an instance document
  • Attribute. A property of an element such as its name, balance, data type, and whether the element is abstract.
  • Balance. An attribute of a monetary item type designated as debit, credit, or neither; a designation, if any, should be the natural or most expected balance of the element - credit or debit - and thus indicates how calculation relationships involving the element may be assigned a weight attribute (-1 or +1)
  • Calculation relationships. Additive relationships between numeric items expressed as parent-child hierarchies
  • Axis Default Relationship. The dimensional relationship indicating that the table axis has a default domain member
  • Axis Domain Relationship. The dimensional relationship indicating that the table axis has members drawn from a domain
  • Decimal. Fact attribute used to express the number of decimal places to which numbers have been rounded
  • Domain. An element that represents an entire set of other elements; the domain and its members are used to classify facts along the axis of a table.

XBR Period

Determines the validity period of a busines fact

  • Instant Period (Time Point)
  • Duration Period (Time Interval)

XBRL Entity

It this the business entity that is reporting business facts. It need not be a Legal Entity. An XBRL instance does not have a legal scope.

XBRL Context

Contexts define the entity, e.g., company or individual, to which the fact applies, the period of time the fact is relevant, and an optional scenario. Date and time information appearing in the period element must conform to ISO 8601. Scenarios provide further contextual information about the facts, such as whether the business values reported are actual, projected, or budgeted.

XBRL Units

Units define the units used by numeric or fractional facts within the document, such as USD, shares. XBRL allows more complex units to be defined if necessary. Facts of a monetary nature must use a unit from the ISO 4217 namespace.

XBRL Footnotes

Footnotes use XLink to associate one or more facts with some content. References to XBRL taxonomies, typically through schema references. It is also possible to link directly to a linkbase.

XBRL Instance Structure

  • Business Item Facts
    • Items: facts holding a single value. Represented by a single XML element with the value as its content.
    • Tuples: facts holding multiple values. Represented by a single XML element containing nested Items or Tuples.

XBRL Datatypes

  • Monetary
  • Numerica
  • Fractional
  • Textual

XBRL Taxonomy

An XBRL Taxonomy is a collection of taxonomy schemas and linkbases.

Taxonomy Schema

A taxonomy schema is an XML schema document (file). The schema must ultimately extend the XBRL instance schema document and typically extend other published XBRL schemas on the xbrl.org website.

Taxonomy schemas define Item and Tuple "concepts" using <xsd:element> elements.

Concepts provide names for the fact and indicate whether or not it is a tuple or an item, the data type (such as monetary, numeric, fractional, or textual), and potentially more metadata.

Items and Tuples can be regarded as "implementations" of concepts, or specific instances of a concept. A good analogy for those familiar with object oriented programming would be that Concepts are the classes and Items and Tuples are Object instances of those classes. This is the source of the use of the "XBRL instance" terminology. In addition to defining concepts, taxonomy schemas reference linkbase documents. Tuples instances are 1..n relationships with their parents; their metadata is simply the collection of their attributes.

Linkbases

Linkbases are XML documents (file) which follow the XLink specification.

Linkbases are a collection of Links, which themselves are a collection of locators, arcs, and potentially resources.

Locators are elements that essentially reference a concept and provide an arbitrary label for it. In turn, arcs are elements indicating that a concept links to another concept by referencing the labels defined by the locators. Some arcs link concepts to other concepts. Other arcs link concepts to resources, the most common of which are human-readable labels for the concepts. The XBRL 2.1 specification defines five different kinds of linkbases.

  • Label Linkbase
  • Reference Linkbase
  • Calculation Linkbase
  • Definition Linkbase
  • Presentation Linkbase

Label Linkbase

This linkbase provides human readable strings for concepts. Using the label linkbase, multiple languages can be supported, as well as multiple strings within each language.

XBRL aims to become a worldwide standard for electronic business reporting. This requires taxonomies to present business data in many different languages. Therefore, it is important to be able to create an element that is assigned with labels for different languages.

There may also be different labels for different purposes. All labels are stored and linked to the elements in a label linkbase.

Elements defined in a schema are built to convey accounting meaning to computers. In order to make it easier for computers to process their names, they have to obey some rules. For example, the use of spaces is not allowed so 'Cash and Cash Equivalents' would be named 'CashAndCashEquivalents' .

Additionally, big taxonomies such as IFRS obey specific rules of naming and labelling to ensure consistency within the schema. For example, there could be a list of words that are excluded from the names, e.g., :and:, "of" ..., or words that appear only in a particular order (i.e., 'Net' or 'Total' at the end of the label after a comma). In the label linkbase, elements are connected to human readable labels using "concept-label" arcrole. As mentioned above, elements can be assigned to labels in different languages. An example that describes definitions of labels of the IFRS element AssetsTotal in English, German and Polish is provided below.

To distinguish between languages, XBRL uses the XML attribute lang. Taxonomy creators may also define different labels for one element. One of the ideas of XBRL is that the information about the period and currency for which the element is reported is not contained within an element definition but is described by a context in instance documents. In financial reporting on the other hand, many terms express the date for which they are being reported, for instance Property, Plant and Equipment at the beginning of year and Property, Plant and Equipment at the end of year. XBRL allows the creation of different labels depending on the context in which an element will be used.

Reference Linkbase

This linkbase associates concepts with citations of some body of authoritative literature.

Financial concepts appearing on business reports more often than not stem from regulatory documents issued by authorities. For example, the IFRS Taxonomy describes financial reports prepared based on IFRSs (Bound Volume).

Elements defined by this taxonomy refer to the specific terms and concepts explained in the standards. For this reason, a taxonomy is often provided with a reference linkbase that presents relationships between elements and external regulations or standards (the other solution is to enclose documentation in label linkbase). This helps instance creators and users understand the intended meaning of each element and provides support for its inclusion in the taxonomy.

The reference layer does not contain the full text of the regulations. Instead, it points to source documents by identifying their name and indicating the relevant paragraphs and clauses. This connection is created using "concept-reference" arcrole.

There are several types of references that could be provided for each element.

Calculation Linkbase

This linkbase associates concepts with other concepts so that values appearing in an instance document may be checked for consistency.

The idea of the calculation linkbase is to improve the quality of an XBRL report. It contains definitions of basic validation rules, which apply to all instance documents referring to a particular taxonomy. A hierarchical calculation linkbase sorts all monetary elements in this way so that lower level elements sum up to or are subtracted from one another so that the upper level concept is the result of these operations.

The sign of the relationship depends on the weight attribute that is assigned to the arc connecting two elements. An example is provided below.

There are two major rules concerning calculation relations in XBRL. Firstly, we cannot carry out operations on elements that have different values of the periodType attribute. This is often called the cross-context rule and relates to defining some elements as "For period" (duration) and others as "As of date" (instant). For example, concepts that appear on the Balance Sheet are instant: which means that their value is presented for a specified day, while elements in the Income Statement or Statement of Cash Flows are duration: because they represent actions that took place over a period of time. The problem emerges for example in the Statement of Changes in Equity or Movements in Property, Plant and Equipment where instant elements mix with duration. The solution to this problem is a formula linkbase that will provide taxonomy creators with many more functions than just simple addition or subtraction. Secondly, the double entry accounting rule requires XBRL taxonomy creators to define the credit/debit nature of monetary elements appearing in the Balance Sheets and Income Statements. This rule does not only disallow the addition of elements with opposite balance attributes—they must be subtracted—it also defines whether the numerical value contained within an element should be positive or negative.

Definition Linkbase

This linkbase associates concepts with other concepts using a variety of arc roles to express relations such as is-a, whole-part, etc. Arc roles can be created by those who create XBRL taxonomies or commonly used arc roles can be added to the XBRL Link Role Registry (LRR).

The definition linkbase provides taxonomy creators with the opportunity to define different kinds of relations between elements. There are four standard types of relationships supported by the definition linkbase.

The first one is referred to as general-special. It distinguishes between concepts that have more generic or more specific meaning. For example, ZIP code is the US representation of Postal Code which is used worldwide. Therefore, to indicate that connection, taxonomy creators define Postal Code as a general term to which there is more specialised concept ZIP code.

Second available relation type is essence-alias. By using it, taxonomy creators are able to indicate that two concepts have similar meaning. For example, some airlines may want to use the term Planes to describe their main component of their PPE while other would prefer Aircraft. To state that meaning of these two is the same and that they can be used interchangeably, taxonomy creators may connect them using "essence-alias" arcrole.

The third standard type of relation is called requires-element. As its name indicates, taxonomy builders use it to force instance creators to enter the value of one element, if they provide the content of another. For instance, a regulator may want to require disclosures on a particular component of Assets if it appears on the Balance Sheet. In order to achieve that, the definition linkbase defines "requires-element" relationship between them (for example, Property, Plant and Equipment, Net and Property, Plant and Equipment Disclosures).

The fourth relation is similar-tuples. It resembles "essence-alias" relation but is applied for tuples. It connects two tuples that are equivalents in terms of definition (documentation from label linkbase or reference in reference linkbase) but are diverse from XML perspective i.e., do not have identical content models, for example contain different elements. One of the reasons that this type of relation was introduced is the prohibition of schema redefinition which prevents changes in a tuple's content model.

Presentation Linkbase

This linkbase associates concepts with other concepts so that the resulting relations can guide the creation of a user interface, rendering, or visualization.

Business reports are in general prepared in the form of tables or statements or other structures. The presentation linkbase stores information about relationships between elements in order to properly organize the taxonomy content. This allows the elements to be arranged in a structure that is appropriate to represent the hierarchical relationships in particular business data.

These groupings can be performed in many ways. For example, a typical Balance Sheet contains Assets, Equity and Liabilities. Assets consist of Current Assets and Non-current Assets. Current Assets are split in Inventories, Receivables and so on. The presentation linkbase, using parent-child relations organizes elements in this way and helps users find concepts they are interested in.

The main drawback of a tree-like (hierarchical) structure in a presentation linkbase is that it only allows the presentation of flat lists of elements, while financial statements also contain more sophisticated reports such as Changes in Equity or Movements in Property, Plant and Equipment . The XBRL Consortium is currently working on rendering solutions that would provide for the automatic creation of such reports.

XBRL's Global Ledger Framework (XBRL GL) is the only set of taxonomies that is developed and recommended by XBRL International.

XBRL Modules

XBRL International has issued and reissued a stability pledge in relation to the core XBRL 2.1 specification. In addition to the core XBRL 2.1 specification, work continues on the development of XBRL modules that define new, compatible functionality.

  • XBRL Dimensions is Specification that enriches the rules and procedures for constructing dimensional taxonomies and instance documents. It supports the use of XBRL taxonomy linkbases to define additional, structured contextual information for business facts. Each piece of contextual information is referred to as a "dimension." The base XBRL specification essentially defines three dimensions: reporting period, reporting entity (i.e.; a company or a division thereof), and a loosely defined reporting scenario, originally intended to distinguish between actual vs. projected facts. Taxonomies using XBRL Dimensions can define new dimensions, specify the valid values ("domains") for dimensions, designate which dimensions apply to which business concepts through mechanisms called "hypercubes", and relate other taxonomy metadata (labels, presentation information, etc.) to dimensions.
  • XBRL Formula. The Formula Specification 1.0 supports the creation of expressions (using XPath) that can be applied to XBRL instances to validate its information or to calculate new XBRL facts in a new instance.
  • Inline XBRL The Inline XBRL Specification defines how XBRL metadata can be embedded within HTML or XHTML documents, so that data and associated rendering information can be encapsulated within a single document.
  • XBRL Versioning This specification enables creation of Versioning Report which can be used by the authors of XBRL taxonomies to provide documentation of the changes between two taxonomies. Many large taxonomies (such as the IFRS taxonomy) change every year.
  • XBRL Table Linkbase This module allows taxonomy authors to define tabular reporting templates. The Table Linkbase can be used for presentation of XBRL data, and also for data entry, by allowing software to present a template for completion by the user.

Extensibility

Besides the creation of additional modules, XBRL International supports several methods for continuing expansion of shared XBRL functionality.

  • Link Role Registry This registry, hosted at xbrl.org, collects link roles and arc roles to promote reuse across taxonomies.
  • Functions Registry This registry collects XPath functions for reuse in formula linkbases.
  • Transformation Rules Registry This registry collects common transforms used to convert human-readable data in Inline XBRL documents (e.g. "1st January 2016") into the formats required by XBRL ("2016-01-01").

Issues and Challenges

  • Collisions (multiple values for the same concept)

See Also

References