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 November 15, 2009 - November 21, 2009
Seeing the Benefits of XBRL: Demo of Cross Company Comparisons
Here is a little demonstration of what one can do with XBRL. Take a look at this link. The link is to an interface which I created which lets you do cross company comparisons of information filed by a set of 403 SEC XBRL filers. Here I am focusing on text blocks used to report policies or disclosures.
What I did was look through the filed data, found text blocks which were reported a lot by filers, and then picked a set of them to show in this demo. I had to be a little selective to get the demo to work right. Some of the comparisons resulted in rather large files (22 MEG, for example with 332 filers reporting "us-gaap:SegmentReportingDisclosureTextBlock", so I did not use those large files). Rather than try and make this demo scale to work with large files, I simply did not use the large files. Again, this is a demonstration.
Using the XBRL in this way is not limited to analysis of the SEC filings by investors. Consider this the following other use case.
If you are an accountant, you have probably heard of the AICPA Publication Accounting Trends and Techniques. If you are not familiar with that publication, it is basically a survey of the reporting practices of about 600 filers, created by grabbing SEC filings and reorganizing the information to compare companies. Basically this is a form of best practices in financial reporting. I worked at Price Waterhouse years ago and we had an internal publication which was similar.
Leveraging XBRL, imagine being able to build an interface into the SEC XBRL filings and be able to automatically pull information from the filings. Imagine being able to organize this by industry (i.e. SIC code maybe). Imagine not being limited to the 600 companies selected for the AICPA publication due to the manual nature of that process. Both attorneys and accountants who create SEC filings use this information to help figure out how to create disclosures.
Further, this process is not unique to SEC filings. There are many, many other forms of reports and filings where a similar workflow occurs. Being able to slice and dice this filing information allows for all sorts of interesting possibilities.
* This is the list of text blocks I am using in my demo.
us-gaap:InventoryDisclosureTextBlock (138 Filers)
us-gaap:ScheduleOfSubsequentEventsTextBlock (138 Filers)
us-gaap:SignificantAccountingPoliciesTextBlock (111 Filers)
us-gaap:BusinessCombinationDisclosureTextBlock (104 Filers)
us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock (89 Filers)
us-gaap:LongTermDebtTextBlock (66 Filers)
us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock (65 Filers)
us-gaap:RelatedPartyTransactionsDisclosureTextBlock (53 Filers)
us-gaap:CashFlowSupplementalDisclosuresTextBlock (51 Filers)
us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock (49 Filers)
us-gaap:EquityMethodInvestmentsDisclosureTextBlock (43 Filers)
us-gaap:ScheduleOfVariableInterestEntitiesTextBlock (41 Filers)
us-gaap:OtherIncomeAndOtherExpenseDisclosureTextBlock (39 Filers)
us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock (35 Filers)
us-gaap:ScheduleOfGuaranteeObligationsTextBlock (32 Filers)
us-gaap:ScheduleOfGoodwillTextBlock (30 Filers)
us-gaap:ScheduleOfLossContingenciesByContingencyTextBlock (26 Filers)
us-gaap:AvailableForSaleSecuritiesTextBlock (25 Filers)
us-gaap:AssetRetirementObligationDisclosureTextBlock (23 Filers)
us-gaap:MinorityInterestDisclosureTextBlock (21 Filers)
us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock (20 Filers)
us-gaap:IntangibleAssetsDisclosureTextBlock (20 Filers)
us-gaap:ProductWarrantyDisclosureTextBlock (19 Filers)
us-gaap:ScheduleOfLineOfCreditFacilitiesTextBlock (18 Filers)
us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock (17 Filers)
us-gaap:FairValueByBalanceSheetGroupingTextBlock (16 Filers)
us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock (16 Filers)
us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock (16 Filers)
us-gaap:ScheduleOfTreasuryStockByClassTextBlock (16 Filers)
us-gaap:TransfersAndServicingOfFinancialAssetsTextBlock (16 Filers)
us-gaap:ScheduleOfStockByClassTextBlock (15 Filers)
us-gaap:ShortTermDebtTextBlock (14 Filers)
us-gaap:OtherLiabilitiesDisclosureTextBlock (13 Filers)
us-gaap:MarketableSecuritiesTextBlock (12 Filers)
us-gaap:CollaborativeArrangementDisclosureTextBlock (11 Filers)
us-gaap:PublicUtilitiesDisclosureTextBlock (11 Filers)
us-gaap:InterestIncomeAndInterestExpenseDisclosureTextBlock (10 Filers)
us-gaap:PostemploymentBenefitsDisclosureTextBlock (10 Filers)
us-gaap:ScheduleOfRestructuringAndRelatedCostsTextBlock (10 Filers)
us-gaap:CommitmentsDisclosureTextBlock (9 Filers)
us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock (9 Filers)
us-gaap:ConcentrationRiskDisclosureTextBlock (8 Filers)
us-gaap:DetailsOfImpairmentOfLongLivedAssetsHeldAndUsedByAssetTextBlock (8 Filers)
us-gaap:ScheduleOfDerivativeInstrumentsTextBlock (8 Filers)
us-gaap:ScheduleOfOtherAssetsNoncurrentTextBlock (8 Filers)
us-gaap:AccountingChangesAndErrorCorrectionsTextBlock (7 Filers)
us-gaap:DeferredCostsCapitalizedPrepaidAndOtherAssetsDisclosureTextBlock (7 Filers)
us-gaap:EnvironmentalLossContingencyDisclosureTextBlock (7 Filers)
us-gaap:PartnersCapitalNotesDisclosureTextBlock (7 Filers)
us-gaap:UnusualOrInfrequentItemsDisclosureTextBlock (7 Filers)
us-gaap:DisclosureOfLongLivedAssetsHeldForSaleTextBlock (6 Filers)
us-gaap:FullCostMethodOfAccountingForInvestmentsInOilAndGasPropertiesDisclosureTextBlock (6 Filers)
us-gaap:RealEstateDisclosureTextBlock (6 Filers)
us-gaap:ScheduleOfRestrictedCashAndCashEquivalentsTextBlock (6 Filers)
us-gaap:CashAndCashEquivalentsDisclosureTextBlock (5 Filers)
us-gaap:DiscontinuedOperationsPolicyTextBlock (5 Filers)
us-gaap:EarningsPerSharePolicyTextBlock (5 Filers)
us-gaap:EquityMethodInvestmentsTextBlock (5 Filers)
us-gaap:FairValueOptionTextBlock (5 Filers)
us-gaap:PropertyPlantAndEquipmentTextBlock (5 Filers)
us-gaap:QuarterlyFinancialInformationTextBlock (5 Filers)
us-gaap:ScheduleOfDividendsPayableTextBlock (5 Filers)
us-gaap:ScheduleOfEarningsPerShareDilutedByCommonClassTextBlock (5 Filers)
us-gaap:ScheduleOfFinancialInstrumentsOwnedAndPledgedAsCollateralTextBlock (5 Filers)
us-gaap:ScheduleOfOtherNonoperatingIncomeByComponentTextBlock (5 Filers)




Seeing the Benefit of XBRL
So how are banks doing these days? Let's take a look at the national banks who have filed XBRL with the SEC. Let's do an easy little comparison to show what you can do with XBRL, and to show one example of the types of issues we are going to have to deal with.
Here is the final result of my comparison in the form of an Excel spreadsheet and as a PDF. I made a few modifications to my Excel analysis tool which I made available and will provide an updated version soon.
What I did was simply grab the cash flow information for operating, investing, and financing activities for the first three quarters of 2009 and 2008. The time to grab that data using my little analysis tool was about 15 minutes. I used SIC code 6021 and grabbed these banks:
Citigroup Inc.
BANK OF AMERICA CORP /DE/
SUNTRUST BANKS INC
PNC FINANCIAL SERVICES GROUP INC
BB&T CORP
US BANCORP \DE\
WELLS FARGO & CO/MN
REGIONS FINANCIAL CORP
J P MORGAN CHASE & CO
KEYCORP /NEW/
I then did some calculations to check the calculations to be sure they added up, everything was great. The analysis shows that cash flows are up for these national commercial banks for the first three quarters of 2009 as compared to 2008. All in less than 15 minutes and it would have taken less than that if my programming skills were better.
As a comparison, I would challenge anyone to do a similar comparison manually or using some other approach to grabbing this data from the old legacy HTML/ASCII filings. How long would that take?
OK, so now for the issue. In the analysis you see "*** No Value Found ***" for Citigroup Inc. What is up with that? Well, Citigroup did not use the concepts that I was looking for, you can see those on the list. You can take a look at Citigroup Inc.'s taxonomy here (line 219). Citigroup reorganized the taxonomy a little. You can see the US GAAP Taxonomy for financial institutions here.
There is nothing wrong with this. This is particularly true, in my view, because Citigroup created a new concept which help you recognize that they change the definition of the net change in cash, you can see the concept they added to their taxonomy here (line 271). No big deal, I can adjust my model and even my tool for grabbing this information for how Citigroup configured this information.
Another thing I want to point out is the linking that I am doing here. See how I provided links to the US GAAP Taxonomy, the Citigroup taxonomy, and so forth. That makes for communicating these issues much easier. These are simple web pages with IDs in them or other useful mechanisms for hooking to a specific location in some information set.



