〔摘要〕元模型思想在數字資源整合方面有著獨到的作用,文章在分析常用資源整合方法的基礎上,提出了基于元模型的數字資源整合方法。并結合實例,闡述了該方法的設計原理、建模過程和實際應用,最后對它做了評價。
〔關鍵詞〕數字資源;元模型;元數據;屬性;RDB;RDF/XML
收稿日期:2011-04-02
作者簡介:單永剛(1979-),男,工程師,碩士,研究方向:數字圖書館技術、計算機軟件技術,發表論文數篇。
DOI:10.3969/j.issn.1008-0821.2011.06.021
〔中圖分類號〕G250.76 〔文獻標識碼〕A 〔文章編號〕1008-0821(2011)06-0076-04
Research and Realization of a Method of Digital
Resources Integration Based on Metamodel
Shan Yonggang
(Library,Zhejiang Radio TV University,Hangzhou 310012,China)
〔Abstract〕Meta-moder-thought plays a unique role in digital resource integration,the paper put forward a method of digital resources integration based on the meta-model after analysing general methods.The paper expounds the design principle,the modeling process and the practical application,and evaluations of the method.
〔Key words〕digital resource;meta-model;metadata;property;RDB;RDF/XML
現代數字圖書館應具備立體式的資源體系,它們包含著各種不同學科、不同對象、不同表現格式以及不同支撐平臺的資源群,這些資源之間固有的異構特性嚴重影響了數字圖書館資源服務和管理的整體性。而高效地實現統一檢索、統一管理是數字圖書館建設者們不斷追求的目標,資源整合正是實現該目標的關鍵過程,當前用得最普遍的整合技術有兩種:一種是基于中間件技術的整合,通過技術處理,在表現層實現整合,稱之為虛擬法整合,另一種方式是基于元數據技術的整合,通過對各資源元數據的二次開發,把它們整合到一起,在數據層實現整合,即為實體法整合。
基于元模型的數字資源整合方法正是一種實體法整合,該方法引入了元模型設計思想,在系統中建立一套符合資源著錄標準的元數據定義格式,并將資源屬性(或原始數據字段)與預設元數據模型一一映射,從而實現異構資源的整合。這種方法特別重視過程積累,新建的元模型和元數據模型作為資源建設的一種過程資產,可被引用于其它資源元數據模型的建立,進而提高資源體系元數據格式的規范性。
1 數字資源元模型的設計原理
元數據的應用十分廣泛,本文所提到的元數據僅限于數字資源描述和管理的范疇,元數據作為數字資源的語義基礎,決定著數字圖書館資源組織和利用方式,規范的資源元數據模型是實現資源互操作性和開放性的必要條件。
適應數字資源多元化、多層次描述需求,一般將數字資源描述體系分4個層次[1]:
①對象層(data):也叫數據層,這里的“數據”是指數字資源本身,如:1本數字圖書、1個視頻課件等;
②元數據層(metadata):描述資源的數據叫元數據,它處于資源描述的元數據層,也稱為元數據模型層,模型即準對某個資源特定的元數據模式,如電子圖書元數據模型包括書名、分類號、主題等元素;
③元模型層(meta-metadata):描述元數據的數據即為元元數據,它處于資源描述的元模型層,這一層是元數據模型的元素來源,它的產生補充了對元數據描述和編輯的空缺,增強了元數據的靈活性和可操作性;
④元元模型層(meta-meta model):描述元元數據的數據即處于資源描述的元元模型層,這一層用來定義元模型層。
圖1 資源描述模型層次圖
這4個層次是相互迭代的關系,如圖1中某資源的元數據模型{A1,B1,C1,D1}取自某類資源的元模型{A2,B2,C2,D2},其中A2為元數據名,B2、C2、D2等是對該元數據屬性的描述,如:語義解釋、取值范圍、是否可控等等。元數據模型的元素一般取自同類資源的元模型,但也可以根據需要取自異類資源的元模型。在提取元數據元素時,應遵循“按需提取”的原則,只提取用得到的那部分元素即可,如:圖1中元數據模型{A1,B1,C1,D1},并沒有提取元模型{A2,B2,C2,D2}中的元素E1,因為該資源不需要E1元素來參與描述。元模型與元元模型之間的描述關系同理。
元模型的元素與語義沒有必然聯系,只有當特定資源的元數據模型確定時,元數據模型中的元素才有了確定的語義,例如對元模型中的“title”而言并不能確定它能描述什么,只有將title提取到論文資源元數據模型時才能確定它表示“論文標題”。
2 數字資源描述模型的建立
2.1 資源屬性的分析
確切地說,元數據描述的對象應是資源的屬性,所以在確定資源的元數據模型之前,必須進行資源屬性分析。資源屬性包括3個方面:①描述性屬性:描述對象固有屬性或知識內容的信息,如marc編目記錄;②管理性屬性:描述資源的外部屬性,包括技術性的描述和保存性的描述,如:掃描信息、存儲格式等;③結構性屬性:描述資源的物理結構,以把資源按特定邏輯單元關聯起來,如:導航信息索引號。3類屬性性沒有嚴格的界限,甚至存在很大的交集,在分析過程中可相互參考、相互引用。
圖2 電子試題資源E-R分析圖
描述性屬性主要通過對資源相關的活動實體的分析來獲得,主要方法就是E-R(Entity Relationship)分析法,這種分析法以菱形表示活動(關系)、方形表示實體、圓形表示屬性。如對試題資源的分析過程如下:一般來說,與試題相關的活動是考試,而參與考試的實體除了試題外,還應有考生和試卷,據此分析,可以畫出以考試為關系中心的E-R圖(圖2)。圖中列出了3個實體的主要描述屬性,而試題是關系圖中粒度最小的實體(資源),所以除本身的屬性外,試題還可以繼承試卷和考生的屬性,即圖2中的所有屬性都可以是試題的描述屬性。
管理性屬性,在技術設計階段獲取,除了要參考描述性元數據之外,主要考慮資源相關的技術參數和存儲參數,試題資源的管理屬性有載體、入庫日期、錄入者、保密級別、占用空間、交互度等。
結構性屬性,在資源設計階段獲取,除了要參考描述性元數據之外,還應該考慮到資源在數字圖書館中的橫向聯系,試題資源的結構性屬性有結構屬性包括學科導航、時間導航、關鍵詞等。
以上屬性是確定資源元數據的原始依據,它們附上相應的描述就成為資源的元數據。
2.2 資源元數據建模
元模型是元數據規范的集合或者說是元數據的命名域(namespace),它把各種不同的元數據按多種方式進行分類,如按媒體格式(視頻、音頻、文檔)、資源類型(試卷類、課件類),它也包括了現成的元數據參考模型,如數字圖書元數據模型、課件元數據模型。整個元模型的內容是可編輯的,如建立新的元數據參考模型、建立新的元數據實體等。
元數據應用綱要(application profiles)模型的建設思想是:為需要描述資源對象的元素(屬性),在現有的一種或多種元數據規范中選取對應的元數據實體,如果找不到相應的元數據實體,則需要新增命名域元數據或自定義命名域,即為新元素定義新的語義[2]。這一思想闡明了元數據模型建立的思考步驟,即首先考慮元模型中是否有現有的元數據模型或實體可以套用;其次是考慮是否可以引用元模型中其它元數據模型或實體的部分元素;最后考慮是否進行元素的自定義,向元模型增加新的元數據實體,自定義元素不能局限于某資源的應用,要立足于整個數字資源體系建設的高度,充分考慮其語義的兼容性,如DC元數據規范中的“title”元素,就可以用于多種不同的資源描述。
元數據模型元素取用范圍因以屬性分析結果為主要參考,如:從試題屬性分析結果(圖2)來看,試題資源元數據模型的實體來源至少應包括DC元數據模型、試卷元數據模型、考生元數據模型,當然也可能需要自定義元數據實體。元數據模型應包括5個主要屬性:①元素名:資源屬性,規定元數據語義;②限定詞:對元素語義的補充說明,起修飾作用;③標簽:用于RDF/XML記錄格式的元數據;④英文標識:語義的英文解釋,一般還用作關系數據庫的字段名;⑤元素來源:元素的來源。
3 資源元數據的存儲與獲取
3.1 存儲方式
資源元數據有兩種存儲方式:
一種方式是RDF/XML,是基于XML語法的RDF模型,其中XML用來描述數據的結構,RDF用來提供數據的語義。RDF作為一個元數據的描述方式,依賴XML來編碼和傳送元數據[3]。但是XML缺少作為實用的數據庫所應具備的特性,如它的存儲效率極低,無法進行高效的數據索引,有沒安全機制,無法和具體事務進行數據的實時交互。
另一種方式是關系數據庫(RDB),它具有高效的存儲、索引和數據修改機制,嚴格的數據安全控制,完整的事務和數據一致性控制,多用戶訪問機制,完善的并發控制等優點。但是,關系數據庫的語義描述能力差,大多通過技術文檔表示,數據本身很難實現數據語義的持久性與傳遞性。
不難發現,這兩種存儲方式在功能上是互補的,元數據的獲取、轉存、取舍、編輯等操作都需要用到該兩種存儲方式的優勢功能,因此它們之間的轉換操作是資源獲取的最基本、最重要的操作:
3.1.1 RDB向RDF/XML轉換
從RDB中導出XML,RDB的每張表對應一個XML元素,元素名為表名,將一條記錄映射為表元素的一個子元素,再將記錄中的各個字段映射為記錄元素的子元素。具體實現方法為:從關系數據庫中將資源元數據讀出,再以定制的格式將其輸出到(或另存為)文本文件即可,以下是一段動態網頁腳本代碼,把英語試題(表TestEnglish)映射為RDF/XML元數據格式。
此外,R2RML(RDB to RDF Mapping Language)技術[4]是從RDB向RDF映射的新技術,目前尚處于試驗階段,它被認為將能實現很多不同種類型的映射,如為已經建立RDF映射的關系數據庫提供虛擬的SPARQL(類似SQL,用來查詢RDF的語句)端點,或生成RDF轉儲數據,或完成連接的數據接口。
3.1.2 RDF/XML向RDB轉換
跟紙本圖書的CNMARC一樣,RDF/XML文檔是資源描述信息的傳播者和保存者,將數字資源元數據置標格式(RDF/XML)導入到RDB正是體現其互操作性價值的關鍵步驟。
圖3 電子試題XML元數據結構圖
圖3是電子試題XML元數據的結構樹,Tests的每一個孩子是不同主題的試題數據庫,每一棵子樹都有同樣的結構,例如:以TestEnglish為根的子樹是英語類試題的元數據結構。將TestEnglish的XML元數據文檔映射到關系數據庫的步驟如下:首先為RDB建立一個TestEnglish主表,然后對TestEnglish子數從樹根向樹葉遍歷,凡是TestEnglish的樹葉都是試題元數據模型的元素即關系數據表的字段,凡是非根非葉的成員都需要新建數據表,它的樹葉就是新建表的字段,它的關鍵字必須要成為TestEnglish表的外部關鍵字(如:exam的Examid、Course的Courseid)。資源元數據在確定與其相對應的字段的同時,寫到該字段下。按這樣的規則,可以建立一個與TestEnglish的XML元數據文檔相對應的,符合第三范式(3NF)的關系數據庫,最后以各外部關鍵字為接點,通過聯合查詢方式(SQL語句的UNION),可以生成完整的、與原RDF相對應的數字資源元數據的視圖,進而可以實現對其進行數據查詢、數據挖掘等操作[5]。
3.2 元數據獲取
元數據獲取是數字資源整合最后一項操作,上一節(3.1)所述的存儲方式轉換是元數據獲取的基礎性技術。元數據的來源有3類即RDF/XML元數據文檔、RDB數據庫和手工錄入。因RDB的可操作特性,一般把獲取的第一手元數據存儲在RDB表中,再用技術手段為RDB數據附上語義,即轉換為RDF/XML的元數據格式。在導入之前,對于不符合元數據模型的RDF/XML和RDB表等數據來源要根據元數據模型做數據字段的取舍,兩種格式的取舍方法基本相同,RDF/XML文檔在取舍前需要轉換為RDB表(RDB表不必轉換),然后再用關系數據庫管理工具(如SQL語句)對RDB表進行數據字段取舍操作。元數據獲取過程中特別要注意不能忽略關系數據庫的“關系”。
4 小 結
基于元模型的數字資源整合方法能高效、靈活地組織異構數字資源,在多元化資源體系中,真正實現了“求大同、存小異”的設計思想,以最大限度地加強資源整合的深度。目前部分資源已經建成了權威的元數據模型,如上海圖書館對名人手稿元數據方案做了全面的設計,但是大部分元數據模型只處在局部范圍內的應用,尚未形成業界統一的、權威的模型,因此這種方法在將來一定的時間內或在局部范圍內應有其用武之地。另外,該方法對于部分元數據封裝的資源,如中國期刊網資源、超星數字圖書等,則無法做到基于元數據的整合,這種情況只能通過虛擬法來實現“假的”整合。
參考文獻
[1]周芳,文必龍,王守信,等.基于元元模型的多維元數據管理研究與實現[J].計算機工程與設計,2006,27(10):1797-1799,1804.
[2]Rachel Heery,Manjula Patel.Application profiles:mixing and matching metadata schemas[EB].http://www.ariadne.ac.uk/issue25/app-profiles,2010-12-02.
[3]陸建江,張亞非,苗壯,等.語義網原理與技術[M].北京:科學出版社,2007:32.
[4]R2RML:RDB to RDF Mapping Language[EB].http://www.w3.org/TR/2010/WD-r2rml-20101028,2011-01-03.
[5]吳琴霞,張志鴻.語義Web中RDF元數據的存儲與管理[J].微計算機信息,2007,23(33):144-145,132.