BLOG: Digital Financial Reporting
This is a blog for information relating to digital financial reporting. This blog is basically my "lab notebook" for experimenting and learning about XBRL-based digital financial reporting. This is my brain storming platform. This is where I think out loud (i.e. publicly) about digital financial reporting. This information is for innovators and early adopters who are ushering in a new era of accounting, reporting, auditing, and analysis in a digital environment.
Much of the information contained in this blog is synthasized, summarized, condensed, better organized and articulated in my book XBRL for Dummies and in the chapters of Intelligent XBRL-based Digital Financial Reporting. If you have any questions, feel free to contact me.
Entries in Tips, Tricks and Traps (17)
Extention Points and Extensibility Rules
I was very fortunate to participate on the team that created the US GAAP Taxonomy Architecture. Part of this is how could you not learn a lot discussing things with people like Walter Hamscher, David vun Kannon, Campbell Pryde, Paul Sappington and Cliff Binstock (i.e. the other co-authors of the architecture).
Part of what we discussed and to a degree addressed in the US GAAP Taxonomy or realized that we could not address was the notion of extension points and extensibility rules. These topics had come up before, we drilled into them in greater detail in creating that architecture. Here are general definitions of these two terms:
- Extension points: logical points in a taxonomy where extension makes sense. These are generally technical in nature.
- Extensibility rules: rules relating to where a taxonomy can be extended. These are generally domain related and have to do with semantic meaning.
Looking at a taxonomy will help make the difference between the two make more sense.
Extension points
Take a look at the figure below (for more information see the "Calculation" metapattern on this page, number 3):
The green areas in the graphic are extension points. It makes sense to add new members to a domain, new periods, perhaps new units, and a new concept to the list of concepts which make up some total. For example, on row 10 above, it makes sense to add the concept "Airplanes" to an extension taxonomy and put it in that precise location in an XBRL taxonomy which extends another taxonomy. Likewise, it makes NO sense to do things like add a member as a child of the concept "Land". These extension points are incredibly helpful to understand for a lot of different reasons. One reason is that software can be built to make creating or extending an XBRL taxonomy a whole lot easier if these extension points are known, they are consistent, and they are communicated in some manner by the creators of a base XBRL taxonomy which someone else is extending. I could go on and on pointing out good and bad examples, but I think you probably see the point here.
In the US GAAP Taxonomy does have extension points, even though they are not formally communicated. For example, see section 4.5 Implementing Tables in the US GAAP Taxonomy Architecture document (page 34). Realizing this can help you to more easily create appropriate extension taxonomies.
Extensibility Rules
Extensibility rules are different from extension points, but they can be very helpful in another way. So, as an example, imagine the US GAAP taxonomy. (Or you can go look at it here.)
Consider the concepts "Assets [Abstract]" and "Liabilities and Stockholders' Equity [Abstract]". From a financial reporting business domain perspective, what sense does it make to add a concept into the US GAAP Taxonomy as a sibling to those two concepts? What would that concept be? Well, it doesn't make sense in this particular case, a balance sheet has two things which when added up the totals should be the same: total assets and the total of liabilities and equity. That is why it is called a balance sheet.
There are other areas of a taxonomy where this same thing is true, extensions make no sense. For example, a cash flow statement breaks cash flows into three categories: operating, financing, and investing. That is dictated by the financial reporting literature.
What other areas does it make sense to not allow extension or two allow extension? Should users of the US GAAP Taxonomy be able to add balance sheet line items? Well, there are actually pros and cons to that. On the one hand, what line item would they possibly want to add? If it should be there, it probably already exists in the US GAAP Taxonomy. On the other hand, it was not the case that things like Goodwill or Intangible assets ever existed on anyone's balance sheet. But, finance reporting standards evolved, and these line items are in the financial reporting rules. Allowing extensions at certain points really relate to financial reporting standards, not XBRL.
Generally it is the case that the deeper you get into a tree of concepts, the higher the probability that extension should be allowed. The higher you are in a tree of concepts, the less likelihood that you would need to extend the US GAAP Taxonomy. There are plenty of excepts to this rule, but in generally, that statement is fairly accurate.
How do you communicate extension points and extensibility rules?
Well, there is no standard way to do that now and there is no formal articulation if this information. This holds true for the US GAAP Taxonomy, the IFRS taxonomy and any other taxonomy which is out there really.
But why WOULD you communicate this information? Well, say there were a way to automate the process of detecting when a user extended a taxonomy in the wrong area (violated an extension point) or that the put a net tree of concepts on the balance sheet as a sibling of assets and liabilities and equity (violated an extensibility rule) and you could point this out to the user. Or even better, the application simply would not let you make that mistake. Or how about if a wizard lead you through the process of extending or building a taxonomy because the wizard had knowledge of such extension points and extensibility rules. Wouldn't that be helpful to users? I think so.




SEC Taxonomies are a Wealth of Information
The taxonomies published by SEC filers are a wealth of information, if you can somehow look at them. Well, in that spirit, I have created a number of ways to look at these taxonomies for the purpose of learning more about taxonomies.
Here are several ways I have created to look at these XBRL taxonomies. All these focus on the presentation linkbase information (for comparison purposes, here is a link to the best way that I know of viewing the entire Commercial and Industrial Companies entry point of the US GAAP Taxonomy):
- Excel-based Taxonomy viewer: This Excel file has macros which read the XML file (see below) of presentation linkbase information. (Coming soon is a version of this which allows you to compare two taxonomies side-by-side.
- HTML treeview: If you go to this web page and click on the links in the column titled "Link to Taxonomy Presentation HTML (XBRL Site)" you can see a tree view of an SEC filers taxonomy. Here is one example file so you know what you are looking for.
- XAML treeview: This web page lets you quickly browser through a list of XBRL taxonomies. You have to be using Microsoft Internet Explorer 7 or 8 to use this as it is done using XAML.
- XML file: If you go to this web page and click on the links in the column titled "Link to Taxonomy Presentation XML (XBRL Site)" you can access the information in a taxonomy programmatically. The Excel-based tool above uses this XML file. Here is one example file so you know what to look for.
- Compare extension concepts: This web page lets you compare the extension concepts added by SEC filers.
- Summary of Statistics: Here is an Excel file which has some statistics about the filings and taxonomy extensions.
More ways to look at this to come. You can write some really interesting Excel macros to sumarize, slice, dice, and otherwise dig into this information.



