HTML vs XML
Tags: html, xml
Published: 2021-02-25 15:26:17

HTML and  XML are **platform-independent markup languages**. They are both based on SGML - Standard Generalized Markup Language. HTML was designed to facilitate transferring of web-based documents.

XML was later developed to provide interoperability with HTML and simplify its implementation. HTML focuses on describing the web page structure and displaying information. Whereas, XML focuses on storing and transferring this information.

If you are preparing for the HTML interview, you could maybe check the [InterviewBit](https://www.interviewbit.com/html-interview-questions/) guide on HTML to clear the interview

##HTML
**HTML** or **Hypertext Markup Language** is popularly used to create web pages and web applications. It is the basis for all web pages. It describes web page structure It is a markup language and consists of various HTML elements composed of tags and their content. It is a hypertext language that creates a chain of links of documents. Standard HTML pages are static. HTML5.2 is the latest version of HTML.

HTML is easy to learn and use because of its simple syntax. It is supported by all browsers and is free, lightweight, and user-friendly.

However, HTML cannot be used to create dynamic pages. Also, HTML is not centralized - all web pages need to be programmed separately.

Let’s see a simple example for an HTML program

    <!DOCTYPE HTML>
    <html lang="en">
    <meta charset="UTF-8">
    <HTML>
    <head>
    <title>Welcome to the world</title>
    </head>
    <body>
    <h1>Web Development</h1>
    <p>HTML vs XML</p>
    </body>
    </html>    
------------
##XML
XML or eXtensible Markup Language’ is also used to create web pages and web applications. It is a textual data format with strong support via Unicode for several different human languages. Its design goals focus on simplicity, generality, and usability across the internet. It is dynamic. XML1.1 is the latest version of XML.

It makes documents transportable across systems and applications and simplifies platform change and data sharing processes. It is extendable, easy to read and understand, and does not affect data presentation. 

XML is redundant and verbose compared to other text-based formats. Large data volumes can lead to high storage and transportation cost due to redundancy in XML syntax.

Let’s now see an example for XML program:

    <?xml version = "1.0"?>
    <InterviewBit>
  	    <address category = "Practice">
        	    <track>Web Development</track>
        	    <Display>HTML</Display>
        	    <transport>XML</transport>
  	    </address>
    </development>
----------
##Difference between HTML and XML
The following table summarizes some of the key differences between HTML and XML.

| HTML          | XML           |
| --------------|-------------  |
| HTML stands for Hypertext Markup Language| XML stands for eXtensible Markup Language |
| It is a predefined markup language.| It is a standard markup language that provides a framework to define other markup languages.|
| It is used for encoding web pages and to display data.| XML is used to transport and store data.|
| It focuses on how data will look on the client-side. | It focuses on what the data represents and describes.      |
| It is static as it is used to display data. | It is dynamic as it is used to carry information.      |
| It offers native support. | In XML, objects are expressed by conventions with the help of elements and attributes.      |
| It has predefined tags. | It supports user-defined tags.      |
| It has a limited number of tags | XML tags are extensible.      |
| In HTML, it is not mandatory to use a closing tag. | In XML, it is mandatory to use a closing tag.|
|HTML can ignore small errors|XML does not allow errors.|
|It is case insensitive.|It is case-sensitive.|
|It does not preserve whitespaces.|It preserves whitespaces.|
|HTML parsers in most web browsers accept element overlapping.|In XML, elements can not overlap|
|HTML parsers in most web browsers accept element overlapping.|In XML, elements can not overlap|
|It natively recognizes the null value|Xsi:nil on elements is required in an XML instance document to indicate a null value.|
|In HTML, extra application code is not needed to parse text.|XML DOM application and implementation code are required for mapping text back into JavaScript objects.|