Skip to content

@davidtauriello davidtauriello released this Feb 28, 2019 · 4 commits to master since this release

Approved in February, 2019, two new rules in this release support Negative Values with IFRS Taxonomies and Extension Members for IFRS and US GAAP Taxonomies. Learn more about these rules and others maintained in this release from prior versions at https://xbrl.us/rules-guidance.

Change logs and test results:

To use DQC Rules with Arelle's graphic interface (GUI):

  1. Download and extract the source code .zip or tar.gz archive of this release to your local computer.

  2. Remove prior DQC Rules plugin installations. Version 8 includes new functionality, so any prior version of DQC rules / xule should be removed. To do this, start Arelle, Go to Help->Manage Plugins menu. Select the existing xule (DQC) plugin and click on remove.

  3. Copy files into Arelle’s plugin dirctory. The plugin folder in the DQC release follows the plugin folder structure in Arelle. The DQC.py file from the plugin\validate subfolder should be dropped in the corresponding folder in the Arelle install. Likewise, the xule folder and files should replace the plugin\xule folder and files in the Arelle install.

  4. Initialize the DQC plugin. After the files are copied from the release archive into the Arelle folder structure on the local computer, start Arelle and go to the Help->Manage Plugins menu. Click on the "Select" button, choose "DQC.py" from the list and then click "OK" and "Close". NOTE: It is not necessary to to select the "xule" plugin - the DQC.py plugin imports the xule files automatically.

  5. Set the plugin to validate filings. After Arelle (re)starts, check that there is a check mark next to the DQC option under the Tools->Validate menu. If the DQC is not selected, click on the option to select it and it is now ready to run DQC checks when a filing is opened in Arelle. The current build is 3.0.2273 (this detail is found under the Tools->DQC->Version... menu)

  6. Use the Tools->DQC menu to update the Ruleset Map to the current version or manage changes to a customized Ruleset Map in the existing environment. See the README and Usage pages for more details and options.

To use DQC Rules from the command line:

Use --plugin validate/DQC on the command line. See Using DQC Rules with Arelle - from a command prompt for complete details.

Ruleset Map Options

About the DQC Rules Plugin

The DQC rules are run using an Arelle plugin written in an XBRL rule syntax called Xule. Xule is processed in a plugin for the SEC's EDGAR Renderer/Previewer - Arelle on a local computer or server. The DQC plugin reads a specified ruleset and the assertions defined in the ruleset are evaluated against an XBRL instance, a taxonomy or an extension taxonomy, creating validation messages.

The test archive is attached to the release and also embedded in the release in the tests directory. The readme.md outlines the testing process.

Assets 2

@davidtauriello davidtauriello released this Feb 28, 2019 · 7 commits to master since this release

Change logs and test results:

Assets 3

@davidtauriello davidtauriello released this Feb 13, 2019 · 74 commits to master since this release

The new and revised rules in this release support Revenue Guidance and Dimensional Modeling Guidance for Legal Entities and Consolidation.

See Version 7.1 Update or Version 7 Summary below.

Release change logs:

To use DQC Rules with Arelle's GUI:

For the Arelle GUI:

  1. If a version prior to v7.1.2 is already installed, it must be removed. To do this. start Arelle, Go to Help->Manage Plugins menu. Select the existing xule (DQC) plugin and click on remove.

  2. This structure mimics the plugin structure in Arelle. The DQC.py should be dropped in the corresponding folder in the arelle install in plugin->validate. Likewise, the xule plugin files/folder should replace the plugin->xule folder in the arelle install.

  3. After the files are copied, start Arelle and go to the Help->Manage Plugins menu. Click on "Select" and select the "DQC.py" file. Click OK and then click on "Close". Arelle will restart. You do not need to select the "xule" plugin. The DQC.py plugin imports it automatically.

  4. When validating, make sure the DQC is selected under the Tools->Validate menu.

For running on the command line:

Use --plugin validate/DQC on the command line NOT --plugin xule from previous versions. See Using DQC Rules with Arelle - from a command prompt for complete details.

The DQC rules are run using an Arelle plugin written in an XBRL rule syntax called Xule. Xule is processed in a plugin for the SEC's EDGAR Renderer/Previewer - Arelle on a local computer or server. The DQC plugin reads a specified ruleset and the assertions defined in the ruleset are evaluated against an XBRL instance, a taxonomy or an extension taxonomy, creating validation messages.

The test archive is attached to the release and also embedded in the release in the tests directory with Travis CI results results.

DQC Rule Updates in Version 7.1

  1. Update rule DQC.US.0067 to allow for more 440 exception items specifically the following:

    1. IncreaseDecreaseInDeferredRevenue
    2. DeferredRevenueAdditions
    3. DeferredRevenueRevenueRecognized1
    4. DeferredRevenueRefundPayments1
    5. DeferredRevenuePeriodIncreaseDecrease
    6. DeferredRevenueByArrangementDisclosureTextBlock
  2. Updated rule DQC.US.0070 to support the disclosure of plan assets across separate roles. The current implementation of the rule assumes that the plan assets disclosure is in a single role.

  3. Updated rule DQC.US.0071 to ignore facts that use the InitialApplicationPeriodCumulativeEffectTransitionAxis. This axis can break up changes by product and will not appear on the income statement. If revenue is broken down by product and revenue recognition adjustments by product, then the table may only show a single product line as that was the only product that an adjustment applied to. In this case the rule would produce an inaccurate error. The rule was updated to ignore any tables that include the axis InitialApplicationPeriodCumulativeEffectTransitionAxis.

  4. Updated rule DQC.US.0076 to only require alignment of the satisfaction Date axis with the obligation value. This value does not have to have matching dimensions between the values for RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1 and RevenueRemainingPerformanceObligation or RevenueRemainingPerformanceObligationPercentage

    For example: In some cases a filer may report the obligation or percentage value with a maximum member or a minimum member using the range axis. The way the rule was previously written required that the satisfaction period element would also need to be tagged twice using the minimum member and maximum member. The rule now allows the obligation and the satisfaction period of that obligation to have different dimensional qualifications.

    The rule was also updated for 2018 to not require period alignment. The satisfaction period context date no longer has to match the context date of the reported data.

Go to the top of this page

New DQC Rules in Version 7

  • DQC_0067- Mutually Exclusive Elements This rule identifies if elements associated with the new revenue recognition standards are used in conjunction with elements from the previous revenue recognition standard.

  • DQC_0068 - Geographical Axis Used with Pension Line Items This rule identifies those cases where the filer has reported the StatementGeographicalAxis in conjunction with a line item in the Compensation Related Costs and Retirement Benefits section of the taxonomy.

  • DQC_0069 - Plan Asset Categories Component Members This rule identifies those cases where the following elements have not been tagged with appropriate members and values and checks that they are tagged appropriately based on FASB guidance. These two elements must be used in conjunction with the axis DefinedBenefitPlanByPlanAssetCategoriesAxis.

    • DefinedBenefitPlanPlanAssetsInvestmentWithinPlanAssetCategoryAmount
    • DefinedBenefitPlanAmountOfEmployerAndRelatedPartySecuritiesIncludedInPlanAssets
  • DQC_0070 - Plan Asset Dimensional Aggregation This rule aggregates the values of the Plan Asset categories on the DefinedBenefitPlanByPlanAssetCategoriesAxis. The rule aggregates the values of the members and compares the total to the reported total for the default value of the axis.

  • DQC_0071 - Revenue/Cost Single Member This rule identifies if the revenue/cost elements RevenueFromContractWithCustomerIncludingAssessedTax, RevenueFromContractWithCustomerExcludingAssessedTax and CostOfGoodsAndServicesSold have been used with the ProductOrServiceAxis for only one product or service represented by a single member on the product or service axis.

  • DQC_0072 - Plan Asset Categories Percentage This rule identifies those cases where the element DefinedBenefitPlanPlanAssetsInvestmentWithinPlanAssetCategoryPercentage has not been tagged with appropriate members based on FASB guidance. This element must be used in conjunction with the axis DefinedBenefitPlanByPlanAssetCategoriesAxis.

  • DQC_0073 - Plan Asset Categories Permissible Line Items This rule identifies when inappropriate line items are used with the Plan Asset Categories Axis.

  • DQC_0074 - Nil Values on Typed Axis This rule identifies when a nil value has been used inappropriately on the following typed axis. RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis

  • DQC_0076 - Performance Obligations With No Durations This rule is intended to ensure that filers follow the guidance defined in the Revenue recognition implementation guide published by the FASB. The rule identifies those cases where the duration over which the performance obligation will be captured is not reported. If either of the following two elements are reported with a value:

    1. RevenueRemainingPerformanceObligationPercentage or
    2. RevenueRemainingPerformanceObligation

    with RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis then the satisfaction period elements must have associated duration values.

  • DQC_077 - Satisfaction Period With No Satisfaction Start Date Axis This rule checks if the satisfaction period elements have been used with RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.

  • DQC_0078 - Ownership Interest With No Ownership Axis This rule identifies those cases where the ownership interest elements are not used with the ownership axis. This rule is intended to ensure that filers follow the implementation guidance defined in the Dimensional Modeling for Disclosures of Consolidated and Nonconsolidated Entities guide published by the FASB.

Updates to Existing DQC Rules

  • DQC_0001 - Axis with Inappropriate Members

    • Add PreferredUnitsByNameAxis DQC.US.0001.77
    • Add RetirementPlanNameAxis DQC.US.0001.78
    • Add OwnershipAxis DQC.US.0001.79
    • Add MajorCustomersAxis DQC.US.0001.80
    • Add Note 3 - Allowable US-GAAP members on the ProductOrServiceAxis
      • RealEstateMember
      • HotelMember
  • DQC_0011 - Dimensional Equivalents Change weight of the following element to from 1 to -1 AccumulatedOtherComprehensiveIncomeLossDefinedBenefitPensionAndOtherPostretirementPlansNetOfTax

  • DQC_0014 - Negative Values With No Dimensions Added the following elements to the rule

    • FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3
    • RevenueFromContractWithCustomerIncludingAssessedTax
    • RevenueFromContractWithCustomerExcludingAssessedTax
  • DQC_0015 - Negative Values Added the following elements to the rule

    • EarningsPerShareBasicDistributed
  • DQC_0015 - Negative Values Removed the following elements to the rule

    • LongtermDebtWeightedAverageInterestRate
    • DebtWeightedAverageInterestRate
    • LongTermDebtWeightedAverageInterestRateOverTime
    • ShortTermDebtWeightedAverageInterestRateOverTime
    • EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount

Additional code changes

  • Updates to Xule Processor files to support DQC Rules for Version 7
  • Updates to test case files and scripts to support DQC Rules for Version 7

Go to the top of this page

Assets 3

@davidtauriello davidtauriello released this Feb 9, 2019 · 335 commits to master since this release

Release change logs:

The test archive is attached to the release and also embedded in the release in the tests directory with Travis CI results results.

Assets 3
Feb 8, 2019
Update v8 align/refactor/standardize (#379)
* Update lower case issue for IFRS 80

* Updated zip files to fix nonneg problem identified by Shelly

* Updated Release 8 rules for IFRS Changes

Centralized functions for IFRS in a central functions library to eliminate duplication

Updated test case for Aruco

Updated resource files to point to version 8

Recomplied rule files

Refactored functions to eliminate any constants from the functions.

Aligned functions with US rule functions.

* Refactored Rules to remove duplicate functions across all rules

Updated functions to a shared library
Refactored functions to be consistent across all rule sets
Removed any constants in a function
Created a central version constant called version.xule

* Recompiled IFRS files

* Updated rule 67 to sort list of elements in 606

ALso ensures that will not remove unique facts.

* Delete vsm-2018.xml

* Updated to support proposed rules

* Updated ford for rule 67 change and removed accidental run.

* Fixed Typo in message for Rule DQC.US.0001.70

* Updated V8 zip files

* Update DQC.US.0001.70_glla-2017.xml
Feb 5, 2019
Update DQC_0067.xule

@davidtauriello davidtauriello released this Feb 5, 2019 · 336 commits to master since this release

The test archive is attached to the release and also embedded in the release in the tests directory with Travis CI results results.

Release change logs:

Assets 3
Dec 19, 2018
Merge branch 'davidtauriello-v8' into v8
Pre-release

@davidtauriello davidtauriello released this Dec 18, 2018 · 347 commits to v8 since this release

Release change logs:

Assets 3

@davidtauriello davidtauriello released this Nov 14, 2018 · 362 commits to master since this release

Effective with RC7 of this version, the test archive is embedded in the release under in the tests directory with Travis CI results results.

Release change logs:

Assets 3
You can’t perform that action at this time.