Taxonomy in general means a catalogue or set of rules for classification; in XBRL, taxonomy can be referred as an electronic dictionary of the reporting concepts containing computer-readable definitions of business reporting terms as well relationships between them and links connecting them to resources. A typical taxonomy consists of a schema (or schemas) and linkbases;


XBRL Schemas together with linkbases define XBRL taxonomy. The purpose of XBRL schemas is to define financial and accounting concepts in system understandable manner. Each concept is given a unique name and its characteristics are defined. Schema also binds together the different parts of taxonomy.


Discoverable taxonomy set (DTS) is a collection of taxonomy schema documents and linkbases. The DTS includes all taxonomy schemas and linkbases that can be discovered by following links or references in the taxonomy schemas and linkbases included in the DTS.

Entry point

A DTS contains many schema and linkbase documents A schema which imports the base (or as required) schema and necessary linkbases, is called entry-point. Entry-point schema is usually used to browse or view the taxonomy.


An XML namespace is a collection of names, defined as a uniform resource identifier (URI) and gives information regarding the ownership and or location of the taxonomy. The namespace for taxonomy usually contains the authority defining the taxonomy, date of taxonomy, in the form of web URL. The namespace specification however does not require nor suggest that the namespace URI be used to retrieve information; it is simply treated by an XML parser as a string.


When declaring namespaces, a short name to identify the namespace is also defined and this is called as prefix. The schema components are associated with prefix belonging to that namespace. Prefixes precede names of elements, attributes and some of their predefined values provide an indication of where to find definitions of these properties.


An element is a business or a financial concept which is defined in the taxonomy according to XBRL specifications. Each element has a type, is identified by name and may have a set of attribute specifications as per the XBRL standards.

Abstract attribute

An abstract attribute appears on item definitions in schemas and the possible values are true and false; true indicates that the item shall not appear in instance documents, while false indicates that the concepts will hold value. Abstract elements (elements with abstract as true) are defined to bind concepts in a hierarchical manner in the taxonomy.

Data type attribute

This attribute indicates the data expected for concepts. Most common data types are monetary, shares, string etc. In addition, taxonomy developers may create their own data types to represent the information in a more efficient manner. Brief explanation of data types used in MCA taxonomy

  • monetaryItem Type
  • This data type is used for all the financial concepts which denote an amount represented in a currency; an instance document when uses an element with monetaryItem data type, the user need to define the unit reference ( currency unit) in which the content is measured. E.g. Accumulated depreciation, Total income etc.
  • sharesItem Type This data type is used for financial concepts which are measured in shares. E.g. Number of shares authorized shares etc.
  • stringItem Type This data type is used for concepts which contain textual information. E.g. Name of subsidiary, Accounting Policy changes etc.
  • PerShareItem Type This data type is used for concepts which are measured in per share. The unit reference in instance document needs the mentioning of currency as numerator and share as denominator. So the final value of measurement may come out as USD per share or Rupee per share. E.g. Earnings per share.
  • percentItem Type This data type is used for concepts that are denoted as percentage. E.g. Percentage of shares held by government
  • PureItem Type This data type is used for financial concepts that are denoted as ratio or proportions. E.g. Proportion Of Voting Power In Subsidiary
  • decimalItem Type This data type is used for concepts which are generally represent any kind of number other than mentioned above E.g. Number of debentures
  • Text blockItem Type This data type is used for concept which would describe a block of information. Usually for capturing a paragraph or notes which contain both textual and numerical information, this data type is used. E.g. Disclosure of Contingent Liabilities
  • DateItem Type This data type is used for concepts which represent date. E.g. Date of Board meeting
  • MCA specific data types

    Data type Attribute
    CINNumberItemType Maximum length 21 characters. If there is fixed pattern, the same can also be incorporated
    SRNNumberItemType Length 9 characters. 

    Pattern : first character is alphabet, and remaining 8 are numbers

    DINNumberItemType Length 8 characters. 

    All numbers

    NatureOfReport Enumerations : Standalone, Consolidated
    ContentOfReport Enumerations : Balance Sheet, Profit and Loss Statement
    LevelOfRounding Enumerations : Actual, Thousands, Lakhs, Millions, Crores, Billions
    IndustryType Enumerations : Commercial and Industrial, Bank, NBFC, Power
    CountryName Pattern : Should be as per ISO 3166-1 format
    TypeOfSubsidiary Enumerations : Section 4(1)(a), Section 4(1)(b), Section 4(1)c, Section 4(6), (Section 4(7)
    TypeOfBalanceSheet Enumerations : Sources and application, total assets and liabilities format
    TypeOfIncomeStatement Enumerations : Main, Alternative
    TypeOfCashFlowStatement Enumerations : Direct Method, Indirect Method
    ShareType Enumerations : Equity, Preference

SubstitutionGroup attribute

Appears on element definitions in schemas; XBRL defines four basic substitution groups, items , tuples, dimensions ( axes) and hypercubes ( tables); its purpose is to indicate which type can be substituted for the actual definition. The following substitution groups are used in MCA taxonomy

  • Item

    Item is an element used to define a concept which will hold single value in the given period. Most of the concepts represent one value in one period, and hence are defined as items. E.g. Total assets, depreciation etc.

  • Tuple

    Concepts which can have multiple values for the same period or if elements are required together to make the information more meaningful and complete, the substitution group is defined as tuple. E.g. Subsidiary information – there would be multiple values for name, shares held for any given period.

PeriodType attribute

It is used to describe the measurement period of the concept and may be assigned one of two values – instant and duration. Instant indicates that the concepts are measured as at a particular date, while duration indicates concepts hold value for a period.

Extended link element (also referred to as ELR)

These are logical grouping of elements. Extended links represent a set of relationships between concepts and are defined in schema. The extended links are then used in linkbases to build the relationships. Extended links contain locators, arcs, arcroles and resources


XBRL linkbases and XBRL Schemas define together XBRL taxonomy. Schema defines the core elements and its characteristics, while the purpose of XBRL linkbases is to combine labels and references to the concepts as well as define relationships between those concepts. There are various types of linkbases different kinds of linkbases and each has a special purpose.


It provides a reference to the taxonomy schema element definitions that uniquely identify each concept; they provide an anchor for extended link arcs.


Arc are used to connect two or more locators. According to the XBRL Specification 2.1, arcs link concepts to each other by associating their locators; they also link concepts with resources by linking the concept locators to the resources themselves; arcs are also used to link fact locators to footnote resources in footnote extended links; arcs have a set of attributes that document the nature of the expressed relationships; in particular they posses attributes: type (whose value shall be arc), from, to and arcrole.

Arcrole attribute

It defines the use of arc. It documents the kind of relationship that the arc expresses; there is a set of standard arcroles defined for specific arcs (labelArc, referenceArc, calculationArc; definitionArc, presentationArc and footnoteArc); the value of arcrole shall be an absolute URI, (eg in the presentation linkbase on a presentationArc it is ).

Presentation linkbase

Business reports are in general organized into identifiable data structures e.g. a Balance Sheet. The presentation linkbase stores information about relationships between elements in order to properly organize the taxonomy content. The arcrole used in presentation linkbase is .

Order Attribute

This attribute is defined on arcs and used to determine the sequence of relationship. In presentation linkbase, it is of prime importance as the display of elements will be based on the order as defined for every element.

Calculation linkbase

The idea of a calculation linkbase is to improve quality of an XBRL report (XBRL instance). The calculation linkbase defines basic calculation validation rules (addition/subtraction), which must apply for all instances of the taxonomy. The arcrole for calculation relationships. It represents relationships between concepts that are of numeric nature and have similar period type. The weight attribute defines the algebraic sign of the operation.

Weight attribute

A required attribute on calculationArc elements and indicates the multiplier to be applied to a numeric item value (content) when accumulating numeric values from item elements to summation elements; a value of 1.0 means that 1.0 times the numeric value of the item is applied to the parent item; a weight of -1.0 means that 1.0 times the numeric value is subtracted from the summation item; there are also rules that are applied to the calculation of elements possessing opposite balance attribute values (credit and debit).

Definition linkbase

The definition linkbase stores other pre-defined or self-defined relationships between elements. For example a relationship can be defined that the occurrence of one concept within an XBRL instance mandates the occurrence of other concepts, or relationships describing elements of general nature and elements which are very specific or elements which can be categorized based on parameters etc.

Label linkbase

The goal of the XBRL Consortium is to create and develop a world-wide standard for electronic business reporting. This requires the taxonomies to represent business data in multiple language. Therefore it is possible to create an element (concept) in the taxonomy with labels in different languages and or for different purposes e.g. a short label PPE compared to its long label Property, plant and equipment. Those labels are stored and linked to their respective elements in a label linkbase.

Reference linkbase

Most of the elements appearing in taxonomies refer to particular concepts defined by authoritative literature. The reference linkbase stores the relationships between elements and the references e.g. Schedule VI, Part A or Accounting standard 23, para 2 etc. . The layer does not store the regulations themselves but the source identification names and paragraphs.

Formula linkbase

A formula is a specification is that is being developed by XBRL International; it aims to satisfy the formula linkbase requirements document by providing a generalised mechanism to build formulae based on XBRL concepts and XBRL dimensions; formulae can be used to describe business rules for creating new XBRL facts in new instance documents and for describing consistency checks for instance documents.