Comprehensive Example (2010-08-01)

(RSS Feed | Back to Index | Download all Files | Comprehensive Example Documentation)

Number Item Item Description
1. Visualization example Visualization of the use case, what the information would look like if traditionally rendered today. The intent is to make this look as much like a financial statement as possible, covering all key issues of financial reporting using XBRL.
2. Visualization example concept model, think 'pivot tables' Shows an idea, a prototype of the target. Look at item number 1, then look at this PDF. What if each of the sections of a financial report were a pivot table, much like an Excel pivot table? Think 'interactive data'. What if you could reconfigure the financial report information because the pieces were each pivot tables. What if you could reconfigure those financial report pivot tables just like you could an Excel pivot table? What if you could put multiple financial reports together in order to do a comparison, leveraging the fact that the information is within pivot tables? That is the idea.
3. Measure Relations (HTML) Visualization of the XBRL taxonomy. The first step in the task is to break the financial report down into its components. A financial report is lots of smaller pieces combined together. The pieces have a sequence or ordering. One piece relates to one or many other pieces. There are patterns in the information which can be leveraged.
4. Measure Relations (XML) Computer readable info set of the XBRL discoverable taxonomy set (DTS, basically all the XBRL taxonomies put together appropriately. This is uninteresting to humans, but very interesting to computer applications which can read the financial report taxonomy (3 above).
5. GAAP Taxonomy (XBRL) This is the "GAAP" taxonomy used to create the financial report. (Not intended to be IFRS or US GAAP specifically, this is a training hyprid to keep things simple). Who defines the information does matter. If each company were to define their own taxonomy, there would be less inate comparability between the financial reports. A common "GAAP" taxonomy used by each company enables comparability. Deciding what goes in the GAAP taxonomy and what goes into the COMPANY taxonomy is a decision of the domain.
6. Company Taxonomy (XBRL) This is the XBRL taxonomy which the company who creates the financial report creates. Uses the GAAP taxonomy above as the base. This is harder to work with and use because it uses the XBRL syntax. The Business Reporting Logical Model hides the XBRL syntax, exposing only the business semantics which is easier for a business user to work with. For more information on the Business Reporting Logical Model see item #1 on this page.
7. Business Rules (XBRL Formula) The business rules which ensures the data integrety of the financial report. This is XBRL's way of expressing business rules. A big advantage of XBRL's way of expressing business rules is that the rules, being a global standard, can be exchanged between business systems along with the information. But, while a computer can easily read this, humans have a harder time. No worries, just render the XBRL Formula so a human can read it.
8. Human Readable Rendering of Business Rules This is a prototype human readable rendering of the business rules. The creator of the information and the consumer of the information can use these to help ensure data integrety and to communicate important relations between pieces of the information being exchanged.
9. Business Rules Validation Results Results of validating the XBRL instance (the financial report) against the business rules (XBRL Formulas). This helps both the creation of the information and the consumer of the information.
10. Calculation Validation Results (i.e. more business rules) Results of validating the XBRL instance (the financial report) against the XBRL calculations linkbase. XBRL calcuations is simply another way of articulating business rules. XBRL calulations are very limited as to what they can do. XBRL Formula can also articulate these relations.
11. XSLT Style Sheet The XSLT style sheet which is used to render the PDF above in the 'Visualization example'. This XSLT was manually created, but it could also be generated by a computer application. Don't like PDF? No problem, generate Word, Excel, HTML, RDF/OWL, whatever you like. The point is that (a) it is possible to get a 'pixel perfect rendering' of the XBRL information in any form you might want. To the extent that a business reporting logical model is agreed to between business systems, this XBRL can be exchanged between systems AND you still get what you have today in terms of renderings of the information.
12. XBRL Instance XBRL instance document. The financial report, explained by the XBRL taxonomy, verified using the business rules. Rendered using the XSLT. Generally no one would ever use XBRL at this level, this is for a computer application to consume.
13. Financial Report Fact Groups XBRL instance document normalized (not sure what the right word is) into business reporting logical model components and organized into "Fact Groups". (Thank you to XBRL Cloud for generating their "fact table", which I then convert into the BRLM Info Set Fact Group format using an XSLT style sheet.) Any computer application can read this information really, it is simply a bunch of things which look like tables of a relational database. Don't believe me, check out the extraction sample application below. The problem with these Fact Groups is that the users have to figure out how to best organize the different rows and columns of the Fact Group (or relational database type table). However, you can use the Measure Relations to help you convert the Fact Group into more human readable renderings of the information contained in the Fact Groups.
14. Flow Info Set Financial information has a sequence or ordering, I call this 'Flow'. Putting the pieces of an XBRL instance into an ordering or sequence can be a challenge. The Flow Info Set does exactly that. Basically, the Flow Info Set is generated using the XBRL definition linkbase which has articulated relations between Fact Groups (i.e. the XBRL Dimensions Hypercubes). This is an XML version of the same Flow informaiton. Open the company XBRL taxonomy to look at how the Flow information is articulated in the XBRL taxonomy.
15. Intelligent Business Document Viewer This is an prototype auto-generated viewer for the auto-generated reports. This viewer is a one concept model (i.e. there are other ways) of what a financial report could look. The viewer is 100% auto-generated from the XBRL taxonomy and XBRL instance information, nothing more. An XBRL processor takes the XBRL instance and all the XBRL taxonomies (called the DTS or descoverable taxonomy set) and pulls all the pieces together. It generates the Fact Groups, the Measure Relations, the Flow info sets in whatever form it desires, it does not have to be the XML form that I have shown. But, to the extent that the XBRL processor understands the Business Reporting Logical Model and to the extent the XBRL taxonomy and XBRL instance were created consistent with that model, an application can abstract the XBRL syntax away from the eyes of the business user, exposing the easier to comprehend Business Reporting Logical Model (BRLM). Further, to the extent that other XBRL procesors understand these business semantics; this information is exchangable between business systems. (NOTE: I cannot get all these renderings how I want them because the programming is too complex for me (i.e. I am a CPA, not a programmer). But, the BRLM makes this easy enough that I can build these prototype applications.
16. Comprehensive Example Information Extractor This is a prototype application which extracts information from the financial information expressed in XBRL (i.e. of the XBRL instance and XBRL taxonomy). Well, actually I am cheating and using the Fact Group, Measure Relations, and Flow. This is because the Excel application does not leverage an XBRL processor. I did not use an XBRL processor in the Excel application for two reasons. First, I don't have permission to do so. Second, the intent here is to show that the common denominator here are the Fact Groups, Measure Relations, and Flow info sets which contain all the business semantics you need in order to make use of the XBRL information. Any XBRL processor could easily output the Fact Groups, Measure Relations, and Flow. And, the exact XML is not relevant really. What is relevant is that the XBRL processor interprets the business semantics the same way. All XBRL processors are VERY CLOSE to doing so as they support the XBRL syntax. The Business Reporting Logical Model simply helps them go the "last mile" in the process. This is particularly important if XBRL's extension capabilities are used. Each person creating an extension needs to do so consistently in order to maximize comparability. The key to this is a consistent base taxonomy and clear business semantics for those extending the base taxonomy to follow.
17. Bottom Line The bottom line is this: information exchange between business systems can and in fact does work. Key to this is a clear understanding of the business semantics of both the creating and the consuming systems. Extension makes information exchange more powerful, but more challenging because both the creator of the information and the consumer of the information must be sure they agree on what they are communicating. The Business Reporting Logical Model (BRLM) helps in this regard. The metapatterns, basic example, business use cases, and comprehensive example all follow the Business Reporting Logical Model. That shows the sorts of things that can be articulated, shows that the BRLM works in these situations and how to make XBRL do what you might be trying to achieve in terms of business information exchange. If you don't use XBRL's extension features, all this is less important. If you do use XBRL's extension capabilities, it is all very critical in order to effectively exchange business information.

Creative Commons License
This work is licensed under a Creative Commons License.