XML可延伸標記式語言
XML是什麼?可延伸標記式語言基本介紹|天矽科技客製化網頁設計
XML是什麼
XML(Extensible Markup Language)可延伸標記式語言。是由SGML(Standard Generalized Markup Language)標準通用標記式語言中簡化、修改出來的。
XML的功能是「資料交換」,專門與客戶端與服務端做資料交換,它是提供描述結構化資料的格式,可以允許使用者自行定義標籤、定義、轉換、驗證…等,同時還能在網頁跟應用程式間,直接讀取及傳遞資料。
雖然XML和HTML都是SGML衍伸出來的語言,且HTML也確實繼承了許多SGML的特點,如結構化與可描述性等優勢。但隨著商務活動的興起,人們也發現了HTML的缺陷與不足之處,像是HTML只能描述如何表現網站的格式,沒有辦法廣泛的運用在複雜的程序資訊交換運行上,如採購訂單、發票、貨物清單及收據等文件。
因此W3C決定開發一個新的SGML子集來彌補這些缺陷,而它就是XML。
延伸閱讀:HTML是什麼?HTML基礎應用與解說
XML的作用
XML是用於優化網站與網站之間傳輸的SGML的子集,它能保持使用者介面與結構資料之間的各自獨立且分離,也就是能確保結構資料一致且獨立。
舉例來說,資料與資料的串聯需要透過API的串接,不過API只是橋梁,中間的資料傳輸就是利用XML裝箱運送過橋的;以交通來比喻的話,API就是橋墩、高速公路,XML就是載貨物、人的車輛。
※API:Application Programming Interface 應用程式介面,AB兩端的資料拋接,一端提供資料輸入、另一端依據資料回傳結果,其目的在於「不必了解對方的技術與邏輯即可加速開發的共識」,如購物網站串接第三方刷卡金流API,讓購物網站開發人員無需了解金流技術,透過API串接方式即可使用該項技術。
※目前API串接傳輸,多使用較為輕量的JSON格式,功用與XML雷同,但本篇不做贅述。
HTML用在顯示網頁資料、結構化文件,用標記的方式告訴瀏覽器資料該如何顯示;XML用在定義網頁內容、傳輸網頁之間的資料,用標記的方式來描述資料。
XML把資料從中分離出來,如此就能透過不同的樣式和應用程式來決定如何顯示與處理資料。我們還能透過分離技術整合眾多的資料來源,比如研究結果、帳單支付及紀錄…等,再將其轉換為XML進行網站之間的傳輸,由HTML顯示給使用者獲取資料。
XML對網站的好處
XML以純文字格式儲存數據,提供了一種獨立於軟體和硬體的儲存、傳輸和共享數據的方式,能更輕鬆地擴展、升級到新的操作系統、應用程式與瀏覽器,而不會丟失數據。
XML更提供了網站更加強大與靈活的優點:
- 更有意義的搜尋
- 更靈活的網站應用
- 不同來源的數據匯集
- 多種應用得到的數據
- 數據的多樣顯示性
- 無須回到伺服器就能進行數據計算與處理
- 粒狀的更新
- 在網站上發布數據
- 升級性
- 壓縮性
- 開放性
XML範例
XML用於網站開發,通常用來將數據單獨的介紹。邏輯上主要由五個部分組成,包含:
- XML宣告、聲明
- 文件型別宣告
- 元素
- 註釋
- 處理指令
每個XML文件都由聲明開始,這一行代碼會告訴解析器或瀏覽器,這個檔案應該要按照XML的規則進行解析,第一行代碼顯示如:<?xml version="1.0"?>或者在後面加上其他,如:<?xml version="1.0" encoding="UTF-8"?>
※UTF-8是網路傳輸的編碼
從上方由維基百科所提供的範例中,我們可以看出,標籤居然是中文?其實這也就是XML與HTML最大的不同之處!在XML我們可以自由訂定標籤,若這樣的便條紙用HTML的序列呈現,我們就會看到許多像是<ul><li>…</li><ul>的語法組成。
XML和HTML的差異
XML用於強化、優化HTML的不足之處,所以格式上也會比HTML還要嚴謹,如:
- XML元素名稱有分大小寫,HTML的標籤則不分。
- XML元素永遠都要起始標籤和結尾標籤,但HTML的元素在某些情況下可以不寫結尾標籤。
- XML空元素需要在右箭號前面加一個斜線,如:<…/>。而HTML只用一個單獨的起始標籤即可,沒有終結的斜線。
- XML元素視空白為內容的一部份,除非特別明講,不然都會保留;但在HTML中,大部分的元素都會把多餘的空白刪掉,瀏覽器在排定內容的格式時,會自動斷行。
資料來源:國立交通大學如意網站
XML的未來
XML最早是從1995年開始有其雛形,隨著時代進步,XML也不斷地被重新重視。
尤其是當今時代需要時常的進行網站與網站之間的資料傳輸,從傳統產業到最新科技公司,無論是資料庫搜尋、網路銀行、電子商務或任何領域,都逐漸的需要建立起自家網站並透過網路向使用者傳遞訊息。
資訊的傳輸,尤其是近年熱門的API串接技術,其實都得益於XML的出現,讓使用者與企業、企業與企業、機器對機器、網站對網站…等,都變得更加便利且快速。