4. XML – eXtensible Mark-up Language
XML is a key Internet standard for transmission and
interoperability
• Electronic transmission is newer than electronic storage
• With the growth of the Internet, transmission of data is exploding
• XML uses "tags" to define data and is self-descriptive
• XML has been developed by w3 consortium
• Designed to describe, create, structure, store and transmit
information
• Processing gets shifted from applications to data
• Data stored in hierarchy
• Data stored in simple easy to use xml files
4
5. Extending XML - XBRL
• XBRL combines hierarchical xml data with relationships and
references between the data points.
• It uses Xlink technology of linking xml files
• It links the data xml files with various other files containing
definitions, presentation, calculation, references relationships
• XBRL data files are a set of xml and xsd files.
Data with tags,
Data with tags
Data Hierarchy &
hierarchy
Relationships
Primitive Data
XML Data Formats XBRL Data Formats
Formats
5
6. XML Vs. XBRL
XML XBRL Example
The tags are not fixed and Tags defined in the schema Com A: Net Sales Taxonomy : SalesRevenueNet
standard. document are standard for Com B: Net turnover
taxonomy.
XML defines hierarchy of the XBRL defines relationships using a <GrossProfit> GrossProfit 1
tags, which needs to be standard approach <TotalRevenue/> TotalRevenue 1
processed by the application <TotalExpenditure/> TotalExpenditure -1
</GrossProfit>
XML is validated with a single xsd XBRL data files are validated with Total Expenditure is to be Software automatically
file for data type and occurrence xml linkbase files & schema files subtracted from Total understands that Total
validations. Revenue. This is build at the Expenditure needs to be
software level subtracted from Total Revenue
XML data files have no standard XBRL data files have a standard User defined formats Standard format for defining
format format context units and facts.
Express single Relations Express Multiple Relations Only presentation Other additional relationships
relationship
6
8. XBRL Taxonomy & Instance Architecture
XBRL Data
XBRL Data Definition
XBRL Data
Relationships
8
9. XBRL documents
Instance
Taxonomy document
ABC Company Ltd. Rs.(000’s)
Balance Sheet as at 31-03-2009 A Segment B Segment C Segment Group
Fixed assets 30 35 33 98
Investments 18 22 20 60
Deferred tax assets 7 8 12 27
Current assets:
Cash and cash equivalents 13 16 23 52
Sundry debtors 17 18 18 53
Inventories* 20 21 19 60
Total current assets 50 55 60 165
Total assets 105 120 125 350
* Includes inventories on acquisition of textile segment
9
10. Overview of XBRL Specifications
XBRL 2.1 Specification
• Recommendation – 2003-12-31 corrected Errata – 2008
• Some technical files
• xbrl-instance-2003-12-31.xsd
• xbrl-linkbase-2003-12-31.xsd
• xl-2003-12-31.xsd
• xlink – 2003-12-31.xsd
Conformance suite
• More than 200 test sets to verify the applications process the taxonomy
correctly
FRTA and FRIS
• Financial reporting taxonomy architecture
• Financial reporting instance standards
• Guidelines on best reporting practices
• Both have different conformance suites
10
11. Overview of XBRL Specifications
Dimension specification
• Recommendation – 2006-09-18
• Modular extension of 2.1 where in dimensions are used
• Some technical files
• xbrldt-2005.xsd
• xbrldi-2006.xsd
Formula specification
• Recommendation – 2009
• Modular extension of 2.1 where in formulae are used
• Number of technical files
11
13. Taxonomy
Taxonomy word is derived from:
tassein–classification
nomos–law/science
Taxonomy means “Science of Classification”
• In XBRL,
Taxonomy is “systematic classification of business
and financial terms”
13
14. Role of taxonomies
Standardization
Facilitates Understanding of
the Data System
Enables Reuse, Data
Exchange and Comparisons
14
15. Taxonomy Components
XBRL Taxonomy is made up of –
Schema
Dictionary of business and financial terms, along with
their XBRL properties
Linkbases
Interrelationships amongst the terms defined in the
schema
15
16. Schema
• Similar to XML schema
• File with .xsd extension
• Contains attributes describing the whole
document
• Contains the definition of financial terms and
their attributes
• Refers to the Linkbases
16
17. Schema
Namespace
– Purpose of declaring Namespace
– Namespace Prefix
Indian GAAP Taxonomy
• Namespace : http://xbrl.in/in-gaap/2009-06-30
• Prefix : in-gaap
SEBI MF Taxonomy
• Namespace : http://xbrl.in/sebi/2010-02-20
• Prefix : sebi
17
18. Schema : Element
Meaning
An element is a business or a financial concept which is defined according
to XBRL specifications.
Example
– Data points reported in Financial Statements
– Data points reported in Notes to Accounts
Basic Attributes
Financial Reporting XBRL
Concept Element
Relationship
To other Elements &
Information
18
19. Schema : Element
element name
• According to LC3 Rules
• Preferable to have Style Guide
• Some of the principles that should be followed while defining the
elements
element id
• Element id and element name should be unique
• Best practice according to FRTA is to use prefix_name
Concept Element Name Element ID
Loans and Advances LoansAdvances frs-gp_LoansAdvances
Short Term Borrowings ShortTermBorrowings us-gaap_ShortTermBorrowings
Cash and Cash Equivalents CashCashEquivalents ifrs-gp_CashCashEquivalents
19
21. Element Attribute :Data Type
Data value that is allowed for element
defined
– Monetary
– String
– Shares
– Decimal
– Pure
– Other
21
22. Data Types – Few examples
Data type Examples
Monetary Sales
Current liabilities
Reserves
String Name of employee
Inventory policy
Shares Basic number of shares outstanding
Shares held by managing director
Decimal Office floor area
Number of employees
22
23. Element Attribute : Period Type
Attribute that specifies whether an
elements is measured “As on a point of
time” or “Over a period of time”
• Instant
• Duration
23
24. Element Attribute : Balance Type
Type of balance that is applicable to the
Monetary item
– Debit
– Credit
Exceptions
24
25. Element Attribute : Abstract
Explains whether element will hold value in the
instance documents
– „abstract = false‟
– „abstract = true‟
Usage
25
26. Element Attribute : Nillable
Determines whether the element is mandatory to
be reported or not
– „nillable = false‟
– „nillable = true‟
By default, nillable is defined as „true‟
26
27. Element Attribute : Substitution Group
• Item
– Element representing single fact
• Tuple
– Element representing multiple facts
• Dimension
– Element representing dimensional information
• Hypercube
– Element grouping dimensional information
27
28. Schema: Element Attributes
Element name and element ID
• Defines concepts uniquely in the way system can interpret
Data type
• Values expected for concepts (monetary, percentage, shares etc.)
Period type
• When the concept is measured – as at a point of time or over a period
of time
Nillable
• Determines whether the element is mandatory
28
29. Schema: Element Attributes
Balance type
• Accounting balance of concept i.e. debit or credit
Abstract
• Determines whether an element can or cannot hold
value in instance document
Substitution group
• Classes as defined by specification to enable system
understand, process and validate information.
29
31. Quiz Time!!!
For the “Element :Outstanding Expenses”, what would be
the value of the following attributes?
DataType : _____ (String, Shares, Monetary)
SubsitutionGroup : _____ (Item, Tuple)
BalanceType : _____ (Debit, Credit)
periodType : _____ (Instant, Duration)
Nillable : _____ (True, False)
Abstract : _____ (True, False)
31
32. Quiz Time!!!
For the “Element :Number of equity shares outstanding”,
what would be the value of the following attributes?
DataType : _____ (String, Shares, Monetary)
SubsitutionGroup : _____ (Item, Tuple)
BalanceType : _____ (Debit, Credit)
periodType : _____ (Instant, Duration)
Nillable : _____ (True, False)
Abstract : _____ (True, False)
32
33. Quiz Time!!!
For the “Element :Interest expense”, what would be the
value of the following attributes?
DataType : _____ (String, Shares, Monetary)
SubsitutionGroup : _____ (Item, Tuple)
BalanceType : _____ (Debit, Credit)
periodType : _____ (Instant, Duration)
Nillable : _____ (True, False)
Abstract : _____ (True, False)
33
34. Quiz Time!!!
State whether the following statements are true or false
1. Earnings per share is normally defined as having share
item data type
2. Number of employees in company is defined as
abstract=false
3. Element name consists of a prefix followed by an
underscore followed by element id.
4. Accumulated depreciation will have period type as
duration
34
35. Exercise
For the given sample set of data, define the elements
and their XBRL properties in the schema file
35
37. Linkbases
Linkbases are taxonomy components which
define relationships between elements and link
them to external resources
• Interrelationships between elements
• References to regulatory material
• Human readable definitions of elements
• Six types of linkbases
37
38. Types of Linkbases
Describing • Presentation Linkbase
Relationship • Calculation Linkbase
amongst • Definition Linkbase
• Formula Linkbase
elements
Linking to
• Reference Linkbase
external • Label Linkbase
sources
38 38
39. Linkbase : Basic terminology
Extended links :
• Logical grouping of elements.
• Linkbase is a collection of extended links
Locators :
• Point to the concepts that are to be related
Arc :
• Used to connect two or more locators
Arc role:
• Functionality of the arc joining the locators
39
40. Presentation Linkbase
Element Order
AssetsAbstract
Assets FixedAssets 1
Abstract
CurrentAssetsAbstract 2
Cash 1
AccountsReceivable 2
Current
FixedAssets Assets Assets Inventories 3
Abstract CurrentAssets 4
Assets 3
Accounts Current
Cash Inventories
Receivable Assets Present Structure
Headers are abstract
Preferred role
40
41. Calculation Linkbase
Element Order Weight
Assets
Assets
FixedAssets 1 1
CurrentAssets 2 1
Cash 1 1
AccountsReceivable 2 1
Inventories 3 1
FixedAssets CurrentAssets
• Weights = +1 / -1
• Cross context calculations
• Opposite balance attributes
Accounts – credit element + credit element
Cash Inventories
Receivable – credit element –debit element
– debit element + debit element
– debit element –credit element
41
42. Presentation v/s Calculation linkbase
Presentation Link Calculation Link
Element Order Element Order Weight
AssetsAbstract Assets
FixedAssets 1 FixedAssets 1 1
CurrentAssetsAbstract 2 CurrentAssets 2 1
Cash 1 Cash 1 1
AccountsReceivable 2 AccountsReceivable 2 1
Inventories 3 Inventories 3 1
CurrentAssets 4
Assets 3
42
43. Definition Linkbase
• Defines additional relationships
• If dimensions are required to be modeled in the taxonomy, it is
done with the definition link.
• Four standard types of roles (Other than dimensional)
o General – Special
o Essence – Alias
o Requires – Elements
o Similar – Tuples
43
44. Label Linkbase
• Some elements can be unreadable
StatementThatFinancialStatementsAndCorrspondingFiguresForPr
eviousPeriodsHaveBeenRestatedForChangesInPurchasingPower
Financial statements restated for purchasing power changes
• Element labels
Multilingual Differentiation done by language attribute of XML
Multicontextual Differentiation done by xlink:role
44
45. Label Linkbase
label Examples
Multilingual labels:
standard label Earnings (Loss) in Foreign Currency
Assets, total – English terse label Earnings (Loss) Forex
Actifs, total – French verbose label Earnings (Loss) in Foreign Currency
Activos, total – Spanish of the Entity
positive label Earnings in Foreign Currency
negative label Loss in Foreign Currency
total label Total Earnings (Loss) in Foreign
Multi contextual labels: Currency
negated label -
period start label Cash and Cash Equivalents,
General reserve, beginning balance
Beginning Balance
General reserve, ending balance
period end label Cash and Cash Equivalents, Ending
Balance
documentation -
45
46. Reference Linkbase
definitionRef • Storethe source that describe the associated
• Reference for defining the meaning of the element external regulation or standard
• Present relationship between elements and
disclosureRef external regulations or standards
• Relates business concepts to Metadata
• Reference for disclosure as required by the regulation or
the standard relating to the concept.
presentationRef
Reference parts Use
• Reference to a document which explains how and where
the element should be presented in terms of its placement IssueDate Issue date of the standard or interpretation
and labelling Name Name of authoritive literature eg. IAS, IFRS etc
measurementRef Number Number of the standard or interpretation
Section Sections of standard or interpretation.
• Reference provide explanations about what determines the
value of an element and how it should be calculated Paragraph Paragraph in the standard
Subparagraph Subparagraph of a paragraph
commonPracticeRef Clause Subcomponent of a sub paragraph
Subclause Subcomponent of a clause in a paragraph
• Reference for common practice disclosure relating to the
concept.
46
47. Linkbases : Arcroles
Linkbase Arc role used
Presentation parent-child
Calculation summation-item
Definition* general-special
essence-alias
similar-tuples
requires-elements
Label concept-label
Reference concept-reference
* Other than for dimensional relationships
47
48. Linkbases
Presentation Linkbase
• Defines how concepts should be presented &
displayed
Calculation Linkbase
• Arithmetical relationship between the concepts
Definition Linkbase
• Defines additional relationship between elements
48
49. Linkbases
Formula Linkbase
• Advanced and user defined mathematical and logical
relationships between concepts
Label Linkbase
• Provide human readable information about concepts
Reference Linkbase
• Contains the references to literature
49
50. Quiz Time!!!
Fill in the blanks –
1. The arc role used in presentation linkbase is
_________.
2. ________ plays a very important role in calculation
linkbase.
3. In order to establish a relationship between two
similar concepts _______ arc role is used.
4. _________ plays a very important role in presentation
linkbase.
5. The elements in calculation linkbase must have
identical ______ type.
50
51. Exercise
For the same given sample set of data, define the
calculation, presentation and label linkbase
51
53. Steps in taxonomy building
Steps in taxonomy building
• Analysis and Element identification
• Data modeling and taxonomy designing
• Validating and Testing taxonomy
53
54. Analysis and Element identification
• Understanding the business requirements
• Analyzing the relevant regulatory literature and
guidelines to understand the reporting requirements
– E.g. In case of Indian GAAP taxonomy, the Companies Act,
Accounting standards, Listing agreements need to be analyzed
• Identifying the data elements to be reported
• Rationalizing the reporting requirements
– Same elements appearing in the different reports need to be defined
only once
54
55. Data modeling and taxonomy designing
• Defining the XBRL properties of the elements
• Defining the interrelationship between the
elements identified
• Structuring the taxonomy as per the XBRL
specifications
– Nature and properties of elements
– Grouping the elements
– Using dimensions
• Creating the taxonomy documents
55
56. Validating and Testing taxonomy
• Validating the taxonomy
– XBRL Specifications
– Elements and the interrelationships
• Testing the taxonomy
– Testing for fitness
– Creating sample instance documents
56
58. Few XBRL Taxonomies around the world..
• US-GAAP 2009 / 2010
– Financial Reporting to US SEC, Mutual Fund Risk Return Summary Taxonomy
• IFRS 2010
– Represents IFRS 2010
• FinRep & Corep
– Financial Reporting & BASEL II based Reporting in CEBS*
Indian Taxonomies
• Indian GAAP
– C&I
– Banking
• RBI
– Basel II
– Liquidity Returns (Form A)
– Currency Position (GPB)
• SEBI
– Mutual fund taxonomy
58
60. FRTA - Overview
• Financial Reporting Taxonomies Architecture
• Describes the architecture of financial
reporting taxonomies
• It also provides a guidance for designing and
developing taxonomies
60
61. Structure of FRTA
Extensions Layer:
Guidance on how to organise sets of taxonomies and linkbases
Discoverable Taxonomy Set Layer:
Features and properties of taxonomy schemas and linkbases
Relationship Layer:
Usage of definition, calculation and presentation for modeling
Concept Layer:
Elements, links, arcs, labels, references and tuples
XML, Namespaces, XML Schema and XML Linking Language (Xlink)
Layers of the Financial Reporting Taxonomy Architecture
61
62. FRTA : Rules for Concepts
Schema must define only one concept for each separately defined class of facts
Contextual and measurement information Must not result in different elements in a
taxonomy
Concept names should adhere to the LC3 convention
Label Camel Case Concatenation
Element names MUST be based on an appropriate presentation label for the element.
Label changes in subsequent version of the taxonomy, should not result in the change of element name.
First character of the element should not be underscore (_).
The first character of the element name must be capitalized.
Connective words like and , the, for, which can be omitted if required.
Special characters should not be used: ( )*+[]?/^{}|@ # % ^ = ~ ` “ ‘ ; : , <> & $ ₤ €
Element names should not exceed 256 characters
62
63. FRTA : Rules for Concepts
Element declarations must contain an “id” attribute beginning with prefix followed by
an underscore and then element name
The value of the “nillable” attribute should be true for all concepts
Monetary concept declarations must use the balance attribute
All documentation of a concept must be contained in XBRL linkbases
A concept must have a label with the standard label role
63
64. FRTA : Rules for Presentation Linkbase
A linkbase may contain any number of sets of extended-type links partitioned by role
A concept meant to be ordered among its siblings must have a parent-child presentation
relationship from its parent concept.
Child having the same parent in extended links with the same extended link role should
provide preferred labels.
Abstract elements may be used as a heading to group concepts for presentation.
In movement analysis only one element must be defined for beginning, adjusted and
ending balances , each with a different preferred label
64
65. FRTA : Rules for Calculation Linkbase
All concepts having additive relationship in all equal contexts should have calculation
relationships.
Alternative calculation relationships for the same item must be in extended-type links
with distinct roles
Taxonomies should define an extensive set of subtotal concepts to limit the extensions
The declarations of elements in calculation linkbase must have identical values of the
periodType attribute.
The source & target concepts of summation-item relations must be distinct
65