XBRL (Extensible Business Reporting Language)
XBRL (Extensible Business Reporting Language)

Contents :                                 
  1. Meaning of XBRL.
  2. XBRL Terminology.
  3. Components and Benefits of XBRL.
  4. XBRL Specifications and Taxonomies : Process of Importing and Updating Taxonomies.
  5. Working with Linkbases : Process of Attaching Linkbases to Taxonomies.
  6. Process of Exporting the XBRL Lines.
  7. Document Structure of XBRL.
  8. History of of XBRL.
  9. Modules of XBRL.
  10. Extensibility of XBRL.

What is Mean by XBRL ? 

Introduction :

XBRL, which stands for eXtensible Business Reporting Language, is an XML-
based language for tagging financial data, enabling businesses to efficiently and 
accurately process and share their data. 
XBRL (Extensible Business Reporting Language) is an open data standard for financial reporting XBRL allows information modeling and the expression of semantic meaning commonly required in business reporting. XBRL is XML-based. It uses the XML syntax and related XML technologies such as XML Schema, XLink, XPath, and Name spaces to articulate this semantic meaning. One use of XBRL is to define and exchange financial information, such as a financial statement. 
The XBRL Specification is developed and published by XBRL International, Inc. (XII). XBRL is a standards-based way to communicate business and financial information. These communications are defined by metadata set out in taxonomies. Taxonomies capture the definition of individual reporting concepts as well as the relationships between concepts and other semantic meaning.
The XBRL initiative enables global financial reporting by numerous ERP software companies and international accounting organizations. The goal of the initiative is to provide a standard for the uniform reporting of financial information for banks, investors, and government authorities. Such business reporting can include : 
• Financial Statement 
• Financial information 
• Non-financial information 
• Regulatory filings, such as annual and quarterly financial statements  

Microsoft Dynamics™ NAV enables companies to implement data in XBRL,  and take advantage of the flexibility and automation it provides for both collecting and sharing data. In this section, you: 

  • Import an XBRL taxonomy. 
  • Attach a linkbase, which applies rules for reading the XBRL. 
  • Enter line definitions, which identify the types of data, such as general ledger, comments, or descriptions. 
  • Export the XBRL lines. 
  • Try reporting company information to the Stock Exchange using XBRL.

Meaning of XBRL :

XBRL is a simplified application profile of this standard intended to enable the non-XBRL expert to create both XBRL metadata and XBRL reports in a simple and convenient manner. At the same time, it seeks to improve the usability of XBRL, the interoperability among XBRL-based solutions and to reduce software development costs.


XBRL as a Open Standard :

While XBRL is an open data standard in terms of access to the equivalent of its 'source code', the governance structure of the XBRL consortium is significantly different from a model open source approach because of the barrier to participation that is created by requiring paid membership and a focus on transacting business at physical conferences and meetings. XBRL International requires its paying members to advocate its use, many XBRL conference attendees are vendors, and much of the published material makes claims for compatibility and standardisation that have yet to be achieved.

XBRL Terminology :

The following definitions cover the basic concepts of XBRL : 
  • An XBRL Instance document is a business report, such as a financial statement, prepared to the XBRL specification. The meaning of the values in the instance document is explained by the taxonomy. 
  • The XBRL Schema are the core low-level components of XBRL. The schema are the physical XML Schema Definition (XSD) and Document Type Definition (DTD) files that express how instance documents and taxonomies are to be built. 
  • The XBRL Specification explains what XBRL is, and how to build XBRL instance documents and XBRL taxonomies. The XBRL Specification explains XBRL in technical terms and is intended for a technical audience. 
  • An XBRL Taxonomy is a vocabulary or dictionary created by a group or organization that is compliant with the XBRL Specification, in order to exchange business information.

Components of XBRL :

Extensible Business Reporting Language, better known by its acronym XBRL, is an XBRL-based markup language for the purpose of electronic corporate financial reporting.
XBRL consists of three major components: the XBRL specification, XBRL Taxonomies and XBRL instance documents.

1) XBRL Specification :
XBRL specification aims at standardising the creation of XBRL taxonomies and instance documents. XBRL allows each user to define his/her own set of meta-data tags. However, unless these tags are created following certain uniform standard, informad exchange would be inhibited since the tags defined by one use may be incompatible with and incomprehensible to the other users application. XBRL specification is such a uniform standard that provides guideline on how to design taxonomies and instance documents in XBRL. It defines XBRL elements and attributes that can be used to prepare, exchange, and analyze financial reporis, ensuring that user-defined tags do not overlap or clash. These elements and attributes include syntax of instance documernts, syntax of taxonomies, semantics of instance documents and semantics of taxonomies.

2) XBRL Taxonomies :
XBRL.org defines taxonomies as a standard description and classification system for the contents of accounting reports. XBRL taxonomies can be regarded as extensions of XML Schema. Information producers take their accounting information from their accounting system and code it in a standard fashion as described by the taxonomy. Taxonomies are used for different types of business reports. Accounting can be divided into several subsets, including financial accounting, management accounting, SEC reporting, IRS reporting, etc. Each subset usually requires a special set of accounting terms, policies, and methods for reporting. Additionaly, different accounting standards may require different taxonomies. For instance, U.S. General Accepted Accounting Principles (GAAP) are different from International Accounting Standards (IAS). Therefore, two taxonomies may be needed to prepare the business reporis in accordance with these two different standards.

3) XBRL Instance Document :
An instance document is an XBRL-Coded business report. It can be an XBRL-tagged balance sheet, an XBRL-tagged debt covenant report, or an XBRL-tagged SEC 100 filing. XBRL specification, XBRL taxonomies and XBRL instance documents constitute the XBRL world. An XBRL instance document includes the XBRL specification version ID as well as the name and location of XBRL taxonomies. Upon receiving an XBRL instance document, the XBRLenabled application can process the instance document in accordance with the matching specification and taxonomies

Benefits of XBRL :

1) By using XBRL, companies and other producers of financial data and business reports can automate the processes of data collection.
For example : Data from different company divisions with different accounting systems can be assembled quickly, cheaply, and efficiently if the sources of information have been upgraded to using XBRL.

2) For AlCPA members who serve in financial management, auditing and information technology roles, XBRL will streamline the preparation of business and financial reports for internal and external decision making. XBRL will significantly improve the ability of CPAs in financial management to more precisely direct and publish financial information to investors, regulators, analysts, lenders, and other key stakeholders.

3) XBRL is not just for reporting to the SEC. The possible future uses for XBRL include reporting to lenders, IRS and other regulating bodies.

4) XBRL facilitates convergence of accounting standards by the ability to align financial concepts among public taxonomies.

5) XBRL facilitates principle-based accounting because it reduces the need to worry about where the item is reported, but only that it is.

6) XBRL drives transparency and improves the efficiency of capital markets by helping analysts and other users of financial and business information find relevant facts.

7) XBRL improves the efficiency of the capital markets by reducing the cost associated with covering a company and making the market more accessible to small and mid-cap companies.

8) XBRL better enables the CPA profession to proactively fulfill its primary mission to protect the public interest by improving investor access to the capital markets and increasing analyst coverage of both small and large companies through a reduction in the cost associated with covering a company.

Explain the Process of Importing and Updating Taxonomies.

XBRL Specifications and Taxonomies :

Specification :

The current (2008) version of XBRL is 2.1, with errata corrections. The normative version of all the XML Schemas is provided in the specification documents, not in separate files. A conformance suite is available to test processors of XBRL documents.

The XBRL organization released Specification 2.1 with errata corrections in December 2006. Microsoft Dynamics NAV conforms to Specification 2.1, though it still works with taxonomies which were prepared according to Specifications 2.0 and 1.0. In this section, a new taxonomy is imported into Microsoft Dynamics NAV and then reviewed. This section also includes information on updating existing taxonomies. 
The XBRL IAS Taxonomy.zip file needed to complete this import is available on the training manual download page of PartnerSource. Download this file and unzip to a location accessible to the Microsoft Dynamics NAV database. 

NOTE: The CRONUS International Ltd. demonstration database contains the IAS XBRL. Spec. 2 taxonomy. 

Demonstration: Import a Taxonomy :

Scenario : 
A new IAS taxonomy must be imported into Microsoft Dynamics NAV. This taxonomy includes four linkbases that are automatically attached to the schema, and the linkbases are applied during the import process.
After you complete the import you review the imported lines.

Steps :

To import the IAS taxonomy, follow these steps : 

1. On the Navigation Pane, click Financial Management > General Ledger > Analysis & Reporting > XBRL Taxonomies. 
2. Press F3 to create a new taxonomy. 
3. In the Name field, type "IAS New", and in the Description field type "IAS New, Spec. 2". 
4. Click Taxonomy > Schemas. 
5. In the Description field, type "IAS New, Spec. 2". 
6. Click Schema > Import. 
7. Locate and select the directory where the XBRL IAS Taxonomy file was saved. 
8. Select the ias-ci-edap-2002-11-15.xsd file and click Open. The import may take several minutes. 
During the import process, the schema is imported and the relevant linkbases are attached. Linkbases must be attached before using the taxonomy. 

To verify that the taxonomy was imported and that the linkbases are applied, follow these steps : 

1. In the XBRL Schemas window, click Schema > Linkbases. 
2. Notice that four linkbases have been imported: Label, Reference, Presentation, and Calculation. 


3. Close the XBRL Linkbases and XBRL Schemas windows.
4. In the XBRL Taxonomies window, with the line for IAS NEW selected, click Taxonomy > Lines. The XBRL Taxonomy Lines window opens. 
5. Press CTRL+HOME to go to the top of the lines. 
6. Expand the Trade and Other Receivables Disclosures line by clicking the plus sign (+) in the Expand field. 
7. Expand the Trade and Other Receivables, Current line. 
8. Expand the Trade Receivables, Net, Current line. The labels, source types, and information from the linkbases have been successfully imported. These terms are described in this chapter, in the section, "XBRL Taxonomy Lines Window Overview." 

Demonstration: Update a Taxonomy :

Occasionally a taxonomy will change and must be updated. Microsoft Dynamics NAV 5.0 allows users to update only the changed lines, so not all the definitions must be entered every time. 
To update a taxonomy, follow these steps :

1. On the Navigation Pane, click Financial Management > General Ledger > Analysis & Reporting > XBRL Taxonomies. 
2. Select the taxonomy that requires the update. 
3. Click Taxonomy > Schemas. 
4. Select the relevant record in the XBRL Schemas window. 
5. Click Schema > Import. 
6. In the Import Memo dialog box, select the file name of the updated taxonomy schema file. 
7. Click Open. 
8. Click Yes to replace the existing schema. The taxonomy is updated.

Explain the Process of Attaching Linkbases to Taxonomies.

Working with Linkbases :

Linkbases are the XML files containing information that allows a taxonomy to be presented in a readable, usable format. 
As the demonstration of importing a taxonomy noted, Microsoft Dynamics NAV uses four types of linkbases : 

• Label: These links manage the text associated with taxonomy 
elements in various languages. 
• Presentation: These links put the labels into usable order. 
• Calculation: These links assign the calculation relations between the 
presented labels. 
• Reference: These links show the information provided by the 
taxonomy provider.

Linkbases must be attached to a taxonomy to make the information appear correctly. Typically, linkbases are attached automatically when a taxonomy is imported. There may be times when additional linkbases need to be imported. 
In this topic, the process of importing linkbases is explained, in addition to the processes of updating and applying linkbases, and adding new label linkbases

NOTE: Specification 1 taxonomies do not require the attachment of linkbases. Microsoft Dynamics NAV uses a Specification 2 taxonomy. 

Demonstration: Attach a Linkbase :

To attach a linkbase to a taxonomy, follow these steps : 

1. On the Navigation Pane, click Financial Management > General Ledger > Analysis & Reporting > XBRL Taxonomies. 
2. Select the taxonomy to which you will attach linkbases. 
3. Click Taxonomy > Schemas. The XBRL Schemas window opens. 
4. Click Schemas > Linkbases. The XBRL Linkbases window opens. 
5. In the Type field, click the AssistButton and select the relevant linkbase type. 
6. In the Description field, type a short description of the linkbase to be imported. 
7. Click Linkbase > Import. 
8. In the Import Memo dialog box, locate the relevant linkbase file. 
9. Click Open. 
10. Click Yes to apply the linkbase to the taxonomy. After the import, the XSD File Imported check box contains a check mark. 

NOTE: While linkbase files typically contain the words label, presentation, calculation, or reference, this may not always be the case. Refer to the documentation that accompanies the taxonomy to review the file names. Linkbase files will normally end in .xml.

Demonstration: Update a Linkbase :

To update a linkbase that has changed, follow these steps :

1. On the Navigation Pane, click Financial Management > General Ledger > Analysis & Reporting > XBRL Taxonomies. 
2. Select the taxonomy that requires the update. 
3. Click Taxonomy > Schemas. 
4. Select the relevant record in the XBRL Schema window. 
5. Click Schema > Linkbases. 
6. Select the relevant record in the XBRL Linkbase window. 
7. Click Linkbase > Import.
8. In the Import Memo dialog box, select the file name of the updated taxonomy linkbase file. 
9. Click Open. 
10. Click Yes to replace the existing linkbase. 
11. Click Yes to apply the linkbase to the taxonomy. 
The linkbase is updated. 

Demonstration: Add a New Label Linkbase :

If a new label linkbase is received, such as, in another language, a new XBRL linkbase can be created and applied to the taxonomy. 
The steps to add a new linkbase are as follows : 

1. On the Navigation Pane, click Financial Management > General Ledger > Analysis & Reporting > XBRL Taxonomies. 
2. Select the taxonomy that requires the update. 
3. Click Taxonomy > Schemas. 
4. Select the relevant record in the XBRL Schema window. 
5. Click Schema > Linkbases. 
6. Press F3 to insert a new line. 
7. In the Type field, click the AssistButton and select Label. 
8. In the Description field, enter a name for the new linkbase. 
9. With the new line selected, click Linkbase > Import. 
10. In the Import Memo dialog box, select the file name of the new taxonomy linkbase file. 
11. Click Open. 
12. Click Yes to apply the linkbase to the taxonomy. 
The label linkbase is added to the taxonomy. 

Demonstration: Apply a Linkbase :

If linkbases are not applied during the import, they can be applied to the taxonomy later. 
To apply an individual linkbase, follow these steps 

1. On the Navigation Pane, click Financial Management > General Ledger > Analysis & Reporting > XBRL Taxonomies. 
2. Select the relevant taxonomy. 
3. Click Taxonomy > Schemas. 
4. Select the relevant record in the XBRL Schema window. 
5. Click Schema > Linkbases. 
6. Select the linkbase to apply to the taxonomy. 
7. Click Functions > Apply to Taxonomy
8. Click Yes to apply the linkbase to the selected taxonomy. 
To apply all linkbases to a taxonomy, follow the above steps, but in 
step 6 select all linkbases.

Exporting the XBRL Lines :

The purpose of defining the XBRL lines is to create and export an XBRL instance document. This document provides the required financial reporting information in an XML file format. This information can be previewed in a report before exporting to the requestor. In this topic, XBRL lines are previewed and exported to an XML Instance 
Document file. Demonstration: Preview and Export the XBRL Lines Scenario: Now that you have mapped the IAS NEW taxonomy, you have to preview and export the Instance Document. 
To preview and export the instance document, follow these steps : 

1. On the Navigation Pane, click Financial Management > General Ledger > Analysis & Reporting > XBRL Reporting > XBRL Spec. 2 Instance Document. 
2. In the XBRL Taxonomy Line tab, filter on Business Units and global dimensions, as needed. 
3. Click the Options tab. 
4. In the XBRL Taxonomy Name field, select or type "IAS NEW". 
5. In the Label Language field, click the Assist Button and select en. 
6. Select the Create File check box to view a report. The XBRL File Name box that has been grayed out, is made active. 
7. In the XBRL File Name field, click the Assist Button. 
8. Select a location to save the file and in the File Name field, type a file name. 
9. Click Save. 
10. In the Starting Date field, type "01/01/08". 
11. In the No. of Periods field, type "2". 
12. In the Period Length field, type "1Y". 
13. Ensure that the Closing Entries is set to Include. 
14. Select the Document Complete check box. 
15. Click Preview to preview the report. 
16. Click OK to the message that the file was created. The XBRL Document report is created, displaying lines from the designated time period and reflecting the filters you set. 
17. Review the report and then close the Print Preview window. The saved XML file can be sent to the reporting authorities.

Document Structure of XBRL :

In typical usage, XBRL consists of an instance document, containing primarily the business facts being reported, and a collection of taxonomies (called a Discoverable Taxonomy Set (DTS), which define metadata about these facts, such as what the facts mean and how they relate to one another. XBRL uses XML Schema, XLink, and XPointer standards.

A) Instance Document :
The instance document begins with the <xbrl>root element. There may be more than one XBRL instance embedded in a larger XML document. The XBRL instance document itself holds the following information :

1) Business Facts - facts can be divided into two categories.
i) Items are facts holding a single value. They are represented by a single XML element with the value as its content.
ii) Tuples are facts holding multiple values. They are represented by a single XML element containing nested Items or Tuples.
In the design of XBRL, all Item facts must be assigned a context.

1) Contexts :
Contexts define the entity (e.g. company or individual) to which the fact applies, the period of time the fact is relevant, and an optional scenario. Date and time information appearing in the period element must conform to ISO 8601. Scenarios provide further contextual information about the facts, such as whether the business values reported are actual, projected, or budgeted.

2) Units :
Units define the units used by numeric or fractional facts within the document, such as USD, shares. XBRL allows more complex units to be defined if necessary. Facts of a monetary nature must use a unit from the ISO 4217 namespace.

3) Footnotes :
Footnotes use XLink to associate one or more facts with some content.

4) References :
References to taxonomies, typically through schema references. It is also possible to link directly to a linkbase.

B) Taxonomies :
Taxonomies are a collection of XML schema documents and XML documents called linkbases by virtue of their use of XLink. The schema must ultimately extend the XBRL instance schema document and typically extend other published XBRL schemas on the xbrl's website.

1) Schemas :
Schemas define Item and Tuple "concepts" using <xsd:element> elements, Concepts provide names for the fact and indicate whether or not it's a tuple or an item, the data type (such as monetary, numeric, fractional, or textual) and potentially more metadata. Items and Tuples can be regarded as "implementations" of concepts, or specific instances of a concept. A good analogy for those familiar with object oriented programming would be that Concepts are the classes and Items and Tuples are Object instances of those classes. This is the source of the use of the "instance document" terminology. In addition to defining concepts, Schemas reference linkbase documents. Tuples instances are 1........n relationships with their parents, their metadata is simply the collection of their attributes.

2) Linkbases :
Linkbases are a collection of Links, which themselves are a collection of locators, arcs, and potentially resources. Locators are elements that essentially reference a concept and provide an arbitrary label for it. In turn, arcs are elements indicating that a concept links to another concept by referencing the labels defined by the locators. Some arcs link concepts to other concepts. Other arcs link concepts to resources, the most common of which are human-readable labels for the concepts. The XBRL 2.1 specification defines five different kinds of linkbases.

i) Label Linkbase :
This linkbase provides human readable strings for concepts. Using the label linkbase, multiple languages can be supported, as well as multiple strings within each language.

ii) Reference Linkbase :
This linkbase associates concepts with citations of some body of authoritative literature.

iii) Calculation Link base :
This link base associates concepts with other concepts so that values appearing in an instance document may be checked for consistency.

iv) Definition Link base :
This link base associates concepts with other concepts using a variety of arc roles to express relations such as is-a, whole-part, etc.

v) Presentation Link base :
This link base associates concepts with other concepts so that the resulting relations can guide the creation of a user interface, rendering or visualisation.

Explain the History, Modules and Extensibility of XBRL.

History of XBRL :

XBRL can be traced to the efforts of one person, Charlie Hoffman. The specification has gone through several versions, all of which are still available.

1) 1.0 :
This version was based on DTDs. It expressed the difference between data exchange in instance documents and metadata exchange in taxonomy documents. Taxonomies were expressed as XML Schema files, but these were not used for instance validation.

2) 2.0 :
This version introduced use of XML Schema substitution groups as a way of allowing schema validation of instances. Concept relations were broken out into separate XLink based linkbases. Context data in the instance was collected into a separate element.

3) 2.1 :
This version tightened the definition of terms significantly, allowing for the introduction of a conformance suite.

4) SBR :
In 2003 the Dutch government started the Netherlands Taxonomy Project (NTP) to create a multi agency taxonomy and communication infrastructure. The Dutch government now collaborates with Australia, New Zealand and Singapore in Standard Business Reporting (SBR) programs. The key objectives of SBR include reduced time and effort spent preparing and filing reports for government by businesses. SBR can be considered an application profile of XBRL.

5) XBRL :
In 2008 Charlie Hoffman and Rene van Egmond proposed a simplified, more user-friendly XBRL application profile of XBRL that makes using XBRL easier for most business users, improves the potential for interoperability, and improves the potential for comparability needed by most business users, business communities, regulators and independent software vendors.

XBRL Modules :

XBRL International has issued and reissued a stability pledge in relation to the core XBRL 2.1 specification. In addition to the core 2.1 spec, work continues on the development of several new modules of XBRL that define new, compatible functionality.

1) XBRL Dimensions 1.0 :
This module has achieved the Public Recommendation status. It supports the use of XBRL taxonomies to define additional, structured contextual information for business facts. Each piece of contextual information is referred to as a "dimension". The base XBRL specification essentially defines three dimensions: reporting period, reporting entity (i.e. a company or a division thereof), and a loosely-defined reporting scenario, originally intended to distinguish between actual vs. projected facts. Taxonomies using XBRL Dimensions can define new dimensions, specify the valid values ("domains") for dimensions, designate which dimensions apply to which business concepts through mechanisms called "hypercubes", and relate other taxonomy metadata (labels, presentation information, etc.) to dimensions.

2) XBRL Formula :
This module has achieved the Public Recommendation status. It supports the creation of expressions (using XPath) that can be applied to XBRL instances to validate its information or to calculate new XBRL facts in a new instance.

3) XBRL Rendering :
This module has two deliverables. One is "Inline XBRL", a specification for embedding XBRL inside XHTML. The other is a Rendering Linkbase specification. The Rendering Linkbase will leverage the label and presentation linkbases to provide a facility for more comprehensive report definition. For example, the label linkbase can tell you that the English name for the ifrs- gp.assets concept is "Assets", and the presentation linkbase can tell you that ifrs-gp:assets is the first concept in the hierarchy named "Balance Sheet". The Rendering Linkbase would add the metadata that "Balance Sheet" usually runs the labels (in presentation order) down the leftmost column, and then shows the two most recent periods in the next columns, in a particular order.

4) XBRL Versioning :
This module will support the creation of a standard versioning report, which will document the differences between two versions of the same taxonomy. Many large taxonomies (such as the IFRS taxonomy) change every year.

Extensibility of XBRL :

Besides the creation of additional modules, XBRL International supports several methods for continuing expansion of shared XBRL functionality.

i) Link Role Registry :
This registry, hosted at xbrl.org, collects link roles and arc roles to promote reuse across taxonomies.

ii) Functions Registry :
This registry collects XPath functions for reuse in formula linkbases.

iii) Format Registry :
This registry collects common numeric formats for reuse in Inline XBRL applications.

iv) Best Practice RFCs :
These documents will share common practices among community members to improve interoperability of design.

Summary :

A company's ability to implement data in XBRL enables it to share financial data in an internationally recognized, computer-readable format with a number of agencies, from tax and government regulators, to banks, and other accounting agencies. XBRL can reduce human error, because it enables businesses to automate reporting and data exchange that previously had to be generated by hand.