BloveSaga

          在希臘帕爾納斯山南坡上,有一個馳名世界的戴爾波伊神托所,在它的入口處的巨石上赫然銹刻著這樣幾個大字: 認識你自己!

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            34 隨筆 :: 12 文章 :: 122 評論 :: 0 Trackbacks

          理解XML
          ?
          ??? XML表示可擴展標記語言(eXtensible Markup Language).其中,"可擴展"這個詞意味著開發(fā)者能夠自由擴展在描述文件方面的能力,可以為自己的應用程序定義有實際意義的標簽.XML是基于文本的,允許開發(fā)者在各種應用程序之間傳遞和交換結構化數(shù)據(jù),同時大大便利了不同服務器之間的數(shù)據(jù)傳輸.用XML表注的數(shù)據(jù)能夠被所有的設備識別,從帶主機的大型機和微型機,到掌上電腦和蜂窩電話.
          ??? 與諸如HTML,DHTML,CSS等其他網(wǎng)頁技術相比,XML更注重數(shù)據(jù)的結構,而不是數(shù)據(jù)的表現(xiàn)形式.讓我們看看下面的這段代碼:
          ?<B>XML Bible</B>
          ?<P>
          Elliotte Rusty Harold <BR>
          IDG Books Worldwide <BR>
          $39.99
          ??? 稍微看一下,你可能已經(jīng)知道了,它將的是一本關于書的基本信息:作者,出版社,價格.但是,這里用作標記的元素,比如<B>,<P>等,并沒有揭示出這是一本有關書的信息,它只是描述了這幾行信息是如何顯示的.比如,在第一行中用了<B>,就表示瀏覽器處理的時候,要以粗體字顯示這行文本.
          ??? 同樣對這些信息,我們用XML標注如下:
          <BOOK>
          <NAME>XML Bible</NAME>
          <AUTHOR>Elliotte Rusty Harold</AUTHOR>
          <PUBLISHER>IDG Books Worldwide</PUBLISHER>
          <PRICE>$39.99</PRICE>
          </BOOK>
          ??? 上面的小例子揭示出,通過定義一些有含義的標簽,XML擴展了用戶描述文件的能力.你可以根據(jù)應用程序的需要,定義任意多個標簽.在上面的代碼段中,沒有任何關于如何顯示信息的描述.XML將數(shù)據(jù)的結果與顯示分離開來,這似乎不太合理,其實很有益處的.

          使用XML的優(yōu)越性

          ?
          ??? XML不僅對數(shù)據(jù)從服務器到客戶端的傳輸大有好處,對于應用程序之間的數(shù)據(jù)傳輸,也是十分理想的.我們將它的優(yōu)越性列舉如下:
          * 可使用特定領域的詞匯
          *? 數(shù)據(jù)交換
          *? 智能化查詢
          *? 讓用戶選擇顯示的數(shù)據(jù)
          *? 局部更新

          可使用特定領域的詞匯
          ??? XML是沒有預定義標簽的,你必須自己定義標簽,用來標注你的數(shù)據(jù).也就是說,你可以用XML創(chuàng)建自己的表注語言(稱為XML詞匯表).XML允許每個特定的行業(yè)根據(jù)需要定義自己的標簽集合,這樣瀏覽器就不必處理成千上萬的標簽集了.利用XML,已經(jīng)創(chuàng)建了若干新的標記語言,比如W3C特別推薦的MathML,一種用于顯示數(shù)學公式和科學數(shù)據(jù)的專用標記語言,就是基于XML的.

          數(shù)據(jù)交換
          ??? 數(shù)據(jù)交換在進行電子商務的交易時是極為重要.數(shù)據(jù)交換的關鍵在于企業(yè)之間或企業(yè)內(nèi)部部門之間的標準數(shù)據(jù)接口,使用存儲格式不同的數(shù)據(jù)能夠進行交換.XML為以文本格式式存儲的數(shù)據(jù)提供了對于結構的定義和管理,可以作為數(shù)據(jù)交換的標準格式或協(xié)議,是數(shù)據(jù)交換雙方的系統(tǒng)差異變得無關緊要,并且產(chǎn)生清晰易讀的文件.XML避免了同類產(chǎn)品的一些常見弊病,如擴展性差,缺乏國際化和本地化的支持,平臺相關等.作為一種非常健壯的數(shù)據(jù)交換格式,XML將繼續(xù)發(fā)展,不斷完善.

          智能化查詢
          ??? 由于XML的出現(xiàn),只能搜索引擎將成為現(xiàn)實,可將XML文檔中的數(shù)據(jù)進行智能化搜索,得到更精確的查詢結果.為了更好的理解XML實現(xiàn)內(nèi)容定義的意義,我們來比較一下下面的兩個例子:
          例1: The best pricture award in 1998 went to the film <I>Titanic</I>.
          例2: The best pricture award in 1998 went to the film? <FILM>Titanic<FILM>.
          在第一例子中,搜索引擎并不能確定所涉及的一艘輪船,一場表演,一部電影,抑或是一個形容詞.這樣的搜索精度比較低.而在第二個例子中,你能知道"Titanic"是一部電影的名字.如果現(xiàn)在搜索引擎要搜索的是電影 "Titanic",那么在這個文檔中就能找到一個精確的匹配項.

          ?讓用戶選擇顯示的數(shù)據(jù)
          ????? XML支持用戶端的數(shù)據(jù)處理.用戶可以選擇一個,若干或全部數(shù)據(jù)記錄,也可以按照不同的屬性進行排序,或者切換到圖形化查看方式,而且不需要服務器針對每一次操作發(fā)送數(shù)據(jù).相同的數(shù)據(jù)可以用不同的方式來顯示,也可以僅僅顯示數(shù)據(jù)的一個子集,這些都取決于用戶與這些數(shù)據(jù)的相對關系.比如,會計部門是可以訪問財務信息的,而購買東西的顧客卻不能反問這部分信息.

          ?局部更新
          ????? 當需要更新XML文檔中的數(shù)據(jù)時,并不需要更新整個頁面,而只要重新下載那些變化了的數(shù)據(jù),這顯然加快了更新的速度.例如:股票交易中的數(shù)據(jù)是動態(tài)的,如果每次都更新整個頁面的話,都需要很多時間.而使用XML,將只改變變化了的數(shù)據(jù).

          XML的設計目標
          ?????
          XML是針對大規(guī)模的電子出版物的挑戰(zhàn)來設計的,同時在Web數(shù)據(jù)的交換中也充當著越來越重要的角色.
          根據(jù)W3C的有關文件,XML將在如下幾個方面發(fā)揮重要作用:
          * 實現(xiàn)國際化,獨立于媒體的電子出版.
          * 允許個產(chǎn)業(yè)部門制訂與平臺無關的數(shù)據(jù)交換協(xié)議,尤其針對電子商務數(shù)據(jù)交換的協(xié)議.
          * 使用允許自動處理的格式,將信息傳遞給用戶代理商
          * 讓人們用低價軟件就可以實現(xiàn)數(shù)據(jù)處理
          * 允許人們按照自己的方式顯示信息
          * 提供一種有關信息的數(shù)據(jù)(寫作 metadata),以幫助人們尋找和發(fā)現(xiàn)信息,實現(xiàn)信息的生產(chǎn)者和消費者之間的雙向尋找.

          ? 任何形式電子商務的成功,都有賴于一個公共詞匯表的廣泛使用.部分XML詞匯表列舉如下:

          ? 頻道定義格式(CDF, Channel Definition Format)-一種基于XML的,用于創(chuàng)建web頻道的數(shù)據(jù)格式.所謂web頻道,是一種實現(xiàn)web服務器到客戶端的數(shù)據(jù)自動發(fā)送的技術.
          ?
          ? 開放軟件描述(OSD, Open Software Description)-用于網(wǎng)上自動安裝軟件,而不需要任何人工干預.

          ? 開放式金融交易(OFX, Open financial Exchange)-被個人金融應用程序用來作為個人和金融組織之間進行網(wǎng)上交流的工具.

          ? Meta內(nèi)容框架(MCF, Meta Content Framework)-用來定義關于信息的數(shù)據(jù),以實現(xiàn)對信息的編目和搜索.

          ? 資源描述框架(RDF, Resource Description Framework)-用于描述各種類型的資源,以實現(xiàn)對資源的編目,搜索和引用.

          ? 無線標記語言(WML, Wireless Markup Language)-用于在無線網(wǎng)絡上的數(shù)據(jù)奮發(fā),采用無線訪問協(xié)議.

          ? 化學標記語言(CML, Chemical Markup Language)-用來定義化學公式.
          ?
          ?? 數(shù)學標記語言(MathML, Mathematical Markup Language)-用來定義復雜的數(shù)學公式.

          posted on 2006-06-13 12:02 藍色Saga 閱讀(224) 評論(0)  編輯  收藏 所屬分類: Basic XML

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
          主站蜘蛛池模板: 德保县| 伊春市| 万安县| 伊吾县| 呈贡县| 浦东新区| 舟曲县| 嘉祥县| 东海县| 云和县| 宝山区| 沂源县| 巴楚县| 临邑县| 福泉市| 沅陵县| 阳江市| 庐江县| 塘沽区| 贵州省| 朝阳县| 长岛县| 甘德县| 科技| 团风县| 弥勒县| 乌苏市| 大庆市| 桂东县| 仁寿县| 且末县| 军事| 迁安市| 巩留县| 富平县| 永寿县| 浦北县| 册亨县| 汕头市| 平阳县| 固始县|