基于dSPACE的中国组织仓储系统的构建_元数据论文

构建基于DSpace的中文机构仓储系统,本文主要内容关键词为:中文论文,机构论文,系统论文,DSpace论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。

〔分类号〕G25.7

1 引言

机构仓储(institutional repository)的构建是当前学术研究机构普遍关注的一个问题。由于机构仓储能够做到:①有效收集、组织、存储、管理机构内的科学数据、研究成果和其他资料;②实现机构领域内数字内容和资产的保存和管理(包括记录管理和内容管理)、访问、平等使用和共享(包括研究数据的复用和知识对象的复用);③支持研究机构成果发布、学术出版和科研人员交流、分析和协同工作;④支持外部元数据的收割发布和内部仓储的开放获取,在当今日益数字化的科学研究、学术交流、教育培训环境中起着非常重要的作用。

当前,国外机构仓储研究已经有了长足的进展,尤其在技术体系方面,不仅提出了成熟的框架体系,而且还开发了一系列的仓储软件,并在此基础上开展了多方面的实践应用。目前,能够支持机构仓储较为成熟的软件工具有Archimede[1], ARNO[2],CDSware[3],DSpace[4],Eprints[5],Fedora[6],i-Tor[7], MyCoRe[8]和OPUS[9]等。已经初具规模的存储仓储有CCLRC ePublication Archive(20774条),BioMed Central(14930条), Cogprints(2137条),ECS EPrints Service(8735条)等[10]。

在国内,越来越多的研究者也逐步认识到了机构仓储在机构信息环境构建、机构资源组织和服务上的重要性,但相对国外而言,国内机构仓储的研究和实践还相对落后。从软件工具使用的角度而言,尽管大多数的机构仓储软件都是开放源码软件,但是由于这些软件系统在中文处理、本地化改造等方面还与国内现实环境有一定的差距。因此,在开放源码软件的基础之上构建适用于中文环境的机构仓储系统已经成为目前我国机构仓储技术研究和实践的一个重要问题。

通过对目前机构仓储软件系统的分析,我们认为MIT(麻省理工大学)和HP(惠普公司)共同开发的DSpace系统结构合理、功能较为完善、遵从相关标准、还支持任意类型的内容存储,在国外学术机构中得到了最为广泛的应用。因此,我们将DSpace系统作为一个十分重要的试验对象。本文以笔者对DSpace的研究分析为基础,提出了DSpace本地化过程中的主要问题及解决思路,构建了一个基于DSpace的中文机构仓储系统,并介绍了系统的实现情况,以期能在中文机构仓储建设方面为国内外同行提供一些参考。

2 DSpace及其系统架构研究

DSpace是MIT与HP公司合作开发的数字资产管理系统,它实现了知识资源的收集(collect)—保存(preserve)—发布 (distribute)的一般过程。DSpace具有可扩展的框架结构、层次化的数据模型和完整的OAIS功能映射。

2.1 系统框架分析

DSpace的系统框架由存储层、业务逻辑层和应用层组成 (如图1所示)。

图1 DSpace体系结构

注:图片来源于DSpace System Documentation:Architecture[11]。

存储层是系统的底层,主要进行信息对象的存储,它包括内容对象(也就是位流数据)和元数据。DSpace通过文件系统的方式实现了任意内容对象的存储,元数据的存储则通过关系数据库PostgreSQL(或其他关系数据库)来实现,系统调用 JDBC完成存储。业务逻辑层是中间层,它包括了系统的用户权限管理、认证、工作流管理、标识符(handle)管理、检索、浏览等。应用层是DSpace与外界的交流层,除了已有的Web用户服务、OAI元数据提供服务、批量摄取服务外,用户可以建立接口扩展更多的应用,比如CNRI Handle插件服务和联邦服务等。

总之,DSpace的模块化程度高,具备很强的扩展性。它不仅根据服务对象的不同将仓储系统分为三层,而且在每一层的应用上各种具体操作都相对独立,并针对不同的应用创建不同的功能模块。在模块耦合方面,DSpace基本采用应用接口进行通信,包括层与层之间的数据通信和层内的数据通信。这种应用接口API的使用非常便于系统的应用服务扩展。

2.2 数据模型分析

DSpace数据模型如图2所示,DSpace将它所拥有的数字资源从总体上划分为若干个Community(组织),通常Community指院系、部门等,它容纳该组织中的所有相关资源。Collection(馆藏集合)是Community下逻辑相关的资源集合,如某个课题组。Collection由Item(信息对象)构成,一个tem就包含了一个存档文件的所有存档元素,存档元素包括元数据集和若干个Bundle(数据包),尤其多个Bundle的方式可用于表现复杂的知识对象,如包含图片的HTML对象。每个Bundle中还包含了Bitstream(位流数据)和Bitstream的存储格式。

图2 DSpace数据模型

注:图片源自DSpace Internal Reference Specification-Technology & Architecture[12]。

事实上,DSpace的这种数据结构将内容对象与媒体类型分离,很好地解决了基于不同格式的信息存储问题,它将每个位流数据都对应到一种数据格式上,实现了信息组织的灵活性、可重构性,并且支持系统资源,媒体类型的扩展。

2.3 DSpace的OAIS功能映射解析

以上述内容为墓础,笔者对DSpace进行了更为深入的 OAIS功能分解(如图3所示)。其中,①代表DSpace的摄取过程分解;②是保存计划分解;③为管理过程分解;④表示存档过程分解;⑤表示数据管理分解;⑥指访问过程分解。

图3分解结果表明,DSpace基本涵盖了OAIS取、存档、访问、数据管理、保存计划和管理等6大功能,并且在这6大功能中都有较为具体的解决方案,较好地拟合了OAIS的功能模型。但也必须指出,DSpace还存在许多不足,尤其是长期保存特征不够鲜明。

3 DSpace本地化过程中的主要问题及解决思路

尽管DSpace有很多优点,但在本地化过程中,还是有很多问题值得我们关注。下面是笔者在DSpace的本地化过程中遇到的一些主要问题及其解决思路。

3.1 中文支持问题

DSpace本地化的首要问题是中文的支持,DSpace1.3版本已经开展了一些国际化(I18N)服务的尝试,例如,采用Unicode国际化字符集在一定程度上解决了信息交换的中文字符的解析问题;采用标签文件(Messages.properties)支持多语言模式增强本地语言转换的便利性。

图3 DSpace的OAIS分解

通过实例测试和源码分析,笔者认为中文支持主要存在以下三方面的问题:①信息交换的中文支持;②Web界面的中文支持;③索引中文支持。

3.1.1 信息交换的中文支持 信息交换是要保证信息的正确传递和解析,由于长久以来国际上形成了SBCS(单字节字符集)和DBCS(双字节字符集)两大类的字符编码系统,例如, ISO 8859-1就是SBCS,GB2312就是DBCS,那么在同一系统中直接使用两种完全不同的编码规则非常容易引发信息交换的紊乱。若在DSpace中正确实现信息交换,首先必须解决字符集的问题。DSpace已经将Unicode作为它的底层处理字符集,Unicode是一种能够包含几乎所有字形的字符集,解决了诸如中文的亚洲语系的字符显示问题。因此,对于当前系统的本地化建设而言,亟待解决的问题是保证信息交换过程中的页面信息提交、Servlet响应或数据库提交等均应以UTF-8作为其编码方式。

3.1.2 Web界面的中文支持 Web界面的中文化包括:① JSP文件的中文支持;②Java文件的中文支持;③其他相关文件的中文支持。

3.1.2.1 JSP文件的中文支持 在DSpacel.3中,多数JSP文件都将JSTL(Java Server Pages Standard Tag Library,JSP标准标签库)的fmt标签应用于HTML标签内容,fmt标签统一集中在标签文件Messages.properties中,这样,不仅修改Web界面的HTML标签不涉及JSP文件,而且还可以再创建各种语言版本的标签文件,由此,Web用户就可直接根据当前浏览器指定的用户语言习惯来驱动恰当的标签文件,并使之最终正确显示用户的语言界面。这是一种面向用户语言的界面驱动服务。

因此,在JSP文件的中文化上,需要完成以下工作:①将所有的JSP文件标签化;②建立完整的标签文件;③建立中文的标签文件(Messages_zh.properties)。这样,中文操作系统的用户就可根据当前浏览器的中文语言属性来驱动DSpace的中文显示界面。

3.1.2.2 Java文件的中文支持 由于DSpace的Web服务是基于请求—响应的Servlet模式,因而可能存在部分Java文件涉及一些HTML页面的描述信息,所以还需要对这些相关的 Java文件中的HTML标签内容进行汉化。因此,在处理Java文件的中文化上需要完成以下工作:①测试分析系统的后台响应;②获得涉及HTML页面描述信息的Java文件(主要是jsptag包中的界面显示文件);③对这些文件进行汉化处理。然后,还可以对jsptag包中HTML标签内容进行fmt标签化,以便适应系统的多语言服务驱动能力。

3.1.2.3 其他相关文件的中文支持 DSpace中一些系统显示信息以参数的形式存在,记录在参数文件中。因此,也需要对这些相关文件进行汉化,这部分包含以下内容:①测试系统获得系统应用涉及的参数文件,比如系统配置文件config.cfc的一些信息配置;②对这些文件进行基于UTF8的汉化处理。

3.1.3 索引中文支持 由于DSpace是一个默认面向英文数字资源的仓储软件,系统搜索引擎插件Lucene也默认为英文解析,所以默认配置下DSpace对中文数据的搜索效果非常不尽如人意。出现这种差异最主要的原因是英文与中文在分词 (Analyser)上的区别,因为英文语句中单词之间是天然通过空格分开的,但中文语句是一个字挨一个,必须要把语句按“词”进行索引,也就是中文存在不同于英文的分词规则,因此需要使用正确的中文词法分析器。

Lucene是一个具有良好架构的搜索引擎,只要加入一个中文解析器就可以支持中文索引,笔者采用了基于二元语法的中文分词器。要实现DSpace的中文索引,首先需要在索引工具包lucene.jar中加入中文词法分析包,然后重新生成lucene.jar,最后再重新指定DSpace搜索所使用的Lucene语言分词器为二元中文分词器。

如果能解决以上三方面问题及经过系统的反复测试,笔者认为便可较全面地解决中文的支持问题。

3.2 文件格式和元数据扩展

虽然DSpace支持的初始文件格式只有常见的35种,但是它本身支持任意格式的内容存储,即系统可以扩展任何一种文件格式。DSpace通过MIME类型指定的方式识别保存在系统中的数字资源,只有那些属于系统认可文件格式的数字资源才能被保存到DSpace中。

以维普数据为例,目前中国科学院文献情报中心有大量的维普数据(vip格式),要将这些vip格式的数字资源保存到基于DSpace构建的仓储系统中,就必须先在系统中扩展vip文件格式。DSpace通过文件格式注册进行格式认可,在注册中要描述维普文件格式的MIME类型(application/vip)、后缀名(vip)、文件格式级别(known)等,只有注册完成后系统才能正确地摄入vip格式的数据。

在元数据格式上,DSpace目前只支持受限DC元数据,初始包含66个元数据元素,包括题名(title)、作者(author)等描述元数据,诸如来源(provance)、文件格式(mimetype)等管理元数据,诸如关系(relation)等结构元数据。随着元数据的发展以及数字资源类型的发展,仅仅66个元数据很可能无法满足系统的需求,还必须要解决元数据新元素的扩展问题。DSpace在元数据扩展方面目前只能完成对新元素的注册,并不能在数字资源捉交中自动添加新注册元素的属性描述项。

以rights属性为例,首先需要启用DSpace的元数据元素注册功能,rights注册完成后还必须在数字资源摄入的提交表单中加入rights值的输入域,只有如此,新注册的元素才在数字对象中体现并生效。

3.3 工作流的定制和管理

DSpace作为一个数字资源存储管理系统,在管理策略上具有良好的灵活性,尤其能够实现如下多种工作流机制:

3.3.1 用户(e-people)及用户组 DSpace的用户既可以是实际的人也可以是机器、软件代理等,用户采用username/password或X509证书进行认证,若干个用户还可以组成用户组。

3.3.2 权限(authorization) DSpace制定了资源存取的操作类别(增、删、读、写等)和用户角色表,并通过两者的关联实现授权管理,这种授权不具有向下继承性,如对Item具有Read权限的用户对构成Item的Bitstream没有Read权利。

3.3.3 工作流(workflow) DSpace允许定制Item的提交过程,并通过事件触发进行工作流运转。DSpace一个包括提交、文件审核、元数据审核、元数据终审、存档5大步骤的完整工作流程,每一步骤再与相关的用户角色关联,如提交者 (submitter)、审核者(reviewer)、元数据编辑者(metadata editor)和协调者(coordinator)等。用户可以根据实际系统的需求选择不同的环节定制流程。

3.4 与其他系统和服务的集成整合

机构仓储作为机构信息环境的一部分,还应当能方便地与原有的服务或系统进行有机集成,DSpace也正是这样一个开放的系统。

3.4.1 通过唯一标识符与其他系统整合 DSpace只能在系统内部对数字对象进行唯一标识,如果要实现Internet上有效的、可扩展的、安全的全球命名和解析服务,还需要加载诸如CNRI Handle Server的唯一标识符服务。

以Handle服务为例,DSpace首先向Handle全球服务获取本地创建系统的Handle句柄规范,然后建立本地Handle解析服务器并将本地服务器加入Handle全球服务网络,实现数字资源在全球的唯一标识。例如,对于“hdl:1721.123/4567”,DSpace将其映射为如下形式:http://hdl.handle.net/1721.123/ 4567。其中,“http://hdl.handle.net/”为代理服务器主机地址,“1721.123/4567”为Handle内容。这种方式不仅实现了Web浏览器对handle的兼容,而且可充分利用HTTP协议支持URL重定向的特性,当资源在长久保存过程中存放位置发生变化时,通过重定向机制,用户仍然可以找到该Handle初始指向的资源。

3.4.2 通过OAI-PMH与其他系统整合 DSpace的另一大优势就是支持OAI-PMH2.0协议,它实现了基于HTTP的OAI元数据发布。DSpace提供的元数据并没有和Web用户服务集成在一起,需要用户单独提供Web服务。它通过Web服务调用嵌入的OAICat元数据发布器获取PostgreSQL存储的元数据,再将之以基于OAI-PMH2.0的协议发布。

3.4.3 通过开放链接与其他系统整合 在互操作服务方面,DSpace还支持SFX的开放链接服务,提供了SFX开放链接接口。由于原中国科学院文献情报中心的开放链接系统是 Ananda开放链接系统(Ananda系统是由中国科学院国家科学数字图书馆与北京中科软件有限公司共同开发面向中国科学院全院用户的“透明”链接服务),因此,如果要在DSpace中延续Ananda开放链接服务,就有必要新建DSpace的Ananda开放链接接口,生成链入Ananda系统的URI。

3.4.4 通过METS与其他系统实现资源交换 DSpace的 Web用户服务实现了友好界面的数字资源操作,但是这种存储和分发数字资源的方式无法高效便捷地处理批量数据。因而,DSpace在Web服务的基础上还提供了几种批处理工具,主要是数字对象的摄入、导出等。DSpace通过建立特定的规则实现仓储中数字资源的集中处理,它以命令的方式进行操作,用户需要根据当前特定规则的要求创建恰当的批处理方式,比如以METS格式导出数字对象等。

4 中国科学院文献情报中心机构仓储的建设

中国科学院文献情报中心构建的基于DSpace的中文机构仓储系统以现有部门为中心建立数字资源的馆藏分类,完整地应用了DSpace的管理流程,Web用户中文服务界面如图4所示(访问日期:2006-02-28)。

中国科学院文献情报中心的中文机构仓储的特色应用服务还包括本地Handle解析服务、OAI元数据服务、Ananda开放链接服务等(如图5-7所示)。

5 总结

中国科学院文献情报中心基于DSpace构建机构仓储表明,DSpace具有比较完善的仓储功能和相对灵活的扩展应用。它提供的长期存储和管理机制,能够实现数字对象在一个安全、专业化管理的仓储中的保存,但是DSpace也存在着一些不足之处。在原中国科学院文献情报中心机构仓储实例的建设过程中,我们有重点地对其进行了一些本地开发工作。而且随着系统的进一步完善和服务需求的增加,必然也会涉及到更多新功能的扩展,比如加入存储中间件SRB等。

图4 中国科学院文献情报中心首页界面

图5 唯一标识符解析服务

图6 Ananda开放链接服务

图7 OAI元数据服务

收稿日期:2006-06-27 修回日期:2006-07-21

标签:;  ;  ;  ;  

基于dSPACE的中国组织仓储系统的构建_元数据论文
下载Doc文档

猜你喜欢