


版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
淺析:構(gòu)建基于WebXML的信息集成
引言隨著計(jì)算機(jī)技術(shù),特別是Internet的不斷發(fā)展,實(shí)現(xiàn)"信息孤島"之間的集成與交互成為亟待解決的問(wèn)題。在諸多解決方案中,基于多代理(Multi-Agent)的信息集成就是其中的一種。該系統(tǒng)已被認(rèn)為是建造大型復(fù)雜分布式信息處理系統(tǒng)的重要技術(shù)和框架。在基于多代理的方法中,資源集成的具體操作步驟是:用戶把請(qǐng)求提交給搜索代理,由搜索代理對(duì)請(qǐng)求進(jìn)行適當(dāng)?shù)霓D(zhuǎn)換,發(fā)送給代理路由器;代理路由器通過(guò)鏈接,將查詢請(qǐng)求發(fā)送給數(shù)據(jù)庫(kù)代理;數(shù)據(jù)庫(kù)代理接受查詢請(qǐng)求,并進(jìn)行具體的數(shù)據(jù)庫(kù)操作,然后把查詢結(jié)果返回給請(qǐng)求者;搜索代理對(duì)返回的結(jié)果進(jìn)行識(shí)別,若存在所需的資源,則激活本地?cái)?shù)據(jù)庫(kù)代理,對(duì)獲得的信息進(jìn)行記錄,由專家系統(tǒng)對(duì)所搜集的信息進(jìn)行進(jìn)一步的處理。這種方法有一個(gè)明顯的缺陷,即必須明確數(shù)據(jù)庫(kù)的格式,代理才能正常工作。而XML技術(shù)則可以很好的解決這個(gè)問(wèn)題。用XML進(jìn)行數(shù)據(jù)集成,只需對(duì)所有的異構(gòu)數(shù)據(jù)源增加一個(gè)以XML為格式的封裝體,即在不改變數(shù)據(jù)源的前提下,用XML對(duì)數(shù)據(jù)源的定義描述字、數(shù)據(jù)源的創(chuàng)建等相關(guān)信息進(jìn)行封裝。供應(yīng)鏈節(jié)點(diǎn)上所有數(shù)據(jù)源的封裝體納入全局的XMLSchema或DTD,并存儲(chǔ)在XML虛擬服務(wù)器,為系統(tǒng)檢索、定位提供服務(wù)。在XML的集成機(jī)制里,可以通過(guò)XML封裝體實(shí)現(xiàn)彼此之間的數(shù)據(jù)交互,所以不需要了解數(shù)據(jù)庫(kù)的格式,從而彌補(bǔ)了基于多代理的集成方法在這方面的不足。下面首先概要介紹XML的相關(guān)技術(shù),進(jìn)而給出網(wǎng)絡(luò)環(huán)境下的、基于XML的信息集成方案:包括系統(tǒng)的總體框圖、層次結(jié)構(gòu)、工作過(guò)程及系統(tǒng)主要組成部分的具體設(shè)計(jì)。XML技術(shù)1、XML相關(guān)標(biāo)準(zhǔn)XML不僅僅是一種語(yǔ)言,廣義的XML是一系列標(biāo)準(zhǔn)的集合。圖1說(shuō)明了XML及其相關(guān)標(biāo)準(zhǔn),在圖中,中間一層是XML基礎(chǔ)標(biāo)準(zhǔn),最下層是XML的應(yīng)用標(biāo)準(zhǔn)。XML基礎(chǔ)標(biāo)準(zhǔn)是為XML的進(jìn)一步實(shí)用化制定的標(biāo)準(zhǔn),它規(guī)定了采用XML制定標(biāo)準(zhǔn)時(shí)的一些公用特征、方法或規(guī)則。XMLSchema描述了更加嚴(yán)格定義XML文檔的方法,以便可以更自動(dòng)地處理XML文檔。XMLNamespace用于保證XMLDTD中名字的一致性,以便不同的DTD中的名字在需要時(shí)可以合并到一個(gè)文檔中。DOM定義了一組與平臺(tái)和語(yǔ)言無(wú)關(guān)的接口,以便程序和腳本能夠動(dòng)態(tài)訪問(wèn)和修改XML文檔內(nèi)容、結(jié)構(gòu)及樣式。XQuery的目的是為從Web文檔中提取數(shù)據(jù),提供一種靈活的查詢機(jī)制。XPath描述如何識(shí)別、選擇、匹配XML文件中的各個(gè)構(gòu)成元件,包括元素、屬性、文字內(nèi)容等。XPointer和XLink標(biāo)準(zhǔn),規(guī)定了有關(guān)定位、鏈接方面的內(nèi)容。CSS被用來(lái)作為XML文檔顯示的樣式標(biāo)準(zhǔn)等等。2、XML的主要技術(shù)特點(diǎn)XML是一種元標(biāo)記語(yǔ)言,強(qiáng)調(diào)以數(shù)據(jù)為核心,這兩大特點(diǎn)在XML的眾多技術(shù)特點(diǎn)中最為突出,同時(shí)也奠定了XML在信息管理中的優(yōu)勢(shì)。XML是一種元標(biāo)記語(yǔ)言與HTML不同,XML不是一種具體的標(biāo)記語(yǔ)言,它沒(méi)有固定的標(biāo)記符號(hào),是一種元標(biāo)記語(yǔ)言,是一種用來(lái)定義標(biāo)記的標(biāo)記語(yǔ)言,它允許用戶自己定義一套適于應(yīng)用的DTD。XML的核心是數(shù)據(jù)在一個(gè)普通的文檔里,往往混合有文檔數(shù)據(jù)、文檔結(jié)構(gòu)、文檔樣式三個(gè)要素。而對(duì)于XML文檔來(lái)說(shuō),數(shù)據(jù)是其核心。將樣式與內(nèi)容分離,是XML的巨大優(yōu)點(diǎn)。一方面可以使應(yīng)用程序輕松的從文檔中尋找并提取有用的數(shù)據(jù)信息,而不會(huì)迷失在混亂的各類標(biāo)簽中;另一方面,由于內(nèi)容與樣式的獨(dú)立,也可以為同一內(nèi)容套用各種樣式,使得顯示方式更加豐富、快捷。3、DTD(DocumentTypeDefine,文檔類型定義)DTD的作用是定義允許或不允許什么在文檔中出現(xiàn)。DTD的結(jié)構(gòu):一般由元素類型聲明、屬性表聲明、實(shí)體聲明、記號(hào)聲明等構(gòu)成。一個(gè)典型的文檔類型定義文件會(huì)把未來(lái)所要?jiǎng)?chuàng)作的XML文檔的元素結(jié)構(gòu)、屬性類型、實(shí)體引用等預(yù)先進(jìn)行規(guī)定。用戶既可以直接在XML文檔中定義DTD,也可以通過(guò)URL引用外部的DTD。DTD位XML文檔的編寫者和處理者提供了共同遵循的原則,使得與文檔相關(guān)的各種工作有了統(tǒng)一的標(biāo)準(zhǔn)?;赬ML的信息集成方案圖2給出基于XML的信息集成的總體框圖[1],是把來(lái)自供應(yīng)鏈節(jié)點(diǎn)上的、不同數(shù)據(jù)源(數(shù)據(jù)庫(kù),構(gòu)件庫(kù),領(lǐng)域知識(shí)庫(kù))的信息通過(guò)包裝器(Wrapper)轉(zhuǎn)換成XML數(shù)據(jù),存儲(chǔ)在虛擬集中存儲(chǔ)器中,用戶通過(guò)DOM/SAX來(lái)獲取已經(jīng)轉(zhuǎn)換成XML格式的信息;同樣,用戶通過(guò)DOM/SAX接口提交的查詢命令,通過(guò)包裝器轉(zhuǎn)換成本地?cái)?shù)據(jù)源能夠識(shí)別的數(shù)據(jù)格式進(jìn)行查詢。用戶通過(guò)XML的封裝體實(shí)現(xiàn)彼此之間的交互,而不需要了解對(duì)方的數(shù)據(jù)格式。2、基于XML的信息集成的層次結(jié)構(gòu)如圖3所示,整個(gè)信息集成可以分為三個(gè)層次:其中最底層為信息抽取層,中間為中介層,最上層為用戶接口層。信息抽取層信息抽取層處于系統(tǒng)的最低層,是系統(tǒng)的數(shù)據(jù)提供者,主要功能是提取和集成分布在多個(gè)異構(gòu)數(shù)據(jù)源(數(shù)據(jù)庫(kù),知識(shí)庫(kù)及構(gòu)件庫(kù))上的信息。這一層采用Wrapper(包裝器)技術(shù)實(shí)現(xiàn)將一個(gè)從中介層得到的查詢,翻譯成能在經(jīng)過(guò)封裝的數(shù)據(jù)源上執(zhí)行的操作,將查詢結(jié)果抽取并打包到一個(gè)XML文檔,最后將該文檔返回給中介層。中介層中介層(MediationLayer)的主要功能有兩方面:一方面對(duì)上接受用戶通過(guò)DOM客戶端API向系統(tǒng)提交的或應(yīng)用程序發(fā)出的查詢,將其轉(zhuǎn)換成對(duì)XML的查詢,并將查詢結(jié)果返回給用戶或應(yīng)用程序;另一方面對(duì)下將XML查詢分發(fā)給各個(gè)包裝器,并將查詢結(jié)果通過(guò)DTD說(shuō)明再轉(zhuǎn)換成XML格式。用戶接口層用戶接口層(UserInterfaceLayer)在中介層之上,負(fù)責(zé)將用戶的查詢命令提交給中介層,獲得并解釋查詢結(jié)果樹,并將結(jié)果顯示給用戶。XMLDOM(DocumentObjectModel,文檔對(duì)象模型)是為合法的格式良好的XML文檔設(shè)計(jì)的一套API(ApplicationProgrammingInterface,應(yīng)用程序接口),它同時(shí)定義了這些文檔的邏輯結(jié)構(gòu),訪問(wèn)及操作方法。由于數(shù)據(jù)顯示與內(nèi)容分開,XML定義的數(shù)據(jù)允許指定不同的顯示方式,使數(shù)據(jù)更合理的表現(xiàn)出來(lái)。本地的數(shù)據(jù)能夠以客戶配置,使用者選擇或其他標(biāo)準(zhǔn)決定的方式動(dòng)態(tài)的表現(xiàn)出來(lái)。CSS和XSL為數(shù)據(jù)的顯示提供了公布的機(jī)制。整個(gè)系統(tǒng)位于異構(gòu)數(shù)據(jù)源和應(yīng)用程序之間,向下協(xié)調(diào)各種數(shù)據(jù)源,向上為訪問(wèn)集成數(shù)據(jù)的應(yīng)用提供了統(tǒng)一的模式和訪問(wèn)的通用接口。系統(tǒng)為異構(gòu)數(shù)據(jù)源提供高層次的檢索服務(wù)。3、基于XML的信息集成的工作過(guò)程下面以用戶的一個(gè)信息查詢?yōu)槔?,?jiǎn)要說(shuō)明一下信息系統(tǒng)的工作過(guò)程:用戶通過(guò)DOM向系統(tǒng)提交信息查詢命令;虛擬集中存儲(chǔ)器區(qū)分各個(gè)XML查詢命令,并且將其發(fā)送到適當(dāng)?shù)腤rapper包裝器上;Wrapper包裝器負(fù)責(zé)將XML查詢轉(zhuǎn)換成本地?cái)?shù)據(jù)源能識(shí)別的語(yǔ)言,并在數(shù)據(jù)源中進(jìn)行查詢;查詢結(jié)果根據(jù)DTD說(shuō)明在轉(zhuǎn)換成XML格式并返回給虛擬集中存儲(chǔ)器由虛擬集中存儲(chǔ)器返回給DOM;通過(guò)DOM對(duì)XML文檔的處理,結(jié)合XSL技術(shù)將查詢結(jié)果顯示給用戶。4、基于XML的信息集成系統(tǒng)的設(shè)計(jì)根據(jù)基于XML的信息集成的層次結(jié)構(gòu),下面給出包裝器Wrapper組件的設(shè)計(jì)。包裝器Wrapper組件的設(shè)計(jì)信息抽取層的Wrapper組件由兩部分組成:Wrapper生成器和Wrapper實(shí)例(簡(jiǎn)稱Wrapper)。如圖4所示,一個(gè)Wrapper位于中介層和一個(gè)數(shù)據(jù)源的中間,它通常為中介層查詢異構(gòu)信息源集合提供一個(gè)公共接口。每個(gè)Wrapper都要為某個(gè)特定的數(shù)據(jù)源制定相應(yīng)的接口,這個(gè)功能是由Wrapper生成器完成的。Wrapper生成器用于為查詢某個(gè)確定的站點(diǎn)或站點(diǎn)集合構(gòu)建Wrapper。Wrapper的輸入是用一種Wrapper規(guī)范語(yǔ)言書寫的規(guī)格說(shuō)明,包括關(guān)于將要為之生成的Wrapper的數(shù)據(jù)源的元信息,該元信息描述了如何從一個(gè)數(shù)據(jù)源請(qǐng)求服務(wù)以及如何抽取和解釋從數(shù)據(jù)源返回的信息。規(guī)格說(shuō)明還必須能夠表達(dá)以下內(nèi)容:數(shù)據(jù)源接口、數(shù)據(jù)模型、從用戶到數(shù)據(jù)源本地操作的查詢映射、數(shù)據(jù)源的查詢能力。通常為一個(gè)數(shù)據(jù)源生成一個(gè)有效的Wrapper所必須的信息是使用DTD來(lái)描述的。Wrapper生成器的輸出是一個(gè)可以執(zhí)行的Wrapper,該Wrapper能夠接受由Wrapper規(guī)范語(yǔ)言定義的查詢。下面以數(shù)據(jù)庫(kù)為例,給出對(duì)應(yīng)的Wrapper相應(yīng)的DTD:數(shù)據(jù)庫(kù)一個(gè)關(guān)系Wrapper能決定關(guān)系模型和DOM對(duì)象數(shù)據(jù)模型之間的映射。關(guān)系表的數(shù)據(jù)模式可以用三層來(lái)表示,即表--記錄--字段,因此可以很容易采用DTD來(lái)描述數(shù)據(jù)庫(kù)中關(guān)系表的數(shù)據(jù)模式。下面以兩個(gè)關(guān)系表Trait(PersonID,Name,BirthDate,Address,IdentifyId)及Treatment(TreatID,Drugname,TreatNote,PersonID)為例,他們與XMLDTD之間的映射如下:/*個(gè)人特性*/CreattableTrait(PersonIDCHAR(3),NameCHAR(10),BirthDateDATE,AddressCHAR(30),IdentifyIdCHAR(18))/*治療信息*/CreattableTreatment(TreatIDNUMBER(6,0),DrugnameCHAR(20),TreatNoteCHAR(50),PersonIDCHAR(3))<!ELEMENTTrait(Name,BirthDate,Address,IdentifyId)><!ATTLISTTraitPersonIDIDREF#REQUIRED><!ELEMENTName(#PCDATA)><!ELEMENTBirthDate(#PCDATA)><!ELEMENTAddress(#PCDATA)><!ELEMENTIdentifyID(#PCDATA)><!ELEMENTTreatment(Drugname*,TreatNote,PersonID)><!ATTLISTTreatmentTreatIDID#REQUIRED><!ELEMENTDrugname(#PCDATA)><!ELEMENTTreatNote(#PCDATA)><!-Thisfilerepresentsafragmentofatelemedicinedata-->在XML文檔與數(shù)據(jù)庫(kù)進(jìn)行雙向轉(zhuǎn)化的過(guò)程中,除去最上層的根節(jié)點(diǎn)外,元素節(jié)點(diǎn)對(duì)應(yīng)數(shù)據(jù)庫(kù)中的表,屬性和元素的類型對(duì)應(yīng)表中的列,若一個(gè)元素節(jié)點(diǎn)為另一個(gè)元素節(jié)點(diǎn)的子節(jié)點(diǎn),則用數(shù)據(jù)庫(kù)中的主碼和外部碼建立表之間的關(guān)系。在上面的例子中,元素節(jié)點(diǎn)Trait和Treatment對(duì)應(yīng)數(shù)據(jù)庫(kù)中的表,而PersonID,Name等對(duì)應(yīng)表中的列。由于節(jié)點(diǎn)Treatment為節(jié)點(diǎn)Trait的子節(jié)點(diǎn),因此用PersonID與Trait建立關(guān)聯(lián)。DOM客戶端API的設(shè)計(jì)DOM全稱是DocumentObjectModel,是一個(gè)文件對(duì)象所組成的模型。它不光用于XML,最早是用于HTML的。DOM定義了一組分析元可以顯示的標(biāo)準(zhǔn)指令集,通過(guò)程序存取HTML或XML的內(nèi)容,然后通過(guò)程序中的對(duì)象集合將其顯示出來(lái)。我們可以通過(guò)創(chuàng)建Document對(duì)象,使得應(yīng)用程序得到對(duì)XML文檔進(jìn)行操作的入口。進(jìn)一步通過(guò)直接加載XML文檔把創(chuàng)建的這個(gè)文檔對(duì)象同實(shí)際的XML文檔關(guān)聯(lián)起來(lái)。從而將XML文檔轉(zhuǎn)換成一個(gè)DOM對(duì)象模型,為上層提供訪問(wèn)服務(wù)。下面的例子結(jié)合VBScript和XMLDOM對(duì)象來(lái)生成XML數(shù)據(jù):<SCRIPTLANGUAGE=VBScript><!--Subdombml_OnClick()Setdom_xml=CreateObject("Microsoft.XMLDOM")dom_xml.async=Falsedom_xml.loadXML"<?xmlversion='1.0'?>"&_"<personalinfo>"&_"<name>"&namel.Value&_"</name>"&_"<id>"&id.Value&_"</id>"&_"<password>"&password.Value&_"</password>"&_"<email>"&email.Value&_"</email>"&_"</persom
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 交付材料采購(gòu)合同
- 學(xué)術(shù)研究合同履約金條款
- 2024年中國(guó)電信福建公司招聘流程考試真題
- 泥瓦工合同范本
- 2025至2030年中國(guó)汽車用水管數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025至2030年中國(guó)水射器數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 兼職勞務(wù)協(xié)議示范
- 2024年開封市人力資源發(fā)展集團(tuán)有限公司招聘考試真題
- 古董家具買賣協(xié)議
- 長(zhǎng)寧租房合同范本
- 四川省成都市金堂縣2023-2024學(xué)年八年級(jí)下學(xué)期期末考試語(yǔ)文試題
- CJJ101-2016 埋地塑料給水管道工程技術(shù)規(guī)程
- 大學(xué)生創(chuàng)新創(chuàng)業(yè)基礎(chǔ)教程(各類院校創(chuàng)新創(chuàng)業(yè)課程)全套教學(xué)課件
- 《民用無(wú)人駕駛航空器系統(tǒng)分類及分級(jí)》考試題庫(kù)(含答案)
- Y -S-T 1700-2024 銀礦采選業(yè)綠色工廠評(píng)價(jià)要求(正式版)
- 中職語(yǔ)文高教版(2023-2024)基礎(chǔ)模塊上冊(cè)二《風(fēng)景談》公開課一等獎(jiǎng)創(chuàng)新教學(xué)設(shè)計(jì)
- (高清版)JTGT 5440-2018 公路隧道加固技術(shù)規(guī)范
- 簡(jiǎn)單的痛(復(fù)雜的評(píng)估)-醫(yī)學(xué)評(píng)估
- 2024年時(shí)政試題庫(kù)(綜合卷)
- 第59講-熱重曲線分析(課件)
- 陪診服務(wù)項(xiàng)目計(jì)劃書
評(píng)論
0/150
提交評(píng)論