为什么使用 XML
 
?????? 為什么使用 XML?
???????Web 使我們能夠與任何地方的任何人通訊。廣泛接受的標(biāo)準(zhǔn)(這對(duì)完全使用 Web 的潛力是至關(guān)重要的)允許 Web 在多種交互操作的技術(shù)層上通訊。一個(gè)重要層是可視化顯示和用戶界面,例如 HTML、GIF 和 JScript(TM) 之類的現(xiàn)有標(biāo)準(zhǔn)。這些標(biāo)準(zhǔn)允許創(chuàng)建一次頁面,并且在不同時(shí)間向眾多接收者顯示。
???????盡管可視化和用戶界面標(biāo)準(zhǔn)是必要層,但它們并不足以表示和管理數(shù)據(jù)。當(dāng)前,Internet 只是文本和圖片的訪問媒體。并沒有智能搜索、數(shù)據(jù)交換、自適應(yīng)表示和個(gè)人化的標(biāo)準(zhǔn)。Internet 必須超出設(shè)置信息訪問和顯示標(biāo)準(zhǔn)的限制。Internet 必須設(shè)置信息理解標(biāo)準(zhǔn)(表示數(shù)據(jù)的通用方式),以便軟件能夠更好地搜索、移動(dòng)、顯示和處理上下文中隱藏的信息。由于 HTML 是一種描述如何表示 Web 頁的格式,所以 HTML 并不能完成以上處理;HTML 并不表示數(shù)據(jù)。例如,HTML 不能:
- 向醫(yī)生提供將處方發(fā)送到藥劑師的標(biāo)準(zhǔn)方式。
 - 允許醫(yī)藥實(shí)驗(yàn)室以所有接收者均能分析的格式發(fā)表統(tǒng)計(jì)信息。
 - 以所有接受者均能解碼和處理的表格描述電子支付。
 - 提供搜索法律圖書館中有關(guān)某一主題的所有訴訟文檔的標(biāo)準(zhǔn)方式。
 - 指定以何種方式傳送公司目錄中的信息,以便銷售人員可以脫機(jī)工作、向客戶顯示目錄、接受定單并以標(biāo)準(zhǔn)格式上載這些定單。
 
???????簡(jiǎn)而言之,盡管 HTML 提供了用于顯示的豐富工具,但 HTML 并沒有提供任何基于標(biāo)準(zhǔn)的管理數(shù)據(jù)的方式。
???????正如數(shù)年前用于顯示的 HTML 標(biāo)準(zhǔn)擴(kuò)展了 Internet 一樣,數(shù)據(jù)顯示標(biāo)準(zhǔn)亦將擴(kuò)展 Internet。 數(shù)據(jù)標(biāo)準(zhǔn)將是商業(yè)交易、公布個(gè)人喜愛的配置文件、自動(dòng)協(xié)作和數(shù)據(jù)共享的工具。將以此格式編寫醫(yī)療記錄、制藥研究數(shù)據(jù)、半導(dǎo)體部件圖以及采購定單。這將開創(chuàng)眾多新用途,這些新用途均基于在 Web 上到處移動(dòng)結(jié)構(gòu)數(shù)據(jù)的標(biāo)準(zhǔn)表示,正如當(dāng)前我們移動(dòng) HTML 頁一樣容易。數(shù)據(jù)標(biāo)準(zhǔn)是 XML 和 XML 擴(kuò)展名。
???????什么是 XML?
???????XML 是一種元標(biāo)注語言,該語言提供一種描述結(jié)構(gòu)數(shù)據(jù)的格式。這有助于更精確地聲明內(nèi)容,方便跨越多種平臺(tái)的更有意義的搜索結(jié)果。此外,XML 將起用新一代的基于 Web 的數(shù)據(jù)查看和處理應(yīng)用程序。
???????數(shù)據(jù)的結(jié)構(gòu)表示
???????XML 提供可以廣泛執(zhí)行并易于配置的數(shù)據(jù)的結(jié)構(gòu)表示。XML 是 萬維網(wǎng)協(xié)會(huì)(W3C) 定義的用于優(yōu)化 Web 上的傳輸?shù)?SGML 的子集,XML 確保結(jié)構(gòu)數(shù)據(jù)是一致的并獨(dú)立于應(yīng)用程序或供應(yīng)商。由此產(chǎn)生的互用性正在啟動(dòng)新一代的商業(yè)和電子商務(wù) Web 應(yīng)用程序。
???????XML 提供可以編碼各種情況(從簡(jiǎn)單至復(fù)雜)的內(nèi)容、語義和架構(gòu)的數(shù)據(jù)標(biāo)準(zhǔn),可被用于標(biāo)注以下對(duì)象:
- 普通文檔。
 - 諸如約會(huì)記錄或采購定單之類的結(jié)構(gòu)記錄。
 - 具有數(shù)據(jù)和方法的對(duì)象,如 Java 對(duì)象或 ActiveX 控件的持續(xù)型表單。
 - 數(shù)據(jù)記錄,如查詢的結(jié)果集。
 - 有關(guān) Web 站點(diǎn)的元內(nèi)容,如“頻道定義格式 (CDF)”。
 - 圖形表示,如應(yīng)用程序的用戶界面。
 - 標(biāo)準(zhǔn)架構(gòu)實(shí)體和類型。
 - Web 上的信息與用戶之間的所有鏈接。
 
???????一旦該數(shù)據(jù)在客戶機(jī)桌面上,就可以在多個(gè)視圖中處理、編輯和表示它,而無需返回到服務(wù)器。由于較低的計(jì)算量和帶寬負(fù)載,所以目前的服務(wù)器更易于升級(jí)。此外,由于以 XML 格式交換數(shù)據(jù),所以可以輕而易舉地合并來自不同來源的數(shù)據(jù)。
???????XML 對(duì) Internet 和大型企業(yè)的 Intranet 環(huán)境是頗有價(jià)值的,這是由于 XML 提供使用靈活、開放、基于標(biāo)準(zhǔn)格式的互用性,并具備訪問遺留數(shù)據(jù)庫和將數(shù)據(jù)傳輸?shù)?Web 客戶機(jī)的新方式。可以更快地生成應(yīng)用程序,應(yīng)用程序更易于維護(hù),并且可以在結(jié)構(gòu)數(shù)據(jù)上輕易提供多種視圖。
???????XML 文檔
??????? XML 是一種基于文本的格式,在許多方面類似于 HTML,后者是專為存儲(chǔ)和傳輸數(shù)據(jù)而設(shè)計(jì)的。XML 源是由 XML 元素組成的,每個(gè) XML 元素包括一個(gè)開始標(biāo)記(<title>),一個(gè)結(jié)束標(biāo)記(</title>)以及兩個(gè)標(biāo)記之間的信息(稱為內(nèi)容)。就象 HTML 一樣,XML 文檔保存利用標(biāo)記注釋的文本。然而,與 HTML 不同的是,XML 允許無限的標(biāo)記集,各標(biāo)記集并不表示如何顯示,而是表示其含義。例如,可以將 XML 元素標(biāo)記為價(jià)格、訂單編號(hào)或名稱。由文檔的作者確定使用何種數(shù)據(jù)以及哪種標(biāo)記名稱最合適。很容易創(chuàng)建 XML 文檔。如果您熟悉 HTML,那么您可以很快地學(xué)會(huì)采用 XML 格式進(jìn)行編寫。在該示例中,利用 XML 描述天氣預(yù)報(bào),可以用 XML 的擴(kuò)展名保存該文件,如 Weather.xml。
<pre name="code" class="html"><span style="font-size:12px;"><weather-report><date>1998 年 3 月 25 日</date><time>08:00</time><area><city>西雅圖</city><state>華盛頓</state><region>西海岸</region><country>美國</country></area><measurements><skies>局部多云</skies><temperature>46</temperature><wind><direction>西南</direction><windspeed>6</windspeed></wind><h-index>51</h-index><humidity>87</humidity><visibility>10</visibility><uv-index>1</uv-index></measurements> </weather-report></span>???????各標(biāo)記表示各數(shù)據(jù)項(xiàng)的含義(是否為 <日期> 元素、<區(qū)域> 元素等等),而并不描述顯示數(shù)據(jù)的次序和形式。此數(shù)據(jù)的所有接收者均可將該文檔解碼,以便用于自己的特定目的。例如,某人可以利用該信息制定當(dāng)天的計(jì)劃,而氣象研究員可以將其作為西雅圖的歷史記錄。
???????可擴(kuò)展的功能
???????您可以在 XML 中定義無限的標(biāo)記集。雖然可以使用 HTML 標(biāo)記以粗體或斜體的方式顯示文字,但 XML 可提供一個(gè)用于標(biāo)記結(jié)構(gòu)數(shù)據(jù)的框架。XML 元素可以將其關(guān)聯(lián)數(shù)據(jù)聲明為零售價(jià)格、營(yíng)業(yè)稅、書名、降雨量或其他任何需要的數(shù)據(jù)元素。隨著整個(gè)組織以及 Internet 上的其他用戶采用 XML 標(biāo)記,將出現(xiàn)搜索和處理數(shù)據(jù)的相應(yīng)能力,而不管發(fā)現(xiàn)該數(shù)據(jù)的應(yīng)用程序如何。一旦定位了數(shù)據(jù),就可以在網(wǎng)絡(luò)上傳送并以多種方式在瀏覽器中顯示,或者傳送到其他應(yīng)用程序以供進(jìn)一步處理和查看。
???????標(biāo)記表示一塊數(shù)據(jù)。通常,它對(duì)應(yīng)于某個(gè)表中的某個(gè)字段。然而,這并不是必要的。標(biāo)記可以是一個(gè)計(jì)算列(價(jià)格乘以數(shù)量)。沒有理由認(rèn)為一個(gè) XML 文件表示某個(gè)表中的所有數(shù)據(jù)。正像通常看到的那樣,XML 將表示包括許多表的查詢結(jié)果。只要接收應(yīng)用程序能夠搞清 XML 中的數(shù)據(jù)的意思,數(shù)據(jù)是從哪里來的以及該數(shù)據(jù)如何到達(dá) XML 文件并不重要。
???????數(shù)據(jù)是從表示和處理中分離出來的
???????XML 的優(yōu)勢(shì)在于,它保持了用戶界面和結(jié)構(gòu)數(shù)據(jù)之間的分離。HTML 指定如何在瀏覽器中顯示數(shù)據(jù),而 XML 則定義內(nèi)容。在 HTML 中,使用標(biāo)記告訴瀏覽器以粗體或斜體的方式顯示數(shù)據(jù);而在 XML 中,只使用標(biāo)記來描述數(shù)據(jù),如城市名、溫度和氣壓。在 XML 中,使用諸如“擴(kuò)展樣式語言 (XSL)”和“層疊樣式表 (CSS)”之類的樣式表,來表示瀏覽器中的數(shù)據(jù)。XML 把數(shù)據(jù)從表示和處理中分離出來,使您可通過應(yīng)用不同的樣式表和應(yīng)用程序,來按您的愿望顯示和處理數(shù)據(jù)。
???????把數(shù)據(jù)從表示中分離出來,能夠無縫集成眾多來源的數(shù)據(jù)。可以將用戶信息、采購定單、研究結(jié)果、帳單支付、醫(yī)療記錄、目錄數(shù)據(jù)以及其他來源轉(zhuǎn)換為中間層上的 XML,以便像 HTML 頁顯示數(shù)據(jù)一樣很容易地聯(lián)機(jī)交換數(shù)據(jù)。然后可以在 Web 上將按照 XML 編碼的數(shù)據(jù)傳送到桌面。對(duì)于大型數(shù)據(jù)庫或文檔中存儲(chǔ)的遺留信息無需進(jìn)行更新,并且由于使用了 HTTP 在網(wǎng)絡(luò)上傳送 XML,所以此功能不需要更改。
???????使 XML 數(shù)據(jù)自描述
???????在 XML 中,“文檔類型定義(DTD)”可以伴隨文檔,且文檔類型定義實(shí)質(zhì)上定義文檔的規(guī)則,例如哪些元素可被顯示以及元素之間的結(jié)構(gòu)關(guān)系。當(dāng)接收應(yīng)用程序沒有傳入數(shù)據(jù)的內(nèi)部描述時(shí),DTD 將幫助驗(yàn)證該數(shù)據(jù)。然而,在 XML 中,DTD 是可選的。
???????與 DTD 一起發(fā)送的數(shù)據(jù)稱為有效 XML。此時(shí),XML 語法分析程序應(yīng)對(duì)照 DTD 中定義的規(guī)則校正傳入的數(shù)據(jù),以確保該數(shù)據(jù)被正確構(gòu)造。沒有與 DTD 一起發(fā)送的數(shù)據(jù)稱為結(jié)構(gòu)良好的 XML。這里,可以使用基于 XML 的文檔實(shí)例,如以上顯示的層次結(jié)構(gòu)氣象數(shù)據(jù),可用來隱含地描述它自己。
???????對(duì)于有效 XML 和結(jié)構(gòu)良好的 XML,XML 編碼的數(shù)據(jù)是自描述的,這是由于描述標(biāo)記和數(shù)據(jù)是混合的。XML 使用開放的、靈活的格式,在任何需要交換和傳送信息的地方均可使用 XML,這使得 XML 功能更加強(qiáng)大。
???????例如,可以使用 XML 描述有關(guān) HTML 頁的信息,或使用 XML 描述商業(yè)規(guī)則中包含的數(shù)據(jù)或電子商務(wù)交易中的對(duì)象,如發(fā)票、采購定單和定貨單。由于 XML 是與 HTML 分離的,所以可以將 XML 添加到 HTML 文檔中。W3C 定義了一種格式,根據(jù)該格式,可以將基于 XML 的數(shù)據(jù)或 XML 數(shù)據(jù)島封裝到 HTML 頁中。通過將 XML 數(shù)據(jù)島嵌入到 HTML 頁中,并使用 XML 中包含的語義信息,就可以根據(jù)傳送的數(shù)據(jù)生成多個(gè)視圖。此外,還可以使用 XML 強(qiáng)制應(yīng)用程序,如分布式打印、數(shù)據(jù)庫搜索及其他程序。
???????架構(gòu)
???????架構(gòu)是 XML 文檔規(guī)則的正式規(guī)格,即元素名稱,架構(gòu)表示文檔中允許哪些元素以及允許哪些組合。如XML 數(shù)據(jù)工作組(英文)中定義的新架構(gòu)語言,符合 W3C 的“XML 數(shù)據(jù)和文檔內(nèi)容說明 (DCD)”建議提供了和 DTD 一樣的功能。但是,這些架構(gòu)是可擴(kuò)展的,所以開發(fā)人員可用附加的信息(諸如那些數(shù)據(jù)類型、繼承和演示文稿規(guī)則)來擴(kuò)展它們。這使得這些新的架構(gòu)語言在功能上比 DTD 強(qiáng)大得多。
???????除了 XML 數(shù)據(jù)和 DCD 外,Microsoft 和其他公司還建議用 XML 自身來表達(dá) XML 文檔架構(gòu)的詞匯。這使 XML 數(shù)據(jù)能夠描述它自己的結(jié)構(gòu)。表達(dá) XML 內(nèi)部的架構(gòu)給 XML 格式添加了巨大的能量,因?yàn)樗箼z查某些數(shù)據(jù)的軟件了解它的結(jié)構(gòu)成為可能,而不用任何事先內(nèi)建數(shù)據(jù)結(jié)構(gòu)的描述。
???????使用架構(gòu),作者正好可以定義在文檔中允許什么樣的元素名,以及在每個(gè)元素中允許什么樣的子元素、屬性和關(guān)系。作者可從其他架構(gòu)中引入片斷,以及通過繼承來擴(kuò)展類型。于是,在保留了詞匯樹結(jié)構(gòu)簡(jiǎn)單性的同時(shí),還允許元素間的復(fù)雜關(guān)系。
???????作者可以發(fā)明他們自己的架構(gòu),或者共享別的作者創(chuàng)建的架構(gòu)。讀者可以檢查架構(gòu)參考以檢驗(yàn)已經(jīng)收到的文檔的類型是否正確。他們還可以使用架構(gòu)中的信息來自動(dòng)檢驗(yàn)文檔的結(jié)構(gòu)。
???????想使用 XML 的公司,需要一個(gè)尋找關(guān)于其他公司和應(yīng)用程序支持的架構(gòu)、文檔和公司進(jìn)程的信息的簡(jiǎn)單辦法。想象一下消費(fèi)者要付出的巨大代價(jià),相當(dāng)于每一家公司都要定義它自己的發(fā)布信息的方法。即使是 Web, 建立和維護(hù) Web 站點(diǎn)的費(fèi)用也超出了某些公司的能力。有無數(shù)的公司可以發(fā)布他們的信息,但是缺少如何用安全的、可控的方式來發(fā)布這些信息的標(biāo)準(zhǔn),這勢(shì)必導(dǎo)致成千上萬種不同的執(zhí)行方法、導(dǎo)航方式和內(nèi)容深度。允許這種“混亂”狀態(tài)泛濫的成本負(fù)擔(dān)將波及消費(fèi)者。
??????? Microsoft 已經(jīng)選擇了通過創(chuàng)建和管理 www.biztalk.org(英文),來最大限度克服此問題。該站點(diǎn)將成長(zhǎng)為定位、管理、學(xué)習(xí)和發(fā)布使用在成千上萬應(yīng)用程序中的 XML、XSL 和信息模型的大門。架構(gòu)的全功能聯(lián)機(jī)倉庫計(jì)劃在 1999 年初秋交付使用。
????? 開放式標(biāo)準(zhǔn)
??????? XML 是基于經(jīng)過驗(yàn)證的、針對(duì) Web 進(jìn)行優(yōu)化的技術(shù)標(biāo)準(zhǔn)。Microsoft 正在與其他大公司和 W3C 研究小組共同努力,確保對(duì)工作在多系統(tǒng)和多瀏覽器上的開發(fā)人員、作者和用戶的互用性和支持,并不斷加強(qiáng) XML 標(biāo)準(zhǔn)。
?????? XML 是由下列相關(guān)標(biāo)準(zhǔn)組成:
- 可擴(kuò)展的標(biāo)記語言(XML)(英文) 是一個(gè)“建議”,即 W3C 審批進(jìn)程的最后階段。這就是說,該標(biāo)準(zhǔn)是穩(wěn)定的,并且受到 Web 和工具開發(fā)人員的熱烈歡迎。
 - XML 命名空間(英文) 是一個(gè)“建議”,它描述了命名空間的語法并支持命名空間認(rèn)可的 XML 分析程序。
 - 文檔對(duì)象模型 (DOM) 1 級(jí)(英文) 是一個(gè)“建議”,它提供了有計(jì)劃地訪問腳本中結(jié)構(gòu)化數(shù)據(jù)的標(biāo)準(zhǔn),使開發(fā)人員能夠與基于 XML 數(shù)據(jù)的計(jì)算機(jī)進(jìn)行相容的交互。
 - 可擴(kuò)展的樣式表語言 (XSL)(英文) 是當(dāng)前的工作草稿。XSL 由兩個(gè)模塊組成:“XSL 轉(zhuǎn)換語言”和“XSL 格式化對(duì)象”。轉(zhuǎn)換語言可用于為顯示而轉(zhuǎn)換 XML。因?yàn)?XSL 的兩個(gè)部分是模塊,所以轉(zhuǎn)換語言可獨(dú)立應(yīng)用于通用目的的轉(zhuǎn)換,包括將 XML 轉(zhuǎn)換為格式更好的 HTML。CSS 可用于簡(jiǎn)單結(jié)構(gòu)的 XML 數(shù)據(jù),但是只能以接收的次序顯示信息。
 - XML 鏈接語言 (XLL)(英文) 和它的伴侶XML 指針語言 (XPointer)(英文) 是當(dāng)前的工作草稿。XLL 是 XML 鏈接語言,它提供了 XML 中的鏈接,類似 HTML 中的鏈接,然而功能更強(qiáng)。用 XLL,鏈接可以是多向的,而且鏈接可存在于對(duì)象級(jí),不是僅在頁面級(jí)。Internet Explorer 5 不支持 XLL。
 
??????? XML 結(jié)構(gòu)化架構(gòu),諸如 XML 數(shù)據(jù)注釋(英文) 和 XML 的文檔內(nèi)容描述 (DCD)(英文) 中描述的那些是 W3C XML 數(shù)據(jù)工作組(英文) 的課題。
?????? 從 XML 中受益
??????? XML 給基于 Web 的應(yīng)用程序帶來了強(qiáng)大的功能和靈活性,它為開發(fā)人員和用戶提供了許多引人注目的優(yōu)點(diǎn):
- 更有意義的搜索
 - 開發(fā)靈活的 Web 應(yīng)用程序  
- 不同來源的數(shù)據(jù)集成
 - 本地的數(shù)據(jù)計(jì)算和操作
 - 多個(gè)數(shù)據(jù)視圖
 - 粒狀更新
 
 
?????? 更有意義的搜索
??????? 數(shù)據(jù)可使用 XML 來作唯一標(biāo)記,潛在地允許客戶指定 Winston Churchill所著的書,而不是描寫 Winston Churchill 的書。所不同的是,使用現(xiàn)在的方法來搜索,可能找出混在一起的兩種書。不使用 XML,則需要搜索應(yīng)用程序以了解每個(gè)數(shù)據(jù)庫的架構(gòu),此架構(gòu)描述了該數(shù)據(jù)庫是如何構(gòu)造的。事實(shí)上這是不可能的,因?yàn)槊總€(gè)數(shù)據(jù)庫描述它的數(shù)據(jù)的方式不同。而使用 XML,書很容易使用一種標(biāo)準(zhǔn)的方法,按作者、書名、國際標(biāo)準(zhǔn)書號(hào)或其他準(zhǔn)則分類。然后,代理程序再使用一致的方法,在被標(biāo)識(shí)的書店站點(diǎn)上搜索關(guān)于 Winston Churchill 的書。
??????? 靈活的 Web 應(yīng)用程序的開發(fā)
??????? 找到數(shù)據(jù)之后,可將 XML 交給其他應(yīng)用程序、對(duì)象和中間層服務(wù)器作下一步處理,或者送至桌面,在瀏覽器中查看。XML,連同用于顯示的 HTML、用于邏輯的腳本以及用于與數(shù)據(jù)的交互和顯示的一般對(duì)象模型一起,為靈活的三層 Web 應(yīng)用程序開發(fā)提供了所需的技術(shù)。
??????? 不同來源的數(shù)據(jù)集成
??????? 搜索多個(gè)、不兼容的數(shù)據(jù)庫的能力,至今尚屬不可能。XML 啟用了容易結(jié)合的不同來源的結(jié)構(gòu)化數(shù)據(jù)。軟件代理可用于在中間層服務(wù)器上,集成來自后端數(shù)據(jù)庫和其他應(yīng)用程序的數(shù)據(jù)。這數(shù)據(jù)再遞交給客戶機(jī)或其他服務(wù)器,作下一步的聚合、處理和分布。
??????? XML 的可擴(kuò)展性和靈活性,使它能夠描述各種類型的應(yīng)用程序中包含的數(shù)據(jù),這些應(yīng)用從描述 Web 頁面的集合到數(shù)據(jù)記錄,應(yīng)有盡有。此外,由于基于 XML 的數(shù)據(jù)是自描述的,不需要內(nèi)建的傳入數(shù)據(jù)的描述,便能交換和處理數(shù)據(jù)。
??????? 本地計(jì)算和操作
??????? 在 XML 格式的數(shù)據(jù)被遞交給客戶機(jī)之后,該數(shù)據(jù)可以使用客戶機(jī)應(yīng)用程序執(zhí)行的計(jì)算進(jìn)行剖析,并在本地進(jìn)行編輯和操作。用戶不僅僅可以顯示數(shù)據(jù),還可使用各種方法操作數(shù)據(jù)。“XML 文檔對(duì)象模型 (DOM)”還允許使用腳本或其他編程語言操作數(shù)據(jù)。省略了和服務(wù)器之間的數(shù)據(jù)傳輸,便可進(jìn)行數(shù)據(jù)計(jì)算。將查看數(shù)據(jù)的用戶界面和數(shù)據(jù)本身分離,使得從前只能在高端數(shù)據(jù)庫上找到的功能強(qiáng)大的應(yīng)用程序,可以自然地使用簡(jiǎn)單、靈活、開放的格式,為 Web 而創(chuàng)建。
???????? 多個(gè)數(shù)據(jù)視圖
??????? 數(shù)據(jù)被傳遞到桌面之后,可使用不同的方法查看。通過使用簡(jiǎn)單、開放和可擴(kuò)展的方式描述結(jié)構(gòu)化數(shù)據(jù),XML 補(bǔ)充了廣泛用于描述用戶界面的 HTML。另外,HTML 描述了數(shù)據(jù)的外觀,而 XML 則描述了數(shù)據(jù)本身。由于現(xiàn)在顯示與數(shù)據(jù)分離了,使用 XML 定義的數(shù)據(jù)可以指定多個(gè)不同的視圖,使數(shù)據(jù)得以更好地顯示。可以根據(jù)客戶機(jī)配置、用戶喜好和其他準(zhǔn)則決定本地?cái)?shù)據(jù)的顯示方式。CSS 和 XSL 提供了描述特定數(shù)據(jù)視圖的說明性機(jī)制。
??????? 粒狀更新
??????? 數(shù)據(jù)可以使用 XML 粒狀更新,每當(dāng)部分?jǐn)?shù)據(jù)被更改后,不需要再發(fā)送一個(gè)完整的結(jié)構(gòu)化數(shù)據(jù)集。只有更改了的元素才從服務(wù)器發(fā)送到客戶機(jī)上,而且用不著刷新整個(gè)用戶界面就可以顯示更改了的數(shù)據(jù)。現(xiàn)在,即使視圖保持不變而只更改了一個(gè)數(shù)據(jù)項(xiàng),整個(gè)頁面也必須重建。這嚴(yán)重限制了服務(wù)器的可縮放性。
??????? 同樣,XML 允許添加其他數(shù)據(jù),如預(yù)報(bào)的最高和最低溫度、預(yù)期的降雨量和概率(按百分比)。此附加的信息將流入用戶的現(xiàn)有視圖,而不使用瀏覽器發(fā)送新的視圖。如果還需要其他信息(如大氣壓),不用重建便可以發(fā)送。
??????? 前景
??????? 作為表達(dá)結(jié)構(gòu)化數(shù)據(jù)的行業(yè)標(biāo)準(zhǔn),XML 向組織、軟件開發(fā)人員、Web 站點(diǎn)和最終用戶提供了許多優(yōu)點(diǎn)。隨著重要市場(chǎng)(如高級(jí)數(shù)據(jù)庫搜索、網(wǎng)上銀行、醫(yī)藥、法律、電子商務(wù)和其他領(lǐng)域)的更為高級(jí)的市場(chǎng)數(shù)據(jù)格式被創(chuàng)建,這種機(jī)會(huì)將進(jìn)一步增加。當(dāng)站點(diǎn)不但要查看數(shù)據(jù),而且要分配數(shù)據(jù)時(shí),正是良機(jī)。
??????? 當(dāng)前,客戶服務(wù)正從呼叫中心和物理位置移向 Web 站點(diǎn),因此將受益于 XML 的強(qiáng)大功能。其次,因?yàn)榇蠖鄶?shù)業(yè)務(wù)應(yīng)用程序涉及數(shù)據(jù)和數(shù)據(jù)庫記錄的傳輸,如訂貨單、發(fā)票、客戶信息、約會(huì)、地圖等等,XML 將在 Internet 上執(zhí)行大量業(yè)務(wù)應(yīng)用程序,從而大大改變最終用戶的可能發(fā)生的事情。此外,Web 站點(diǎn)上的信息,不管是存在文檔中,還是在數(shù)據(jù)庫中,都可以使用基于 XML 的、面向 intranet 的詞匯來標(biāo)記。這些詞匯,對(duì)需要在客戶和供應(yīng)商之間交換信息的中小型公司來說,也很有幫助。
??????? 一個(gè)重要的、尚待開發(fā)的市場(chǎng),就是便于最終用戶建造自己的協(xié)作 Web 站點(diǎn)的開發(fā)工具,包括從遺留數(shù)據(jù)庫信息和現(xiàn)存的用戶界面生成 XML 數(shù)據(jù)的工具。此外,還應(yīng)開發(fā)描述公文夾或其他數(shù)據(jù)的標(biāo)準(zhǔn)架構(gòu),例如,它應(yīng)該能使用排版、圖表和 Excel 等電子表格的其他功能。描述從遺留數(shù)據(jù)庫生成的 XML 的說明性工具和可視工具是非常好的機(jī)會(huì)。查看 XML 數(shù)據(jù)的自定義工具可使用 Visual Basic? 開發(fā)系統(tǒng)、Java 和 C++ 編寫。
??????? XML 要求強(qiáng)大的新工具來表示文檔中豐富的、復(fù)雜的 XML 數(shù)據(jù)。通過將對(duì)用戶友好的顯示層映射到可動(dòng)態(tài)更改的復(fù)雜的層次數(shù)據(jù)集的頂層,可以實(shí)現(xiàn)這一點(diǎn)。XML 數(shù)據(jù)可能使用的布局,包括折疊分級(jí)、PivotTable 動(dòng)態(tài)視圖和每個(gè)公文夾的簡(jiǎn)單表格。
??????? Web 站點(diǎn)可以提供股票行情、新聞或?qū)崟r(shí)交通數(shù)據(jù)。通過過濾 Web 廣播或智能輪詢復(fù)制這些站點(diǎn)的服務(wù)器樹,可以獲得這些數(shù)據(jù)。使用 XML 可以避免信息超載,辦法是編寫自定義的規(guī)則來處理電子郵件中的陳舊的信息。基于 XML 的、用戶構(gòu)造這些規(guī)則的工具,以及運(yùn)行這些工具的服務(wù)器和客戶機(jī)軟件,是個(gè)極好的巨大市場(chǎng)。“標(biāo)準(zhǔn)的對(duì)象模型”能啟用這些功能,它們通常被寫在腳本中,用于過濾傳入的消息、檢查存儲(chǔ)的消息、創(chuàng)建待發(fā)郵件、訪問數(shù)據(jù)庫等等。可編寫這些代理程序,以便在任何地方自動(dòng)運(yùn)行。
總結(jié)
                            
                        - 上一篇: Python学习之==文件操作
 - 下一篇: Mysql查询指定数据库某个表的所有字段