期刊VIP學(xué)術(shù)指導(dǎo) 符合學(xué)術(shù)規(guī)范和道德
保障品質(zhì) 保證專業(yè),沒(méi)有后顧之憂
來(lái)源:期刊VIP網(wǎng)所屬分類:計(jì)算機(jī)網(wǎng)絡(luò)時(shí)間:瀏覽:次
1 引言
在信息高速公路的時(shí)代,如何能在不同的GIS 系統(tǒng)間分享數(shù)據(jù),是一件刻不容緩的問(wèn)題,然而空間信息要真正實(shí)現(xiàn)共享, 必須解決空間信息數(shù)據(jù)多格式、多數(shù)據(jù)庫(kù)融合等瓶頸問(wèn)題[1]。由于GIS處理的數(shù)據(jù)對(duì)象是空間對(duì)象,有很強(qiáng)的時(shí)空特性,獲取數(shù)據(jù)的手段也復(fù)雜多樣,這就形成多種格式的原始數(shù)據(jù),再加上GIS 應(yīng)用系統(tǒng)很長(zhǎng)一段時(shí)間處于以具體項(xiàng)目為中心的孤立發(fā)展?fàn)顟B(tài)中, 很多GIS 軟件都有自己的數(shù)據(jù)格式,且互不兼容,因此形成一個(gè)個(gè)“信息孤島”,造成了人力、財(cái)力上的浪費(fèi),信息資源不能得到有效的利用。現(xiàn)在該問(wèn)題已經(jīng)有了一個(gè)很好解決方案,那就是以 XML 為基礎(chǔ)的 GIS 編碼標(biāo)準(zhǔn),稱為地理圖形標(biāo)記語(yǔ)言GML(Geography Markup Language)。GML是由開(kāi)放式地理信息系統(tǒng)聯(lián)盟(OpenGIS Consortium,簡(jiǎn)稱OGC)所發(fā)展,專為地理信息而發(fā)展的,以GML 為基礎(chǔ)的編碼標(biāo)準(zhǔn),其與生俱來(lái)的轉(zhuǎn)換及存取能力,將為地理空間信息的管理開(kāi)啟一個(gè)全新的領(lǐng)域[2]。
2 異構(gòu)系統(tǒng)間數(shù)據(jù)交互方式
目前,從技術(shù)角度來(lái)講,解決空間數(shù)據(jù)共享的方法主要包括數(shù)據(jù)交換和GIS 的互操作。
2.1 空間數(shù)據(jù)交換的辦法
在以單機(jī)、數(shù)據(jù)集中式管理為特點(diǎn)的GIS技術(shù)發(fā)展階段,滿足GIS 各個(gè)系統(tǒng)之間數(shù)據(jù)共享需求的主要技術(shù)手段是數(shù)據(jù)交換,數(shù)據(jù)交換所要解決的核心問(wèn)題是來(lái)源于不同GIS 的數(shù)據(jù)之間格式轉(zhuǎn)換的問(wèn)題。
(1) 數(shù)據(jù)格式轉(zhuǎn)換模式
這種基于文件級(jí)的共享是當(dāng)前GIS 軟件系統(tǒng)共享的主要辦法。它主要是把其它格式的數(shù)據(jù)經(jīng)過(guò)專門的數(shù)據(jù)轉(zhuǎn)換程序進(jìn)行轉(zhuǎn)換,變成本系統(tǒng)的數(shù)據(jù)格式,從而通過(guò)交換格式來(lái)實(shí)現(xiàn)系統(tǒng)之間的共享。由于轉(zhuǎn)換模式缺乏對(duì)空間對(duì)象統(tǒng)一的描述方法,因而使得不同數(shù)據(jù)格式描述空間對(duì)象時(shí)采用的數(shù)據(jù)模型不同,轉(zhuǎn)換后不能完全準(zhǔn)確地表達(dá)原數(shù)據(jù)信息,經(jīng)常性地造成一些信息丟失,同時(shí)數(shù)據(jù)不能自動(dòng)同步更新。
(2) 直接數(shù)據(jù)訪問(wèn)模式
它是指在一個(gè)GIS 軟件中實(shí)現(xiàn)對(duì)其它軟件數(shù)據(jù)格式的直接訪問(wèn),用戶可以使單個(gè)GIS 軟件存取多種數(shù)據(jù)格式。由于對(duì)數(shù)據(jù)的訪問(wèn)是建立在對(duì)要訪問(wèn)數(shù)據(jù)格式的充分了解的基礎(chǔ)上,因此如果要訪問(wèn)的數(shù)據(jù)格式不公開(kāi),就無(wú)法進(jìn)行訪問(wèn);并且如果宿主軟件數(shù)據(jù)格式發(fā)生變化,各集成軟件必須提供升級(jí)軟件,基于這種GIS 數(shù)據(jù)格式的數(shù)據(jù)處理必存在滯后性。
2.2 GIS 的互操作
數(shù)據(jù)互操作模式是OpenGIS Consortium制定的規(guī)范。它為多源數(shù)據(jù)共享提供了一個(gè)嶄新的思路和模式。OGC 為數(shù)據(jù)互操作制定了統(tǒng)一的規(guī)范,從而使得一個(gè)系統(tǒng)同時(shí)支持不同的空間數(shù)據(jù)格式成為可能。根據(jù)OGC頒布的規(guī)范,可以把提供數(shù)據(jù)源的軟件稱為數(shù)據(jù)服務(wù)器(Data Servers),把使用數(shù)據(jù)的軟件稱為數(shù)據(jù)客戶(Data Clients),數(shù)據(jù)客戶使用某種數(shù)據(jù)的過(guò)程就是發(fā)出數(shù)據(jù)請(qǐng)求,由數(shù)據(jù)服務(wù)器提供服務(wù)的過(guò)程,其最終目的是使數(shù)據(jù)客戶能讀取任意數(shù)據(jù)服務(wù)器提供的空間數(shù)據(jù)[3] 。目前實(shí)現(xiàn)數(shù)據(jù)融合的互操作主要有基于公共接口的GIS 互操作(見(jiàn)圖1) 和基于聯(lián)邦空間數(shù)據(jù)庫(kù)的互操作(見(jiàn)圖2) 。數(shù)據(jù)互操作模式在應(yīng)用中的主要局限在于:
(1) OGC 標(biāo)準(zhǔn)雖然將計(jì)算機(jī)軟件領(lǐng)域的非空間數(shù)據(jù)處理標(biāo)準(zhǔn)成功地應(yīng)用到空間數(shù)據(jù)上,但是,它主要考慮的是采用了OpenGIS 協(xié)議的空間數(shù)據(jù)服務(wù)軟件和空間數(shù)據(jù)客戶軟件,對(duì)于那些歷史存在的大量非OpenGIS 標(biāo)準(zhǔn)的空間數(shù)據(jù)格式的處理辦法還缺乏標(biāo)準(zhǔn)的規(guī)范,而非OpenGIS 標(biāo)準(zhǔn)的空間數(shù)據(jù)格式目前占主體地位;
(2) 為真正實(shí)現(xiàn)各種格式數(shù)據(jù)之間的互操作,需要每種格式的宿主軟件都按照統(tǒng)一的規(guī)范實(shí)現(xiàn)數(shù)據(jù)訪問(wèn),在一定時(shí)期內(nèi)還不現(xiàn)實(shí);
(3) 一個(gè)軟件訪問(wèn)其它軟件的數(shù)據(jù)格式時(shí)是通過(guò)數(shù)據(jù)服務(wù)器實(shí)現(xiàn)的,這個(gè)數(shù)據(jù)服務(wù)器實(shí)際上就是被訪問(wèn)數(shù)據(jù)格式的宿主軟件,這就是說(shuō),用戶必須同時(shí)擁有這兩個(gè)GIS 軟件,并且同時(shí)運(yùn)行,才能完成數(shù)據(jù)互操作過(guò)程。
3 基于GML的空間數(shù)據(jù)共享模型
GML[4]是由OGC 發(fā)展,以第二代網(wǎng)絡(luò)語(yǔ)言XML為基礎(chǔ)的GIS 編碼標(biāo)準(zhǔn)。之所以從眾多的空間數(shù)據(jù)交換格式標(biāo)準(zhǔn)中選擇它,除了GML 簡(jiǎn)單、容易和非空間數(shù)據(jù)整合、容易轉(zhuǎn)換外,還基于以下原因:
(1) GML 是遵循OGC 所制定的地理抽象模型,該模型已得到了大多數(shù)GIS 軟件廠商及第三方軟件廠商的支持,因此數(shù)據(jù)在轉(zhuǎn)換成GML不會(huì)有信息的損失。
(2) GML 空間數(shù)據(jù)的有效性控制,GML 模式定義了GML 文檔的內(nèi)容和結(jié)構(gòu),通過(guò)GML 模式可以在數(shù)據(jù)編輯及傳輸時(shí)驗(yàn)證其規(guī)格是否有效。
(3) GML 是基于XML 的地理信息表示,各種XML 技術(shù)如XML解析、XML Schema、XLink、XPointer、XSL 、XML 查詢語(yǔ)言等都可應(yīng)用于GML。
(4) GML封裝了地理信息及其屬性,GML地理要素(Feature)包括一系列的屬性和相應(yīng)的幾何信息、拓?fù)湫畔ⅲ话銇?lái)說(shuō)屬性由名字、類型和值組成,幾何信息由基本元素如點(diǎn)、線、面、曲線、多邊形等組成, 拓?fù)湫畔⒂赏負(fù)浠狽ode、Edge、Face、TopoSolid 以及這些基元之間的關(guān)系來(lái)描述。GML 允許構(gòu)建相當(dāng)復(fù)雜的要素,如要素間的嵌套。
(5) GML 封裝了空間地理參考系統(tǒng),空間地理參考系統(tǒng)是地理信息系統(tǒng)數(shù)據(jù)處理的基礎(chǔ)。GML 封裝了空間地理參考系統(tǒng)、主要的投影關(guān)系等,保證分布式處理的擴(kuò)展性和靈活性。
(6)通過(guò)編寫(xiě)轉(zhuǎn)換器可以方便的把GML數(shù)據(jù)從一種格式轉(zhuǎn)換為另一種格式,如利用GML數(shù)據(jù)文件生成shp文件、tab文件等。這種變形可以同過(guò)多種方式完成,如XSLT(Extensible Stylesheet Language Transformation),C#、Java等,其中利用XSLT最為方便,其他技術(shù)可用于實(shí)現(xiàn)XSLT的擴(kuò)展模塊[5,6]
3.1共享模型的實(shí)現(xiàn)思想
現(xiàn)有的空間數(shù)據(jù)共享方案各有優(yōu)缺點(diǎn)。而SQL (標(biāo)準(zhǔn)結(jié)構(gòu)化查詢語(yǔ)言) 以及ODBC的出現(xiàn)曾經(jīng)為不同數(shù)據(jù)庫(kù)之間的數(shù)據(jù)交換難題提供了比較滿意的解決方案。引進(jìn)這種思想, 將空間數(shù)據(jù)納進(jìn)標(biāo)準(zhǔn)組織和標(biāo)準(zhǔn)協(xié)議進(jìn)行規(guī)范和管理,這里提出一種空間數(shù)據(jù)共享的新模型,該模型的具體實(shí)現(xiàn)思想如下:
(1)定義一個(gè)標(biāo)準(zhǔn)的GML Schema,即定義一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)編碼格式,通過(guò)GML Schema 可以把主流數(shù)據(jù)格式的GIS數(shù)據(jù)無(wú)損轉(zhuǎn)換成GML標(biāo)準(zhǔn)格式。(如圖3所示)
(2)提供一種解析轉(zhuǎn)換機(jī)制,首先利用GML 的擴(kuò)展、定制功能對(duì)GML標(biāo)準(zhǔn)文件進(jìn)行準(zhǔn)確的解析,使GML數(shù)據(jù)轉(zhuǎn)換為客戶要求GML 數(shù)據(jù)文件,即語(yǔ)義GML,然后語(yǔ)義GML根據(jù)請(qǐng)求格式生成相應(yīng)的用戶要求格式。
(3)能夠提供空間元數(shù)據(jù)服務(wù),能夠?qū)崿F(xiàn)異構(gòu)數(shù)據(jù)源在元數(shù)據(jù)庫(kù)中的注冊(cè)、查詢,空間數(shù)據(jù)共享模塊可以通過(guò)元數(shù)據(jù)庫(kù)服務(wù)得到數(shù)據(jù)源的信息。
3.2 方案的實(shí)施
這種方案以GML為基礎(chǔ),利用GML 的跨語(yǔ)言,跨平臺(tái)的特性實(shí)現(xiàn)異構(gòu)數(shù)據(jù)源之間的數(shù)據(jù)共享,方案模型如圖4所示,下面來(lái)說(shuō)明方案實(shí)施的具體流程。
(1)用戶發(fā)出某一格式數(shù)據(jù)請(qǐng)求(圖4中1號(hào)箭頭);
(2)空間數(shù)據(jù)共享模塊向元數(shù)據(jù)服務(wù)模塊發(fā)出查詢請(qǐng)求(圖4中2號(hào)箭頭);
(3)請(qǐng)求信息源信息的返回(圖4中3號(hào)箭頭),元數(shù)據(jù)服務(wù)的注冊(cè)服務(wù)模塊分析來(lái)自共享模塊的請(qǐng)求,檢索注冊(cè)數(shù)據(jù)庫(kù),將查詢結(jié)果返回到共享模塊;
(4)共享模塊對(duì)元數(shù)據(jù)服務(wù)模塊返回的信息進(jìn)行分析,判斷返回的圖層格式是否與用戶要求的格式相同,如果相同則直接綁定數(shù)據(jù)源,獲取請(qǐng)求的圖層(圖1中4號(hào)5號(hào)箭頭);如果不同則向GML轉(zhuǎn)換模塊請(qǐng)求數(shù)據(jù)(圖4中6號(hào)箭頭代表該步驟);