High-Level Components of XBRL and Their Definitions

By Charles Hoffman, Liv Watson

The following figure illustrates the high-level logical components of XBRL. The XBRL Specification defines these high-level logical components and the physical means by which to express them. The following table provides a brief description of each high-level component.


Component Description
XBRL Instance Basically, a new type of XML business report format that
contains business information. XBRL instances contain facts being
reported and other information (such as context and units) that
provides context for those facts. May also contain footnotes
(comments). XBRL instances refer to XBRL taxonomies that describe
the facts used within that XBRL instance.
Context Provides context for facts, including information about the
entity, the period, or other dimensions of the reported
Units Provides additional context needed for numeric facts, such as
the currency of the fact or some other unit of measure.
Fact Information being reported or exchanged. A fact has a value, is
associated with a concept from an XBRL taxonomy, and has contextual
information associated with it. Facts can also have footnotes
associated with them.
Footnotes Basically comments that can provide additional information
relating to a fact or that can connect facts together.
Discoverable Taxonomy Set Collection of all XBRL taxonomies referred to by either an XBRL
instance or by an XBRL taxonomy.
XBRL Taxonomy Similar to a dictionary that describes information contained
within an XBRL instance. However, unlike a dictionary, XBRL
taxonomies can also express other information, such as hierarchies
of relations between those dictionary entries.
Concept Used by facts in an XBRL instance. Concepts describe facts and
have specific and unique meanings, names, data types, and other
attributes. A concept specifies the XML tag and other constraints
on a fact in an XBRL instance. Concepts are similar to the words in
a dictionary.
Network A set of related concepts or resources. You can use networks to
organize an XBRL taxonomy and to express multiple sets of relations
or resources.
Resource Network A set of related resources. Resources provide additional
information about a concept.
Labels Allow the taxonomy creator to create labels for each concept in
the taxonomy. They let humans work with a more user-friendly label
rather than having to work with ugly XML element names. Labels also
provide multilingual and multidialect support. Labels also provide
documentation for a concept, such as a human-readable definition of
the concept.
References Allow the taxonomy creator to express references to external
sources (such as a paragraph in a manual) that explain or further
define a concept in human terms. References are pointers to a
reference, not the references themselves.
Formulas Allow the taxonomy creator to express various types of business
rules to be enforced. XBRL instances that use an XBRL taxonomy
containing these rules must comply to these rules.
Relations Networks A set of related concepts. Relation networks allow taxonomy
creators to associate one concept with another concept in various
ways for many purposes.
Presentation Allow for a simple parent-child type of relationship (a
hierarchy) to be expressed. Presentation relations are primarily
intended to help organize the XBRL taxonomy. You can also use
presentation-type relations to help generate human-readable
renderings of an XBRL instance.
Calculation Allow for certain types of computations to be expressed between
concepts within an XBRL taxonomy. Only addition and subtraction are
handled by XBRL calculation relations. You can use XBRL Formulas to
express more sophisticated computations.
Definition Can be used for any number of purposes. Definition relations
basically let you express any type of relation, and you can define
any role that explains what type of relation you have created.