XML的定義
XML(Extensible Markup Language)叫做”擴展標記語言”,XML本身不是一個單純的標誌語言,它是一種元語言 (meta-language),可以被用來定義任何一種新的標誌語言。象HTML之類的傳統性標誌語言,是用來定義某一類檔的格式,以便於展示或列印檔。而 XML則是可以用來創造新類別檔的格式定義,也就是在XML之中能夠創造出很多不同的標誌語言,用來定義各種不同的檔類別。早在80年代就制訂的SGML(標準通用標記語言),它是一個用來形容和定義結構化的電子檔的國際性標準(ISO 8879)。不過由於SGML太過於靈活和複雜,所以一直沒有被廣泛地採用。XML是從SGML所衍生出來的一種簡化格式。
.XML的特點
- 簡單:XML 對人而言是極度清晰易懂的,另一方面機器可以輕易地對它進行處理。
- 開放:XML 是 W3C 制訂的標準,獲得軟體工業市場領導者的認可。
- 可延伸:沒有訂死的標記。若有需要,可以建立新的標記。
- 自我描述能力:在傳統的資料庫中,資料庫管理者必須為資訊記錄設定結構描述 (schema)。XML檔不需要這種定義便可儲存,因為它們是以標記和屬性的形式來包含中繼資訊。
- 機器可閱讀性:標記、屬性和專案的結構提供了內容資訊,可用以解譯內容的意義,為高效率的搜尋引擎、智慧型資訊搜集、代理程式等開啟了新的可能性。這是XML主要優於 HTML 或純文字的地方。
- 內容與顯示分離:XML 標記是用來描述意義而非描述展示。 HTML的箴言是:「我知道它看起來是什麼樣子」,而XML的箴言則是:「我知道它是什麼意思,而你可以告訴我,它看起來要像什麼樣子」。XML檔的外觀及質感可由 XSL 樣式表來控制,這樣一來檔的外觀 (或者整個網站) 可以在不改變檔內容的情況下更動。 同樣內容要有數種不同外觀或展示,很容易便可做到。
- 支援多語系檔和 Unicode:這對全球化的應用程式而言十分重要。
- 資訊的比較和匯總:XML 檔的樹狀結構可以有效地進行專案間的比較與匯總。
- 可以內嵌多種類型資訊:XML 檔可以包含從多媒體資訊 (影像、音效、視訊) 到主動式元件 (Java applets、ActiveX) 的任何可能資訊型別。
- 可以內嵌現有的資訊:將現有的資料結構 (如檔案系統或關係型數據庫) 對應至XML非常簡單。XML可以涵蓋所有現有的資料結構,並支援多種資訊格式。
- 分散式資訊的「單一伺服器」:XML 檔可由散佈于多個遠端伺服器的巢狀專案構成。XML是目前分散式資訊的最精良格式 – 全球資訊網可以看成一個巨大的XML資料庫。
- 業界迅速採用:Software AG、IBM、Sun、Microsoft、Netscape、DataChannel、SAP 及許多其他公司均宣佈支持 XML。 Microsoft 將使用XML作為 Office 產品線的交換格式,同時 Microsoft 及 Netscape 的 Web 流覽器均支持 XML。 SAP 也宣佈 SAP Business Connector 的自第三版起支持 XML。Software AG EntireX 及 Natural 產品線均支援 XML,並且提供了XML資訊伺服器 – Tamino。