I have been talking about how accounting and reporting checklists can be automated for quite some time. Well, I believe that I have created the world's first machine-readable XBRL-based digital financial reporting checklist. (If anyone believes that my claim is wrong, please let me know. If it is not the world's first, it is likely the most complete.)
In fact, I believe that I have created a complete framework for representing financial reporting rules using the global standard XBRL format. I knew that attending all those XBRL Technical Specification meetings would pay off! To Walter Hamscher, David vun Kannon, Geoff Shuetrim who spent countless hours answering questions about what they were creating I say both thank you and here is evidence that shows that your creation works as intended.
Here is an overview of what I have created in both human-readable and machine-readable form: (this version has metadata relating to US GAAP, but creating this for IFRS or any other reporting scheme is as simple as removing US GAAP metadata and adding metadata for whatever reporting scheme you might want to use)
- Reporting checklist: This is a report-level checklist of business rules that explain the general reporting requirements. For example, rules like "a financial report MUST contain a balance sheet" and "if inventory is reported, then an inventory disclosure is required". Note that different report-level checklists can be created for different accounting activities of economic entities.
- Disclosure mechanics: This is the disclosure-level business rules. These rules describe how and can be used to verify that the pieces of a disclosure fit together.
- Fundamental accounting concept relations: The fundamental accounting concept relations and the related reporting styles describe the high-level relationships between concepts and can be used to verify that reports are created in a manner that conforms to those relations. These are basically continuity equations used to cross-verify information.
- Type or class relations: This is a report-level set of business rules which makes sure that concepts are used properly relative to other concepts. One example of these are whole-part relations for concepts that roll up relative to other concepts.
- Conceptual model: The conceptual model works at two levels. The first is the level of a business report and is shared by each reporting scheme. The second is the level of a reporting scheme and allows for description and validation metadata to be created for any specific reporting scheme.
- Model structure: Model structure rules enforce relations between Networks, Hypercubes/Tables, Dimensions/Axis, Members, Primary items/Line items, Concepts and Abstracts in the presentation relations. XBRL calculation relations and XBRL defninition relations are validated at the XBRL technical syntax level, however presentation relations are not.
There are other aspects to this, but it is unnecessary for business professionals to deal with them. The XBRL technical syntax is watched over by software, at least by good software. The XBRL conformance suite takes case of that. Good software hides the XBRL. The model structure is also dealt with at a lower-level. All these details are below the business report level; business professionals should never have to deal with them (if you are using the right software).
If you are struggling to get your head around all this, I would recommend that you read the blog post, Framework for Understanding Digital Financial Report Mechanics. All those PDFs contain information helpful in wrapping your head around why this is important and how to do this right.
I am not saying that I have this perfect, yet. I want to get the modularization correct. Testing the software that I am helping to create helps in this regard and helps to prove that this framework for digital financial reporting works as expected.