Arelle Webserver - How to extract the income statement from an XBRL filing?

前端 未结 2 637
悲&欢浪女
悲&欢浪女 2021-02-04 21:43

I am trying to extract financial statement information based on type of the statement.

Let me explain to you in a little more details.

I want to extract the inco

相关标签:
2条回答
  • 2021-02-04 22:26

    Fortunately, it is not that difficult to extract financial statements. Here is how I was able to extract income statement info:

    1. Use arelle web server to get the complete fact table as shown below: http://localhost:8080/rest/xbrl/view?file=c:/Python/SEC-EDGAR/sec/2017/01/0001530425-0001477932-17-000505-xbrl.zip&view=factTable&media=xml

    Replace the file="" parameter with your own path. You can also substitute url for file parameter

    1. Once you have xml fact table in xml format, extract role nodes where for income statement, you can look for "StatementsOfOperations". Even though there are a few variations for income statement role id, they are not that many.

    Screenshot

    0 讨论(0)
  • 2021-02-04 22:38

    As far as I recall, the right place to look at is the user-friendly labels associated with these roles.

    The SEC places restrictions on how these labels look like (e.g., paragraph 6.7.12 of the Edgar Filing Manual), e.g. 02 - Statement - Balance Sheet. The income statement, cash flow statement and balance sheet are commonly found in labels with Statement (as opposed to Disclosure, Document, Schedule) between the two dashes.

    The third part of the label itself will tell you where to find the income statement/cash flow statement/balance sheet, however the exact labels may vary between filers. Also, there are several kinds of these (consolidated vs. unconsolidated, classified vs. unclassified, etc), and the complexity is further increased because sometimes, the same filing may contain several versions (consolidated and unconsolidated), so that you need some domain expertise to decide which one you need.

    In a nutshell, you will need to do some trial and error on real filings in order to find the right algorithm to filter these labels.

    What should help you though, is that Charles Hoffman has done some research on this, which for example can be found here (section 1.5).

    0 讨论(0)
提交回复
热议问题