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 from January 1, 2014 - January 31, 2014
Source Code for VB.Net Digital Financial Report Disclosure Viewer
In a prior post I showed a prototype digital financial report disclosure viewer. This weekend I took my Microsoft Access based prototype and build a Visual Basic.Net Windows Forms application. The only challenge was figuring out how to do some things in VB.Net that I already knew how to do in VBA.
And so here is a screen shot of the application in VB.Net:
Even better, here are some other things you can fiddle with to check out this application:
- Video which shows you the application
- Setup file which you can download and install the application (Requires: (a) Windows 7, IE 11, Microsoft.Net Framework 4.5, and (b) an XBRL Cloud username and password to use most of the application, see XBRL Cloud for this...costs about $10 per month)
- Source code for the VB.Net Windows Form project (Created using Microsoft Visual Studio 12)
My application itself is not really that complicated. It reads the RSS feedwhich has metadata which points to SEC XBRL financial filings which I created. You click on one of the entries which points to some disclosure, that sends information to the XBRL Cloud Edgar Report Information web service. That gives me some additional information about the report component. The, I send that information to another part of the XBRL Cloud web service and I get a rendering of the disclosure.
Watch the video, you will see what this does. Personally, I find it amazing that I can look at financial statement disclosures in this manner. Seems like a great resource for accountants who create financial reports.
If you are a software developer and you want to enhance that VB.Net project, go for it. I already have maps to many, many other disclosures. I have the topic and disclosures information. The information is there to also organized the topics and disclosures into a hierarchy.




Everybody is an SEC XBRL Financial Filing Quality Expert These Days
Everybody and their brother is holding themselves out as "the XBRL quality expert" for SEC XBRL financial filings these days. Well, here is some information you can use to get to the bottom of exactly how good someone's quality really is.
I have been analyzing SEC XBRL financial filings for years and years. Back in about November 2009, I found exactly one SEC XBRL financial filing which passed a battery of tests which I was using. By March 2010 the number that passed my battery of tests was 92. By about August of 2013 I had tuned my battery of tests and documented the things that I was looking at and the results I found in this Summary of Analysis of SEC XBRL Financial Filings document.
So, my tests were getting more tuned and harder. Tests are expanding toward accounting and financial reporting semantics or the meaning of the information. And at the same time the number of filings that passed the tests is growing. This is a very good sign.
These tests are not perfect by any means, nor are they comprehensive. But, if filers do not pass these tests, there is little hope that their SEC XBRL financial filing will be useful to anyone. However, all this said; there are thousands of additional tests which must be passed to prove that an XBRL-based financial filing is totally correct. My point is, I am not saying any SEC XBRL financial filing is totally correct.
All that said, quality is definitely improving. I have taken my tests, tuned them again, and ran them against the most current 10-K filings. My new set contains 5262 filings currently. The submission analyzed were 10-K SEC XBRL financial filing submissions between March 1, 2013 and December 31, 2013. This will be updated for 10-K filings submitted between January 1 and February 28, 2014.
This is my battery of tests: (All Stars pass all of these tests)
- XBRL technical syntax validation: ZERO XBRL technical syntax errors are allowed.
- Automated EFM validation: ZERO EDGAR Filer Manual (EFM) errors are allowed.
- US GAAP Taxonomy Architecture rules: ZERO US GAAP Taxonomy Architecture model structure errors are allowed. (For more information see this blog post.)
- Core financial statement roll ups: ZERO missing core financial statement roll ups (assets, liabilities and equity, net income, net cash flow) are allowed. (For more information, see this blog post.)
- Fundamental accounting concepts validation: ZERO failed fundamental accounting concept business rules. (For more information, see this blog post.) Note that this is pretty aggressive but this is necessary for unambiguous use of the financial information.
Below are the complete results thus far. I will be adding additional semantic tests relating to identification of the root reporting entity and correct reporting period information over the coming months. In the very near future I will also be adding additional accounting/financial reporting semantic rules. But as of right now, this is what the data says:
For the total set of 5,262 SEC XBRL financial filings, all of which are 10-Ks; I found 709 which passed all the tests in my battery of tests. That is an average of 13% of all SEC XBRL financial filings. In the list of generators, all generators who were average or better than average are highlighted in green.
I will update this information and make all my data available after the 10-K season which ends March 1, 2014. I will recompile the results, further tune my tests, and see what shows up.
If any software vendor, filing agent, SEC filer, or anyone else has any input as to what else might be included in my battery of tests please contact me.
Again, I am not saying that I am defining what quality is. You can decide for yourself what the definition of quality is. However, you should be able to justify your definition of quality. So should your software vendor or filing agent.




Decomposing SEC XBRL Financial Filing Report Components
In a prior blog post I provided a general idea of why some SEC XBRL financial filing disclosures were hard to understand.
In this document, Decomposing SEC XBRL Financial Filing Report Components, I get more specific and show precisely why these renderings are hard to decipher and alternatives used by other SEC XBRL financial filers which made exactly the same disclosures but represented the information in ways where it was easy to understand.
What causes something to be hard to read? Here is the bottom line: (a) As a rule of thumb, don't put things together when the combined representation is worse than the separate representations, and (b) use [Abstract] report elements to separate things where it makes sense.




Understanding Financial Disclosures
This blog post summarizes information related to understanding the big picture of disclosures contained in a financial report. This information is not detailed information about individual disclosures, but rather a framework for understanding disclosures in general in the age of digital financial reporting.
The very first thing which one needs to understand is that there is a conceptual framework for financial reporting. That conceptual framework is created by the FASB (Financial Accounting Standards Board) for US GAAP. (The IASB, or International Accounting Standards Board, creates the conceptual framework for International Financial Reporting Standards.)
Concept statements make up the conceptual framework of US GAAP based financial reporting. Reading through all that stuff can be mind numbing. There lots of presentations which explain the conceptual framework and even compare the IFRS and US GAAP conceptual frameworks which the FASB and IASB have been working to make more consistent.
Why have a conceptual framework? Well, this is explained by the FASB in their publication, FASB Special Report, The Framework of Financial Accounting Concepts and Standards (1998):
- Providing a set of common premises as a basis for discussion
- Provide precise terminology
- Helping to ask the right questions
- Limiting areas of judgment and discretion and excluding from consideration potential solutions that are in conflict with it
- Imposing intellectual discipline on what traditionally has been a subjective and ad hoc reasoning process
All good reasons for understanding the conceptual framework. While the FASB documents can be hard to understand, the framework is explained in easier to understand terms in two places that I have found. First, in the very popular intermediate accounting text, Intermediate Accounting Seventh Edition by Spiceland, Sepe and Nelson. Another very good resource is the 2014 Wiley GAAP Guide. Both of these have chapters which explains the big picture of financial reporting.
A financial report is comprised of two main parts:
- Financial statements (or primary financial statements)
- Notes (or disclosure notes)
A disclosure can be made in the following three ways as summarized very nicely by the Spiceland et. al. intermediate accounting text mentioned above:
- Parenthetical comments or modifying comments placed on the face of the financial statements
- Disclosure note conveying additional insights about company operations, accounting principles, contractual agreements, pending litigation
- Supplemental schedules and tables that report more detailed information than is shown in the primary financial statements
A couple of things are worth mentioning here. First, you can look at the primary financial statements as disclosures. Sometimes things are required to be presented on the face of the financial statements, other times it is an option which one may use, meaning the accountant could put the information within a disclosure note. Second, many times information in the disclosure notes ties directly to the primary financial statements; but other times the information does not tie because the information may not even exist within the statements. So some of the disclosures supplement information provided by the primary financial statements, other disclosures provide more details of what is in the financial statement line items.
One thing which is often misunderstood is the difference between a "disclosure" and a "note" or "footnote" or "disclosure note". A disclosure is information or data which is required to be disclosed. A note or footnote or disclosure note is an organization or presentation of the disclosure.
What needs to be disclosed? Is there a list of disclosures? Well, there is now: here is that list. That list is still a work in progress, but it will be all of the disclosures which are requried by commercial and industrial companies eventually.
Another way to say this is that companies which provide financial statements can sometimes be grouped into special industries or activities which require special accounting rules. Commercial and industrial companies are just "general" and have no such industry/activity specific accounting rules which they need to follow. So say a bank has special accounting rules. An insurance company has special rules. Here is a list of some of the special industry/activity accounting guides. My focus is reporting entities which don't have a specific industry accounting/audit guide.
So that list is long. Currently it has 943 disclosures on it. That number might go up or it might go down as I tune my list of disclosures. One way to break the list into smaller pieces is to break the disclosures down into topics. This is a list of topics. That flat list of topics can be organized into a hierarchy to make the list of topics easier to read. Here is that hierarchical list of topics. That list is inspired by the Accounting Standards Codification (ASC) topics published by the FASB.
In fact, the topic list is mapped to the ASC topics. For example, if you click here, you will be taken to the ASC topic for operating leases. (You have to have a subscription to use the ASC, but a basic subscription is free.)
What if you wanted to create your own organization of disclosures? Can you do that? Of course you can. Most of the organizations are very similar, but they are different in the intermediate text book I mentioned, the Wiley GAAP Guide I mentioned, disclosure lists I have seen, etc. Is any one organization best? No, each has its pros and cons. I actually don't like some things about the ASC organization and so I changed it to meet my needs. I said is was inspired by the ASC list, I did not use it verbatim. Everyone should be able to create their own list and organize disclosures as they see fit.
In the past it was very hard to create your own organization of disclosures for two reasons. First, all the lists were published in books and you could not reorganize the list provided by the book very easily. Second, there really was no real list of disclosures at all. There were only sentences which described a disclosure. I gave the disclosures names. Why?
Computers need names to be able to relate to things. How would you ask a computer to give you the long-term debt maturities disclosure of a financial report if that disclosure did not have a name? You could not do it.
In the digital age, these names are important. So are the lists. But computers cannot read lists from books, then need lists that they can understand. Another term for that is metadata.
I did not just create a human readable list. In fact, I did not create a human readable list at all. I created a computer readable list and then I used my computer and a software program that I wrote to generate the human readable list from the same metadata. That is why metadata is important and why articulating all this information in books is problematic in the digital age. This information belongs in a computer readable knowledge base.
Here is my list of topics in computer readable form and also the list of disclosures in computer readable form.
I used my computer readable list of disclosures which has the names of each disclosure in another set of metadata which I created. You can find this list here in the form of an RSS feed. The RSS feed points to two other computer readable files. I don't have human readable versions of those files.
What those two files do is map specific report components of SEC XBRL financial filings to specific examples. Basically, the SEC XBRL financial filings provide examples of specific disclosures. I then read the metadata and the SEC XBRL financial filings, pulling all the information together within a financial disclosure tool that I created. The tool helps me figure out how to create financial disclosures. Take a good look at that tool that I created and see if you think it is useful.
So how did I put all of these pieces together? Manually? Sure, for a while I did in order to figure out the moving pieces that I need to deal with. But I eventually created yet another tool which leverages something called prototype theory to find disclosures in SEC XBRL financial filings for me. You can take a look at my financial disclosure query tool in this video.
If you stop and think about it you can begin to understand why I needed to create a list of disclosures. If you were going to tell a software application to go get the long term debt maturities disclosure from a financial report; exactly how are you going to do that if you don't have something to tell the software exactly what you want it to get? How are you going to identify a specific disclosure and distinguish that disclosure from other disclosures if the different disclosures don't have specific names?
Do disclosures have names? Well, they didn't in the past. That is because people related to a disclosure, say in a disclosure checklist, buy reading a paragraph of text which described the disclosure. You cannot really use those paragraphs of text to describe disclosures because each paragraph is different. And that is why these names are not only helpful, but critical.
There is one other thing which accountants should understand. All this metadata is a new way to transfer knowledge that you have to others and in many cases get paid for that information. If you have specific industry knowledge or other specific expertise which others find useful, metadata is a way to transfer that knowledge and make money doing it. Don't know how to create metadata or even what metadata means. Well, stay tuned to my blog. I will help you figure that out.
In fact, if there are other accountants out there who want to create metadata for say IFRS or other US GAAP industries or activities, I would be happy to help you understand how to do that. (Please keep in mind that what I am showing is only the tip of a much bigger iceberg.)




Perfected Financial Report Disclosure Viewer Prototype
I have perfected my financial report disclosure viewer. Here is a screen shot of the primary interface of the application; it helps to understand the application:
Click image to view larger version
This video will walk you through the basics of the prototype.
Let me explain the prototype and the idea. The first thing to understand is that this is the tip of a much bigger iceberg. There are so many ways that this can be expanded. I will not go into those. I will only cover the basics.
So today, when an accountant creates an external financial report (primary financial statements and all the disclosures) they use reference materials in the forms of books like the best selling AICPA Best Practices in Presentation and Disclosure, the Wiley US GAAP Guide, the PPC Guide to Preparing Financial Statements, the accounting standards codification (ASC) web site maybe, disclosure checklists, existing financial statements as examples, and other resources.
These resources are very typically separate resources, information silos. The information silos are not centered on the users of these resources. Rather they tend to be centered on the creator of the resource. Some organizations such as Big 4 CPA firms have internal proprietary resources which may fit together better and they are centered around the CPA firm.
Keep in the back of your mind that I am not talking about public companies, of which there are about 10,000 who create and submit financial statements to the SEC. There are millions and millions of private companies who also create US GAAP based financial statements. There are hundreds of thousands of licensed CPAs and non-licensed accountants who create those financial statements. Disclosures of SEC filers are examples for those private companies also.
What if you could pull all these resources together and center them around the accountant creating a financial statement?
Well, that is the fundamental idea of what I have done.
First off I have a collection of extremely high quality financial statements. Why are they of such high quality? Because some company filed their financial report with the US Securities and Exchange Commission. Now, these financial statements are not perfect but there is no better set of financial statements in existence than these and they are all available free for the taking complements of the SEC via their EDGAR system.
In the past the only way to get at the information is to manually go through the filings one-by-one. That has now changed. You can query those financial statements because the information is structured using XBRL as opposed to unstructured information which is not queriable at all. If you don't understand this, watch this video How XBRL Works. This video, Querying Disclosures of SEC Financial Filings, helps you understand how the querying actually works via another working prototype application that I have created to do just that.
Second, in order to work with the individual disclosures of SEC XBRL financial filings, you have to give each disclosure a name and be able to refer to the disclosure. Basically, go ask a computer to go get something you have to tell the computer what to get. Here is an older list of those disclosures so you can see what I am talking about. I have similar metadata for the topics to help organize the long list of disclosures.
Finally, you need to be able to "glue" the disclosures to actual SEC XBRL financial filings. That is what this metadata does: http://www.xbrlsite.com/2014/US-GAAP/rss.xml.
And so the viewer application uses the list of disclosures, the report components of SEC XBRL financial filings which contain disclosures and the map between the two to provide the functionality which you see in the screen shot and the video above.
The hardest part of all this is getting the high-quality renderings. To get those I simply use the XBRL Cloud Edgar Report Information web service. This blog post explains that and how to use the web service.
And so what does all this mean? Paradigm shift. If you are trying to understand all this in the context of how external financial reporting is achieved today, you will likely miss the point. But if you look at what external financial report could be like, you will realize that:
- It is possible to weave the supply chain together in ways never achievable before.
- Accountants with expertise can make money in new ways by expressing that expertise in forms readable by software applications.
- Software used to create financial reports can leverage this metadata and help other accountants create financial reports. Think about how much Microsoft Word helps you create a financial report. It knows nothing about financial reports or financial reporting.
- It is possible to query across financial reports and work with the individual pieces of a report, not the entire report. But, you can always get to the complete context of any individual disclosure.
- Querying for specific disclosures is not only possible, but actually quite easy. For example, "give me a list of every company that reported extraordinary items of income or expense" can be achieved in seconds.
In essence the "supply chain" or the "network of those creating financial reports" can communicate using this metadata and these structured SEC XBRL financial filings. If you have not read it yet, it might be a good idea to check out the Disclosure Management article published by PWC.
All this will help make it less costly to create external financial reports (whether you generate XBRL or not), the quality of the financial reports will be higher, and it will take less time to create the reports. Once accountants experience these efficiencies they will start to realize that the same ideas can be applied to internal financial reporting.
By the way; any accountants or software developers who want to understand how to use this metadata please contact me. I can point you in the right direction.



