XML、HTML、XHTML的關係

標記語言

XML、HTML、XHTML這三者都有ML。ML(Markup Language)標記語言在維基百科中的解釋是:html

一種將文本以及文本相關的信息結合起來,展現出關於文檔結構和數據處理細節的計算機文字編碼。與文本相關的其餘信息(包括文本的結構和表示信息等)與本來的文本結合在一塊兒,可是使用標記(markup)進行標識。
用html舉個例子:json

<h1>我愛我家</h1>

上面的例子中的」我愛我家「就是文本,與文本相關的其餘信息」這段文本是個標題「就用標記h1進行標識。編碼

HTML

HTML(Hyper Text Markup Language),即超文本標記語言。spa

  • HTML的標籤是固定的,只能用已經規定好的標籤來對文本進行特定的描述
  • HTML被設計用來顯示數據。

XML

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

簡單來講,XHTML就是更嚴格更純淨的HTML版本。
與HTML的區別:

  • 文檔結構
    XHTML DOCTYPE 是強制性的
    <html> 中的 XML namespace 屬性是強制性的
    <html><head><title> 以及 <body> 也是強制性的
  • 元素語法
    XHTML 元素必須正確嵌套
    XHTML 元素必須始終關閉
    XHTML 元素必須小寫
    XHTML 文檔必須有一個根元素
  • 屬性語法 XHTML 屬性必須使用小寫 XHTML 屬性值必須用引號包圍 XHTML 屬性最小化也是禁止的
相關文章
相關標籤/搜索