software to create xbrl instance documents
DESCRIPTION
Software to Create XBRL Instance Documents - PowerPoint PPT PresentationTRANSCRIPT
Software to Create XBRL Instance Documents
Thanks to Dr. Maureen Mascha, Marquette University, Dr. Rajendra Srivastava, University of Kansas, Dr. Clifton White, University of Delaware, Ernst & Young, LLP, Greg Buttery (Iowa State University), Breanne Kruger (Iowa State University), Leslie Pease (Iowa State University) and XBRL.org for assistance with material preparation.
Outline
Definition and Value of XBRLCurrent and Future Reporting
ProcessXBRL Consortium and Evolution of
XBRLTechnical Details – XML and XBRLXBRL Framework – Instance
Documents & TaxonomyXBRL Progress & Challenges
Graph of Cash Flows for Cignafor Ten Years
Comparison of Cash Flows for Two Companies
XBRL Definition* XBRL is the specification for the eXtensible Business Reporting
Language. XBRL allows software vendors, programmers and end users to enhance the creation, exchange, and comparison of business reporting information. Business reporting includes, but is not limited to, financial statements, financial information, non-financial information and regulatory filings such as annual and quarterly financial statements.
XBRL defines a syntax in which a fact can be reported as the value of a well defined reporting concept within a particular context. The syntax enables software to efficiently and reliably find, extract and interpret those facts. The XBRL framework splits business reporting information into two components: XBRL instances and taxonomies.
* The above definition is provided by XBRL.org in “Extensible Business Reporting Language (XBRL) 2.1 RECOMMENDATION - 2003-12-31 + Corrected Errata - 2005-04-25.”
Key Terms Standard Taxonomy
– Dictionary of XBRL tags adopted by regulatory body
Extension Taxonomy– XBRL tags developed by financial statement provider to
extend standard taxonomy
Instance Document– Financial statements with XBRL tags; can be
read by XBRL/XML rendering (reader) software
Value of XBRL Processing, analyzing, and disseminating
information become much more efficient and effective
(Better, Faster & Cheaper)– Improves effectiveness by eliminating the need
for re-entering data for processing– Improves efficiency by removing redundancies– Disseminates information independent of
platform– Transparency of information– Makes it easy to use automated analytical tools
Browsing the Web (Content –without Context)
4,350 hits for IBM’s property plant and equipment
Current Reporting Process
RegulatoryFilings
Web Site
Tax Return
Trade Filings
Printed Financials
Accounting System
Third Party Information
ExplanatoryText
• Rework and Delays• Ad hoc and non
repeatable ProcessesInternalReports
XBRL Reporting Process
RegulatoryFilings
Web Site
Tax Return
Trade Filings
Printed Financials
Accounting System
Third Party Information
ExplanatoryText
XBRLDocuments
Reduces redundancies & discrepancies
Repeatable processes using tools
InternalReports
Primary Use Cases
Accounting Corporate HQ
Operating Divisions
-External Auditors
Sharing
Information
Easi
ly
Specific Uses
Investors
Lenders
More
Regulators
-Data Intermediaries-Others Tagging
can occur
Regulator Filings
Financial Statements
Earnings Releases
XBRL Information Chain
ExternalFinancialReporting
Business Operation InternalFinancialReporting
Investmentand Lending
Analysis
Business Processes
ParticipantsParticipants
AuditorsTradingPartners
Investors
FinancialPublishersand Data
Aggregators
Regulators
XBRL forRegulatory Filings
XBRL for AuditSchedules
XBRL forTax Filings
Software Vendors
ManagementAccountants
Companies
XBRL GL and XBRL for Business Processes
XBRL for Financial Statements
The XBRL Organization: XBRL Consortium (www.xbrl.org)
XBRL International– A not-for-profit organization consisting of more
than 300 members at the present time. Organizational Structure
– Comprised of local jurisdictions which represent countries, regions or international bodies and focus on the progress of XBRL in their areas as well as contributing to international development.
Evolution of XBRL: A Historical Perspective
April 1998: Charles Hoffman, CPA, investigated the use of eXtensible Markup Language (XML) for the electronic reporting of financial information in the USA for the first time.
October 1998: AICPA decided to fund a project aimed at creating a prototype set of financial statements in XML.
January 1999: Based on the prototype financial statements, the AICPA was convinced that XML was important to the accounting profession.
July 1999: The project to develop eXtensible Financial Reporting Markup Language (XFRML) was funded by The AICPA Board of Directors– This marks the conception of XBRL – XFRML is a predecessor of XBRL– XFRML focused on just reporting of financial information, where as
XBRL focused on reporting all business relevant information
Evolution of XBRL: A Historical Perspective
August 1999: 12 companies, (besides the AICPA), including ‘Big 5’ joined the project as members of the XFRML Steering Committee.
October 1999: First meeting of the XFRML Steering Committee. April 2000: XFRML Steering Committee was officially changed to
XBRL Steering Committee. July 2000: First specification of the XBRL Taxonomy for Financial
Statements for the commercial and industrial U.S. companies. November 2001: The second specification of the XBRL was released
for public comment (see at http://www.xbrl.org for details). April 2002: International Accounting Standards Board (IASB)
released a core taxonomy of XBRL for Financial Statements (IASC 2001).
December 2003: XBRL Specification 2.1 was approved and released by International Steering Committee of XBRL International.
Evolution of XBRL: A Historical Perspective
April 2004: Revised XBRL Specification 2.1 was released by International Steering Committee of XBRL International.
April 2005: SEC XBRL Voluntary Financial Reporting Program (VFRP)
January 2006: SEC announces expedited reviews for XBRL filers
September 2007: SEC signs contract for $5 million with XBRL US to develop US GAAP Taxonomies with financial notes and $45 to replace EDGAR with IDEA
March 2008: XBRL US releases US GAAP Taxonomies with financial notes
August 2008: SEC announces IDEA
December 2008: SEC approves XBRL mandate
XBRL First Adopters:‘Mega’ Users of Company Financial Data
Types of Entities Regulators (e.g. FDIC, APRA, CSSF,..) Global Financial Services
(e.g. Deutsche Bank, B of A)
Market Analysts (e.g. MS) Stock Exchanges (e.g. NASDAQ,Tokyo, ..) Data Intermediaries (e.g. EOL, Reuters, ..) Australian Prudential
Regulatory Authority (APRA)
Usage/MotivationInternal - Reduce Costs,
Improve EffectivenessInternal - Reduce Costs,
Improve EffectivenessInternal & External
External - Create/Expand Revenue Stream
External - Expand Revenue Stream
Collect financial statements from more than 12,000 Super Funds
HTML, XML, and XBRL HTML stands for Hyper Text Markup Language. XML stands for EXtensible Markup Language. HTML was designed to display data and to focus on how data
looks on the Web.• XML was designed to describe and structure data, and to
focus on what data is, i.e., XML is about describing information.
XBRL is an XML Derivative. It is a global e-business language for supply chain management and business and financial reporting.
Technical Specification of HTML HTML has fixed number of predefined tags related to how
text and other elements are to be displayed on the Web Names and Contents of Tags in HTML
– Names are encased in angle brackets such as: <b> for bold
– The contents are usually written between the opening tag such as “<b>”and the correspond closing tag </b>
– The data displayed are stored inside the HTML document Examples: <b>This is bold</b>, <i>This is italics</i> The web Browser will display as: This is bold This is italics
Names and Contents of XML Tags In XML, data can be stored in separate XML files. Thus, the
same data file can be used for displaying in different formats XML tags are not predefined. Users define them For example: <name>Cy Clone</name> “name” enclosed between “<“ and “>” is the tag for name and
represents the opening tag and “</name>” represents the corresponding closing tag.
The content of the element <name> is “Cy Clone”, which is enclosed between the opening tag and closing tag
XML Name Restrictions for Elements Names must starts with a letter or a underscore “_”. Names can contain any combination of letters, numbers,
underscores “_”, dashes “-”, or periods “.” Names must not contain any other characters. Names must not start with letters xml (or XML or Xml ..). Names cannot contain spaces. All elements names (tags) are case sensitive, e.g., <name>
and <Name> are two different elements (tags).
XML Example of a customer list<?xml version = “1.0”?> <customerList> <name>Cy Clone</name> <street>525 Lincoln Way</street> <city>Ames</city> <state>Iowa</state> <zip>50014</zip> <country>USA</country></customerList>
XML Syntax The first line <?xml version = “1.0”?> in the document is the XML
declaration. It defines the XML version of the document. The next line <customerList> describes the root element of the
document. There can be only one root element in an XML document. An element may contain other elements, e.g., The element
<customerList> contains other elements such as <name>, <street>, etc.
XML Syntax If an element has no content, say <zip>, then it can be expressed
as: either <zip></zip> Or <zip/> All tags must be properly nested. Elements are related as parent/child and siblings.
– <customerList> is parent of <name>, <street>, and other elements
– <name>, <street>, <city> are siblings.
XML Syntax - Attributes Elements may have additional information associated with
them. This additional information can be expressed as attributes of the element
Attributes must be included next to the name of the element in the opening tag.
An element can have multiple attributes written one after the other with no significance attached to the order.
The value of the attribute is written within quotes, using either single or double quotes.
XML Attributes – An Example
<customerList> <name sex=“male” customer_id=“55”> Cy Clone</name> <street>525 Lincoln Way</street> <city>Ames</city> <state>Iowa</state> <zip>50014</zip> <country>USA</country> </customerList>
An Alternative to Attribute<customerList> <name>Cy Clone</name> <sex>male</sex> <customer_id>55</customer_id> <street>525 Lincoln Way</street> <city>Ames</city> <state>Iowa</state> <zip>50014</zip> <country>USA</country></customerList>
XML Schema
XBRL uses XML Schema to define elements, attributes, and the type of content (value) of an element allowed in the document
XML Schema defines the elements, their attributes, relationships, and the type of contents
XML Schema describes the vocabulary of an XML document A single XML document may use multiple XML Schemas, i.e.,
multiple vocabularies
XML Namespaces Namespaces are used to distinguish between two or more
distinct XML Schemas (XML Vocabularies)Why use namespaces? It allows one to use more than one vocabulary in a single
XML document.ExampleVocabulary 1 (one XML Schema): <name sex=“male” customer_id=“55”>Cy Clone</name> <street>525 Lincoln Way</street> <city>Ames</city> <state>Iowa</state> <zip>50014</zip> <country>USA</country>Vocabulary 2 (another XML Schema): <name sex=“female” customer_id=“56”>Jo Clone</name> <address>325 Duff Avenue, Ames, IA, 50014, USA</address>
XML Namespaces Namespaces are declared as special namespace attributes,
e.g., xmlns:prefix=“namespace name”. Prefix is used as short form of the namespace name in an XML
document Traditionally a namespace name is expressed as:
xmlns:prefix=“http://www.somename.com/xyz1”Example <customerList xmlns:v1=“http://www.Cyberry.com/schema1” xmlns:v2=“http://www.Cyberry.com/schema2”> <v1:name sex=“male” customer_id=“55”>Cy Clone</v1:name> <v1:street>525 Lincoln Way</v1:street> <v1:city>Ames</v1:city> <v1:state>Iowa</v1:state> <v1:zip>50014</v1;zip> <v1:country>USA</v1:country> <v1:name sex=“female” customer_id=“56”>Jo Clone</v1:name> <v2:address>325 Duff Avenue, Ames, IA, 50014,
USA</v2:address> </customerList>
Anatomy of an XBRL TaxonomyXBRL Framework
FootnoteCalculation DefinitionPresentation Footnote
Label Reference
Schema.xsd
Linkbases.xml
Anatomy of an XBRL Taxonomy-Schema
According to XBRL 2.1 Specification released by XBRL International:
“A taxonomy is defined as an XML Schema and the set of directly referenced extended links and any extended links that are nested within the XML Schema.”
In other words: A Taxonomy is made up of a group of interrelated XML files: XML Schema File (.xds file) and Linkbase Files (.xml files)
XML Schema The XBRL taxonomy schema file defines the actual concepts
(elements) that form the basis of a taxonomy. It stores their names, data types, period type, how they can be utilized, etc. The properties of schema elements are defined in the XBRL 2.1 Specification.
An XBRL linkbase file contains the explicit relationship definitions between the concepts defined in the XBRL schema.
In general there are six linkbase types defined by the XBRL version 2.1 specification:
1. The label linkbase allows the user to attach labels with different roles and languages to a given concept.
2. The reference linkbase allows the user to attach external information (authoritative sources) to concepts.
3. The presentation linkbase defines how concepts are nested and ordered.
4. The calculation linkbase defines how values of concepts should, for example, sum up from one to another.
5. The definition linkbase allows the user to define additional semantics and relationships.
6. The footnote linkbase allows the user to relate a footnote description to a concept
Anatomy of an XBRL Taxonomy -Linkbase Files
Naming Taxonomy Element
XBRL naming conventions follow XML convention.– Names must start with a letter or a underscore “_”.– Names can contain any combination of letters, numbers,
underscores “_”, dashes “-”, or periods “.”– Names must not contain any other characters.– Names must not start with letters xml (or XML or Xml ..).– Names cannot contain spaces.– Names (tags) are case sensitive.
Each name within a taxonomy must be unique and must start with an alpha character or the underscore character.
Element names should not be interpreted as containing a "hierarchical" structure
Taxonomy structure is expressed in the XBRL linkbases
US Financial Reporting Taxonomy Structure
Commercial & Industrial
(us-gaap-ci)
Primary Terms Relationships
(usfr-ptr)
Management Report
(usfr-mr)
AccountantsReport
(usfr-ar)
SEC Certification(usfr-seccert)
Financial Service Terms
Relationships(usfr-fstr)
Banking and Savings Institutions
(us-gaap-basi)Insurance Entities
(us-gaap-ins)Investment
Management(us-gaap-im)
Company Extension
Instance Document
MD&A(usfr-mda)
Primary Terms Elements(usfr-pte)
Financial Service Terms Elements
(usfr-fste)
Investment Management
Elements(usfr-ime)
Anatomy of an XBRL Taxonomy - XBRL Schema Element, Attributes, and Linkbase Examples
There are several basic attributes of an XBRL element that provide the detail about them. In the example below, “CashCashEquivalents” has a unique element name which also identifies its source taxonomy, a data type (monetary), balance type (debit), and a period type (instant) which defines how it is reported at a given instant or duration.
Attribute Example Usfr-pte:CashCashEquivalents
Monetary/String, etc. Debit/Credit Instant/Duration
XBRL Name Data Type
Balance TypePeriod Type
Basic ElementAttributes
In addition to the basic attributes, each element has a set of defined relationships with the taxonomy linkbases. In the example below, “CashCashEquivalents” has a human readable label, a reference to authoritative literature (SEC), a presentation hierarchy and a calculation summation.
Anatomy of an XBRL Taxonomy - XBRL Schema Element, Attributes, and Linkbase Examples
Name : SEC Regulation S-XRule Number : 7Chapter : 3Paragraph : 2
Relationships
To Other Elements & Information (Linkbases)
Calculation
Presentation
Reference
Total Current Assets = Cash and Cash Equivalents +
Accounts Receivable Trade, Net + Inventories, Net + …
Cash and Cash EquivalentAccounts Receivable Trade, NetInventories, Net Total Current Assets
Label
e.g., “Cash and Cash Equivalents”
Linkbase
Example
Anatomy of an XBRL Instance DocumentTagged Value: The main function of the instance document is to store financial data tagged with elements from a referenced taxonomy (containing element definitions and Meta data) for reporting.
Instance ComponentTagged Value Cash and cash Equivalents : US$ 575,000,000 (1)
Example
XBRL Name, i.e.,
TagUsfr-pte:CashCashEquivalents
Unit: An instance document contains a unit for each type of measured data tagged. Currencies and shares are the most common examples of Units of measure in Financial Reporting.
ID USD
Measure $ , Shares etc.
UNIT Example Attribute
Anatomy of an XBRL Instance Document
Contexts: Every piece of financial data in an instance document must be associated with a context. A context provides additional meta data, particularly the period it is reported in. In addition, each context can also provide Segment (Ex. Business Unit or Revenue Center) and Scenario (Additional information Ex. Restated, Unaudited, etc.) information.
Precision or Decimal are used on numeric values. In this example, a Precision of 9 is given. This means that the first 9 digits, counting from the left, starting at the first non-zero digit of the value are known to be trustworthy for the purposes of computations to be performed using that numeric fact. A Decimal of 2 would indicate that the value of the numeric fact is known to be correct to 2 decimal places.
ContextsScenario Segment
Period
Audited, Pro-forma, Restated
Financial Printing, Outsourcing etc.
Instant: As of 31-12-2004Attribute Example
PrecisionOr
Decimal:Precision = 9, Decimal = 2
Example
Anatomy of an XBRL Instance Document: Footnotes
Footnote Link: Footnote Links allow for the creation of structured text annotations between facts.
Footnote Link:
Example(1) Cash and Cash Equivalents-All highly liquid investments with original maturities of three months or less at date of purchase are carried at cost plus accrued interest, which approximates fair value, and are considered to be cash equivalents. All other investments not considered to be cash equivalents are separately categorized as investments.
Anatomy of XBRL - Extending a taxonomy
One of the most powerful and versatile aspects of XBRL is taxonomy extensibility. This allows a taxonomy to reference other taxonomies and define its own set of relationships and information (presentation, calculation, labels, etc.) around those taxonomies, in addition to adding new unique elements in the extension schema itself.
Anatomy of XBRL - Consuming an XBRLInstance Document1. Using XBRL
enabled software a user accesses an entity’s Instance Document through the internet.
2. The Instance Document references the entity’s Extension Taxonomy which contains information and relationships specific to that entity.3. The entity Extension Taxonomy references a
Public Taxonomy and extends it.4. The Entity Instance Document, Extension
Taxonomy and Public Taxonomy reference the XBRL Technical Specification Schema for compliance with the 2.1 specification.
Balance Sheet: Taxonomy Element and Instance Data
December 31 2004 2003
ASSETSUS$000,0
00US$000,0
00Current Assets:Cash and Cash Equivalents (1) $634 $575Accounts receivable, less allowance for
doubtful accounts of $88 and $80 2,101 1,804 Inventories 1,515 1,374 Total current assets $4,250 $3,753Taxonomy Schema Snippet<element id="usfr-
pte_CashCashEquivalents" name="Cash and Cash
Equivalent"
type="xbrl:monetaryItemType"
substitutionGroup="xbrli:Item"
xbrli:periodType="instant" xbrli:balance="debit" nillable="true"/>
Instance Document Snippet
<usfr-pte:CashCashEquivalents contextRef=“Y-2003" unitRef="U-Monetary“ decimals="0"> 575000000</usfr-pte:CashCashEquivalents>
Taxo
nom
y El
emen
tInstance value
Reporting period
Unit of M
easure
Steps to Create Instance Document
Start with Excel spreadsheetCreate entity profile (company name,
default taxonomy, etc.) Create calendar periodTag financial itemsValidate tags, export to XBRL instance
document
Stand alone XBRL Software
Dragon Tag - Rivet XWand - Fujutsu Spider Monkey – Core Filing True North – Decision Soft Intelligent Financial Systems – Core Filing FRx 6.7 - Microsoft UB Matrix – UB Matrix
Dragon Tag
Set-upDragon Tag is an add-in product that directly interfaces with MS Office products
("drag-and-tag").
Preparer interfaceMost of the work takes place within the Profile Pane.
Installation
If preparers have both the .NET Framework 1.1 and .NET Framework 2.0 installed on their computers, they need to download and manually patch the software before operating Dragon Tag 1.5.
Financial statement interface
Balance Sheet and Income Statement elements were added in the same pane, giving better continuity for preparers.
Inputting repetitive data
Dragon Tag does not require preparer to create repetitive entries. Instead, a "hopper" entry is created and used throughout the tagging process.
Taxonomy interfaceDragon Tag allows preparers to create taxonomy directly without specifying
setting types if appropriate.
Interface to tag values
Drag and drop process of tagging values.
Selecting standard taxonomy
To find tags in selected taxonomy, preparer clicks through several categories. Categories are fairly unique.
Target market
Dragon Tag appears to be product for smaller firms who prepare their financial statements from smaller accounting packages and export them into Word or Excel format.
XWand
Set-up Requires Sun Java to work. Standalone product
Preparer interfaceUses several panes with somewhat similar (and therefore confusing) functionality
Installation
No issues noted
Financial statement interface
Balance Sheet and Income Statement elements were added separately; a repetitive and tedious task
Inputting repetitive data
Repetitive data has to be added into multiple filed (i.e. calculation link, presentation link, etc.)
Taxonomy interface Detailed settings available
Interface to tag values
Each value to be tagged must be manually inputted
Selecting standard taxonomy
To find tags in selected taxonomy, preparer clicks through several categories. Categories are fairly unique.
Target marketMore rich JAVA product that can be packaged with a larger erp system
Spider Monkey – Core Filing
Set-up Written in JAVA and can be used on most common systems
Preparer interfaceMost of the work takes place in two panes
Installation
No installation issues noted
Financial statement interface
Does not produce financial statements – needs Intelligent Financial Statement to generate financial statement user interface
Inputting repetitive data
Repetitive data has into multiple fields
Taxonomony interface Creates taxonomy directly without specifying setting types if appropriate
Interface to tag valuesEach value to be tagged needs to be manually inputted.
Selecting standard taxonomy
User can write taxonomies and download and modify existing taxonomies
Target marketGives ability for users to modify and work on taxonomy simultaneously. Needs True North for validation function
FRx
Set-up Connects with most GL software for tagging accounts
Preparer interfaceOne pane
Installation
Need NET framework 1.1 Service Pack form Microsoft to install
Financial statement interfaceAllows user to either manually or via Report Wizard generate software
Inputting repetitive dataEliminated repetitive data entry
Taxonomony interface Uses user defined accounts types
Interface to tag valuesDrag and drop process of tagging values.
Selecting standard taxonomyTo find tags in selected taxonomy, preparer clicks through several categories.
Categories are fairly unique.
Target marketGoes beyond being an XBRL writer
Major Vendors Implementing XBRL CapabilitiesOracleHyperion SAP PeopleSoft JD EdwardsCartesis
Oracle
Oracle GL supports the XBRL standard.Oracle GL’s Financial Statement
Generator is responsible for loading taxonomy files, as well as creating instance documents/tagging financial statements in the XBRL format.
Hyperion
Hyperion has a built in module called “XBRL Manager.”
It can create XBRL output directly from Hyperion Financial Management & Hyperion Planning and Hyperion Essbase XTD.
Hyperion will be able to create XBRL tagged financial statements as well as create instance documents natively without the help of another piece of ‘enabler’ software.
SAP
SAP has a built in XBRL tool that was developed by SAP.
Tool gathers the data directly from the SAP databases (“data warehouse”) and converts them directly into instance documents using various taxonomies.
Capable of creating single/individuals financial statements or consolidated statements based on the selected taxonomy.
The SAP tool has the capability of preparing the statements in a format that is readily publishable to a investor relations website/webportal.
Peoplesoft
Peoplesoft General Ledger has the capability built in it for producing instance documents/tagging balance sheet and income statements that conform to the XBRL standard.
JD Edwards
Has XBRL capabilities similar to those that are available in Oracle/Peoplesoft for creating instance documents/tagging BS&IS with XBRL tags.
Cartesis
Cartesis Finance has built in XBRL technology within it called the Cartesis XBRL Publishing module.
Cartesis has the capability to load a given taxonomy into it, and create instance documents/tag financial statements with the XBRL standard.
Challenges to Implementation
Availability of software to create XBRL instance documents
Availability of software to read XBRL instance documents
Use of standard taxonomy vs industry or company specific taxonomy
Need for regulatory support
Progress
XBRL – business reporting languageProvides financial information across
platformsReduces re-entering data for processingMakes it easy to use automated
analytical toolsSEC voluntary filing program now exists SEC December 17, 2008 mandate
SEC December 2008 Mandate
– SEC rule proposal May 30, 2008– Adopted by SEC on December 17, 2008– Basics of the rule:
• Required primary financial statements (PFS) and footnotes for all issuers using US GAAP/IFRS for periods ending June 15, 2009 or later
– Year 1 – all companies $5 billion + worldwide float– Year 2 – all other accelerated filers– Year 3 – all others
• First year PFS plus block tag footnotes• 2nd year include detailed tag footnotes• 30 day grace period for first filing of PFS and detailed
footnotes