5. 信息行業地理處理交互性的基礎?

5.1. 概述?

開放GIS工程在地理處理界是空前的,但它是以前的和正在進行的信息技術(IT)的提供互操作的模型。開放GIS規范本身在地理處理界是前所未有的,因為的交互性,開放GIS標準可應用于分布式計算技術和迅速發展的組件技術。

因為這一大部分技術設施是新建立的,并不是對所有的定義都通用,在產品或工程中執行開放GIS規范需要對這些技術設施進行根本的了解,我們在IT概念的根本基礎上寫這一章。

本章將對如下幾個方面進行闡述:

如何通過規范獲得交互功能。

建立通用地理空間類型作為互操作基礎和描述使用對象范例類型的想法。

對客戶和服務器的總體介紹,描述在客戶/服務器環境下進行互操作。

解釋了可插組件的計算模型,介紹了如何用互操作組件建立應用程序的關鍵概念。

5.2. 規范中什么是交互性??

開放GIS中的交互性是指軟件組件間進行互操作以避免大量的轉換工作、輸入/輸出障礙和由不同處理環境和數據引擎的訪問障礙?!耙幏吨械幕ゲ僮鳌币馕吨浖_發者通過寫符合通用標準的軟件來獲得互操作功能,例如應用軟件編程界面(APIs)已經這樣做了,但APIs一般要求程序員使用特定的操作系統和編程語言。

以抽象的層表達的規范比在特定操作系統(UNIX,DOS,VMS,等)、編程語言(FORTRAN,C++,Visual Basic等)、操作環境(Windows,X Window System等)或分布式計算平臺(DCP,CORBA,OLE/COM,DCE等)中使用的規范應用更廣泛,時間更長。為讓軟件開發者建立的地理應用軟件能在當前的DCPs中或DCPs之間進行互操作,所以開放GIS規范是分層次的,有三個概念上的層次。(行業產生新的服務層次時,模型可以擴展到更多層次。)下面是正在設計的對象系統面向對象模型的貫例、定義和符號,這些模型是:

基本模型—-“事實”模型,包括“真實”對象(實體、屬性和關系)和即時事件。這是真實世界的編碼結構。

規范模型—-軟件的通用模型,它處于什么狀態,以及它因狀態變化或有響應發生時(也是事件),它對這些刺激(事件或信息)做出反應的方式,也就是說,模型包括“理想”軟件對象和“理想”事件。

執行模型—-特殊執行軟件環境中軟件對象的模型以及在這些軟件環境中軟件對象是如何互操作的。模型是實際軟件對象的模型,它具有類型、狀態、屬性和發送信息的功能。我們希望每一個執行規范的計算環境都有一個執行模型。見(4.2.1)。

面向對象模型與設計中描述了一個相似的分層結構,其中的層被稱為對象、動態和功能??傮w規范中的圖表用一個與Rrmbaugh的OMT貫例略有不同的貫例,如Cook和Daniels中所列出的。

在一個特定的DCP中,規范以一定的時間間隔發生作用。例如:在CORBA環境中,對象格式的通用表示法允許對象在系統間或工具間交換。最低層次,制作和管理的詳細句法和草案要求更容易的基礎通訊。(對占支配地位的DCPs的詳細描述見基本分布式對象指南)。

標準結構語言比DCP高級,如擴充的SQL2或C++,可以提供一個固定的應用軟件或用戶界面,如果API或用戶界面要與更多DCP界面進行互操作需要大量的附加編碼。在最高概念層次,地方標準促進了專業領域中交互性應用軟件的正確使用,在開放GIS規范中,這是具有共享地理屬性類型語義學的信息協會層次,詳見第五章。

5.2.1. 開放GIS規范獨立于分布式計算平臺?

所有主要分布計算平臺(DCPs),包括微軟的組件對象模型(COM)、對象管理組的通用對象要求代理程序結構(CORBA)、開放軟件基礎的分布式計算環境(DCE)、Sunsoft的Java,使用一個或多個上述的規范層次在組件間獲得互操作。另外,它們都支持計算的客戶/服務模型。但是不同的DCP用不同的規范語言,例如,OMG的IDL(界面定義語言)只是使用OMG的CORBA的開發者的理想規范語言。(要說明的是:ISO開放分布式計算委員會正在制定一個國際標準的草案使OMG IDL獨立—-例如,沒有IORBA鏈接的IDL—-界面定義語言國際標準)。

要寫一個與編程語言無關的軟件規范,規范編寫者用一種象IDL的語言,它具有變換多種編程語言的能力,它們可以用一種或多種下列語言來寫規范:正式邏輯語言、正式規范語言如Z、英語(或其它自然語言)或用圖表技術如對象模擬技術(OMT)(見面向對象模擬與設計)。具有挑戰性的地編寫一個完整明確的規范,這獨立于執行平臺,能被開發者理解。OGC技術委員會用IDL、正式邏輯語言和英語相結合曾寫過開放GIS規范,UML已經成為技術委員會提供對象類別和它們的關系和界面的圖形和象素描述的主要方法,但它還需要其它界面描述方法如英語來解釋在UML中不易表達清楚的地方。OMT圖表、Harel狀態表和正式成套理論還可以繼續使用。讀設計對象系統:由Steve Cook和John Danniels編寫的《面向對象模型》是告訴了讀者為什么這是一種好方法。

表4-1開放GIS規范是一個獨立于DC的規范

技術委員會把開放GIS規范作為一個總體規范(例如:它獨立于DCP)開發的,而OGC技術提供者開發DCP專門執行規范作為開放GIS總體規范的一部分與技術委員會發布的RFPs相對應。

如表4-1中所表明的,開放GIS總體規范指定了一個詳細的軟件通用類型代表來識別所有實際中的空間和時間現象。它必須從抽象到能在所有的DCP上以一定的時間間隔對執行軟件起作用,就語言式DCP而言,無須規定軟件如何神被執行。

為滿足給每個DCP制定一個標準規范的需要,OGC技術委員會發布了提議,OGC的技術提供者要對這一提議做出反應。每個RFP負責編寫開放GIS規范的一個部分。(開放GIS總體規范還由技術委員會繼續開發和擴充,而一部分開放GIS總體規范通過RFP過程執行)。反應包括組成帶有工作說明軟件的規范,反應要在最后期限前做出。技術委員會經過反復審議接受或拒絕提議的過程,確保每個RFP得到一個滿意的執行規范。到此為止,選出的RFP的技術提供者合作編寫部分規范并在最后期限前劃分工作。

通過這個RFP過程,技術委員會確保了及時發布執行說明書,說明書由技術提供者自行編寫。(過程比這里描述的更細,細節寫在“OGC技術委員會政策和過程”文獻,可以在http:www.opengis.org查到。)

技術委員會希望執行規范與總體規范越相近用戶越好,與其它DCPs的互操作性越強越好。DCP間完全互操作超出了開放GIS工程的范疇,由其它人員在做這一工作,OGC部分代表和成員參加。

開放GIS規范的綱領和目錄經過多次修改后,開放GIS協會將開始按照以上所講的步驟去擴展開放GIS規范或重要信息協會所要求的“專業技術”(它是相對于“核心技術”來說的)。行業協會、部或學院,如應用領域中的運輸、農業和保險與其他在OGC專業組(SIGs)中的工作人員一起共同策劃完成擴展開放GIS規范的工作,SIGs與技術委員會的專業人員把他們的要求提交給技術委員會討論,這些要求有可能會被RFPs所接納。通過參與RFP的工作,技術使用者可以直接促進標準產品、面向用戶產品的產生,OGC技術提供者可以認識得更早、更確切,使他們的R&D投資有長遠的回報并不斷開拓新的市場。

5.3. 開放地理數據模型提供了一種通用空間語言?

Webster(Webster的第九版新詞典,1984)提供了下列在開放GIS規范中使用的定義:

通用語言:任何一種在人們交流中都可使用的通用的或商用的語言,一種類似于公共語言的語言。

詞典:有關某種語言的詞匯、一套文獻的詞匯、交談所需的詞匯、某一專業領域的詞匯以及其它專業領域詞匯的總合。

開放GIS規范的通用語言是基于基本數據類型中定義的通用地理數據類型詞匯,它在所有編程語言中都可使用,沒有這些通用地理數據類型詞匯,我們無法解決互操作性問題。在OGC中,“開放地理數據模型”就是指這一通用的地理數據類型詞典。

開放GIS規范詞典只限于那些為實現地理空間信息通訊所需要的詞匯,一種詞匯元素的表達方式應該可被具有互操作性的的組件式軟件所解譯和使用。

5.4. 面向對象?

在傳統的計算機程序中,完成某一任務的函數或過程與它們使用的數據是分離的。數據文件有多少個函數就會打開多少個數據文件,這樣就會產生多個新的數據文件。與傳統的計算機程序相比較,面向對象(OO)編程是由叫做對象的結構塊組成,每一個自包含軟件模塊中都包括與給定任務中需要的所有命令(在對象術語中叫“方法”)和數據。當對象接收到執行任務的數據時它就開始執行該任務,因為在這種方法中,對象是“被封裝起來的”,所以對象作為一個單元可以在許多程序中重復使用。經過設計,面向對象編程更容易產生自動繼承原有對象功能的新對象,編程者用這種方法可以不必重新啟動即可修改方法或添加新方法。下面是一個地理處理的例子:一個具有地理坐標(緯度和經度)的對象可以繼承另一個對象的功能,從地理坐標轉換到廣域橫向墨卡托圓柱坐標。

這似乎是在紙上談兵,最初的對象設計是一項很重要的工作,面向對象編程(OOP)最適合于可能需要不斷修改和擴充的大型編程工程(或規范,如開放GIS規范)。

OGC技術委員會的大部分成員相信這種對象方法是實現上述章節中所提到的目的的理想方法,但是相信者中,大部分是軟件開發者,此外他們還相信,只有對象技術和DCPs的成熟(每個DCP具有它自己的對象方法),大部分開放GIS執行規范才會包括大量常規結構化編碼(“結構化編碼”是指設計的軟件作為一個小型核心程序可以與外部程序庫中的子程序互操作:它是與具有集成功能和子程序的大型單片機程序的“空心粉條”編碼相對照的,這一方法可以使應用軟件編程接口(APIs)提供一種標準連接,通過它一個程序可以與其它程序合作。)

下面的段落列出了對象范例來說明在對象中執行開放GIS規范的優點,請參閱有關對象的參考條目。

5.4.1. 封裝與接口?

在OO軟件環境中,對象是通過接口來發生作用的,這種接口是程序和程序員所不能改變的,除非通過以上提到的繼承方法來擴展它們。封裝通過改變對象的方法來改變成對象的數據從而改變對象的狀態,通過提供一種模塊方法來保持狀態和方法的一致,封閉方法在系統的設計和構成中也趨向于更方便,更符合人的思考方式。

對象接口的背后,對象方法的擴充,封裝數據的格式和編排是對象所私有的。這種私有性使對象用戶可以集中于提供的功能(由接口定義的)而不是集中于內部執行的細節。這種封裝概念允許通過接口去定義開放GIS規范。這一點很重要,當地理數據處理開發者把地理數據集成到以前無地理數據處理功能的系統中去時,只要他們具有一致的接口規范,通過封裝這種數據集成就變得很容易。

5.4.2. 執行繼承與接口繼承的比較?

繼承是指一個對象的功能優于某一對象的同時,具有這對象的某些功能的能力叫做繼承。對象實際執行的這種繼承在軟件開發過程中是非常有用的,但是這種繼承是靠具有繼承性的編程語言來實現的。接口的繼承是指一個對象重復使用另一對象的接口(不需要重復執行)的功能,這在大部分的編程語言中都是可行的。開放GIS規范采用接口繼承為開發者提供采用面向對象編程語言或非面向對象編程語言的自由,同時保留了繼承的建模功能。

5.5. 開放GIS環境中的客戶和服務器端口?

5.5.1. 概述?

開放GIS的服務器模型是一種客戶\服務器模型,也就是說,客戶端程序或客戶端對象是通過接口與“服務器端”進行通訊的。服務器端是可對客戶端的請求進行響應的程序和對象,為客戶端返回響應信息或向客戶端提供一種進程函數。不是所有開放GIS執行工具都是傳統意義上在客戶端進程和服務器端進程間建立一對一的客戶服務器,有的服務器可能提供多種不同的服務,有的客戶可以通過網絡訪問多個服務器。根據這種情況,用 “服務器端口”這個術語比用 “服務器”更確切。開放地理模型詞典為通用地理數據傳輸和客戶與服務器端間的地理數據處理界面提供了基礎。

在查看分布式地理數據處理基礎技術過程中,我們把數據訪問作為分布式地理數據處理的一個特殊而重要的方面,因為:

地理數據庫一般包括大量的數據。

當前對這些不同種類(先前獨立的)數據庫的分布式訪問需求量很大。

數據庫訪問是一般客戶/服務計算的一個重要的任務。

常用的數據庫—-一般都包括街道地址字段,它們都可作為地理數據。

近來功能強大的常規相關或位置相關數據庫產品包括管理空間數據的工具,移動某些傳統GIS功能到操作領域的研究可以由數據庫很好地執行。

開放GIS數據訪問模式要能給不同的貯存系統包括傳統系統提供一種通用的接口。因為數據集成、執行、可用貯存、預算或所有權的原因,某些地理數據只能對一種存儲機制有效。要獲得單獨數據通道可通過開放GIS數據訪問服務器,不必復制包含地理編碼信息的數據庫。

5.5.1.1. 分布式計算定義?

客戶—-在客戶\服務器環境中,客戶是一個要求服務的組件。盡管在客戶服務器模型中,客戶也可能會為更高級別的客戶提供服務,但在以下討論中客戶是指請求的發出端。

服務端—-在客戶\服務器環境中,服務端是組件,它會對客戶端提出的具體請求作出響應。盡管在客戶\服務器模型中服務端也可能是客戶,但在本次討論中它是指請求的響應者。

數據訪問服務器—-在客戶\服務器環境中,數據訪問服務器是組件,為客戶的具體請求提供數據訪問,盡管在客戶\服務器模型中,數據訪問服務器也可能會充當客戶發出請求,但在本次討論中它是指數據訪問的提供者。

在所有的客戶\服務器環境中,客戶向服務器或服務端提出請求,服務器或服務端提供相應的服務。在具有統一開放GIS規范的客戶\服務器的互操作中,客戶和服務器組件界面與開放GIS規范中所描述的數據類型和軟件界面一致??蛻舳颂岢稣埱蠛头斩俗鞒鲰憫玫脑~匯、句法和協議都應該是客戶和服務端都能理解的。這種基本的請求\響應機制是由分布式計算平臺(DCPs)提供的,DCPs的句法和協議與開放GIS規范的詞匯相結合可提供地理數據互操作處理的全部請求\響應功能。相似地,數據庫管理功能通過數據庫語言實現,當數據庫語言與開放GIS規范詞匯相結合時就構成了通用地理數據訪問服務的句法和協議。

5.5.2. 開放GIS規范在發展中的客戶\服務器模型中?

客戶\服務器模型使應用軟件開發者能把應用軟件的需求和功能獨立出來并確定組件的作用和相互關系以滿足不同層次的需求。層次開放界面服務的出現使組件增生(產生更多功能選擇)互操作性提高。通常,大多數廠家的產品都是為高檔的需求提供低檔的服務或者產品間的功能是有差別的。這些通用的低檔服務移植到一個具有標準界面的服務端中后就會成為一個小型的、便攜的、具有不同功能的平臺。表4-2說明發展中的分布式計算平臺環境中地理處服務端的進展情況。

表4-2用開放GIS規范,地理數據處理情況反映分布式計算的發展。

表4-2顯示從單片機地理處理向分布式對象地理處理的進展,縱向地看其歷史發展情況:

單片機系統中,所有的層都緊密地結合在一起,一般不向其它系統開放,除非在單片機系統中通過基本數據交換方法與同樣的單片機系統交換數據或從其它系統轉換數據。這種數據交換是指“數據轉移”。理論上有上百種格式,有私用的也有開放的,有上百種過濾器和轉換用的通用程序來執行格式間的轉換,還有許多交互式格式如SDTS、SAIF、GeoTIFF、國家圖像格式轉換標準和DXF,DXF代表地理數據互操作性的前期開放GIS方法。最近的調查顯示,最通用的互交換格式是簡單ASCII文本文件。

在DCP發展的第一階段,DCP管理地理處理應用軟件(如X Window系統或Visual Basic)與應用軟件上的用戶界面間的通訊,但其它界面仍然是內部的私有的??臻g數據訪問的提供者懂得應用軟件的地理數據模型并能把基于模型的地理數據查詢翻譯成能被數據庫軟件懂得的查詢,但這種情況下這種服務是與數據庫相結合的。通過插件或遠程調用來提供通訊,這種方式不如使用DCP簡便。1995年,這種空間數據訪問端在商業上用于提供對特殊合理數據庫管理系統訪問的具體GIS功能,這種數據庫管理系統的合理模型和速度是優于私有空間數據庫解決方案??臻g數據訪問端和通用數據庫之間的接口不是開放的,但其模塊便于使用者與其它數據庫集成。圖表中的開放GIS接口反應出廠家正在開發、把開放GIS規范的基本部分編纂成最終執行規范并即將投入市場的基于開放GIS規范的應用軟件和空間數據訪問端。開放GIS接口將使這一服務層向其它廠家和集成者開放。

在DCP發展的第二階段,我們看到應用軟件已經分離了某些通用服務到應用軟件服務器。在這一階段,應用軟件便于嵌套進特定的工作流程。大量在單片機GIS系統提供的多余功能在分布式計算環境中作為應用軟件服務器和空間數據訪問端使用,由更多組成GIS廠家最高增值功能的焦點或用戶應用軟件開放使用。除了GIS,對地理處理領域也適用。為表明有多種途徑為地理數據服務,圖表顯示空間數據訪問端接受從一個通用數據庫或數據查詢中提取數據,這些數據庫是一組不由全屬性相關或對象數據庫管理系統包含或管理的數據文件和元數據文件,開放GIS接口將提供內部層間進行通訊的通用語言。

DCP發展第三階段,描述了許多專家預言的完全面向對象的應用軟件,其中的應用程序是applet的臨時應用程序,用戶可以使用各種服務,數據庫管理系統并可查詢對象“群”和占據很大網絡空間的查詢對象代替。

橫向地觀察表4-2,查看開放GIS規范適合每一層的:

影像層:應用軟件的擴充依靠操作環境(X Window系統、Visual Basic和“Control”等)中的用戶界面源,而不是專用的或與應用軟件密切結合的用戶界面。為管理不同繪圖和互操作數據處理問題,這一層要使用開放GIS。即使用戶界面調用的基本服務,如打開某一區域或全幅顯示功能,也位于不同的平臺和操作系統,“最接近觀察孔”的應用軟件部分要用到特殊的開放GIS接口。例如:用戶在察看一個地理影像并放大或縮小它時,如果開發者要包含或移除某一用于顯示的地理屬性或標志用戶界面要與應用軟件服務器或其它基本的貯存或處理這些屬性的層通訊。這本書中,我們把用戶界面和相關程序管理叫做“仿人技術界面”。

應用軟件層和應用軟件服務器層:常規應用軟件即使在桌面計算環境中,也正日漸組件化,卸載了直接通用功能,如地圖顯示、用戶互操作、打印、傳真和在線幫助。應用軟件服務器都具有這些功能,它們可以在任何符合它們服務界面的應用軟件操作環境中使用。如以上所述,地理處理應用軟件正發生著這一變化,放棄普通地理數據處理功能,改用計算環境允許的軟件服務器共享工具。地理數據處理軟件“Applets”和以下提到的地理處理過渡軟件將通過開放GIS界面通訊,這些小型應用軟件很容易寫,因為它們可以通過編寫簡單的界面來提供服務而不是用集成的子程序。用戶也因為從出現的大量可選的產品中受益,地理處理軟件“applets”很少出現在以前的地理處理應用軟件環境中,集成者可以廉價快速地把應用軟件集成到工作流程的解決方案中。

空間數據訪問端:空間數據訪問端在應用軟件語義和數據庫語義間可雙向翻譯,例如:一個應用程序向一個數據庫查詢,它可能是以一個特殊的地理數據模型發送查詢信息,而數據庫只能理解SQL或專用的查詢語言,除了媒介查詢和回應,這個層使應用軟件和應用軟件服務器能訪問其它與安全、版本控制等相關的數據庫管理服務。這一層中還包括當前可用的商業產品,這些產品為GIS應用軟件提供了一個與特殊目的相關數據庫管理系統間的界面。將來,這個層中被提議的開放GIS一致性中間軟件為所有開放GIS一致性應用軟件提供訪問任何配有中間軟件的數據庫管理系統中的數據。

數據庫層:我們用術語“數據庫”指數據庫管理軟件產品,如Oracle或Access,不只是簡單的地理數據集。近來,主要的數據庫廠家越來越對提供適合地理數據的數據庫產品感興趣,這對地理處理協會有利,因為:1)現代的數據庫很快,而且提供一系列屬性如安全性和版本控制,這些在傳統私有空間數據庫系統中不能使用;2)用戶的地理數據與其它數據在同一數據庫中,集成者和它們的客戶可以更容易把地理處理集成到軟件和決策過程中。將來的面向對象時代,傳統的數據庫可以服從隨遇的數據對象?,F在大部分地理數據(尤其是考慮地球圖像數據時)貯存在文件中或目錄中,這些文件或目錄具有固定的結構,它們中沒有一個的靈活性或功能可以與現代的數據庫相比,有些地理數據庫現在是通過配有開放GIS接口的專門目的查詢系統訪問,但幾乎所有這種將被代替的地理數據都將在五年內轉換成能管理大量無表格數據的現代數據庫。

硬件和網絡層:DCPs、硬件與網絡標準使硬件與網絡層對地理處理問題是透明的。

5.5.3. 開放GIS界面可用面向對象和非面向對象技術執行?

如以上提到的,執行者可以用常規結構編程或面向對象技術建立基于開放GIS規范的解決方案,DCPs和OO編程成熟后,許多集成工作,包括開放GIS集成工作將涉及到常規和OO編程兩種技術。

常規結構編程模型中,當客戶提出請求,服務器檢查其有效性,然后調用符合請求的API功能。這些功能可能在一個地址空間(處理范圍)內部調用,也可能跨地址空間或跨機器和地址空間范圍。在后兩種情況中,必須使用某些互操作通訊機制。

面向對象模型提供相同的功能,但對應用軟件開發者來說,它通常是一個對象API(換言之,

一個類庫)。在分布式對象系統中,由服務端給出的API壓縮成一套對象接口,接口帶有執行服務端的服務功能的方法。分布式對象系統對應用軟件開發者隱藏地址和機器范圍細節。

我們在這里說明二者的區別,因為開放GIS接口使用常規和面向對象客戶和服務端都要可執行,用來集成常規與對象執行的組合。表4-3描述了為進一步解釋常規執行與OO開放GIS執行間彈性互操作的四個例子。例1顯示一個常規客戶通過功能API訪問一個常規服務端;例2描述對象客戶通過對象API訪問一個對象服務端;例3描述在某種情況下,一個對象客戶要訪問一個常規服務端,為完成例3,要插入一個對象包提供具有它需要界面的對象客戶,術語“包”是指變換一個API到另一個所需要的軟件。包可以壓縮常規服務端;例4與例3相反,它顯示要給常規客戶提供它想要的接口必須插入一個常規包。

表4-3常規客戶、面向對象客戶和服務端

開發者用開放GIS總體規范來構成功能API和對象API,現代計算環境各種元素的開放GIS界面系統由“可插入計算模型”闡明。

5.6. 可插入計算模型—-IT環境中的開放GIS技術?

5.6.1. 介紹?

可插入計算模型提供一個概念框架把開放GIS規范放入信息技術的廣闊環境中,(這個概念框架一般被稱為“參考模型”)??刹迦胗嬎隳P偷哪康氖嵌x高層次建筑學概念,不是提出一個執行方法或加入設計強制,除非在最高層。

5.6.2. 技術環境—-與非地理處理軟件的關系?

可插入計算模型描述關于基本功能元素(客戶和服務端)內部連接的計算以及它們之間的界面,模型把開放GIS放在信息技術的大環境中。特別地,模型相對與DCP、數據庫、人類智能技術、界面和其它非地理處理軟件定義開放GIS服務模型??刹迦胗嬎隳P突跇藴?,實際上是進化的,不是所有要求的功能,尤其是將來需要的和環境的功能都好理解,可插入計算模型的目的只是提供一個通用的參照為:

  • 描述并比較現有技術和標準,包括開放GIS規范;
  • 確定一套通用服務支持升級、擴展和無縫集成互操作地理處理功能;
  • 確定環境組件間的界面和相互關系;

表4-4中顯示的可插入計算模,把一個完整的開放GIS應用軟件環境分成為一個應用軟件提供特殊功能的多個服務,每個服務元素是一個面向任務實體,具有一個特定界面和固定行為。服務集中在一起反應計算環境的基本功能區。

表4-5中顯示的可插入工具模型的陰影部分代表從開放GIS服務模型到服務的界面,注意表4-4中的較大的可插入計算模型表的無陰影元素,你可以看到:開放GIS 適合的應用軟件依賴其它必要的服務,這些服務不是開放GIS服務,如數據管理、DCP和人工智能界面服務。

可插入計算模型中定義的服務用來進行三種基本的系統集成:

  • 數據集成—-從事數據管理服務
  • 控制集成—-人工智能技術界面和DCP服務
  • 圖像集成—-人工智能界面服務

集成者要使系統向異種地理數據開放需要在一個或多個層次上使用開放GIS規范。

表4-4可插入計算模型

以下列出模型中顯示的多種服務:

人工智能技術接口服務包括相似的屬性(如窗口和計算機上的指示設備),使用戶可以與信息附件互相作用,建立在這些基本服務元素上的是另一個人工智能接口服務叫繪圖用戶接口(GUI),它附屬于一個標準風格向導通過應用軟件產生一個固定的外觀和感覺。這些服務支持可視圖像和相關行為與驅動這些行為的潛在工具服務區別開,人工智能技術接口服務還把問題范圍與工作流控制、任務排序和事件通告的組織范圍問題相結合,這一組中的服務包括管理、文獻編輯、估計、估價、政策執行、維護和其它行為。例如,一個集成者可以用Visual Basic建立一個用戶接口來推動部門的全球命令處理操作,與命令處理相關因素地理顯示的用戶操作由與一個或多個可插入工具合作的定制接口執行。

工具服務提供支持終端用戶和應用軟件的所有附加功能,工具服務的例子包括數據對象的程序處理功能(對應于用戶處理)(如地理數據、圖像、圖形、音頻和視頻的處理)、與外部格式或環境間的數據交換、工作流或決定過程支持的數據分析(許多當前的單片機GIS產品廠家將成為GIS工具廠家—-組件和applet—-例如一般計算模型轉向可插入計算模型)。

數據管理服務處理以下管理工作—-結構數據、文本、圖像、圖形和其它數據—-建立或使用它們獨立于過程的如聲音和視頻,它們可以長期維護并在許多程序間共享。這些服務廣泛地覆蓋對象實體和它們間相互關系的定義、貯存、維護、管理和訪問,這些數據庫廠家提供的附產品,如以前討論過的客戶服務數據訪問體系,它們也可以由專用的文件管理程序或對象系統提供。

分布式計算平臺(DCP)提供一種標準通訊機制,可用于在分布網絡環境中交互工具和交互服務通訊。服務包括信息發布、程序調用、遠程調用、數據通訊、透明文件訪問和網絡安全。

操作系統服務包括管理硬件資源的低檔服務和高檔的軟件服務—-支持用戶和應用軟件與硬件和操作系統相互作用。

硬件平臺包括工作站或服務器的硬件組件,硬件平臺提供中心處理器、局部存貯器、和組成系統實體組件的通訊設備。外圍設備一般附屬于硬件平臺,獨立于構造的其它部分,通過其它系統服務如操作系統服務訪問。

除了定義應用軟件平臺的基礎設備,可插入計算模型描述應用軟件開發者怎樣使用服務界面建立工具。如表4-3顯示,每個可插入工具與數據管理服務、DCP服務或人工智能服務的界面中是一個APE,它定義行為并隔離服務要求和服務提供的執行細節。模型中的工具是數據和可執行編碼的結構包,除了它們自己的域種或專用的算法或數據,它還參照平臺服務(通過繼承的被支持界面)。

表4-5 可插入工具,每個可插入工具具有算法、數據和分布式計算環境中與服務的界面。

5.6.3. 可插入計算模型的優點?

可插入計算模型為給模型每個服務區的特定部分分配技術功能提供了一個一致基礎,模型的一致性將有利于:

  • 促進在信息技術的大環境中更好地理解開放GIS規范的重要作用;
  • 增加組織和程序間的共享資源;
  • 增強用戶和應用軟件間數據的連通性;
  • 提高開發者和用戶把新的功能集成到現有環境并把傳統系統結合到新環境中的能力。

這些是開放系統和開放系統環境的優勢,開放系統定義的核心內容是可升級、可擴充的、具有合成性和互操作性,這些“特性”在以下的段落中會詳細描述以說明開放系統的特性和環境??刹迦胗嬎隳P蛯γ枋鲋С忠话汩_放系統環境和開放GIS規范的特殊應用環境的屬性和服務行為幫助。

可升級應用軟件環境可以靈活匹配,可以根據地理處理應用軟件的需要合理精簡工具(模型中的工具服務)。例如:不是所有的地圖顯示應用軟件都要求全套的地理數據管理功能,因此這些應用軟件只需訪問開放GIS服務的子集??缮壄h境中的工具配置可以基于整個應用軟件的任務和特性,而不是全套單機軟件包的所有內容。

可擴充性系統支持把外部數據和軟件同化到一個軟件環境中,包括通過打包繼承前系統(已有的數據和軟件)的功能,提供一個界面賦予它們標準對象行為,這樣它們就成為了面向對象環境的一部分?;驍U充地理處理應用軟件的功能可以隨著地理應用軟件的成熟不斷擴展。

多樣系統通過可擴充性和現有工具中豐富的功能支持不同的應用領域,可以認為多樣系統是“橫向”或“企業”應用軟件環境,它支持不同類型的工作并融合不同數據類型到同一組織的工作流過程中。

互操作系統支持集成、合作和可交換工具,給互操作工具授權機制主要由應用軟件平臺的基礎結構服務支持:人工智能界面服務器、數據管理服務器和可插入計算模型的DCP服務器?;ゲ僮飨到y的工具可以代替,因此無需與環境中其它工具交換,新工具自動與環境中的其它工具互操作。

下一章,我們詳細描述開放GIS總體規范,這一規范建立了一個界面框架,使地理處理的可插入計算模型得以實現。