You are here

eXtensible Business Reporting Language (XBRL)

15 January, 2016 - 09:50


Perhaps the most exciting technology-driven advancement to hit business reporting in its history is that of XBRL. eXtensible Business Reporting Language (XBRL) is an XML-based language consisting of a set of tags that are used for business reporting to provide a single, underlying format that can be read by XML-equipped software packages and can be searched by XML-enabled Web browsers. Recall from E-Business that XML (eXtensible Markup Language) is a generic Web-based programming standard that interprets a set of user-defined tags to determine the context of information on a Web site and to provide a key to the tags that can be applied by Web users to search a given site easily. XBRL is a specialized business-reporting taxonomy that is based on XML, where the tags are predefined for users so each have a common understanding of the tag’s meaning. In this case, XBRL provides uniformity for users of financial statements and other business reporting information. Such uniformity simplifies delivery of information via the Web, enhances the searchability of information, and enables easy uploading, downloading, and comparison of the information within other software packages for mandated reporting, analysis, and so forth 1.

Review Question

Why is XBRL so important to efficient Web-based business reporting?

XBRL has been developed by an international consortium of accounting bodies, software vendors, providers of information, and information-intensive industry representatives in a united effort towards uniformity of business reporting information. Participants in the consortium include many of the international professional accounting bodies, the Big Four professional service firms, Microsoft, IBM, Oracle, SAP, Fidelity, Moody’s, and many business intelligence software vendors.

The intent is that with a unified format, enterprise system vendors (and other BR software vendors) can add functionality that will automatically generate XBRL-based reports as well as any other business report. This feature eases the cost and complexity of delivering business information via the Web. Thus, accessibility of information increases for external users of business reports, the information is easier to decipher and analyze, and the information can easily be downloaded for use by other software packages such as spreadsheets, database packages, or data analysis packages. In Technology Excerpt 14.1 we present an article that describes how you can generate your own XBRL statements now if you wish. This article should give you some sense of how XBRL works and how it can facilitate the reporting, reading, and analysis of business information.

Technology Excerpt 14.1

Run XBRL Right Now

If your accounting software doesn’t include XBRL—and few, if any, products have it now—it doesn’t mean you can’t start applying the feature immediately. I’ve created a method that gives you the opportunity to try XBRL now. Once you understand the process, you can use it with your own accounting software until XBRL is added eventually to your system.

Many software vendors are working to incorporate XBRL. For example, SAP will include ready-to-use XBRL templates for reporting, financial consolidation, modeling, simulation and planning, and budgeting. FRx Software, financial accounting/reporting software that works with some 50 accounting packages, will incorporate the function later this year. And 11 major accounting software vendors are members of the XBRL working group—a further indication of the industry’s interest in XBRL.

Do It Now

To see how XBRL works, go to You can download the demo or run it off the Web site. You will need Microsoft Access 2000. The demo shows you how to publish your general ledger trial balance in XBRL. Here’s a summary of the steps:

Step 1. Get a copy of your chart of accounts. Note that although this demo (see Exhibit 1, below) was prepared at the account level, you can present information in more detail, such as the type of transaction (invoice, payment, credit, debit entries to accounts receivable), or at a more summarized level, such as a financial statement line item.


Although it’s possible to enter this chart of accounts manually, it’s better to copy one of your own and use it in the demo.

Step 2. Get a copy of the appropriate XBRL taxonomy (template), which in this case is on the XBRL Web site. Note that this demo already includes the commercial and industrial taxonomy within the Access database table.

Step 3. Create a database table and map (assign or cross-reference) each general ledger account to the appropriate XBRL taxonomy element. If no available XBRL tag (technically called an element) meets your need, simply type in your own. It’s the ability to customize that makes the program extensible—capable of being extended to your individual needs. Again, the demo Access application provides this functionality, as you see in Exhibit 2 and Exhibit 3.


This demo Access application provides the functionality to select one of your accounts and then assign an XBRL element to it.


This demo chart of accounts, which is in the Access database, contains XBRL elements assigned to each account line.

Step 4. Summarize your trial balance by the general ledger account for the period you wish. This provides you with an account number and a total by account for a given period, as shown in Exhibit 4.


This is the trial balance summarized by account for the period you select.

Step 5. Apply the map to the trial balance. What the map says, in effect, is: “When I use this general ledger account, replace it with this XBRL element.” Note Exhibit 2, which shows the map, and Exhibit 5, which shows the result of the mapping. Also note that the general ledger account is assigned to the “id” attribute (as shown in Exhibit 2). This is done only in the demo to help you see what is going on; it isn’t required.


This is the segment of the general ledger chart of accounts and the XBRL element plus all the other information needed to create a valid XBRL instance document.

Exhibit 6 shows the XML file called an XBRL instance document.


And finally, in less than 25 lines of code, the database query generates a file that is XMLcompliant with the XBRL specification. This XML file is called an XBRL instance document.

That’s all there is to it. Once the XBRL function is added to your software, these steps will occur automatically.

But the fact that your accounting software isn’t XBRL-compliant yet should not dissuade you from manually doing the job in the interim. It’s going to take a little knowledge about databases or, if you’re more comfortable in Excel, it can be done with that application, too.

Although this demonstration shows how to transform general ledger trial balance information into XBRL, the concept applies to literally any data—trial balance, other accounting system data, and even nonaccounting system data.

Some things to note:

  • If the available taxonomies don’t work for you, you can easily modify a taxonomy or create your own.
  • The data in the XBRL document you created are accessible from any of the most popular office productivity tools: Excel, Access, Word, or PowerPoint. XBRL still will work accurately if someone adds additional information to the document without your knowledge. It’s as if someone added a row of data to an Excel spreadsheet: It does not affect your spreadsheet.