文/耿騫 楊倩
關注校園數字資源整合協議
文/耿騫 楊倩
校園數字資源整合是針對學校數字資源優化組合的一種存在狀態,依據一定的需要,對各個相對獨立學校的數字資源系統中的數據對象、功能結構及其互動關系進行融合、類聚和重組,重新結合為一個新的有機整體。
校園信息化正飛速發展,隨之而來的是校園數字資源越來越豐富多樣。但是,資源冗余、信息孤島、人力財力的重復浪費、資源難以利用和溝通等問題不斷產生。因此,如何充分利用網絡環境來科學管理教育教學資源,實現不同資源庫管理系統之間的互操作,提供高效優質的教育教學信息資源服務,已經成為教育信息化發展進程中的一個極為重要的問題。
校園數字資源的整合主要是包括橫向整合與縱向整合。橫向整合是指管理機構內部的子系統之間的資源整合;縱向整合是指上下級之間的,不同地域、不同單位之間的資源整合。
要解決校園數字資源整合的問題,可以通過數據集中管理、統計數據格式、編制轉換腳本、統一使用軟件等方法,但是這些方法會引發數據管理困難、腳本實用性有效、軟件壟斷等新的問題的出現。而數字資源整合協議的出現,不僅解決了數字資源整合困境,而且不會引發上述問題。
校園數字整合協議需要規范數據、對象、代理、報文、體系結構等不同內容,根據協議規范程度的加深,其發展大致經過三個不同階段:定義數據規范的協議(如IMS Enterprise Specification);定義管理信息系統互操作規范的協議(SIF、EMIF);定義資源互操作規范的協議(IFRM)。
本文主要介紹SIF和EMIF。
SIF(Schools Interoperability Framework),即學校互操作框架。1997年開始,美國的80多家教育軟件公司和社會團體發起了學校管理系統規范的制定活動,并將最終的解決方案命名為SIF。2000年,軟件與信息工業協會就已經公布了SIF執行規范的草案。SIF的目標是為了開發學校教學和管理軟件的開放性規范,讓不同的軟件能夠更加高效地協同工作。
SIF規范是基于XML語言的,該協議定義了共同遵循的數據對象、事件對象以及報文,每個應用程序都可以保持自己原有的格式,通過XML的轉化即可實現數據的共享與互操作。
結構原理
SIF的體系結構是一種分布式聯網系統, 建立在代理程序和一個稱為ZIS(區域集成服務器)的中間層服務器基礎上。每個應用程序軟件都創建代理程序,它們充當應用程序與ZIS之間的接口。代理程序之間并不直接通信, 而是通過ZIS間接通信,ZIS是框架中所有代理程序的集成點。
SIF的關鍵是一種SIF報文接發協議所使用并描述所有對象的公共XML數據詞匯。該詞匯中最重要的兩個部分是:描述交互協議的報文和報文發送的對象。對象包括數據對象和事件對象,事件對象是對數據對象所定義信息的變化的描述, 報文可以看作是數據對象和事件對象的載體。
當一個應用程序使得一個SIF數據對象發生改變時,它的代理程序就會發出一個包含描述這一變化的事件對象的報文,ZIS收到這一事件后,會立即將這一變化傳遞給其他正在使用這個數據對象的應用程序的代理,從而保證數據對象的更新。
數據和事件對象在代理程序與ZIS 之間的傳遞是以SIF報文為載體的。ZIS 理解SIF, 報文規范中所描述的所有報文,代理程序使用報文執行提供數據、預約事件、發布事件、請求數據以及響應請求。

圖1 SIF框架
SIF工作的4個基礎是:軟件應用、SIF數據對象、SIF代理、ZIF(Zone Integration Server)區域集成服務器,見圖1。當有SIF代理的應用軟件向ZIS發送消息時,ZIS繼續將這個信息向前發送到被監視的應用程序。信息通過應用程序代理尋址。通過鑒定的SIF應用軟件和代理之間并不直接對話;每一個應用程序和它的代理通信,并和ZIS通信。ZIS負責處理更深一層的通信。
功能模型
SIF對象和報文的規定是SIF互操作功能的前提。為了實現互操作,還需要建立一些功能模型,功能模型規定了實現不同功能所使用的各種報文的流程。
1.請求—應答模型
想要獲取數據的子系統向ZIS發出請求報文,ZIS根據存取控制列表查找數據的提供者,并將請求報文傳遞給數據提供者,數據提供者向ZIS發回相應的應答報文后,ZIS再將其返回給數據的請求者。ZIS提供一個存取控制系統,來限制送請求應答權限、數據提供請求和應答預約。
2.發布—預約模型
代理程序可以通過發布關于SIF數據對象的添加、改變、刪除的事件報文來傳遞數據的更新信息。如果其他應用程序需要隨時得到這些更新信息,就需要由代理程序進行預約。預約的方法就是發出一個或多個預約報文給ZIS。每當應用程序發布事件后,ZIS都會將這一事件按照預約清單發送給每個預約程序。這一更新數據的過程稱為事件報告生成。
3.信息傳遞—異步傳輸模型
異步傳輸模型是在某一個代理與ZIS的連接發生故障時仍然能夠保證數據更新的手段。它通過類似電子郵件等異步傳輸方式保證報文的傳遞。
4.安全驗證模型
安全驗證模型通過使用加密、驗證以及權限控制保證數據傳輸的安全性。在SIF的執行規范中詳細規定了實現這些功能模型所應該遵守的協議,以及報文傳遞的流程, 對如何解決報文傳輸隊列中可能遇到的“死鎖”問題也進行詳細的描述。
由于SIF是針對美國中小學和幼兒園教育軟件的規范,在數據對象的選擇上偏重基礎教育,高等教育管理軟件幾乎無法使用他們的數據對象。同時,其數據對象有濃厚的地域文化特征,數據對象有很多描述與中國的習慣不符, 這也會對我國直接使用SIF帶來許多困難。
同時,SIF的數據規范還很不全面, 對于學校和教師相關的數據對象的描述很少, 而這些又是學校之間以及學校和教委之間信息傳遞的重要內容。同時,對于學生對象的描述也很不完全。
因此,我們要想真正解決國內教育軟件之間互操作的問題,就應該在SIF的基礎上, 制定出符合我國國情的互操作規范。在這種情況下EMIF應運而生了。
EMIF(Education Management Information System Interoperability Framework),即教育管理系統互操作框架。它是在參考美國學校互操作框架(SIF)的基礎上提出的,用以解決我國高等教育管理信息系統之間的互操作問題。該方案旨在建立數據交換與互操作的標準,使框架內的所有系統都能輕松地進行信息交換與使用。
EMIF規范包括:體系結構,報文規范,數據規范。EMIF是參考SIF規范的。本文著重介紹EMIF的數據規范和報文規范部分。
數據規范
EMIF數據規范是最基本的規范,它是EMIF報文規范的基礎,是對EMIS系統導出的數據模式進行的規定。EMIF的數據規范主要定義了靜態的數據對象和動態的對象操作兩類,對描述任何一個數據對象的標簽、屬性、嵌套規則、出現順序等進行嚴格的規定,以保證數據對象描述方式的一致性。目前主要使用XML Schema或者DTD的方法對數據對象進行定義。
報文規范
EMIF報文規范是建立在EMIF數據規范之上。它通過報文將數據封裝起來在EMIF 規范中,系統間的互操作是通過報文傳遞來實現的,具體涉及到兩方面問題:一方面是報文傳遞的規范, 另一方面是報文內容模型的規范。
報文傳遞規范涉及到報文的有效性、報文的標識、報文安全、報文傳遞保障、報文傳遞模式、報文處理協議以及基礎傳輸層等方面的內容。此外,EMIF對執行各種操作,如數據提供、數據預約、數據請求與回復以及ZIS 管理的操作步驟等都進行嚴格規定。
報文內容規范是對各種報文的Schema 的規定,EMIF報文規范對11類報文的數據模型進行定義。主要報文有:EMIF-Ack、EMIF-Event、EMIF-Provide、EMIF-Register、EMIF-Request、EMIFResponse、EMIF-Subscribe、EMIF-System Control、EMIFUnprovide、EMIF-Unregister、EMIF-Unsubscribe,如圖2所示。
報文處理協議是報文傳遞過程中對報文進行處理的規則,EMIF 框架內的ZIS 和所有應用程序都應該遵循這些協議。這些協議主要涉及資格驗證、注冊、數據提供聲明、數據預約、事件報告、請求協議和回復協議等。

圖2 EMIF架構模型
(作者單位為北京師范大學管理學院)