Members of this Project:
Prof. Dr. Paulo Caetano (XBRLFramework Group coordinator)
Prof. MSc. Marcio Alexandre (Software Engineer)
$Documentation{ easyXBRL-0.1 , easyXBRL-0.1.5(soon) }
easyXBRL is a python-based XBRL library which allows in-memory processing of financial data presented in native XML documents.
This approach is very interesting for ETL (extract, tranform, load) processing, OLAP and Data Mining techniques, in which a high performance is a very important point. There are no limits for how you can use it, this library provides every financial data in memory (from XBRL taxonomy), and you can manipulate these data as you want, as easy as a object-oriented python class.
The propose of this library is to be a layer (as illustrated in following image) between XBRL-based financial information systems and native XBRL documents (which are recognized for low performance in their data queries). EasyXBRL obtain data from native XBRL files, after that load them in memory. Then, systems can use the in-memory data, bringing the increase in the performance over data processing.
easyXBRL In-Memory Data
These libraries return to computer memory a multidimensional data (following figure) based on XBRL data from native files. It is fundamental to know about the structure of these data for consuming them in your system.
[
Then, easyXBRL returns all data about the elements specified within XBRL instances (position, xml line, name, decimals, id, contextRef, unitRef, value, XBRL file name), in which can have zero or many label linkbases, another XBRL element that has attributes such as: type, label attribute, lang, role, id, value.
It's important to say that we have tested this tool on SEC files. If you have some interest to evolve this tool to financial reporting from Europe, Asia, Africa or other jurisdiction, please tell us.
The code has been discussing on easyXBRL GitHub.
How to use: https://github.com/marcioalexandre/easyxbrl/blob/master/sample/index.py