XML (Extensible Markup Language,可擴充标記語言) 是一種用于标記電子檔案使其具有結構性的标記語言。标記指計算機所能了解的資訊符号,通過此種标記,計算機之間可以處理包含各種資訊的文章等。語言的可擴充性指定義标記既可以使用國際通用的标記語言,也可以使用如XML的由相關人士自由決定的标記語言。XML有兩個前身,SGML和HTML。XML主要用到的有可擴充标記語言、XSL、XBRL和XPath等。
SGML (The Standard Generalized Markup Language) 在Web沒有發明之前就存在,用于定義國際電子檔案結構和内容描述的标準。SGML是自IBM将GML (Generalized Markup Language) 标準化後的簡稱。GML的強調檔案中能夠明确的将标示與内容分開,并且所有檔案的标示使用方法均一緻。但是SGML具有非常複雜的文檔結構,導緻過于龐大複雜 (标準手冊就有500多頁),難以了解和學習,進而影響其推廣與應用。是以SGML不适用于Web資料描述,
随即,Web的發明者根據當時(1989年)的計算機技術,發明并推出了HTML。同時W3C也發現到HTML的問題,不能解決所有解釋資料的問題,如影音檔或化學公式、音樂符号等其他形态的内容。還有性能問題,需要下載下傳整份檔案,才能開始對檔案做搜尋。此外,其擴充性、彈性、易讀性均不佳。
XML正是為了解決SGML和HTML的不足而誕生的。專家們使用SGML精簡制作,并依照HTML的發展經驗,釋出了出一套規則嚴謹,但是簡單的描述語言:是一種用于标記電子檔案使其具有結構性的标記語言。XML最初的設計目的是為了EDI (Electronic Data Interchange,電子資料交換) ,确切地說是為EDI提供一個标準資料格式。當 XML被引入軟體工業界時,它給整個行業帶來了一場風暴。有史以來第一次,這個世界擁有了一種用來結構化文檔和資料的通用且适應性強的格式,它不僅僅可以用于 WEB,而且可以被用于任何地方
XML有一個更中立的方式,讓消費端自行決定要如何消化、呈現從服務端所提供的資訊。XML從1995年開始有其雛形,并向W3C (網際網路聯盟) 提案,而在1998年二月釋出為W3C的标準 (XML1.0) ,用于簡化Internet的文檔資訊傳輸。
XML被廣泛用來作為跨平台之間互動資料的形式,主要針對資料的内容,通過不同的格式化描述手段(XSLT,CSS等) 可以完成最終的形式表達,生成對應的HTML,PDF或者其它的檔案格式。
XML設計用來傳送及攜帶資料資訊,不用于表現或展示資料,HTML則用來表現資料,是以XML用途的焦點是它說明資料是什麼,以及攜帶資料資訊。其主要特點是從HTML中分離資料、交換資料、共享資料、建立新的語言、并應用于B2B場景中。XML使用一個簡單而又靈活的标準格式,為基于Web的應用提供了一個描述資料和交換資料的有效手段。
資料來源:
維基百科詞條:XML
[1] XML Media Types, RFC 7303. Internet Engineering Task Force. July 2014
[2] 《Designing With Web Standards Second Edition》, Jeffrey Zeldman