Recognizing Three XBRL Taxonomy Creation Approaches
When you want to represent a reporting scheme within an XBRL taxonomy; I am recognizing that there are three XBRL taxonomy creation approaches. I have documented the three approaches in this PDF. The following is an explanation of the essence of each of the three approaches:
- Top-Down XBRL Taxonomy Creation Approach: You start by listing all the topics of a reporting scheme; you then list each of the possible disclosures for each of those topics; you create the networks into which each disclosure will be placed in the XBRL taxonomy; you create the report elements that will be used to represent the disclosures; you create the rules used to explain and verify against the explanation for each disclosure; you create a template to test each of the disclosures; and you finally create a reference implementation which combines all of the templates to test to be sure the disclosures interact with one another appropriately and that there are no inconsistencies or contradictions.
- Bottom-up XBRL Taxonomy Creation Approach: You start by creating the primitive report elements which will be used to create each disclosure; next you organize those report elements into individual disclosures; then you organize each of the disclosures into XBRL networks and topics to help you work with the many individual disclosures. Again, you test by creating a template for each individual disclosure and then you combine a set of templates which would be used together into a reference implementation to test the entire XBRL taxonomy.
- Iteration XBRL Taxonomy Creation Approach: You start by generally taking an existing XBRL taxonomy, templates, reference implementation, list of disclosures, list of topics, rules, etc., all of which are known to work correctly; you then modify that existing XBRL taxonomy by adding, deleting, or editing its pieces until you turn the existing XBRL taxonomy pieces into what it is that you want. (This might seem like a bit of an odd approach, but if you really think about this approach it actually makes a lot of sense.)
Note that when I say "XBRL Taxonomy" I am really talking about creating an ontology-like thing which is explained here using this open source framework.
Reader Comments