XML--INTERNET的“世界語”
最後更新:2017-02-28
來源:互聯網
上載者:User
xml XML--INTERNET的“世界語”
· 天行者·Yesky
儘管目前幾乎每種資訊都可通過網路擷取,但要找到你真正需要的資訊卻相當困難。現在的網頁僅僅起著一台向要求者傳送檔案的傳真機的作用,“所見即所得 (WYSIWYG)”的問題就在於你所見到的就是你得到的全部東西。例如,由於沒辦法給領帶顏色之類的元素作上標記,因此想通過搜尋引擎擷取某種顏色的領帶列表顯然不可能。往往我們碰到的,是你想通過雅虎搜尋一篇名叫“智慧之路”的文章,而它回給你一個“智慧之路書店”的條目。從理論上解決上述問題的方法很簡單:使用能說明資訊本質而不是表象的標籤。譬如,標明一份汽車的訂單,不是按HTML所提供的字、節、行、列來標註,而是根據某種原則,按價格、尺寸、數量和顏色等性質來定義。這樣,程式就能夠認出這個檔案是客戶的訂單,並可按不同使用者的不同要求分別處理:以台式PC方式顯示或以手機方式顯示,或是將它放入資料庫系統,或是顯示一幅樣品圖片……
可擴充標識語言XML(Extensible Markup language)就是由這樣一系列法則組成,它實質上是一種定義語言——任何人、任何行業都可遵循這些法則,定義各種標識來描述資訊中的所有元素,然後通過一種被稱為剖析器的小型程式進行處理,使資訊能“自我描述”。
電腦通訊方式的這個變化看似簡單,然而它的意義不僅僅是改變了HTML僵化的固定標識集,它的出現,從根本上改變了舊式的資訊構造方式,創造了一種讓所有電腦系統均可進行“智能”交流的語言,使得基於資訊傳輸的互連網在資訊檢索和擷取的方面發生了一種革命性變革,為整個互連網的智能化奠定了基礎。自從1998年初XML由W3C(World Wide Web Consortium,世界廣域網路組織)設計完成以來,這個標準便如野火般漫延至科學和工業領域。
這種狂熱源自互連網所帶來的一體化願望。一些經過精選的規則使XML能夠實現上述的一體化功能:其一就是標籤總是成對出現,其功能就像我們通常使用的括弧一樣,同時它們又具有引號的功能,可多層次嵌套——嵌套規則採用電腦中常見的樹結構,對於程式員來說簡直是驚人的方便:例如,你的報表以樹的形式表示,那麼寫一小段軟體來改變資料或顯示最新結果是非常輕而易舉事。其二是它所依賴的一個新標準——通用電腦代碼,這是一個支援世界上所有主要語言的混合文本符號編碼系統:在HTML中,一個檔案通常用一種語言,它可以是中文、英文、日文、阿拉伯文其中的任一種,假如你的軟體碰巧不能識別這種語言符號,你就不能使用它,而用來閱讀按XML規則編寫的網頁的軟體則可以處理各種語言的任意組合,因此,XML使得資訊不但能在不同的電腦系統間交換,還能跨國、跨文化地界交換。
以前,串連到網路的電腦和網路所能做的互動僅限於接收表格——填好後與網路伺服器來回交換直至工作完成,而XML由於通過給內容貼上標籤來描述其意義,與顯示介質無關,所以,可使用一種名叫“格式表”的規則來給不同的裝置進行自動重格式化工作——這個正處於發展階段的、供XML格式表用的標準被稱為XSL(可擴充的格式表語言):視力上有殘疾的人使用格式表,能把XML網頁譯為盲文或可聽的語言;若想在汽車裡實現網上衝浪,那麼使XML頁面發出朗讀聲是輕而易舉事;至於要做到在進行交易時,每個你所需要的檔案顯示的正好是你想要的東西,更是輕而易舉——XML附加上的結構和語義資訊,允許電腦裝置立刻處理大量工作,大大減輕了網路伺服器的負擔,極大地降低網路通訊量:當大多數網路資訊用行業專用的XML標籤標明時,要準確找到你所需要的資訊將變得十分簡單——在這裡,使用XML就如同為互連網作了一個圖書館卡片目錄。1999年2月完成的RDF(資源描述架構)使數十億通過超連結串連起來網頁可以在XML的支援下發揮更大作用。W3C由此制訂一個基於XML、稱為XLink的超文本連結標準:此標準支援多目標目錄選擇,能夠在點擊處直接插入其它網頁的相關文本或映像,而不須關閉網頁。然而,XLink最大的用途還在於它能將網頁的使用指向一些核心資料庫中的條目,而非頁面本身。當頁面地址變更時,製作者只需修改資料庫記錄便能更新所有指向它的連結,這有助於消除表示連結已被破壞的常見錯誤——“404檔案未找到”。
XML為科學家們交流理論、計算及實驗結果提供了一條特別便利的途徑:MathML(數學標識語言)支援數學家在網頁中插入等式和幾行簡單文字,於是讀者就可以把這些運算式直接插入代數軟體供計算和畫圖用;CML(化學標識語言)和AML(天文學標識語言)能協助研究人員檢索大量雜誌引文,並迅速篩選到恰好適用於他們研究課題的論文,例如,天文學家可以輸入一個星系在天空中的座標,以獲得關於此天體的映像、研究論文及儀器資料的目錄……XML還將有助於進行實驗及分析實驗資料:通過AIML(天文儀器標識語言),它支援全世界的天文學家通過瀏覽器控制天空中的望遠鏡,甚至可能控制衛星;遺傳學家運用BSML(生物序列標識語言)來交流和處理因基因圖譜繪製和基因序列分析工程產生的資訊洪流,使研究者能輕易搜尋巨大的遺傳密碼資料庫,並把最終片段顯示成有意義的圖譜而不是雜亂無章的字母序列……
在設計一門新語言之前,設計者們必須在三件事上達成一致:允許使用何種標籤,標籤元素怎樣相互嵌套以及怎樣處理。語言的詞彙和結構——通常編寫進DTD(檔案類型定義)。XML標準不強迫語言設計者使用DTD,但大多數基於XML開發的新語言都帶有DTD——它使程式員較易編寫出能理解標識並對它作出巧妙處理的軟體。所以,未來的網路設計者不僅要精通文字和映像的製作,還要精通DTD、資料樹、超連結結構、中繼資料和格式表的相互依存的多層次系統結構——為第二代網路設計的更為堅實的基礎結構。