摘要隨著信息網絡的飛速發展,信息載體的形式正逐步從印刷型、固定型向數字型與動態型的數字化文獻形式過渡。為了規范數字化文獻形式,SGML、HTML、XML3種標記語言先后應運而生。本文就這 3種標記語言進行分析與比較。
關鍵詞SGMLHTMLXML
中圖分類號:TP31文獻標識碼:A
XML技術自出現以來,在許多領域內得到廣泛的支持并有著廣闊的應用前景。XML數據已成為一個研究熱點。同時,看似與它相似已被人淡忘已久的SGML、HTML兩種標識語言也被翻出,頻頻出現加以比較。那三者到底有沒有聯系,有什么聯系?下面我們從概念、特性加以分析理解。
1 HTML,SGML,XML三種標記語言
(1)SGML標準通用標記語言(Standard Generalized Markup Language)是針對指定一個文檔標記語言或標簽設置方式的一種元語言。這個標準本身是一個文檔類型定義(DTD)。SGML 是 IBM 通用標記語言(GML)的一個后裔。SGML 基于有結構的文檔和能夠描述不論這些元素是怎樣被顯示的其他語義元素的想法。SGML 提供多種能夠被用于很多應用程序的標記語法。通過改變 SGML 聲明,一個人甚至不需要使用“角括號”盡管它們是規范的,所謂的具體參考語法。SGML 最初設計來使在政府、法律和航空和航天工業的大型工程中能夠共享機器可讀文檔,其必須保留可讀文件幾十年——在信息技術中很少的時間。它也已經廣泛地應用在印刷和出版行業,但是它的復雜性阻止了它在小規模多方面用途的廣泛應用。目前,SGML多用于科技文獻和政府辦公文件中SGML的主要特點:SGML可支持無數的文檔結構類型,例如布告、技術手冊、章節目錄、設計規范、各種報告、信函和備忘錄等;SGML可以創建與特定的軟硬件無關的文檔,因此很容易與使用不同計算機系統的用戶交換文檔。
使用SGML對多媒體的創作將帶來許多好處。例如,可使創作人員更集中于內容的創作,可提高作品的重復使用性能、可移植性能以及共享性能等;SGML的使用范圍很廣,除了傳統的電子出版物之外,SGML還可用在其他許多場合。例如,前面介紹的超媒體和超文本文檔、萬維網頁面的制作、數據庫、電子郵件、專家系統、CD-ROM出版物、交互式電子技術手冊等方面都大有用武之地。
(2)HTML超文本標識語言(Hypertext Marked Language),是一種用來制作超文本文檔的簡單標記語言。超文本傳輸協議規定了瀏覽器在運行 HTML 文檔時所遵循的規則和進行的操作。HTTP協議的制定使瀏覽器在運行超文本時有了統一的規則和標準。用HTML編寫的超文本文檔稱為HTML文檔,它能獨立于各種操作系統平臺,自1990年以來HTML就一直被用作WWW(是World Wide Web的縮寫,也可簡寫WEB、中文叫做萬維網) 的信息表示語言,使用HTML語言描述的文件,需要通過WEB瀏覽器顯示出效果。
所謂超文本,是因為它可以加入圖片、聲音、動畫、影視等內容,事實上每一個HTML文檔都是一種靜態的網頁文件,這個文件里面包含了HTML指令代碼,這些指令代碼并不是一種程序語言,它只是一種排版網頁中資料顯示位置的標記結構語言,易學易懂,非常簡單。HTML的普遍應用就是帶來了超文本的技術——通過單擊鼠標從一個主題跳轉到另一個主題,從一個頁面跳轉到另一個頁面與世界各地主機的文件鏈接。
(3)XML可擴展標識語言 (eXtensible Marku Language),是Web上的數據通用語言。它使開發人員能夠將結構化數據,從許多不同的應用程序傳遞到桌面,進行本地計算和演示。XML 允許為特定應用程序創建唯一的數據格式。它還是在服務器之間傳輸結構化數據的理想格式。XML是一種簡單、與平臺無關并被廣泛采用的標準,是用來定義其它語言的一種元語言,其前身是SGML(標準通用標記語言)。簡單的說,XML是提供一種描述結構化數據的方法,它不但完成了HML不能完成的任務,更為互聯網世界提供了定義各行各業的“專業術語”的工具。
2 XML、SGML、HTML三者關系
SGML、HTML是XML的先驅。SGML最早是用來再字處理程序中描敘數據用的。像RTF(富文本)文件,Word的DOC文件等等,都可以看成是應用SGML的例子。如果用記事本打開一個RTF文件,就可以看到同HTML相近的一些東西,那就是RTF的源數據描敘,也是通過SGML定義的。SGML從誕生到現在已經有上 10年的時間了,可以說已經發展的十分成熟。XML和HTML都可以算的上是SGML的徒子徒孫了,他們都是從SGML發展而來的文檔格式描敘語言。因此他們都有一些共通的特性,比如相近的語法,都使用尖括號標簽等等。但是準確的說來,HTML是SGML的一個應用,而XML是SGML的一個精簡子集。
XML是與SGML相兼容的——XML文檔能夠被任何SGML編輯和瀏覽器所解析。但是,XML比SGML要簡單得多,并且他是特別為傳輸帶寬有限的Internet所設計的。Tim Bray是XML標準的編制人員之一,根據他的說法,XML就是要繼承SGML的優點,但去掉SGML的復雜性,并使之能夠在網上很好的工作。
而XML、HTML其間的差別是本質上的。簡單的說來,HTML不能夠用來定義(或者說衍生)一個(下轉第121頁)(上接第113頁)新的應用,而XML卻能夠做到。例如,資源描敘格式和頻道定義格式就是由XML定義出來的新的應用。理論上講,甚至可以用XML來重新改寫HTML。
3 結論
事實上HTML、SGML和XML都將在一定時間內守住自己的崗位,暫時不會有哪一種會被其他的所淘汰。HTML仍然是網上發布信息最為快捷的方式。如果要發布的數據有長期的應用價值并且需要一些結構化的內容,網站建設者應該考慮轉而使用XML。和HTML與XML不同,SGML將不會在網上得到廣泛的贊同,因為它并不是為網上傳輸而特別設計的。但對于高端的應用,那些高度結構化的文檔應用,SGML仍將發揮起作用。