PROOF (Prototype)

Disclosure Mechanics Rules

Machine readable

Line Disclosure
1 Assets Roll Forward (disclosures:AssetsRollForward)

*

Rules for disclosure: disclosures:AssetsRollForward 
This disclosure:

   - MUST be represented as using the Hypercube: proof:CashFlowHypercube
   - MUST be represented as the Concept Arrangement Pattern: cm:RollForward
      - cm:RollForward REQUIRES balance/instant concept: proof:Assets
2 Assets Roll Up (disclosures:AssetsRollUp)

*

Rules for disclosure: disclosures:AssetsRollUp 
This disclosure:

   - MUST be represented as using the Hypercube: proof:BalanceSheetHypercube
   - MUST be represented as the Concept Arrangement Pattern: cm:RollUp
      - cm:RollUp REQUIRES total concept: proof:Assets
3 Balance Sheet (disclosures:BalanceSheet)

*

Rules for disclosure: disclosures:BalanceSheet 
This disclosure:

   - MUST be represented as using the Hypercube: proof:BalanceSheetHypercube
   - MUST be represented as the Concept Arrangement Pattern: cm:Component
      - cm:Component disclosure REQUIRES the subassembly disclosure (Block): disclosures:AssetsRollUp
      - cm:Component disclosure REQUIRES the subassembly disclosure (Block): disclosures:LiabilitiesAndEquityRollUp
4 Basis of Reporting (disclosures:BasisOfReporting)

*

Rules for disclosure: disclosures:BasisOfReporting 
This disclosure:

   - MUST be represented as using the Hypercube: proof:PoliciesHypercube
   - MUST be represented as the Concept Arrangement Pattern: cm:Level1TextBlock
   - MUST be represented as using the Level 3 Disclosure [Text Block]: proof:BasisOfReportingTextBlock
5 Cash Flow Statement (disclosures:CashFlowStatement)

*

Rules for disclosure: disclosures:CashFlowStatement 
This disclosure:

   - MUST be represented as using the Hypercube: proof:CashFlowHypercube
   - MUST be represented as the Concept Arrangement Pattern: cm:Component
      - cm:Component disclosure REQUIRES the subassembly disclosure (Block): disclosures:AssetsRollForward
      - cm:Component disclosure REQUIRES the subassembly disclosure (Block): disclosures:NetCashFlowRollUp
6 Changes in Equity (disclosures:ChangesInEquity)

*

Rules for disclosure: disclosures:ChangesInEquity 
This disclosure:

   - MUST be represented as using the Hypercube: proof:ChangesInEquityHypercube
   - MUST be represented as the Concept Arrangement Pattern: cm:RollForward
      - cm:RollForward REQUIRES balance/instant concept: proof:Equity
7 Comprehensive Income (disclosures:ComprehensiveIncome)

*

Rules for disclosure: disclosures:ComprehensiveIncome 
This disclosure:

   - MUST be represented as using the Hypercube: proof:ComprehensiveIncomeStatementHypercube
   - MUST be represented as the Concept Arrangement Pattern: cm:RollUp
      - cm:RollUp REQUIRES total concept: proof:ComprehensiveIncome
8 Financial Highlights (disclosures:FinancialHighlights)

*

Rules for disclosure: disclosures:FinancialHighlights 
This disclosure:

   - MUST be represented as using the Hypercube: proof:FinancialHighlightsHypercube
   - MUST be represented as the Concept Arrangement Pattern: cm:Hierarchy
      - cm:Hierarchy REQUIRES  concept: proof:Revenues
   - MUST contain the Level 4 Detailed concept: proof:ComprehensiveIncome
   - MUST contain the Level 4 Detailed concept: proof:DistributionsToOwners
9 Income Statement (disclosures:IncomeStatement)

*

Rules for disclosure: disclosures:IncomeStatement 
This disclosure:

   - MUST be represented as using the Hypercube: proof:ComprehensiveIncomeStatementHypercube
   - MUST be represented as the Concept Arrangement Pattern: cm:RollUp
      - cm:RollUp REQUIRES total concept: proof:NetIncome
10 Income Statement Alternative (disclosures:IncomeStatementAlternative)

*

Rules for disclosure: disclosures:IncomeStatementAlternative 
This disclosure:

   - MUST be represented as using the Hypercube: proof:ComprehensiveIncomeStatementHypercube
   - MUST be represented as the Concept Arrangement Pattern: cm:RollUp
      - cm:RollUp REQUIRES total concept: proof:NetIncome
   - MUST contain the Level 4 Detailed concept: proof:IncomeFromNormalActivitiesOfEntity
   - MUST contain the Level 4 Detailed concept: proof:IncomeFromPeripheralOrIncidentalTransactionsOfEntity
11 Liabilities and Equity Roll Up (disclosures:LiabilitiesAndEquityRollUp)

*

Rules for disclosure: disclosures:LiabilitiesAndEquityRollUp 
This disclosure:

   - MUST be represented as using the Hypercube: proof:BalanceSheetHypercube
   - MUST be represented as the Concept Arrangement Pattern: cm:RollUp
      - cm:RollUp REQUIRES total concept: proof:LiabilitiesAndEquity
12 Nature of Operations (disclosures:NatureOfOperations)

*

Rules for disclosure: disclosures:NatureOfOperations 
This disclosure:

   - MUST be represented as using the Hypercube: proof:PoliciesHypercube
   - MUST be represented as the Concept Arrangement Pattern: cm:Level1TextBlock
   - MUST be represented as using the Level 3 Disclosure [Text Block]: proof:NatureOfOperationsTextBlock
13 Net Assets Roll Up (disclosures:NetAssetsRollUp)

*

Rules for disclosure: disclosures:NetAssetsRollUp 
This disclosure:

   - MUST be represented as using the Hypercube: proof:NetAssetsHypercube
   - MUST be represented as the Concept Arrangement Pattern: cm:RollUp
      - cm:RollUp REQUIRES total concept: proof:NetAssets
14 Net Cash Flow Roll Up (disclosures:NetCashFlowRollUp)

*

Rules for disclosure: disclosures:NetCashFlowRollUp 
This disclosure:

   - MUST be represented as using the Hypercube: proof:CashFlowHypercube
   - MUST be represented as the Concept Arrangement Pattern: cm:RollUp
      - cm:RollUp REQUIRES total concept: proof:NetCashFlow
15 Prior Period Error (disclosures:PriorPeriodError)

*

Rules for disclosure: disclosures:PriorPeriodError 
This disclosure:

   - MUST be represented as using the Hypercube: proof:PriorPeriodErrorsHypercube
   - MUST include the Axis/Dimension: proof:ReportDateAxis
   - MUST be represented as the Concept Arrangement Pattern: cm:Adjustment
      - cm:Adjustment REQUIRES origionaly stated/restated concept: proof:Equity
16 Prior Period Error Alternative (disclosures:PriorPeriodErrorAlternative)

*

Rules for disclosure: disclosures:PriorPeriodErrorAlternative 
This disclosure:

   - MUST be represented as using the Hypercube: proof:PriorPeriodErrorsHypercube
   - MUST include the Axis/Dimension: proof:RestatementAxis
   - MUST be represented as the Concept Arrangement Pattern: cm:Hierarchy
      - cm:Hierarchy REQUIRES  concept: proof:Equity
17 Revenue Recognition Policy (disclosures:RevenueRecognitionPolicy)

*

Rules for disclosure: disclosures:RevenueRecognitionPolicy 
This disclosure:

   - MUST be represented as using the Hypercube: proof:PoliciesHypercube
   - MUST be represented as the Concept Arrangement Pattern: cm:Level1TextBlock
   - MUST be represented as using the Level 3 Disclosure [Text Block]: proof:RevenueRecognitionPolicyTextBlock
18 Segment Revenues (disclosures:SegmentRevenues)

*

Rules for disclosure: disclosures:SegmentRevenues 
This disclosure:

   - MUST be represented as using the Hypercube: proof:SegmentRevenuesHypercube
   - MUST include the Axis/Dimension: proof:SegmentsAxis
   - MUST be represented as the Concept Arrangement Pattern: cm:Hierarchy
      - cm:Hierarchy REQUIRES  concept: proof:Revenues
19 Stock Plan Activity (disclosures:StockPlanActivity)

*

Rules for disclosure: disclosures:StockPlanActivity 
This disclosure:

   - MUST be represented as using the Hypercube: proof:WeightedAverageGrantDateFairValueHypercube
   - MUST be represented as the Concept Arrangement Pattern: cm:RollForwardInfo
      - cm:RollForwardInfo REQUIRES total/balance/restated concept: proof:NonvestedFairValue
20 Variance Analysis (disclosures:VarianceAnalysis)

*

Rules for disclosure: disclosures:VarianceAnalysis 
This disclosure:

   - MUST be represented as using the Hypercube: proof:VarianceAnalysisHypercube
   - MUST include the Axis/Dimension: proof:ScenarioAxis
   - MUST be represented as the Concept Arrangement Pattern: cm:RollUp
      - cm:RollUp REQUIRES total concept: proof:NetIncome

Last updated: 4/15/2021 3:27:15 PM