XML、HTML、XHTML這三者都有ML。ML(Markup Language)標記語言在維基百科中的解釋是:html
一種將文本以及文本相關的信息結合起來,展現出關於文檔結構和數據處理細節的計算機文字編碼。與文本相關的其餘信息(包括文本的結構和表示信息等)與本來的文本結合在一塊兒,可是使用標記(markup)進行標識。
用html舉個例子:json
<h1>我愛我家</h1>
上面的例子中的」我愛我家「就是文本,與文本相關的其餘信息」這段文本是個標題「就用標記h1進行標識。編碼
HTML(Hyper Text Markup Language),即超文本標記語言。spa
XML(Extensible Markup Language),便可擴展標記語言。可擴展體如今XML的標籤不是固定的,須要本身定義。
好比描述一張桌子的相關信息:設計
<table> <name>African Coffee Table</name> <width>80</width> <length>120</length> </table>
咱們能夠根據本身的須要,定義本身的標籤。
命名空間
爲了防止你們定義的標籤名重複(好比在A的命名裏,table表示桌子;而在B的命名裏,table表示表格),XML採用命名空間來避免命名衝突。爲了區分世界各地的命名,須要一個獨一無二的標識來區分不一樣的文件的命名,而域名無疑是一個完美的選擇。
爲標籤添加一個xmlns屬性code
<table xmlns="http://www.baidu.com"> <name>African Coffee Table</name> <width>80</width> <length>120</length> </table>
這樣不一樣域名下的命名就不會衝突了。xml
XML與HTML的區別htm
XML和HTML都是標記語言,但二者能夠說徹底不同文檔
- HTML的標籤固定的,XML的標籤是自定義的
- XML旨在傳輸和存儲數據;HTML旨在顯示數據
XML與json域名
我目前的理解是,XML與json的設計初衷都是,實現一種通用且可讀性高的數據格式。這兩個目的XML和json都作到了,可是XML更像是先行者,在微軟的推進下,開啓了通用格式思想的大門,但相比json,仍是有一些不足:
- XML標籤冗餘高,數據體積大,傳輸速度慢
- XML解析較難,json解析難度幾乎爲0
簡單來講,XHTML就是更嚴格更純淨的HTML版本。
與HTML的區別:
<html>
中的 XML namespace 屬性是強制性的<html>
、<head>
、<title>
以及 <body>
也是強制性的