【正文】
進行訪問 ,就是 HTML 頁面也無法進行訪問 .要想使該數(shù)據(jù)表的數(shù)據(jù)在更廣泛的范圍內進行共享 ,必須對數(shù)據(jù)格式進行轉換 在這里我們使用 XML, XML 的基于文本的數(shù)據(jù)格式可以方便地進行解析和互操作 ,一旦關系數(shù)據(jù)轉換成 X11L 數(shù)據(jù)源 ,數(shù)據(jù)庫中的數(shù)據(jù)可以被其他應用程序和HTML頁面訪問 在把 Bib 表中的數(shù)據(jù)轉換成基于 XML格式的數(shù)據(jù)后 ,就可以通過腳本和數(shù)據(jù)源對象 (DSO)對數(shù)據(jù)進行本地訪問 ,其他人可以通過 Inter和 Intra對數(shù)據(jù)進行訪問 。 如何從關系數(shù)據(jù)庫中產生 XML 數(shù)據(jù)源是本文研究的重點之一 .如果能夠把關系數(shù)據(jù)庫中的數(shù)據(jù)轉換為 XML 數(shù)據(jù)源并把這些轉換后的數(shù)據(jù)源放置在 Web 服務器上 ,就可以很方便地實現(xiàn)對數(shù)據(jù)的訪問 ,并且能解決很多 HTML數(shù)據(jù)格式自身的限制 。 在下面的圖示中給出了通過 Web 對 XML數(shù)據(jù)源訪問的參考模型 ,VB應用程序通過 ADO從數(shù)據(jù)庫中提取數(shù)據(jù) ,然后把 ADO數(shù)據(jù)集轉換成 XML格式再傳遞到 Web服務器上 ,一旦數(shù)據(jù)放在 Web服務器上 ,就可以通過Web應用程序 (如 IE5. 0 )來處理和顯示數(shù)據(jù) ,從而實現(xiàn)對 Web上的XML 數(shù)據(jù)源方便地進行存取和訪問 。 23 XML 是一種基于通用數(shù)據(jù)格式的描述語言 ,能夠被其他應用程序方便地解析和操作 .如果數(shù)據(jù)是關系數(shù)據(jù)格式 ,只有 ASP 應用程序和能夠使用 OLEDB 數(shù)據(jù)源的應用程序才可以訪問 .而 XML 不同 ,只要客戶程序能夠解析 XML 的結構 ,就可以訪問關系數(shù)據(jù)表中的信息 ,給我們實際生活中的應用帶來了 極大的方便。 (3),可以更好地從離散的 XML數(shù)據(jù)源集成數(shù)據(jù) .查找多個不兼容的數(shù)據(jù)庫在實踐上難以實現(xiàn) ,但是如果把各個數(shù)據(jù)庫的數(shù)據(jù)轉換成XML 格式的數(shù)據(jù)源 ,通過軟件代理可以很方便地把這些數(shù)據(jù)集成到中間層服務器上 ,在這之后 ,這些數(shù)據(jù)還可以被傳 到客戶或其他的服務器上進行進一步的集成 ,處理和分發(fā) . (4) , XML數(shù)據(jù)源可以方便地應用于數(shù)據(jù)的多個視圖 .如果數(shù)據(jù)被傳送到桌面上 ,它可以以多種方式顯示 .例如 ,XML 數(shù)據(jù)的購買訂單對代理商可以顯示得較為詳細 ,而對于顧 客來說 ,只需要顯示簡單的視圖。 本文數(shù)據(jù)的集成方法采用基于 中間模式 的方法 ,將關系數(shù)據(jù)庫中的數(shù)據(jù)轉換為通用的 XML 數(shù)據(jù)源 .由于從不同的關系數(shù)據(jù)庫中產生 XML 數(shù)據(jù)源的轉換方法類似 ,文中僅給出從一個 數(shù)據(jù)庫中進行數(shù)據(jù)轉換的方法。39。 3. 異構數(shù)據(jù)庫的集成 異構數(shù)據(jù)庫集成的方法 Web 上異構數(shù)據(jù)庫集成目標是支持對 Web 上多個數(shù)據(jù)源的查詢 ,處理大量的 ,數(shù)目遞增的 Web 數(shù)據(jù)源 . Web 上異構數(shù)據(jù)庫集成主要有兩種方法 :數(shù)據(jù)倉庫方法和虛擬方法 .前者是將各數(shù)據(jù)源的數(shù)據(jù)裝載到數(shù)據(jù)倉庫中 ,用戶的查詢基于數(shù)據(jù)倉庫的數(shù)據(jù) 。 (4).專門的對象存儲 如 Lore 系統(tǒng) ,它利用自己的對象管理器管理物理磁盤上的半結構數(shù)據(jù)或 XML 數(shù)據(jù)對象 。 (3).面向對象數(shù)據(jù)庫 很多商業(yè)的 XML 服務器采用這種方式 .它利用 DTD 給出的類型信息構造類層次結構 ,正則表達式的符號可由基 20 于對象數(shù)據(jù)模型的類型表達 (如用 list數(shù)據(jù)類型表達 ),也可以通過創(chuàng)建新類實現(xiàn) (如 |符號可用 union 類型的類實現(xiàn) ).該方式的數(shù)據(jù)模型更接近半結構化數(shù)據(jù)模型 ,并能更好地處理嵌套的集合和順序 ,因此 ,其數(shù)據(jù)存儲和查詢處理可以用來提高 XML 或半結構化數(shù)據(jù)處理的效率 .問題是在數(shù)據(jù)加 載時對未知的數(shù)據(jù)類型需要建立新的類對應 ,這樣就影響了加載效率 。 XML 數(shù)據(jù)模型中數(shù)據(jù)的存儲以及索引的存儲 1. XML 數(shù)據(jù)的存儲有以下方式 : (1).文本文件 是最簡單 ,直接地存儲 XML 數(shù)據(jù)的方式 .它與數(shù)據(jù)被理解的方式一致 ,自然地反映了對象之間的嵌套關系 ,且同一個對象的數(shù)據(jù)集中存儲 .缺點是存儲粒度大 ,當數(shù)據(jù)量大時不利于實現(xiàn)網(wǎng)絡通信和數(shù)據(jù)共享。 1. XML 數(shù)據(jù)模型中的數(shù)據(jù)是無序的 ,元素的順序事先并未假定 。 personID=oI23 firstnameJohnlfirstname lastname Smith /lastname /person person ID= o234 ? /person article author=o123 o234 title ? .. /title Year1995/Year /article 上述結構用 XML模型圖表示如下: 17 圖 2 XML 圖中數(shù)據(jù) 之間 的引用 因為僅有 XML 圖的葉結點中包含值 ,并且只能表示一個值 .所以 ,下面的 XML文檔片段就不能直接用數(shù)據(jù)模型表示 . title A Trip to titlepartthe Moon/title part/title 為此 ,考慮用下面的片段來代替 . titleCDATAA Trip to/CDATAtitlepartCDATAthe Moon/CDATA/titIe part/title 該片段的數(shù)據(jù)模型圖如下 : 18 圖 3 XML 數(shù)據(jù)模型圖 19 其中頁結點的值是它的 OID。IMPLIED 一屬性是可選的 。為了支持元素的共享, XML 可以為一個元素指定一個 ID 屬性值來唯一地標識元素,同時可以為一個元素指定一個引用 IDREF屬性 16 來引用已存在的多個元素 ID. 例如文檔 DTD 中有以下 ID 屬性和IDREFS屬性。下面是一個 XML 的數(shù)據(jù)模型圖,該模型圖中的數(shù)據(jù)的類型和結構與前面定義的 DTD一致。 2. 作者名放在書名的前面。 2. 作者名放在書名的前面。數(shù)據(jù)模型并不要求元素的順序必須與 XML文檔中的次序一致。 該 DTD 限定了數(shù)據(jù)是怎樣組織的。文章 (article) 的 DTD也是相似的,但它的出版年月是可選的,它省略了出版商,但包含了類型屬性,一個出版商包含了名字和地址元素,作者元素包含了可選的名和必須有的姓。 如 :!ELEMENT e(a,b?c+)說明元素 e由一個子元素 a,可選的子元素 b, 要求出現(xiàn)或連續(xù)出現(xiàn)多次的子元素 c組成。通常, XML圖包含以下內容 : 1. 圖的侮一個頂點用一個唯一的字符串標識,稱為對象標識 13 (OID) 2. 圖的邊用元素標簽標記 3. 圖的結點用一組屬性值來標記 4. 圖的葉結點用值 (或字符串 )來標記 5. 圖有一個根結 點 為了更有效地進行 XML數(shù)據(jù)的處理,學者們提出了許多關于 XML數(shù)據(jù)模式描述的方案,其中最主要的是文檔類型定義 DTD。 XML 數(shù)據(jù)模型中 XML 文檔的結構按照 XML 圖來組織。一旦數(shù)據(jù)模型適合特定的數(shù)據(jù)類,我們就可以創(chuàng)建遵守該模型的結構化 XML 文件。這是通過 Schema來實現(xiàn)的, Schema 是一種描述 XML 文件中信息結構的模型。 XML 格式數(shù)據(jù)是一種自描述的半結構化數(shù)據(jù)。從某種意義上說, XML就是一種半結構化的數(shù)據(jù)模型。 所幸的是,近年來新涌現(xiàn)出了 XML,它最大的特點在于其 Tag 是具有語義的,是 由 用戶定義的,能夠反映一定的數(shù)據(jù)的含義。 由于當時的 Web 都是基于 HTML 實現(xiàn)的,而 HTML 在路徑表達的實現(xiàn)上難度很大。相關的研究工作在19971998 年間取得了一些結果, 提出了 諸如 WebSQL、 WbOQL、 WebLog、 StruQL、 LLIXES 、 LoreI 等大約一二十種的查詢語言。但當時研究的重點還沒有真正面對 Web,而主要研究的是異構數(shù)據(jù)環(huán)境,因為在異構環(huán)境中的數(shù)據(jù)已經存在這種半結構化的特征。 針對 Inter 上的數(shù)抓半結構化的特點,尋找個半結構化的數(shù)據(jù)模型則成為了解決 上 述問題的關鍵所在由于 XML 數(shù)據(jù)模型的無模式及自描述的特點適于描述網(wǎng) 上數(shù)據(jù),所 以研究這種新類型數(shù)據(jù)的半結構數(shù)據(jù)模型應運而生。這模型能很好地描述特定的數(shù)據(jù),同時可以很好地定義和解釋相關的查詢語言。 2. Web上的數(shù)據(jù)模型 — XML 數(shù)據(jù)模型 結構化數(shù)據(jù)模型的特點 傳統(tǒng)的數(shù)據(jù)庫都有一定的數(shù)據(jù)模型。 高效、準確的 Web 查詢 通過使用 Web 上的數(shù)據(jù)模型對異構數(shù)據(jù)進行“改造”,達到數(shù)據(jù)表示的統(tǒng)一性和一定程度上的結構化,從而實現(xiàn)高效、準確的 Web 查詢。如果要想充分利用這些數(shù)據(jù)進行有效地數(shù)據(jù)查詢,就必須解決異構數(shù)據(jù)的集成問題 ,用一種統(tǒng)一的數(shù)據(jù)格式表示數(shù)據(jù)。針對 Web 上數(shù)據(jù)的半結構化特點,尋找一個描述半結構化數(shù)據(jù)的數(shù)據(jù)模型是解決問題的關鍵所在。半結構化是 Web 上數(shù)據(jù)的最大特點。而 Web上的數(shù)據(jù)非常復雜,沒有特定的模型描述,每一站點的數(shù)據(jù)都各自獨立設計,并且數(shù)據(jù)本身具有自述性和動態(tài)可變性。顯然,面向 Web的數(shù)據(jù)查詢比面向單個數(shù)據(jù)倉庫的數(shù)據(jù)查詢要復雜得多。相對于Web的數(shù)據(jù)而言,傳統(tǒng) 的數(shù)據(jù)庫中的數(shù)據(jù)結構性很強,數(shù)據(jù)為完全結構化的數(shù)據(jù),而 Web 上的數(shù)據(jù)是半結構化數(shù)據(jù)。所謂數(shù)據(jù)查詢,就是從大量的數(shù)據(jù)中發(fā)現(xiàn)真正需要的內容,解決數(shù)據(jù)的應用質量問題。 9 本文圍繞著基于 XML的 Web查詢技術涉及到的幾個主要問題展開研究與討論 : Web 上數(shù)據(jù)的自身特點,研究與探討了適于表示 Web 上數(shù)據(jù)的數(shù)據(jù)模型 XML數(shù)據(jù)模型 ; Web數(shù)據(jù)的共享,本文給出了從關系數(shù)據(jù)庫中結構化的數(shù)據(jù)向 XML 格式數(shù)據(jù)的轉換方法,解決異構數(shù)據(jù)的集成問題 ; 3. 利用 基于 XML 的查詢語言 XML— QL實施 Web 上 XML 數(shù)據(jù)源的查詢 。 XML 保 留了 SGML 可擴展性、結構性以及數(shù)據(jù)確認方面的主要優(yōu)點,它的靈活性允許表示各 種各樣的信息 ,而 這些信息是自我描述的,所以 XML 表示的結構化的數(shù)據(jù)可以被那些沒有關于這些數(shù)據(jù)的知識的軟件來處理,實現(xiàn)數(shù)據(jù)在互聯(lián)網(wǎng)上更大范圍內的共享。 XML的出現(xiàn)為解決上述問題提供了理想的解決方案。 ( 45) 8 基于 XML的 Web查詢技術研究 一 、 引 言 隨著 互聯(lián) 網(wǎng)的普及,網(wǎng)絡已成為人們獲得信息的主要途徑和重要手段網(wǎng)絡 }資源豐富,悶容龐雜,網(wǎng)絡上的數(shù)據(jù)能否很好地得到共享成為影響網(wǎng)絡發(fā)展的個重要因素但就目前來看,我們日常用到的數(shù)據(jù)大部分是無結構的文檔和完全結構化的關系數(shù)據(jù)庫中的數(shù)據(jù),如果把這些數(shù)據(jù)放在互聯(lián)網(wǎng)上很難實現(xiàn)數(shù)據(jù)的共 享為此,必須改變當前數(shù)據(jù)格式的多樣性和共享性差的缺點,用一種統(tǒng)一的數(shù)據(jù)格式來表示數(shù)據(jù),從而實現(xiàn)數(shù)據(jù)在互聯(lián)網(wǎng)上更大范圍內的共享。 ( 44) 參考文獻 ( 29) 三、結 論 ( 20) 4 基于 XML 的 Web 查詢 ( 8) 1 Web 查詢涉及的幾 個主要問題 It offers a tool to search and hi uwse information. But WWW contains too much billions of pages located on thousands of servers in different palaces in the world. Every server manages its own resources, and does not follow one standard managing mechanics. In general, there are wealthy of various resources on the , which can not be shared anc queried effectively. The emergence of XML provides a resolution to the abovementioned problem The full name of XML is Extensible Markup is a simplified and restricted stbset of SGML, particularly devised for Web application. XML is an excellent tool for data exchange on the inter. Due to its capability to bine structured data with different sources, XML makes it Fossible to retrieve data from different and inpatible database servers, and brings hopes for Web da