BLOG:  Digital Financial Reporting

This is a blog for information relating to digital financial reporting.  This is my brain storming platform.  This is where I think out loud (i.e. publicly) about digital financial reporting. It is for innovators and early adopters who are ushering in a new era of digital financial reporting.

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.

Testing IFRS Fundamental Accounting Concept Relations on GitHub

I am going to create a version of the IFRS Fundamental Accounting Concept Relations metadata on GitHub to check out how that works. This will include the reporting styles, mapping rules, impute rules, and consistency checks.

If you are not familiar with GitHub, create an account (which is free) and work throught this tutorial. That will get you started.

Here is my initial repository: fac-ifrs (master)

I have someone helping me get started.  I am going to keep the same technical syntax in this version.  The files will simply be pulled from this GitHub location and people will be able to contribute, branch, etc. using the GitHub functionallity.

There are great videos on how to use GitHub.

Another alternative to GitHub is BitBucket. The good thing is that there are alternatives.  Now, I have to figure how which is better, GitHub or BitBucket.



Posted on Thursday, September 13, 2018 at 10:55PM by Registered CommenterCharlie in | CommentsPost a Comment | EmailEmail | PrintPrint

Accounting Model, Report Model, Financial Analysis Model

The accounting model explains how double-entry bookkeeping works.  The double-entry accounting model is a mathematical model explained in Luca Pacioli's book about mathematics, Summa de arithmetica.  The mathematical model was consciously created to be redundant (i.e. double-entry) in order to better detect mistakes and to distinguish a mistake from fraud.

I am not going to go into details, if you want to know that read about the accounting equation, you can watch this video that explains the accounting model, and you can watch this video which expands on that model and explains the logic of debit and credits.  The primary point I want to make is that accounting is a model.

A financial analysis model is likewise a model.  There are many different types of financial analysis models. Again, I am not going to go into details, if you want to learn about creating a financial model, there are plenty of resources like this video. The primary point here is that financial information is analyzed using financial models.

And so why do many accountants believe that a financial report is a document?  A document is a type of knowledge media.  There are other types of knowledge media: word of mouth, book, video, etc.  What makes something a knowledge media?

  1. Easy for knowledge bearer to represent information: The effort and difficulty required for the knowledge bearer to successfully formulate the knowledge in the medium must be as low as possible.
  2. Clear, consistent meaning: The meaning conveyed by the knowledge bearer to the knowledge receiver must be clear and easily followed.
  3. High-quality information representation: The form in which the knowledge is represented via the media to the receiver must be as good as possible.

The purpose of a general purpose financial report is to convey information about the financial position and financial condition of an economic entity.  Two types of information are conveyed: quantitative and qualitative. Again, not going into details here. Both quantitative and qualitative information are important.

It is not much of a stretch to make the claim that the information that comes out of the accounting model (i.e. the general ledger transactions) and might go into a financial model should likely best be a model and not a document.  And so certainly aspects of a financial report is a model such as the balance sheet, income statement, cash flow statement, and all the disclosures that tie to the line items of those statements.

But the qualitative information can also be represented in the form of a model.  For example, inventory is an important number; but it is likewise important to understand if that inventory is valued using LIFO or FIFO and to what extent a reserve exists to capture the difference between inventory cost and the current market value of the inventory.  The qualitative information of a financial report helps to further explain the quantitative information.

At the top level, all financial reporting schemes are the same: assets = liabilities and equity (or some modified version of that equation).  At the next "layer" both US GAAP and IFRS tend to be relatively the same in terms of high-level concepts such as "current assets" and "current liabilities", etc.  Companies can report using different patterns, which I call reporting styles.  No problem.  Ambiguities in reporting standards, misunderstandings of reporting rules, and other such things impact what goes into the model and how those things might be orgnaized; but a financial report has a model.

Accounting was first formally described in about 1494, long before databases and computers existed.  As such, accountants use whatever tools they had available to represent financial reports.  That ended up being paper-based documents.  When computers came along, accountants seemed to have forgotten about the accounting model and started representing documents in tools such as spreadsheets, not the accounting model.  Today we have different tools.  Some of those tools quite possibly could be better than paper for representing financial reports.


I am going to do an experiment with a number of other accountants that want to learn about XBRL (contact me if you want to be considered for inclusion). 

I have represented general ledger trial balance information using XBRL.  I have represented financial statements using XBRL.  And I have represented financial models using XBRL.  What is interesting is that I can get the GL transactions, the financial report, and the financial models into one XBRL document.  That is actually really easy as they all share the XBRL global standard technical syntax.  Further, they all share the same business report multidimensional model and conceptual model.

But what ends up happening is because of the "taxonomy spaghetti" that tends to exist; the general ledger representations, the financial report representations, and the financial model representations are not well syncronized semantically.  I am going to fix that.

What I am going to do is create a syncrnozied version of the general ledger transactions, the reported financial information, and the financial model; all using the same XBRL taxonomy where they should.  I will make this robust enough so that it is a good exercise but simple enough to be understood by the average accountant and hopefully even non-accountants.  I am going to follow best practices.  I am going to use what I call my "XASB" taxonomy for this first iteration so that I am not constrained by the idosyncricies of the US GAAP or IFRS taxonomies or public company reports.

As a second step, I will repeat this exercise for a US GAAP report and an IFRS report.

This will likewise be an excellent test of software that I am using. 

Stay tuned if this sounds interesting to you! Again, if you want to participate please contact me directly.

This is a summary of what I have created in the prior versions of GL transactions, financial report, and financial model:

There you have it.  If you feel you might need more information, please let me know what it is that you think you need.

Posted on Wednesday, September 5, 2018 at 08:24AM by Registered CommenterCharlie in | CommentsPost a Comment | EmailEmail | PrintPrint

Representing Unlevered Discounted Cash Flow Model Using XBRL

One approach to determining the value of an economic entity is to use discounted future cash flows.  You can determine discounted future cash flows by creating a discounted cash flows model (DCFM). Finance majors, accounting majors, and MBAs learn how to create these models in college.

If you are not familiar with the DCFM, here is some information that will help you understand it:

Now to be clear, the example above shows an unlevered discounted cash flow model.  There is also a levered discounted cash flow model.  In fact, there are lots of different types of models. Here is a list of some of the different types of models.

Microsoft DCFM represented in XBRL

I wanted to see if I could create a DCFM for Microsoft in XBRL.  I selected Microsoft pretty much at random although I did give them high consideration because their fundamental accounting concept relations are extremely good (i.e. they have no errors) for the 9 10-Ks they have submitted to the SEC.

In building the Microsoft DCFM model, I considered information in all of these models.  I decided to use the Excel template from the lesson above.  Here are the steps:

  1. I got a list of all the Microsoft filings so that I could extract all the information using XBRL, this is the Excel spreadsheet that I used.
  2. I used that information to populate the Excel spreadsheet DCFM template used in the lesson above, here is that. (completed)
  3. I then constructed an XBRL taxonomy that would be used to represent that model; here is the XBRL taxonomy.
  4. I created all of the business rules so that I could make sure the information I was entereing in the XBRL instance was correct; here is the XBRL Formulas.
  5. Then I created the XBRL instance; here is that XBRL instance.
  6. I tested (and tested, and tested, and tested) the XBRL instance to make sure everything was working correctly.  For example, the roll up computations, the XBRL Formula based assertions, the XBRL technical syntax, the XBRL Cloud Evidence package was used to manually verify certain items, I tested the DCFM model using Pesseract, and finally I had someone that was helping me create some of the XBRL Formulas validate the model using the Fujitsu Formula Editor.
  7. Then, I auto-generated Inline XBRL for the model.
  8. Finnaly, just for the heck of it I added pseudo-Korean labels for the model to show how easy it is to make the model multi-language; here are the English and Korean labels.

Now, I am not holding myself out as a financial analyst.  I am simply testing the mechanics of creating a DCFM using XBRL.  My next step is to auto-generate the XBRL instance from the XBRL-based reports that have been submitted to the SEC for some other company, maybe Apple or Google.

So now I am thinking "self-driving" financial analysis!  If these guys can do this, so can I.  Something else I am noticing is that I have general ledger trial balance information in XBRL, financial reports in XBRL, and higher-level financial models in XBRL like this DCFM.  In one straight-shot you can go from trial balance to report to model.  The modern finance platform might not be as far away as it might seem.

I am happy to answer any questions about this that anyone might have; just send me an email.

Posted on Tuesday, September 4, 2018 at 02:27PM by Registered CommenterCharlie in | CommentsPost a Comment | EmailEmail | PrintPrint

The History of Artificial Intelligence

Harvard University, the Graduate School of Arts and Sciences, published The History of Artificial Intelligence, which is an excellent overview of AI.

There are a lot of other very interesting articles linked to from that main article.

Posted on Tuesday, August 28, 2018 at 06:32PM by Registered CommenterCharlie | CommentsPost a Comment | EmailEmail | PrintPrint

Data to Analyze XBRL Roll Up Relations in US GAAP Reports

I have written a simple software application in Microsoft Access that extracts the XBRL calculation relations (i.e. roll ups) of 5,734 10-K financial reports submitted to the SEC.  You can download the database and other tools if you want to analyze the roll up relations:

  • Here is the database: This contains 807,924 roll up relations from the 5,734 reports.  It also has a list of the reporting entities.  The database also has the extraction code which should work if you have a Microsoft Access license.
  • Documentation: This documentation helps you understand how to use the database.
  • Excel extraction tool:  The database has ALL 5,734 reports.  This Excel tool can be used to extract XBRL calculation relations from one report at a time.  It can be modified to do more.

If you make any interesting modifications to the tools or discover any interesting patterns in the information, please be sure to let me know.

Here is more information related to those 5,734 US GAAP financial reports.

Posted on Tuesday, August 28, 2018 at 03:40PM by Registered CommenterCharlie in | CommentsPost a Comment | EmailEmail | PrintPrint