Rule ID: DQC_0004 for US GAAP - approved November 18, 2015.
Latest update: July 15, 2019. - see Rule element ID index for details.
View: as part of approved release v9.0.0 || public exposure version & comments.


Rule function

Appendix
See table below for updates effective September 30, 2019.

This rule tests that the values reported between element relationships that are identified as an accounting constant are consistent within the filing. For example Assets equals Liability and Equity. The rule checks that the components of the calculation are present before checking the calculation. In some cases the components may not be present but their children are. In these cases the value can be derived by adding values across a dimension. The rule executes across all dimensions defined in the filing. If Assets Liabilities and Equity are defined for three separate legal entities the rule will check all three legal entities.The table below lists the defined calculations and the components that must be present for the rule to run. If a component is not required and the value is not present it is treated as having a value of zero.

In evaluating equivalents the values are assessed based on the lowest decimal value. For example, if a value of 3 million with decimals of -6 is compared to a value of 3,100,000 with decimals of -5 then the values will be considered to be equivalent as both values will be rounded to a million (decimals of -6).

Problem solved by the rule

The rule identifies the following issues in a filing

  • Values have been entered correctly
  • The correct element has been used to report a value
  • The calculation relationship has been defined correctly in the filing.

These issues are a problem for consumption because the data will be extracted incorrectly for analysis.

Example rule message1

Assets with a value of 340,000,000 is not equal to the total of Liabilities and Equity with a value of 350,000,000. These values should be equal.

The properties of this us-gaap:Assets fact are:

Period: 2014-12-31
Dimensions: none
Unit: USD
Rule version: 1.0

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

${fact1.label} with a value of ${fact1.value} is not equal to the total of ${fact2.label} with a value of ${fact2.value}. These values should be equal.

The properties of this ${fact1.name} fact are:

Period :${fact1.period}
Dimensions : ${fact1.dimensions}
Unit : ${fact1.unit}
Rule Version : ${ruleVersion}

Rule element ID index

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

The required facts column indicates that the facts for these concepts must exist in the filing for the rule to execute. If a component of the equation is missing and the concept is required the rule will not execute. If a concept is not required and is missing it will be treated as if it has a value of zero.

  • LiabilitiesAndStockholdersEquity
  • StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
  • Liabilities
  • TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests
Rule ID Relationship Required Facts
16 Assets = LiabilitiesAndStockholdersEquity

Tolerance = 2

  • Assets
  • LiabilitiesAndStockholdersEquity
Rules listed below are effective with filings as of September 30, 2019.
9280 Assets = AssetsCurrent + AssetsNoncurrent

Tolerance = 2

  • Assets
  • AssetsCurrent
  • AssetsNoncurrent
9281 Liabilities = LiabilitiesCurrent + LiabilitiesNoncurrent

Tolerance = 2

  • Liabilities
  • LiabilitiesCurrent
  • LiabilitiesNoncurrent
9282 StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest = StockholdersEquity + MinorityInterest

Tolerance = 2

  • StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
  • StockholdersEquity
  • MinorityInterest
This rule does not run when the consolidation item axis is used on the facts used in the equation. This is because items often classified as liabilities are eliminated through the equity section in a consolidated schedule.
9283 LiabilitiesAndStockholdersEquity = StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest + Liabilities + TemporaryEquityCarryingAmountIncludingPortionAttributableToNoncontrollingInterests

Tolerance = 2

If StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest is not available in the default then the following logic applies to derive a value:

  1. StockholdersEquity + MinorityInterest (Stockholders equity must be present)If Liabilities is not available in the default then the following logic applies to derive a value:
    1. LiabilitiesCurrent + LiabilitiesNoncurrent (Both must be present for rule to run)
9284 ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest = ProfitLoss + OtherComprehensiveIncomeLossNetOfTax

Tolerance = 2

  • ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
  • ProfitLoss
  • OtherComprehensiveIncomeLossNetOfTax
9285 ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest = ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest + ComprehensiveIncomeNetOfTax

Tolerance = 2

  • ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
  • ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
  • ComprehensiveIncomeNetOfTax
9286 CashCashEquivalentsRestrictedCashAndRestricted
CashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect or
CashAndCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect = NetCashProvidedByUsedInOperatingActivities + NetCashProvidedByUsedInInvestingActivities + NetCashProvidedByUsedInFinancingActivitiesTolerance = 2
  • CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect
  • CashAndCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect
  • NetCashProvidedByUsedInOperatingActivities
  • NetCashProvidedByUsedInInvestingActivities
  • NetCashProvidedByUsedInFinancingActivities
9287 NetCashProvidedByUsedInFinancingActivities = NetCashProvidedByUsedInFinancingActivitiesContinuingOperations + CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations

Tolerance = 2

  • NetCashProvidedByUsedInFinancingActivities
  • NetCashProvidedByUsedInFinancingActivitiesContinuingOperations
  • CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations
9288 NetCashProvidedByUsedInInvestingActivities = NetCashProvidedByUsedInInvestingActivitiesContinuingOperations + CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations

Tolerance = 2

  • NetCashProvidedByUsedInInvestingActivities
  • NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
  • CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
9289 NetCashProvidedByUsedInOperatingActivities = NetCashProvidedByUsedInOperatingActivitiesContinuingOperations + CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations

Tolerance = 2

  • NetCashProvidedByUsedInOperatingActivities
  • NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
  • CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
9290 NetCashProvidedByUsedInDiscontinuedOperations = CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations + CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations + CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations

Tolerance = 2

  • NetCashProvidedByUsedInDiscontinuedOperations
  • CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
  • CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations
  • CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations
9291 NetCashProvidedByUsedInContinuingOperations = NetCashProvidedByUsedInOperatingActivitiesContinuingOperations + NetCashProvidedByUsedInFinancingActivitiesContinuingOperations + NetCashProvidedByUsedInInvestingActivitiesContinuingOperations

Tolerance = 2

  • NetCashProvidedByUsedInContinuingOperations
  • NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
  • NetCashProvidedByUsedInInvestingActivitiesContinuingOperations
  • NetCashProvidedByUsedInFinancingActivitiesContinuingOperations

1Presentation style of rule messages may differ among software implementations of the rules.


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