Rule ID: DQC_0117 for US GAAP - approved September 29, 2021.
Latest update: February 23, 2022. - see Rule element ID index for details.
View: as part of approved release v17.0.0 || public exposure version & comments.


Rule function

This rule identifies inconsistent calculations defined for the Financial Statements. The rule covers the Cash Flow Statement, Statement of Financial Position and the Income Statement. The rule does not apply to the Statement of Changes in Shareholders Equity.

The rule only applies to those financial statements that are defined using a hypercube.

The rule evaluates if the dimensional values reported in the financial statements are equal to the reported sum of these dimensional values. Both the dimensional values and the aggregate value need to be reported in the financial statement.

The rule checks a limited amount of axes. The axis aggregations checked by the rule are as follows:

  • StatementClassOfStockAxis
  • ProductOrServiceAxis’
  • PropertyPlantAndEquipmentByTypeAxis
  • LongtermDebtTypeAxis
  • RelatedPartyTransactionsByRelatedPartyAxis
  • StatementBusinessSegmentsAxis
  • FinancialInstrumentAxis
  • LimitedPartnersCapitalAccountByClassAxis
  • PartnerTypeOfPartnersCapitalAccountAxis
  • FiniteLivedIntangibleAssetsByMajorClassAxis
  • InformationByCategoryOfDebtSecurityAxis

The rule identifies the financial statement hypercube. The rule then identifies the dimensions associated with the hypercube. If any of the dimensions match the ones listed above the rule then identifies the members on the axis. If none of these dimensions are used the rule does not run.

If there are no members on the dimension the rule stops. If there are members on the axis the rule identifies the members and checks if they are nested. If the members are nested the rule identifies the values associated with the members at the highest level in the hierarchy.

The rule takes the monetary values for each of these members for each line item used and calculates a total, it then compares this value to the default value for the line item if one is provided in the table.

The rule will only run for durations that match the report duration. For example the rule will not run for quarterly values in an annual filing. For a 3rd quarter filing the rule will only run on periods representing 3 quarters. For instant values the rule will run for all periods of the balance sheet.

Exceptions
The FASB has issued guidance at https://www.fasb.org/revenue_2020 which allows certain exceptions to this rule. The rule will not fire given the following conditions:

  1. The filing uses the elements RevenueFromContractWithCustomerExcludingAssessedTax or RevenueFromContractWithCustomerIncludingAssessedTax with the ProductOrServiceAxis.
  2. The presentation includes the element NoninterestIncome
  3. The reported value of Revenue Excluding Tax or Including Tax is greater than the sum of the members for this element.
  4. If all these conditions are met the rule will not fire for the elements RevenueFromContractWithCustomerExcludingAssessedTax or RevenueFromContractWithCustomerIncludingAssessedTax.

A second exception condition to address the FASB guidance is as follows:

  1. The filing uses the elements RevenueFromContractWithCustomerExcludingAssessedTax or RevenueFromContractWithCustomerIncludingAssessedTax with the ProductOrServiceAxis.
  2. Revenue Excluding Tax or Including Tax is greater than the sum of the members for this element.
  3. The presentation for the income statement includes the element Revenues
  4. The calculation represented for Revenues includes Revenue Excluding Tax or Including Tax and at least one other element.
  5. If all these conditions are met the the rule will not fire for the elements RevenueFromContractWithCustomerExcludingAssessedTax or RevenueFromContractWithCustomerIncludingAssessedTax.

Problem solved by the rule

The intent of the rule is to check that the filer has calculated cross dimensional values correctly. Errors will typically occur for the following reasons:

Incomplete Breakdown

The company provides an incomplete breakdown of an element. For example the company provides a breakdown of the Revenues element using the Product or Service Dimension with product A and product B. The breakdown uses the element Revenues with the product member A, but uses another revenue element such as RevenueFromContractWithCustomerExcludingAssessedTax with the product member B. If the dimension members for Revenues are added (Only product A) the value will be less as it does not include the values in RevenueFromContractWithCustomerExcludingAssessedTax with product B. To report this correctly the value reported with product member A should use the element RevenueNotFromContractWithCustomer and not the element Revenues. This eliminates the inconsistent breakdown of Revenues.

Double Counting Dimensional and Default Values

The company reports the default value on one line item and a dimensionalized value of that same element on another line item comprising a common total. This often happens for cash flow items where the presentation shows the two reported items with the same element (One value with no dimensions and one with a dimension) adding into total cash flow adjustments. From a data perspective the dimensionalized value is really a sub component of the default value. These two values should not be added together as one is a subset of the other. To correct this the default value should be updated by adding a dimension which is a converse of the value reported with a dimension, or using a different line item for the dimensionalized value.

Dimensional Bleedthrough

The Financial Statements include an axis that is not used on the financial statements but is included in the table. No dimensions should be included in the financial statement table that are not used. These can bring facts into the face of financials that were not reported there in the original filing. Filers can review the SEC renderer to see facts that are included in the financial statements, because of dimensions and bleed through from other statements.

Example rule message

In the statement 000002 – Statement – CONDENSED CONSOLIDATED BALANCE SHEETS the concept us-gaap:PreferredStockValue with a value of 0 is not equal to the dimensional breakdown of 21,616 which is comprised of the members:
SerieBConvertiblePreferredStockMember –> 5,616 –> us-gaap:StatementClassOfStockAxis=bicx:SerieBConvertiblePreferredStockMember
SerieAConvertiblePreferredStockMember –> 16,000 –> us-gaap:StatementClassOfStockAxis=bicx:SerieAConvertiblePreferredStockMember

On the face financial statements it is expected that values reported are dimensionally complete for a given line item. If you added up the values of the dimensions the resulting sum should represent the actual aggregate value. This rule takes the dimensional values of an axis reported on the face financial statements and adds them up and compares them to the actual aggregate value reported anywhere in the filing. If they are different the rule reports an error.

The properties of this us-gaap:PreferredStockValue fact are:
Period: 2020-12-31
Unit: USD
Dimensions:

Rule Element ID: 9574
Rule version: 16.0.0RC1

For Developers

The Global Rule Logic document contains general guidelines for implementation of rules.

The rule message template contains text and parametric reference to arguments of the rule operation, using the syntax ${parameter} to indicate that insertion of a parameter’s value is to occur.

Message template

In the statement {$drs_role[1].description} the concept {$TotalDefault.name} with a value of {$TotalDefault} is not equal to the dimensional breakdown of {$member_sums} which is comprised of the members:
{$member_string}

On the face financial statements it is expected that values reported are dimensionally complete for a given line item. If you added up the values of the dimensions the resulting sum should represent the actual aggregate value. This rule takes the dimensional values of an axis reported on the face financial statements and adds them up and compares them to the actual aggregate value reported anywhere in the filing. If they are different the rule reports an error.

{$additional_message}

The properties of this {$TotalDefault.concept.name} fact are:
Period: {$TotalDefault.period}
Unit: {$TotalDefault.unit}
Dimensions: {$TotalDefault.dimensions.join(', ','=')}
Rule Element ID: {$rule_id}
Rule version: {$ruleVersion}

The following additional messages are added depending on the exception conditions:

For exception 1, where the members are greater than the total is as follows:
The value of the dimensions is greater than the default. In the cases of banks reporting non interest income the value of the revenue default should be at least greater than the dimensionalized values.

For exception 1, where the NoninterestIncome element is not used :
When breaking down 606 revenue using the product or service axis and the total does not aggregate, then the element NoninterestIncome income should be used as the total to comply with the FASB guidance for breaking down 606 revenue. To correct this error ensure that the element NoninterestIncome is included in the presentation and definition linkbases.

For exception 2, where there is not additional revenue items:
The calculation breakdown of Revenues should include both Revenue From Contract With Customers and at least one additional revenue item that includes both 606 and non 606 income, if the sum of Revenue From Contract With Customers breakdown is not equal to the aggregated value of the dimension members on the ProductOrServiceAxis. Either add a calculation breakdown of Revenues or represent all the 606 revenue as members.

Rule element ID index

The rule element id is used to identify unique elements or combinations of elements tested in the rule.

Rule Element ID Elements
DQC.US.0117.9574 Various

View: as part of approved release v17.0.0 || public exposure version & comments.