CASHL/CALIS & 日本旧忆·馆际互借

在日本图书馆参观与实习时,对他们的高校联合编目与馆际互借系统特别感兴趣。NACSIS(文部省学术情报中心,现为国立情报学研究所NII)是日本的高等教育文献保障系统,其联合目录NACSIS-CAT考虑到馆际互借方面的需求,馆藏信息包括期刊的卷期。馆际互借系统NACSIS-ILL会在收藏某刊的图书馆中,筛选出符合用户所需卷期的图书馆,供借入馆选择;借入馆可以同时选择多个提供馆,如果排在首位的馆不能提供,接下来会转到排在后面的其他馆。因此,如果需要馆际互借或文献传递,只要查联合目录,然后提交申请就可以一次搞定。
在研修结束时,要写一篇文章,当时选择的主题就是NACSIS-ILL。正巧需要参考某篇文章,所在的图书馆没有,于是亲身经历了一次文献传递。周一通过图书馆发出需求,中间隔了一个法定休息日,周四图书馆收到复印的纸本。图书馆通知我到邮局付费,然后凭邮局付费收据取纸本。如此迅速就得到了原文,自己感觉相当满意。

最近想看几篇文章,馆里没有,于是开始亲身体验CASHL的文献传递服务。可以自己直接在网上提交文献传递需求,email收到原文后网上划转费用,与十年前的日本经历相比,感觉上会好很多。可惜事情并不像想象的那样顺当。
在10月30日给XX大学提交了二份申请,11月1日收到一个回复,主题是“因该刊被借出而无法提供服务”,内含一份申请信息。因为不熟悉CASHL的服务规定,又傻傻地等另一篇而无结果,今天(11月5日)才想到登录去看,结果“事务状态”都是“服务不能被提供”,知道白等了。两份申请虽然是同一期刊,但是年份、卷次不同,难道都出借了?都出借也应该发两个通知,或者在一个通知中告知两份都无法提供服务才对呀。
首次申请没有收到,文章还是要的。这时就看出CASHL系统设计中的问题了,1、系统没有将申请自动转向另一个馆的功能;2、系统也不提供手动更换图书馆重新申请的功能,原来的请求作废,要申请还得从刊名检索开始,一切从头再来!真是又费时、又费事。

又想到CALIS联合目录。最初看到的联合目录设计中曾包括期刊的馆藏卷期信息,可最终实施时却去掉了。所以CALIS的联合目录无法用于期刊的文献传递,同属CALIS系统的CASHL文献传递就需要另建文献信息库。虽然强化了期刊目次信息,可省掉用户输入引文信息的麻烦,但实际造成了成员馆需要同时维护两个联合目录。从本馆以往的情况看,不准确的书目信息是造成文献传递未能满足的重要原因。
以现在的技术,如果CALIS联合目录包含期刊馆藏信息,CASHL直接采用CALIS联合目录的书目与馆藏信息,同时嵌入期刊目次信息,也是不难实现的。

技术发展了,但设计并没有做到人性化。要实现“无缝的用户体验”,还需要系统的设计者也做几次用户。

IFLA的“数字对象元数据工作组”

    为应对日益增加的数字出版物的编目工作,国际图联编目组在2005年成立了“数字文本文献书目标准工作组”(Working Group on a Bibliographic Standard for Digital Text Documents),2006年该工作组改名“数字文本文献书目建议工作组”(Working Group on Bibliographic Recommendations for Digital Text Documents),2007年再次改为“数字对象元数据工作组”(Working Group on Metadata for Digital Objects)。工作组计划在2008年IFLA加拿大魁北克年会前提交最终报告,作为编目指导委员会在年会上的一项活动。
    名称的不断更改,体现着工作组应对形势变化而对工作目标的改变:1、从文本型数字对象扩大到任意数字对象;2,从狭义的书目扩大到广义的元数据(也从图书馆扩大到了更广阔的领域);3、从强势的标准转为较温和的建议、指南。真是一年一个样,三年大变样。

工作组主要任务(Charge)
    为需要创建、共享与管理元数据者推荐一份指南,包括元素、工具、格式、协议。
基于以下原则开展工作:该指南是高层次的指南,意即[方括号后为本人理解]:
* 应当作为语义映射的轴心(a pivot for semantic mapping),也即作为一部数据元素词典,不同的社区可以映射他们自己的书目数据集
* 应当作为关于如何在文本文件中处理书目数据的指南[应当是纯文本数据]
* 不应当预设任何特定的标记系统[MARC也罢、XML也罢],但
* 应当作为一个针对可能采用的不同标记系统的模型,并且
* 应当适用于最通用的文本编辑程序
* 应当定义一个属性集,包括如语言、字体、大写规则等(language, script, capitalisation practice)[?],以方便进一步处理

    小组已经召开了三次会议,但没有关于这份指南的更详细信息,可能要到2008年3月第四次会议以后,才能看到草案。

    目前小组成员均来自欧洲:丹麦(主席)、法国、瑞典、荷兰、挪威。2006年时还有一位代表IT组的中国人(张智雄),据称由于未提出任何建议而不再作为成员。

参见:
IFLA. Cataloguing Section. Working Group on Metadata for Digital Objects

第一次会议:2006/8/23,韩国首尔第72届IFLA年会期间(会议报告
第二次会议:2007/2,丹麦哥本哈根(?)
第三次会议:2007/8,南非德班第73届IFLA年会期间(会议报告
第四次会议:2008/3/17-19,法国巴黎

又一个开源OPAC——Fac-Back-OPAC

    独立于ILS的新OPAC越来越多,不少还是开源的,最近出现的例子就是Fac-Back-OPAC (faceted backup OPAC),一个分面OPAC,可作为图书馆集成系统OPAC的替代品。

    项目源于Casey Durfee在今年code4lib会议上提出的250行左右的“开源Endeca”代码,使用Solr(http://lucene.apache.org/solr)和Django(http://djangoproject.org/),可以实现类似于Endeca和AquaBrowser的分面功能。Casey在西雅图公共图书馆采用杜威分类法的Horizon系统上实现。
    Dan Scott下载Casey的代码后,用于Laurentian大学图书馆,该馆是采用国会分类法的Unicorn系统。据称只花了两个晚上就有不错的表现了。
    Mike Beccaria同样使用Casey的代码并加以强化,现在Paul Smith学院已经使用了Fac-Back-OPAC。
    Casey也加入该项目,并贡献出称为Helios的最新代码,具有标签云及其他功能。目前可以在西雅图公共图书馆目录中看到挺有意思的标签云显示选项。
    Mike Beccaria和Dan Scott在最新一期Computers in Libraries上发表文章 "Fac-Back-OPAC: An Open Source Interface to Your Library System" 介绍该项目。文章最后说,Fac-Back-OPAC尚在幼年期,还有很多成长的空间。Paul Smith学院打算在今秋监测用户行为,在基于用户需求与检索行为的前提下继续开发。打算强化的附加功能如用户书单、杜威法/LC主题浏览、全MARC显示,或者Web 2.0工具如标签、用户评论。作者们期望感兴趣者的加入。

    文章中有一节(Technology Building Blocks),介绍Fac-Back-OPAC的实现方法,称其成功大部分直接归功于那些开源组件:Solr, marc4j, Django。文后还有相关软件链接(More About the Software and Sites Mentioned in This Article)。
    从MARC记录经过处理成为一个可检索文件的生命周期如下,可供新型OPAC开发者参考:

第一步:从ILS到MARC
像北卡州及其他机构一样,在ILS之外建立目录,始于每晚导出所有MARC记录与馆藏记录。在首次导出后,可以只导出新的或有变化的记录,以更新Fac-Back-OPAC中的实例(instance,记录集?)。

第二步,从MARC到MARCXML:使用marc4j和Jython
由于MARC格式不适合传统搜索引擎标引,因之使用marc4j库将每条MARC记录转换成更易于处理的MARCXML格式。由于Solr只能理解UTF-8,还要将所有记录由MARC-8转换成UTF-8。此外,使用Jython编程语言(运行在Java虚拟机上的Python编译器)以控制marc4j,并用简单的Python句法以控制其余索引过程。

第三步,索引记录:使用Solr
Solr搜索解决方案建立在提供Web服务的企业级Lucene搜索引擎上,简化文件索引、增加附加功能如分面检索结果。每个Solr实例可配置一个Schema,描述文件的字段,以及这些字段的类型(如文本型、日期型或整数型)。Fac-Back-OPAC使用一个带书目Schema的Solr实例,运行于Jetty应用服务器。处理每个MARCXML记录,抽取感兴趣的字段用于分面与索引,生成一个XML文件,作为一个字串,发送到Solr实例,用于通过HTTP POST方式做索引。

第四步,检索界面:使用Django
Django是一个流行的Web应用框架,以Python写成,实现模型-视图-控制器(model-view-controller, MVC)模式,还能提供对一些特性的支持,如缓存搜索结果供展示、翻译成不同的语言、设定RSS种子。只需编辑HTML格式的模板,就可以定制Django的三个模板,即最初检索屏、检索结果页及详细显示页。

相关链接:
Google Code网站上的项目主页:
fac-back-opac: Faceted online public access catalogue; use as an alternate interface
论文:
Fac-Back-OPAC: An Open Source Interface to Your Library System / by Mike Beccaria and Dan Scott. Computers in Libraries, October 2007 (Vol. 27 No. 9)
实例:
西雅图公共图书馆目录(http://catalog.spl.org/catalog/)
Paul Smith学院目录(http://library.paulsmiths.edu/catalog/
[update 2007-10-8: 相关截图见Google Docs共享的演示文稿]

关于开源OPAC,参见:
开源OPAC发布:VuFind (2007-07-23)
二小时建立分面OPAC (2007-04-08)
AADL的新版OPAC (2007-01-22)
开源OPAC也精彩 (2007-01-14)
从获奖看国外流行的开源软件 (2006-12-07)