XML(eXtensible Markup Language,可擴展標記語言)是SGML的一個子集,但比SGML簡單,用以創建可相互轉換的結構化文本文檔和數據文檔。下面說明一下與XML相關的一些概念。
XML(eXtensible Markup Language,可擴展標記語言)是SGML的一個子集,但比SGML簡單,用以創建可相互轉換的結構化文本文檔和數據文檔。下面說明一下與XML相關的一些概念。
SGML(Standard Generalized Markup Language,標准通用標記語言),由於IBM公司的三位先驅者Charles GoldFarb、Edward Mosher和Raymond Lorie創立,主要作為大型文檔的編制工具。DTD(Document Type Definition,文檔類型定義)是SGML文檔的核心,它定義了SGML文檔必須遵循的一組語法規則。由於它很復雜,所以只是在一些大公司或大項目中使用。直到HTML面世,它還是默默無聞。
HTML(Hypertext Markup Language,超文本標記語言),它是在SGML框架中通過DTD定義的標記語言,是SGML的一種應用。它由於結構簡單,容易學習而迅速普及,每個人都能很快地建立自已的頁面,HTML造就了現時Internet上無數的信息資源。HTML標記只描述文檔的外觀,而不描述文檔的內容本身--裡面有什麼。HTML是不明白網頁內容的,這樣就造成了內容搜索的差異和不確定性。另一個問題是,HTML不是可擴展的,這意味著沒有一種方便的途徑來擴展標記。每一個新標記的引入都會造成系統的不一致性和對標准的修訂。這就是為什麼現在我們用不同的浏覽器浏覽同一個網站時表現效果會有差異。
XHTML(eXtensible Hypertext Markup Language,可擴展超文本標記語言),它是按XML規則編寫的HTML,由於有統一的規則約束,所以它不會出現如HTML一樣的不規范、不一致性問題。
XML(eXtensible Markup Language,可擴展標記語言),繼承了SGML的優點,但又沒有了SGML的復雜性。XML專門為WEB應用而設計,和HTML不同,它是一種元標記語言(meta-markup language),也就是說它沒有一套能夠適用於各個領域中所有用戶的固守的標簽和元素,相反,它允許開發者根據自已的需要定義自已的元素,XML中的X(eXtensible)就是說明了這一點。它的特點有:
XML使用Unicode字符集,可生成英文、中文、希臘文或梵文等多種語言。
可將多個來源(包括其他XML文檔和二進制文件)匯合進一個XML文檔。
可利用DTD或Schema(模式)管理一致性問題。DTD主要用於文檔型文檔,Schema主要用數據型文檔。
具有很好的擴展性,可定義自已的元素和屬性。
通過XML可從關系數據庫管理系統中提取數據到結構化文檔。它還被設計成可對各種數據對象進行操作。
在一個設計良好的XML應用中,XML標記不涉及文檔如何顯示,只表示文檔的結構。
|
XML被設計用來存儲、支持和交換數據,而不是用來顯示數據的。通常,XML被用於數據交換,而不是數據存儲。
元數據,定義數據的數據。
標記語言是一種定義文檔的格式語言。SGML、XML、XHML、HTML都屬標記語言。
XML文檔是什麼?它有時是一個文件,有時是關系數據庫中的一條記錄,有時是由Object Request Broker(對象請求代理程序)傳送的一個對象,有時是到達網絡接口的一個字節流。XML文檔可使不同系統、不同平台的數據實現統一接口,這就是XML真正的威力所在。下面列舉幾個使用XML的領域:
本文由(http://www.jb51.net)整理發布!轉載請注明出處,謝謝!
文檔設計和管理,可利用XML維護公司的文檔資料。
Web開發,利用XHTML和XSLT實現的Web頁面擴展性更好,更容易維護。
數據庫應用和程序開發,可從數據庫中提取數據並生成XML文檔,實現信息的跨平台、跨系統溝通。
定義其它語言,WML和WAP就是用通過XML建立的。
XML不是什麼?
XML只是一種標記語言,不是一種編程語言。不存在一種編譯器,把XML文檔轉化成可執行二進制代碼。
XML不是一種網絡傳輸協議,但通過網絡協議傳輸的數據格式則可以是XML格式的。
XML不是數據庫,不能替代Oracle或MySQL這類的關系數據庫管理系統。