What is the difference between XML, XBRL, iXBRL and xHTML?
When we talk about XBRL tagging the obvious question that comes to mind is, what exactly is XBRL, and how it is different from XML, iXBRL, and xHTML.
Let’s try to demystify the difference between XML, XBRL, iXBRL, and xHTML and also look into why iXBRL is used as a business reporting language or rather technology.
Let’s start with HTML as this is the starting of this bunch of markup languages.
What is HTML?
According to W3C.org, the first version of HTML was developed by Tim Berners-Lee in 1991, while working at CERN, to make sharing information much easier since then HTML has gone through a number of revisions.
This is the language used for publishing the world wide web. HTML stands for Hyper Text Markup Language. It has a set of tags and attributes to structure the content and presentation of the elements within the webpage.
As the acronym itself suggest that HTML is Hyper Text Markup language. Now let’s understand what is hypertext and what are the markups.
Hyper Text: In simple words, it means a text within the text. A text is called a hypertext if it has got another text in the form of a link. This means hypertext is basically used to link two or more pages of web pages.
Markup Language:
Simply it is a computer language which used to apply proper layout and formatting conventions to a text document. Its main purpose is to make the plain vanilla text into more diverse elements such as text, tables images, etc.
Basic Structure of HTML
The organization and structuring of content on a web page rely on various components within the HTML structure.
The top-level structure of HTML is composed of HTML elements, which serve as the fundamental building blocks of HTML documents.
The top-level structure of the document comprises HTML tags that define the document’s organization. These tags are categorized into two types of tags namely block-level tags and inline tags.
Block-level tags act as containers for content such as paragraphs and headings, while inline tags define the content within those containers, like text and images.
Within the HTML document, several components are employed to structure the content effectively.
The head section contains meta tags and other pertinent information about the page, while the body section consists of the primary content of the page or document. We also have a footer section that typically includes copyright information.
Uses of HTML
HTML is used at the various stages of the web development cycle.
- Organizing and structuring the web pages.
- Content type and formatting
- Interaction with the use: Interactive forms
- Linking with other webpages
- Writing meta descriptions for the web page
- Integration of CSS and Java scripts
- Creates a semantic structure for the webpage, thus enhancing SEO
What exactly XML is?
Brief Introduction:
According to w3c.org, “XML, describes a class of data objects called XML documents and partially describes the behavior of computer programs which process them.
XML is an application profile or restricted form of SGML, the Standard Generalized Markup Language [ISO 8879]. By construction, XML documents are conforming SGML documents.”
Data storage units within XML documents are called entities, which can either parse or unparsed data.
Parsed data consists of a character and within those some of them are called character data and others as markup.
These markups are basically defining the document’s storage layout and logical structure.
Origin of XML:
XML was developed in 1996 by the XML working group ((originally known as the SGML Editorial Review Board) formed under the auspices of the World Wide Web Consortium (W3C).
The work was carried out under the leadership of Jon Bosak of Sun Microsystems for the development of XML.
As per W3C.org, XML is a flexible text format derived for SGML (ISO8879), originally it was designed to perform large-scale electronic publishing work and for storing and sharing large-scale data over the web.
10 primary goals for the development of the XML are as follows:
- XML shall be straightforwardly usable over the Internet.
- XML shall support a wide variety of applications.
- XML shall be compatible with SGML.
- It shall be easy to write programs that process XML documents.
- The number of optional features in XML is to be kept to the absolute minimum, ideally zero.
- XML documents should be human-legible and reasonably clear.
- The XML design should be prepared quickly.
- The design of XML shall be formal and concise.
- XML documents shall be easy to create.
- Terseness in XML markup is of minimal importance.
In summary, we can say that XML is quite a flexible markup language that is widely used for storing and exchanging structured data either locally or over the internet.
The best part of this language and what makes it quite different from HTML is the sense that it does not have predefined tags.
Understanding xHTML and why it was developed?
According to w3.org, “XHTML is a family of current and future document types and modules that reproduce, subset, and extend HTML 4 [HTML4].”
xHTML works in conjunction with the XML-based user agents as its entire family is based on XML.
XHTML 1.0 is the first document of xHTML family and it basically a reformulation of three HTML 4.0 document types as the application of XML 1.0.
If you are already familiar with HTML, learning the most recent version of HTML won’t take much time.
The World Wide Web Consortium (W3C) created XHTML to aid web developers in switching from HTML to XML.
Web developers can enter the XML world with all of its advantages by switching to XHTML right away and still feel assured of the content’s backward and future compatibility.
Some of the benefits of migrating content to xHTML are as follows:
- By adopting XHTML, webpages gain a more consistent and well-structured format, making them easier to parse and process by web browsers.
- It improves Operability: XHTML enhances the documents as they conform to XML standards and it also allows them to be easily viewed, edited and validated using standard XML tools.
- It improves browser compatibility: Documents prepared in xHTML can be viewed in both existing and new browsers, ensuring broader compatibility across different platforms.
- Ease of Maintenance: XHTML facilitates easy maintenance, editing, conversion, and formatting of documents in the long run.
- Combination of Strengths: XHTML combines the strengths of HTML and XML, allowing XHTML pages to be rendered by all XML-enabled browsers.
- Quality Standards: XHTML defines a quality standard for webpages. Following these standards ensures that your web pages are considered high-quality, and they can be certified by the W3C with their quality stamp.
Why it makes sense to migrate to xHTML
According to w3.org there are some of great benefits of migrating content to xHTML.
1. Constant Discovery: Developers and user agent designers are constantly innovating and discovering new ways to express their ideas through new markup, therefore, it’s far easier to accommodate these new discoveries in xHTML as compared to XML
2. Enhanced Interoperability: With the introduction of various alternative means of accessing the Internet, the XHTML family is designed with the objective of promoting general user agent interoperability.
Through a new mechanism for user agent and document profiling, servers, proxies, and user agents can make their best effort to transform content appropriately.
As a result, it becomes possible to develop XHTML-conforming content that can be effectively used by any XHTML-conforming user agent.
Defining XBRL
Brief Introduction to XBRL
Oxford dictionary defines XBRL as “an XML-based markup language used for standardized reporting of business information, especially that relating to a company’s financial performance.”
According to Financial Accounting Standards Board [FASB], “XBRL (eXtensible Business Reporting Language) is the open international standard for digital business reporting. XBRL is used to deliver human-readable financial statements in a machine-readable, structured data format.”
It is an XML Standard maintained by International XBRL, a non-profit consortium of approximately 600 member organizations, companies, and government agencies around the world.
According to xbrl.org, “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 Information includes, not limited to, financial, non-financial information, and regulatory information.
The technical aspect of XBRL
XBRL provides a standardized method for businesses to store and share financial and non-financial data among different systems.
The XBRL tagging of business information is based on Taxonomies that contain metadata, which describe specific reporting concepts and their interrelationships, including their semantic meaning.
The business data that is being stored and transmitted among the various systems is actually presented in the XBRL instance document.
XBRL Taxonomy Files:
XBRL files are bundles of 6 files zipped in a single folder. These files are:
File Name | File Type | Description |
---|---|---|
XBRL Instance Document | .xml | This is the main file and it contains the actual business data (facts), including the values of reporting concepts and their associated metadata. |
XBRL Taxonomy Schema (Concept) | .xsd | Its is XML schema files. It defines the structure and relationships of the reporting concepts used in XBRL. |
Definition (def) | .xml | It provides human-readable definitions, and other documentation for the reporting concepts in the taxonomy |
Calculation (cal) | .xml | It defines calculation relationships between reporting concepts, allowing for computations and aggregations. |
Presentation (pre) | .xml | Pre file defines the hierarchical structure of the reporting concepts, helping to organize and present the information in a meaningful way |
Labels (lab) | .xml | It contains all the locators, label arcs and labels. |
When were the first XBRL final rules adopted by the SEC?
On January 30, 2009, the securities and exchange commission (sec) announced the final rule for the adoption of Interactive Data to Improve Financial Reporting.
According to the Sec’s final rules, the companies are required to present their quarterly and annual financial information in interactive data format or in other words called XBRL format.
How can you see the old XBRL files submitted earlier with the SEC?
You can check for the quarterly or annual report with sec.gov of any company before June 2018. During that phase of iXBRL submission, two types of files are submitted with sec
- Html document, along with
- XBRL document (zip file): these consist of 6 (six) which include xml instance, xsd file, and 4 link bases.
Let’s take the example of MSFT, Microsoft Corp. for file 10Q of Dec 31, 2016
You can see all the six files in the below image.
Once you click on the “Interactive Data” button you can see how XBRL use to get rendered in the browser.
The below image shows the interactive format of the xbrl files, and if you click on any of the line items, it will show you the details, such as definition, Name (XBRL tag applied), Data Type, Balance Type, and Period Type.
What is inline XBRL?
INTRODUCTION
According to xbrl.org, “iXBRL, or Inline XBRL, is an open standard that enables a single document to provide both human-readable and structured, machine-readable data.”
In layman’s terms, it is basically xbrl codes embedded in HTML, as you know humans can read HTML, and machines can read xbrl data, therefore, once you combine both in inline xbrl making a single document readable by humans as well as by machines.
Instead of submitting a separate XBRL instance document, the Inline XBRL specification enables you to embed your XBRL tags into your HTML-formatted financial statements.
This adds the XBRL tagging to the financial statements while maintaining their human-readable HTML format when viewed in a web browser.
Inline XBRL is important because it demonstrates the SEC’s dedication to structured data by making XBRL easier to consume and easing regulatory requirements on registrants.
When was the inline XBRL adopted by SEC?
On June 28, 2018, securities and exchange commission, sec, adopted the inline XBRL for the tagged data for companies to file their quarterly and annual reports in iXBRL and also for exchange traded funds to file their risk/return summary in iXBRL.
The final rules by sec were made effective from September 17, 2018.
Let’s see the example image below of inline XBRL financial report submitted by Microsoft Corp submitted with the sec.gov.
iXBRL implementation in the European Union:
According to European Securities and Markets Authority, ESMA, “The European Single Electronic Format (ESEF) is the electronic reporting format in which issuers whose securities are admitted to trading on EU regulated markets must prepare their annual financial reports to facilitate accessibility, analysis, and comparability of annual financial reports.”
It was in January 2020, ESMA mandated EU regulated companies to file their annual financial reports, AFRs, in xHTML. The AFRs consolidated financial statements must be tagged utilizing inline XBRL by utilizing ESEF taxonomies.
The iXBRL tagged data created much be embedded with xHTML format file AFRs thus creating a single document which intern would be human as well as machine-readable.
Benefits of iXBRL:
- By combining HTML with XBRL to create iXBRL, the filer regains control over the display and formatting of the financial data while maintaining the data’s machine-readable nature.
- Saving time and money since you can simultaneously review the HTML and XBRL.
- Take away the motivation to spend time modifying XBRL tagging that is already accurate to account for how the SEC Previewer displays the XBRL data.
- Removes the risk and responsibility associated with HTML and XBRL show differences.
Difference between XBRL and iXBRL
Take example of any files filed with sec, e.g. msft.
Where to look for European companies published ESEF iXBRL tagged, Annual Financial Reports, ARFs?
To look for the latest published Annual Financial Reports, ARFs, for European companies you can visit filings.xbrl.
Here you can view the completely tagged annual reports along with the downloadable iXBRL files in JSON file format.
To browse the data in the browser just click on “view”, after a while your xHTML file will get open for your assessment.
To check for the tagged information, on the top right of the screen check “XBRL Elements” and also click “document outline”. Once you click the document outline you select the financial statement or footnotes for yourself.
See the screenshot below:
You can see the highlighted facts in green and purple. The green color states that the tag behind these facts is per the taxonomy and purple is the extension tag.
Similarly, you can check tagging for all the primary financial statements and block tags for financial footnotes.
To process XBRL and iXBRL files we need to have decent software and adequate knowledge of respective taxonomies.
Hope now you have a decent understanding of the difference between HML, XML, XBRL, iXBRL, and xHTML.
Happy Reading!