XBRL Calculation Linkbase

From Open Risk Manual

Definition

This XBRL Calculation Linkbase (also formula linkbase) associates concepts with other concepts so that values appearing in an instance document may be checked for consistency (validated).

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.

Major Rules

There are two major rules concerning calculation relations in XBRL:

  • Firstly, it is not allowed to 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 of instant type: which means that their value is presented for a specified day, while elements in the Income Statement or Statement of Cash Flows are of duration type. They represent actions that took place over a period of time. A problem emerges 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.