吳育芳
(湛江師范學院圖書館,廣東 湛江 524048)
數(shù)字圖書館是采用現(xiàn)代高新技術的數(shù)字信息資源系統(tǒng),它將從根本上改變目前信息分散、不便于使用的現(xiàn)狀[1]。隨著Internet的飛速發(fā)展,特別是Web應用的不斷普及,數(shù)字圖書館及其信息急劇增加。為了適應這種快速發(fā)展,人們建立了許多適用于不同資源、面向特定領域的元數(shù)據(jù)方案,如MARC、DC、VRA等。元數(shù)據(jù)為數(shù)字圖書館提供了精確描述數(shù)據(jù)內容、語義和服務的機制,可以方便標識、發(fā)現(xiàn)、評估和管理信息資源。
元數(shù)據(jù)開發(fā)和應用的經(jīng)驗表明,盡管元數(shù)據(jù)的應用日益標準化、規(guī)范化,DC等少數(shù)元數(shù)據(jù)方案將占主導地位,但是許多專業(yè)或專門領域仍然會有大量的元數(shù)據(jù)方案,很難有一個統(tǒng)一的元數(shù)據(jù)格式來滿足所有領域的數(shù)據(jù)描述需要。從應用的角度講,國際上公認的元數(shù)據(jù)標準在短時間內很難形成和統(tǒng)一。為緩解元數(shù)據(jù)資源描述的特殊性和一般性矛盾,解決元數(shù)據(jù)間多元化、非標準化的協(xié)調發(fā)展問題,迫切需要在元數(shù)據(jù)間建立某些機制,從而有效地實現(xiàn)元數(shù)據(jù)間的互操作。
互操作原則[2]體現(xiàn)在對異構系統(tǒng)間互操作能力的支持上,不僅可以為自己的應用系統(tǒng)所操作,而且可以為其他組織或機構的應用系統(tǒng)所操作;不僅可以在不同系統(tǒng)實現(xiàn)同一元數(shù)據(jù)標準間的數(shù)據(jù)傳輸、交換或轉換,而且可以在不同元數(shù)據(jù)標準間實現(xiàn)數(shù)據(jù)的傳輸、交換或轉換。在元數(shù)據(jù)的具體應用上,互操作性表現(xiàn)為易轉換性,即在所攜帶信息損失最小的前提下,方便地將元數(shù)據(jù)轉換為其他系統(tǒng)常用的元數(shù)據(jù)標準。
在元數(shù)據(jù)研究的初期,常從單一信息系統(tǒng)的角度,按照描述、組織和檢索信息內容對象的要求來考慮元數(shù)據(jù),從信息資源中抽取說明其特征、內容的數(shù)據(jù),如題名、版本、出版數(shù)據(jù)、相關說明等。元數(shù)據(jù)的含義與傳統(tǒng)文獻領域中的著錄款目的性質相同,信息資源的元數(shù)據(jù)用作信息資源的代替物組織檢索系統(tǒng)。
隨著分布式環(huán)境下數(shù)字圖書館互操作的發(fā)展,元數(shù)據(jù)不再僅是描述信息內容的工具,而是一種基本的信息資源組織方法,為數(shù)字圖書館系統(tǒng)的各個層次內容提供規(guī)范化的定義、描述、交換和解析機制,為分布的數(shù)字圖書館系統(tǒng)提供互操作和整合的紐帶,為計算機智能識別、處理、集成各種信息內容提供工具。
元數(shù)據(jù)可以描述各種粒度(granularity)水平的信息資源和信息體,這主要取決于數(shù)字圖書館所需達到的層次、信息資源的情況和用戶的需求等。一般來說,數(shù)字圖書館根據(jù)特定館藏的性質、館藏量的多少及館藏使用者的需求等具體情況,可以進行館藏水平、數(shù)據(jù)庫、單一文獻等幾種水平的描述。
元數(shù)據(jù)可以劃分為3種比較寬泛的類型:描述性元數(shù)據(jù)、結構性元數(shù)據(jù)、管理性元數(shù)據(jù)[4]。描述性元數(shù)據(jù)指描述和識別信息體的特征、分析信息體知識內容的數(shù)據(jù)。結構性元數(shù)據(jù)有時也被稱為技術型元數(shù)據(jù)、顯示型元數(shù)據(jù)或使用型元數(shù)據(jù),是用于確保數(shù)字化信息體正常發(fā)揮功能的技術性信息。它是指相關文件的結構或“標記”,如何組成在一起,如何在各種系統(tǒng)中顯示和發(fā)布等。管理型元數(shù)據(jù)提供有關數(shù)字對象的存儲條件和轉換過程相關的信息。它的目的是滿足管理、決策、保管記錄的需要,有助于檢測、復制和備份數(shù)字資源。但是到目前為止,大多數(shù)有關元數(shù)據(jù)的討論仍只是針對描述性元數(shù)據(jù)。
元數(shù)據(jù)是結構化的編碼數(shù)據(jù),用于描述信息實體的特征,以便標識、發(fā)現(xiàn)、評估和管理這些信息實體。它為數(shù)字圖書館的信息提供完全綜合的向導,對數(shù)字圖書館的各個方面都很重要,不僅是實現(xiàn)資源發(fā)現(xiàn)的關鍵,也是利用館藏資源和實現(xiàn)互操作的基礎。具體用途如下:
①描述數(shù)字圖書館的數(shù)據(jù)和內容;
②在描述數(shù)據(jù)中提供檢索點,使數(shù)字圖書館的數(shù)據(jù)和信息便于查詢和利用;
③允許用戶決定數(shù)據(jù)和信息是否是他們需要的;
④指出數(shù)據(jù)和信息的存儲地址,使用戶得到或使用數(shù)據(jù);
⑤說明數(shù)據(jù)的格式、編碼方式、解密方法等,指導用戶“讀懂”數(shù)據(jù);
⑥在提供多種格式的數(shù)據(jù)時,根據(jù)元數(shù)據(jù)提供的信息,參照相應評估標準,結合使用環(huán)境和實際需要,幫助用戶決定利用的數(shù)據(jù)實例;
⑦給出影響數(shù)據(jù)使用的信息,如法律條件、使用范圍、使用時間限制等;
⑧給出數(shù)據(jù)的最初來源、演變歷程等;
⑨給出數(shù)據(jù)的聯(lián)系信息,如數(shù)據(jù)擁有者的聯(lián)系方式等;
⑩給出數(shù)據(jù)前后版本的鏈接、使用本數(shù)據(jù)所需的其他數(shù)據(jù)和程序等;
為了使計算機能夠理解并操作,元數(shù)據(jù)必須存在于一個元數(shù)據(jù)體系之中。元數(shù)據(jù)體系的基本組成部分包括方案(schema)和元素[4]。元數(shù)據(jù)的元素是指封裝描述信息體的一條一條信息的類目或字段。元數(shù)據(jù)方案是為了滿足特定組織的需求而設計的元素集,如MARC元數(shù)據(jù)用于描述書目數(shù)據(jù);EAD元數(shù)據(jù)用于描述檔案文獻和手稿資源;CDWA、VRA Core、CIMI元數(shù)據(jù)用于描述藝術作品類目;GEM元數(shù)據(jù)描述教育資源等。由于不同組織的需求各不相同,元數(shù)據(jù)方案在數(shù)據(jù)元素的數(shù)量、強制性和復用性元素的使用、編碼、受控詞表的使用等方面有很多不同。
一個元數(shù)據(jù)方案要規(guī)定元數(shù)據(jù)3個方面的特征:語義(semantics)、句法(syntax)、結構(structure)。
語義是指元數(shù)據(jù)元素本身的意義。一個元數(shù)據(jù)體系通常要對每一條元數(shù)據(jù)的元素給予命名和解釋。元數(shù)據(jù)體系還要指出每個元素是否必選、可選或有條件選擇,以及是否可重復,這些都是元數(shù)據(jù)的語義范圍[5]。
句法是指元數(shù)據(jù)的編碼,是對元素賦值方法的規(guī)定。即指描述元素時所采用的標準、最佳實踐(bestpractices)或自定義的描述要求。
結構是指用于封裝元數(shù)據(jù)的數(shù)據(jù)模型(或體系結構)和元數(shù)據(jù)聲明的表述方式。它規(guī)定了元素怎樣以機器可讀的方式給予編碼。結構除了規(guī)定數(shù)據(jù)怎樣在計算機系統(tǒng)中存儲外,更重要的是,可以提供一種不同系統(tǒng)間元數(shù)據(jù)交換、重用的通用格式。因此,元數(shù)據(jù)方案的結構也可以稱為交換格式、通信格式或傳輸語法。
我們也可以把這3個方面稱為元數(shù)據(jù)方案的3個組成要素,從邏輯上說,具備以上3個要素才能構成一個完整的元數(shù)據(jù)方案。
互操作是指不同系統(tǒng)之間不管使用哪種硬件或軟件都可以實現(xiàn)互聯(lián),它最大限度地減少了因技術差異而造成的信息損失。由于不同的領域存在著多種元數(shù)據(jù)格式,當用不同元數(shù)據(jù)格式進行資源描述、檢索和利用時,就需要解決多種元數(shù)據(jù)格式間的釋讀、轉換問題,以確保系統(tǒng)對用戶的一致性服務,即實現(xiàn)元數(shù)據(jù)的互操作[6]。數(shù)字圖書館元數(shù)據(jù)的互操作性[7]是指在不同的組織和數(shù)字圖書館制定與管理元數(shù)據(jù)的環(huán)境下,元數(shù)據(jù)的技術規(guī)范不盡相同時,向用戶提供一個統(tǒng)一透明的檢索界面,確保系統(tǒng)對用戶的一致性服務。也就是說,數(shù)字圖書館元數(shù)據(jù)的互操作問題是與不同元數(shù)據(jù)格式間的信息共享、轉換、跨系統(tǒng)檢索等相關問題。
對應于元數(shù)據(jù)方案的3個組成要素,我們將元數(shù)據(jù)的互操作性分為語義互操作、句法互操作、結構互操作,也就是說元數(shù)據(jù)的互操作要解決元數(shù)據(jù)方案所包含的3個方面的異構問題。語義互操作是指不同的元數(shù)據(jù)方案中實際相同的語義是否采用相同的表達方式,主要克服資源描述過程中語義方面的差別。句法互操作是指元數(shù)據(jù)記錄如何被表達出來,要克服元素表現(xiàn)形式方面的障礙。結構互操作是指系統(tǒng)元數(shù)據(jù)和與其他系統(tǒng)交換元數(shù)據(jù)的能力,即一個系統(tǒng)的元數(shù)據(jù)聲明能否被其他系統(tǒng)所理解。語義互操作的實現(xiàn)需要通用語言和編碼格式的幫助。
元數(shù)據(jù)轉換(metadata crosswalks、metadata mapping)[8]也稱元數(shù)據(jù)映射,其實質是為一種元數(shù)據(jù)格式的元素和修飾詞在另一種元數(shù)據(jù)格式里找到相同功能或含義的元素和修飾詞。元數(shù)據(jù)轉換是人們在尋求互操作途徑方面邁出的第一步,也是目前實現(xiàn)元數(shù)據(jù)互操作的主要方法。映射可以解決幾種格式間的統(tǒng)一檢索。映射有多種方式:
4.1.1 一對一轉換
一對一映射將一種元數(shù)據(jù)標準中的元素映射為另一種元數(shù)據(jù)標準中的相應元素。元數(shù)據(jù)體系A→元數(shù)據(jù)體系B(來源A到目標B,一個映射過程);元數(shù)據(jù)體系A?元數(shù)據(jù)體系B(兩者互為來源和目標,兩個映射過程)。
單向轉換相對容易而雙向轉換則較難[9]。這尤其體現(xiàn)在一個簡單元數(shù)據(jù)格式與一個復雜元數(shù)據(jù)格式之間的轉換上。如DC與MARC的轉換,由于MARC的描述能力大大豐富于DC,所以數(shù)據(jù)由DC格式向MARC格式的轉換較為成功,但若是由MARC格式向DC格式轉換則將產(chǎn)生信息的缺失。這種技術可以解決幾種格式間的統(tǒng)一檢索[8]。也就是說,一個適合第一種數(shù)據(jù)格式的檢索式,通過兩種格式間的映射關系,可以自動轉換為適合第二種格式的檢索式,在第二種數(shù)據(jù)庫里檢索。
利用特定轉換程序對不同元數(shù)據(jù)格式進行轉換,目前已有大量的轉換程序存在,供若干流行元數(shù)據(jù)格式之間的轉化,例如DC與USMARC、DC與EAD、DC與Gils、Gils與USMARC等。
但是,要達到元數(shù)據(jù)互操作的目的,必須在元數(shù)據(jù)方案之間建立兩兩映射,在元數(shù)據(jù)格式數(shù)量較多時,轉換模板的數(shù)量也呈指數(shù)增長,因此這種技術一般適用于使用面較窄的范圍。此外,因受各種各樣復雜的實際情況影響,建立語義匹配基礎上的元數(shù)據(jù)映射的應用效率并不十分令人滿意,很少有元數(shù)據(jù)轉換工具可以提供數(shù)據(jù)無損的往返轉換。在轉換過程中,或在還原過程中,或同時在這兩個過程中,總是不可避免地造成一定程度的數(shù)據(jù)損失。
4.1.2 中介元數(shù)據(jù)格式轉換
當參與互操作的元數(shù)據(jù)格式很多、映射過程較為復雜時,可選擇一種廣泛而普遍使用的元數(shù)據(jù)標準作為中心轉換格式,其他各種格式都向這一中心格式轉換,從而實現(xiàn)以中心元數(shù)據(jù)格式為中介的元數(shù)據(jù)格式轉換[6],如圖1所示。
圖1 中介元數(shù)據(jù)格式轉換
被采用的標準格式應該在元素組成、元素語義定義和應用領域等方面具有普遍適應性,本身有較廣泛的應用,能被多數(shù)系統(tǒng)識別。理想的中介格式能夠為各個異構元數(shù)據(jù)提供對照,語義轉換比較容易的公共核心集[10]。
當前,以DC元數(shù)據(jù)格式作為轉換的標準,此種方式轉換脈絡清晰,便于元數(shù)據(jù)的擴展及管理。典型實例是OAI-PMH機制。在OAI-PMH元數(shù)據(jù)采集協(xié)議中,允許不同格式的元數(shù)據(jù)結構并存,但指定DC作為數(shù)據(jù)提供方提供的元數(shù)據(jù)格式。也就是說,數(shù)據(jù)提供方提供的元數(shù)據(jù)不是DC格式的,要先轉化成DC元數(shù)據(jù)后再提供給數(shù)據(jù)需求方使用。OAI-PMH不要求所有成員遵守同一個協(xié)議實現(xiàn)統(tǒng)一和互操作,而是要求所有元數(shù)據(jù)的發(fā)布方都支持以XML語言表示的簡單DC元數(shù)據(jù)結構,從而實現(xiàn)跨領域的資源發(fā)現(xiàn)和共享數(shù)據(jù),使不同格式、不同標準的元數(shù)據(jù)在語義層面上實現(xiàn)互操作。
將元數(shù)據(jù)映射為一種兼容性比較強的、比較全面的元數(shù)據(jù),可以降低復雜性,當參與映射的格式越多時,這種技術的好處就越明顯。
元數(shù)據(jù)的編碼語言是針對元數(shù)據(jù)元素和結構進行定義、描述的具體語法和語義規(guī)則[8]。目前使用的元數(shù)據(jù)編碼語言有SGML(標準通用標記語言)、HTML(超文本標記語言)、XML(可擴展標記語言)。SGML存儲格式很好,但復雜難懂,不便于網(wǎng)絡傳輸;HTML結構性不強,擴展能力差,描述內容的能力也較弱;XML本身就是一種定義語言,使用者可以定義標記來描述文件中的任何數(shù)據(jù)元素。它突破了HTML固定標記集合的約束,使文件的內容更豐富、復雜,并組成一個完整的信息體系。XML具有良好的數(shù)據(jù)存儲格式、可擴展性、高度結構化、便于網(wǎng)絡傳輸?shù)葍?yōu)勢,決定了其卓越的性能表現(xiàn)。XML由于自身的特點,使得它成為了元數(shù)據(jù)互操作的基礎,為各種互操作模式提供語法支持。因此,在數(shù)字圖書館元數(shù)據(jù)方案中,選擇XML作為編碼語言,能夠為信息交換提供獨具特色的解決方案,以實現(xiàn)元數(shù)據(jù)的共享、互換。
XML有標準的DTD(documenttype definition,文檔類型定義)定義方式。DTD包含有定義元素的元素聲明和屬性列表聲明,這些元素組成了詞匯表,屬性列表聲明說明了這些元素的屬性。DTD在簡單的文檔結構定義方面很出色,每種格式的元數(shù)據(jù)都可以通過XML-DTD定義。XSLT是基于W3C標準的用于描述XML文檔之間進行轉換的語言,它利用XML語言,定義一個轉換格式表(transformation style sheet,又稱轉換樣式、轉換模板),可將某種XML-DTD定義的元數(shù)據(jù)轉為用另一種XML-DTD定義的元數(shù)據(jù)[6]。
但是,DTD支持的數(shù)據(jù)類型只有字符型,不支持命名域(namespace),缺乏良好的擴展性,也不具備開放性,擴充困難,難以進行自動化處理。因此,W3C推出XML Schema彌補上述缺點。
XML Schema是DTD的發(fā)展,它不僅包括了DTD能實現(xiàn)的所有功能,而且本身就是規(guī)范的XML文檔,規(guī)范了文檔中的標簽和文本可能的組合形式。XML Schema是一種描述信息結構的模型,它是借用數(shù)據(jù)庫中一種描述相關表格內容的機制,為一類文件建立一個模式。它利用XML的基本語法規(guī)則來定義XML文檔結構,實現(xiàn)了由內到外的統(tǒng)一,不僅易于編輯,也可使用XML工具來解析,這是Schema較DTD的一個本質變化。它還具有良好的擴展性,有豐富的內建簡單數(shù)據(jù)類型,允許用戶自己擴展;它支持屬性分組,屬性的應用范圍是多種多樣的,可以針對不同元素;具有擴展性,定義的內容模式是開放的,原形可以更新;它還支持名字空間,能在同一文檔中加載多個Schema定義。此外,它還具有互換性、規(guī)范性,利于高層次的數(shù)據(jù)轉換,約束XML文檔中置標的使用。
XML實現(xiàn)不同元數(shù)據(jù)的簡單轉換如圖2所示。
圖2 基于XML語言的元數(shù)據(jù)轉換
首先要用XML-DTD或XML Schema對元數(shù)據(jù)記錄進行編碼,再利用XSTL擴展樣式轉換語言實現(xiàn)元數(shù)據(jù)之間的轉換。在轉換過程中涉及到結構、語義、應用等方面的映射關系,可以由建立基于概念集的語義詞典來解決[11]。
解決結構層元數(shù)據(jù)互操作性的思路是建立一個標準的資源描述框架,用這個框架來描述所有元數(shù)據(jù)格式,那么只要一個系統(tǒng)能夠解析這個標準描述框架,就能解讀相應的元數(shù)據(jù)格式。資源描述框架RDF(resourcedescription framework)就是這樣一個例子。RDF是在W3C的主持下開發(fā)的,它是對結構的元數(shù)據(jù)進行編碼、交換及再利用的一個基礎框架體系,能夠實現(xiàn)各種元數(shù)據(jù)互操作。
RDF采用XML作為交換和處理元數(shù)據(jù)的通用語法體系結構,通過定義一些描述元素,把不同的元數(shù)據(jù)描述體系結合起來,將多種元數(shù)據(jù)封裝在一個統(tǒng)一的描述框架中,從而使這些不同的元數(shù)據(jù)體系可以交換元數(shù)據(jù),實現(xiàn)多種元數(shù)據(jù)間的互操作。這樣,只需一個能夠解析這個標準描述框架的系統(tǒng),就能解讀相應的元數(shù)據(jù)格式。另外RDF通過使用XML中的命名域,允許RDF有效地引用特殊的RDF詞表或模式體系,這不僅減少了創(chuàng)建新元數(shù)據(jù)模式的工作量,而且保證了高度互操作性,同時又不犧牲各相關系統(tǒng)的特點[7]。目前,RDF已成為Web上實現(xiàn)元數(shù)據(jù)互操作的標準[10]。
RDF由3部分組成:RDF Data Model,RDF Schema和RDF Syntax[6]。RDF Data Model提供了一個簡單且功能強大的模型,它定義了一個由資源(resource)、屬性(properties)和聲明(statement)3種對象(object)組成的基本模型,其中資源和屬性的關系類似于實體—關系模型,而聲明是對資源與屬性的關系進行具體描述。通過資源、屬性及其聲明來描述特定資源,RDF通過這個抽象的數(shù)據(jù)模型為定義和使用元數(shù)據(jù)建立一個框架,元數(shù)據(jù)元素可看成其描述資源的屬性。RDFSchema則對RDF的語義進一步擴展,提供描述相關資源以及這些資源之間關系的機制, 規(guī)定了聲明資源類型、聲明相關屬性及其語義的機制,以及定義屬性與其他資源間關系的方法。并提供RDF核心類(coreclass)、核心屬性(coreattribute)和核心限制(coreconstraint)等機制來定義資源的類。RDF Syntax則構造了一個完整的語法體系以利于計算機的自動處理,它以XML為其宿主語言,通過XML語法實現(xiàn)對各種元數(shù)據(jù)的集成。在具體實現(xiàn)中,基于RDF的元數(shù)據(jù)轉換是通過RDF架構,把所有的元數(shù)據(jù)集中到一起,實現(xiàn)多種元數(shù)據(jù)在異構系統(tǒng)之間的共享。
元數(shù)據(jù)是揭示信息資源的基礎,它為數(shù)字圖書館提供了一種精確描述數(shù)據(jù)內容、語義和服務的機制。關于元數(shù)據(jù)互操作的討論,是元數(shù)據(jù)研究領域的核心問題,也是有效利用網(wǎng)絡信息資源的基本要求。筆者從元數(shù)據(jù)方案的3個層面理解元數(shù)據(jù)互操作的3個層次,可以有助于揭示元數(shù)據(jù)互操作的本質。相信隨著技術的進步和人們認識的深入,元數(shù)據(jù)的互操作性問題將會得到徹底解決。
[1]任繼愈.建設中國數(shù)字圖書館工程[N].人民日報,2000-04-04.
[2]金更達,何嘉蓀.電子文件元數(shù)據(jù)標準設計框架研究[J].檔案與建設,2005(9):4-7.
[3]馬費成.信息資源開發(fā)與管理[M].北京:電子工業(yè)出版社,2004.
[4](美)Arene G.Taylor著.信息組織[M].張素芳等譯.北京:機械工業(yè)出版社,2006.
[5]張東.論元數(shù)據(jù)互操作的層次[J].情報理論與實踐,2005(6):648-650.
[6]畢強,朱亞玲.元數(shù)據(jù)的標準及其互操作研究[J].情報理論與實踐,2007(5):666-670.
[7]陳虹濤,李志俊.元數(shù)據(jù)的標準規(guī)范及其互操作性[J].情報雜志,2005(7):93-95.
[8]孔慶杰,宋丹輝.元數(shù)據(jù)互操作問題解決方案研究[J].情報科學,2007(5):754-758.
[9]羅昊.互操作——數(shù)字圖書館元數(shù)據(jù)方案的關鍵[J].情報雜志,2003(12):32-33,36.
[10]鄭志蘊,宋瀚濤,牛振東.數(shù)字圖書館元數(shù)據(jù)互操作機制的研究[J].計算機應用,2005(3):699-702.
[11]韓夏,李秉嚴.元數(shù)據(jù)的互操作研究[J].情報科學,2004(7):812-814,877.
[12]朱超.關于元數(shù)據(jù)互操作的探討[J].情報理論與實踐,2005(6):644-647,655.