XML驚鴻一瞥
技術(shù)篇
最近一年內(nèi),XML技術(shù)在世界上迅速風(fēng)行,國(guó)外的各大IT雜志、報(bào)紙、網(wǎng)站中這個(gè)字眼簡(jiǎn)直到了泛濫的地步,IT企業(yè)也都把未來的希望押在XML上。在國(guó)內(nèi),來自彼岸的XML颶風(fēng)也帶來了學(xué)習(xí)XML的熱潮,各種相關(guān)的電腦圖書紛紛在市場(chǎng)上涌現(xiàn)出來。根據(jù)筆者的統(tǒng)計(jì),當(dāng)前國(guó)內(nèi)市面上已經(jīng)有二十多種關(guān)于XML的電腦圖書。
什么是XML?XML為什么有這么大的吸引力?XML是eXtensibleMarkupLanguage(可擴(kuò)展標(biāo)記語(yǔ)言)的縮寫,與既重視數(shù)據(jù)結(jié)構(gòu)更重視表現(xiàn)形式的HTML不同,XML只關(guān)心數(shù)據(jù)本身。不能否認(rèn)HTML對(duì)于信息化發(fā)展的巨大作用,但是隨著信息化的深入,它日益暴露出自身的弱點(diǎn):HTML能夠表現(xiàn)出人類視覺適用的內(nèi)容,而對(duì)于計(jì)算機(jī)來說,這些內(nèi)容之間的邏輯關(guān)系是不可能理解的。而XML提供的數(shù)據(jù)存儲(chǔ)方法恰恰解決了這樣的問題,XML文檔內(nèi)容結(jié)構(gòu)清晰,可以通過解析器(Parser)被分解成為一個(gè)個(gè)對(duì)象,應(yīng)用于不同的終端——包括用戶代理(UserAgent,就是通常說的瀏覽器)、商用程序、數(shù)據(jù)庫(kù)。
XML的結(jié)構(gòu)極其嚴(yán)格,這一點(diǎn)也與HTML不同,通過嚴(yán)格的結(jié)構(gòu)校驗(yàn)防止出現(xiàn)非法內(nèi)容。此外,很多XML還要通過內(nèi)部或外部的DTD(DocumentTypeDefinition,文檔類型定義)或者Schema(模式)來校驗(yàn)數(shù)據(jù)內(nèi)容的合法性。在嚴(yán)格的結(jié)構(gòu)和內(nèi)容保證下,XML文件能夠被精
確地解析,對(duì)于解析器來說也不需要考慮所謂“智能”(現(xiàn)在所謂的“智能”其實(shí)往往是“弱智都能”的縮寫)處理各種奇怪的信息。
XML目前的應(yīng)用范圍很廣,比如在科學(xué)領(lǐng)域有CML、MathML、BSML、IML、AIML等等,法律、醫(yī)學(xué)等領(lǐng)域也有專屬的XML。但XML被應(yīng)用最為廣泛的當(dāng)屬商業(yè)領(lǐng)域,XML很大程度上已經(jīng)替代了原先企業(yè)間電子文檔交換的EDI(ElectronicDataLanguage,電子數(shù)據(jù)交換標(biāo)準(zhǔn))標(biāo)準(zhǔn)。在企業(yè)間電子商務(wù)的流程中,由于每個(gè)交易信息要經(jīng)過很多環(huán)節(jié),如果沒有統(tǒng)一的數(shù)據(jù)標(biāo)準(zhǔn)格式,信息在不同信息系統(tǒng)內(nèi)流動(dòng)的時(shí)候,就會(huì)無法被識(shí)別。以前都采用人工處理的方法識(shí)別和轉(zhuǎn)換商業(yè)信息,所謂的“電子商務(wù)”更確切地說是“電郵商務(wù)”。有了XML,所有的商務(wù)信息都能以相同的、可識(shí)別的方式傳輸、轉(zhuǎn)換,從采購(gòu)單位的采購(gòu)信息到生產(chǎn)商的采購(gòu)、加工、物流、結(jié)算等環(huán)節(jié)都自動(dòng)完成。國(guó)外的大公司已經(jīng)在竭力推行自己電子商務(wù)的XML標(biāo)準(zhǔn),目前流行的有BizTalk、cXML、ebXML以及RosettaNet等電子商務(wù)的XML標(biāo)準(zhǔn)。
對(duì)于圖書行業(yè)來說,XML的出現(xiàn)意味著一場(chǎng)出版行業(yè)信息存儲(chǔ)的新革命。此前的圖書內(nèi)容往往是按照印刷排版格式或者其他注重視覺表現(xiàn)的文件形式存儲(chǔ)的,這種存儲(chǔ)方式可以讓出版者能夠便利地進(jìn)行圖書贈(zèng)印或重印,但是由于這些數(shù)據(jù)之間沒有邏輯性可言,在內(nèi)部檢索整理的時(shí)候就還得依靠人工方式處理,修訂的內(nèi)容也沒有規(guī)律可循,一般的處理方法就是以修訂后的內(nèi)容替代原來的內(nèi)容——這往往要進(jìn)行文件版式的重新調(diào)整。有了XML,各種數(shù)據(jù)之間具有了天然的邏輯相關(guān)性,在處理各種信息內(nèi)容的時(shí)候就易如反掌了。XML采用了數(shù)據(jù)內(nèi)容和表現(xiàn)形式脫離的方式(其實(shí)HTML4.0規(guī)范中就已經(jīng)開始采用這樣的思想了),所以在對(duì)內(nèi)容進(jìn)行修訂的同時(shí),可以把以前的內(nèi)容“隱藏”起來,新的內(nèi)容按照原先的視覺表現(xiàn)規(guī)則就能夠以同樣的方式表現(xiàn)出來。
圖書篇
目前國(guó)內(nèi)圖書市場(chǎng)上XML技術(shù)方面的圖書大致可以分為三類:一類是研究XML技術(shù)本身的,如機(jī)械工業(yè)出版社的《XML高級(jí)編程》(吐血推薦)、人民郵電出版社的《XML&SGML參考手冊(cè)》等;一類是探索XML技術(shù)應(yīng)用的,如清華大學(xué)出版社的《XML實(shí)用技術(shù)》、機(jī)械工業(yè)出版社的《XML使用詳解》等;還有一類就是探討XML與其他技術(shù)相結(jié)合的圖書,如科學(xué)出版社的《Microsoft SQL Server 2000 XML和Internet支持》、科海集團(tuán)出版的《基于XML的SVG應(yīng)用指南》、人民郵電出版社的《XML及WAP開發(fā)手冊(cè)》等。筆者認(rèn)為如果要研究這門技
術(shù),必須要搞懂XML深層次的東西,所以不要太著急開始就偏向應(yīng)用(雖然這種方法經(jīng)常能夠帶來鼓勵(lì)你繼續(xù)前進(jìn)的成就感),至于和其他技術(shù)結(jié)合方面,除非你已經(jīng)真的了解了XML,否則在很多常識(shí)性的問題上都難免會(huì)捉襟見肘。
附:國(guó)內(nèi)目前XML技術(shù)部分圖書列表(帶“★”的為重點(diǎn)推薦圖書):
★《基于XML的SVG應(yīng)用指南》5D多媒體、劉嘯、畢永年著,北京科海培中公司2001年2月
★《XML從入門到精通》安·內(nèi)瓦羅、出克·懷特、林達(dá)·伯曼著,電子工業(yè)出版社2000年8月出版
★《XML&SGML參考手冊(cè)》里克·杰里夫著,人民郵電出版社2000年10月出版
★《XML高級(jí)編程》(Wrox系列)第迪爾·馬丁等著,機(jī)械工業(yè)出版社2001年1月出版
《MicrosoftSQLServer2000XML和Internet支持》微軟公司著,科學(xué)出版社2000年10月出版
★《XML實(shí)用大全》艾洛特·R.哈洛爾德著,中國(guó)水利水電出版社2000年4月出版
★《XML實(shí)用技術(shù)》查爾斯·F.高德法布等著,清華大學(xué)出版社1999年9月出版
★《XML用戶手冊(cè)(附光盤)》查爾斯·F.高德法布、保羅·普瑞斯科德著,人民郵電出版社2000年9月出版
《VisualBasic6XML專業(yè)技術(shù)》詹姆斯·布里特、圖恩·杜恩斯蒂著,人民郵電出版社2000年12月出版
《XML基礎(chǔ)教程(第二版)》勞倫特著,電子工業(yè)出版社2000年1月出版
《XML及WAP開發(fā)手冊(cè)》李秋云、郝建國(guó)、鄭林會(huì)著,人民郵電出版社2000年10月出版
《XML可擴(kuò)展標(biāo)記語(yǔ)言命令詳解》山德拉·E.艾德著,電子工業(yè)出版社1999年4月出版
《XML使用詳解》霍爾茲納著,機(jī)械工業(yè)出版社1999年1月出版
《XML完全手冊(cè)》馮延暉、葉毅峰編著,中國(guó)電力出版社2000年5月出版
《XML應(yīng)用實(shí)例——建立電子商務(wù)應(yīng)用》席恩·麥克格雷斯著,人民郵電出版社2000年10月出版
《網(wǎng)站開發(fā)新動(dòng)力——用XML輕松開發(fā)Web網(wǎng)站》燈芯工作室編寫,北京希望電子出版社2001年2月出版
《網(wǎng)頁(yè)核心XML應(yīng)用技巧與實(shí)例》劉光著,清華大學(xué)出版社2000年10月出版
《用XML開發(fā)電子商務(wù)系統(tǒng)(附光盤)》理查德·馬丁著,北京希望電子出版社2001年1月出版