论文部分内容阅读
摘要:首先分析了现有的图书联机编目系统的局限性,进而根据现有的网络技术,提出一种基于 Web Service 的图书联机编目改进方案,并给出了具体的功能模块。
关键词:联机编目;Web Service;Z39.50
中图分类号:TP393文献标识码:A文章编号:1009-3044(2007)15-30674-02
A Study on Union Catalogue Based on Web Service
GUAN Yong-hong1, JIAO Li-ming2
(1.Computer Science & Technology, Sichuan University of Science & Engineering, Zigong 643000, China;2.Library, Sichuan Neijiang Teacher College, Neijiang 641000, China)
Abstract:The paper firstly analyzes the limitation of existing system of Union Catalogue. It puts forward the improvement programme of Union Catalogue on the basis of existing web technology and Web Service. In addition, the concrete function module is given.
Key words:Union Catalogue; Web Service; Z39.50
1 引言
联机编目是指以一个图书情报权威机构作为编目中心,编目中心拥有大量的书目数据,其他参加联合编目的各成员馆可以通过网络向联合编目中心上送书目数据和下载书目数据。成员馆上送的数据,经过编目中心的校对存入书目数据库,供成员馆共享[1]。联机编目可以而大大减少重复编目工作、节省编目成本、能提高编目效率和编目质量,能真正的达到书目数据共享等优点,得到了广泛的研究。
2 当前图书联合编目现状
当前联机编目一般采用客户/服务器模式,由编目客户端(源端)和中心书目服务器端(目的端)组成,实现协议使用Z39.50协议[2],其实现过程为源端发起与目的端建立连接, 并将用户的查询请求转换成协议识别的格式发送到目的端,目的端处理收到的请求,查询相应的数据库, 并将结果格式化为用户熟悉和期望的格式后返回给源端[3]。
随着浏览器/服务器的架构迅速的普及,客户机/服务器结构已经不能满足最终用户的需要,于是许多Z39.50的应用都建立了浏览器/WEB服务器/应用服务器三层结构,Web服务器通过CGI与Z39.50的客户端进行通信,再通过Z39.50服务器实现互操作。
在上述实现方式下, 数据中心的软、硬件要求较高,结构复杂、并且需要组织专门的专业人员负责中心数据库的建设和维护,人工成本高;数据量有限,因为对于全国而言,需求数据量是海量的,对于不同用户千差万别的数据需求,一个中心显然难以满足;数据中心数据流量大、业务处理繁忙,各终端用户对数据中心的依赖程度较大,一旦中心出现故障停止服务,所有终端将无法得到所需数据。数据接口方式不够灵活,当数据服务中心数据格式或结构发生改变的时候,终端就要针对中心的改变做相应改变。书目数据的CNMARC格式数据传输完全依赖Z39.50的网络应用协议,使得数据从服务端到客户端必须依靠拥有Z39.50接口的数据服务端和客户端应用程序,并且Z39.50所应用的数据端口210在防火墙限制情况下,将不能数据通信。
为了克服以上的缺点,并结合现有的网络解决方案,达到对图书编目的分布式实现,本文研究使用Web Service 技术来改造现有书目编目系统。
3 Web Service 技术原理
Web Service[4]是实施企业计算的一种新的应用模型,它通过一组部署在Web上的分布式组件,执行企业的商务逻辑,提供在线应用服务。这些服务组件遵循具体的开放技术规范,从而使得Web服务系统能够与其他兼容的组件之间进行互操作。Web Service隐藏了服务的实现细节,使得它具有硬件、软件平台和编程语言的无关性。这也使得基于Web Service的应用天生具有松散耦合、基于组件和跨平台实现的特性。Web Service技术包含一系列用于生成、描述、发现、定位、调用的技术:(1)简单对象访问协议(SOAP)[5]定义了Web服务参与者之间标准的交互协议,为各类XML消息提供了一个简单且轻量级的传输机制,但SOAP不对应任何对象模型,可以被任何语言使用和实现;(2)Web服务描述语言(WSDL)[6]提供了一种基于XML的描述服务接口的标准方法。它定义了一种描述接口的抽象语言,使服务的接口定义独立于底层协议和编码方式;(3)统一描述、发现和集成(UDDI)[7],UDDI是分布式Web服务的信息注册规范,用来对Web服务提供动态注册功能。在Web服务体系框架中有3 个基本角色,服务提供者、服务请求者、代理。其中服务提供者实现软件服务,为实现特定任务的软件提供Web服务接口。服务请求者发现和调用软件服务,把参数发送给服务提供者并接收响应结果。代理用来管理和发布服务,代理发布服务提供者提供的服务;帮助服务请求者查找其所需的服务,再通过创建到服务提供者的绑定来调用由服务提供者提供的服务。
4 网络体系结构设计
在各图书馆的管理系统中,都有自己的管理服务和数据库服务,对于数据标准的国家行业规定,又都是一致的,一般采用的是CNMARC,而各馆因为自身特色或规模的不同,数据也因此各异,所以,各馆之间即可直接通过互联网实现联机数据服务。为了能够找到需要连接的其它图书馆数据,通过Web Service系统改造,在原来的数据中心设置UDDI信息中心,为连接提供查询中介,各成员馆首先查询UDDI,找到需要的服务,然后再从具体提供服务的图书馆获取编目数据。网络结构图示如图1所示。其中,UDDI信息中心A存储和管理MARC网络服务端B的信息,接受B的注册和信息发布,同时面向编目客户端C的连接和查询请求,返回B的信息,让C直接与B产生网络连接。B作为本馆业务管理的同时,更通过将B端的数据以Web服务的方式向所有C(包括异馆之间)提供数据服务,B端向A端随时更新自己的信息。编目客户端C通过A查询B,再与B实现连接,查找下载具体书目数据,添加本馆信息后存储在B的系统平台上的数据库中。
具体的改进分为三个部分:(1)在原来数据中心的服务机构,新建立UDDI信息中心服务,目的是提供远程数据源的查询信息,同时也为各图书馆提供自己的信息登记和发布;(2)对原来各图书馆管理系统的服务进行改造,原来是主要以内部客户端为服务对象改为面向互联网络中所有图书馆编目客户端的WEB服务;(3)对于原来的编目终端,其实现功能不变,但要针对新的数据接口设计,通过系统改进,编目终端将会获得更多的数据源选择和连接服务,同时,网络上的所有图书馆,通过UDDI中心的信息关联,可以互通有无,彼此互联,籍由此实现由集中式向分布式服务的转变。
图1 基于Web Service图书编目网络结构图
5 模块功能设计
在基于Web Service的联机编目系统中,系统由三个部分组成,即:UDDI中心、数据请求者、数据发布者,如图2所示。
图2 系统组成结构图
UDDI服务中心负责存储和管理图书馆书目数据服务的注册信息,接受服务端的注册和信息发布,同时面向客户端的连接和查找请求,返回服务端的信息,让客户端直接与服务端绑定网络连接。所以一个主要的功能是注册管理:通过Web页面接受用户注册申请,规定“UDDI中心”和“数据提供者”之间的服务协议,在“数据提供者”接受协议的条件下填写申请注册表单,经系统管理员审核后,成为“UDDI中心”注册会员,随时添加和更新“数据提供者”数据服务信息。还有信息发布:通过Web服务,将“数据提供者”信息以Web页面或WIN API方式面向“数据使用者”,接受“数据使用者”对“数据提供者”的信息查询,并返回“数据提供者”URL及相关信息。还包括系统管理、用户管理等功能。
服务提供端作为本馆业务管理的同时,更通过将服务端的数据以Web服务方式向所有客户端(包括不同馆之间)提供数据服务,接受远程用户查询、下载,返回结果数据,在针对客户端数据请求到返回数据的操作,并向UDDI随时更新自身信息。具体实现功能包括登录认证、接受业务请求、查询代理、连接代理、返回数据等功能。
编目客户端,首先通过在UDDI中心查找到书目数据服务端,再与服务端进行连接后,查找和下载具体书目数据,添加本馆信息后存储在本系统平台上的数据库。具体实现功能包括与UDDI Web站点连接、查询数据、接收返回数据、数据连接代理。
作为联机编目系统,三个部分相互联系和作用。服务端和客户端往往同时存在于一个图书馆中,只是UDDI为Web服务中介,其位置相对独立,相对复杂的是服务端,在整个网络系统中,其实体可以是图书馆、出版社、书目数据服务商等,编目客户端只是在传统的编目端增加查询UDDI中心,并连接服务端,其余部分与传统的客户端类似。
6 结束语
通过对现有图书编目系统的改造,使得原来存储书目中心只存储数目服务端B的信息,减轻了数据中心的负担,并且数据的传输上,应用SOAP协议,能有效的穿越防火墙,从而克服了原有系统的一些缺点。实际上,对于图书馆书目数据的各种应用,如果在UDDI注册中心做详细的分类和参数设定,图书馆的其它业务,包括联机公共目录查询服务、远程数据查重、书刊采购、联合采购、馆际互借等都可以通过Web服务得以实现。
但系统在客户端查询UDDI中心时,有可能被查到的服务提供端失效或者停止服务,所以下一步的研究方向需要使Web Service调用更可靠和更透明,增强调用的动态性。
参考文献:
[1] 张桂华. 网络环境下计算机编目的发展趋势——联机联合编目[J]. 农业图书情报学刊,2006,(7):159-161.
[2] CALIS管理中心. 我国数字图书馆标准与建设规范:Z39.50协议应用指南. 2004,(4). http://cdls.nstl.gov.cn/cdls2/w3c/.
[3] 胡开胜, 莫伟鸣. Z39.50协议及其在联合编目中的应用[J]. 高校图书馆工作,2005,(1):36-38.
[4] 柴晓路. Web服务架构与开放互操作技术[M]. 北京:清华大学出版社,2002.
[5] Simple object access protocol(SOAP) l.2, http://www.w3.org/TR/SOAP.
[6] Web services description language(WSDL)1.1 http://www.w3.org/TR/wsdl.html.
[7] UDDI Technical white Paper[EB/OL]. http://www.oasis-open.org/news/oasis_news_02_03_05.pdf.
注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
关键词:联机编目;Web Service;Z39.50
中图分类号:TP393文献标识码:A文章编号:1009-3044(2007)15-30674-02
A Study on Union Catalogue Based on Web Service
GUAN Yong-hong1, JIAO Li-ming2
(1.Computer Science & Technology, Sichuan University of Science & Engineering, Zigong 643000, China;2.Library, Sichuan Neijiang Teacher College, Neijiang 641000, China)
Abstract:The paper firstly analyzes the limitation of existing system of Union Catalogue. It puts forward the improvement programme of Union Catalogue on the basis of existing web technology and Web Service. In addition, the concrete function module is given.
Key words:Union Catalogue; Web Service; Z39.50
1 引言
联机编目是指以一个图书情报权威机构作为编目中心,编目中心拥有大量的书目数据,其他参加联合编目的各成员馆可以通过网络向联合编目中心上送书目数据和下载书目数据。成员馆上送的数据,经过编目中心的校对存入书目数据库,供成员馆共享[1]。联机编目可以而大大减少重复编目工作、节省编目成本、能提高编目效率和编目质量,能真正的达到书目数据共享等优点,得到了广泛的研究。
2 当前图书联合编目现状
当前联机编目一般采用客户/服务器模式,由编目客户端(源端)和中心书目服务器端(目的端)组成,实现协议使用Z39.50协议[2],其实现过程为源端发起与目的端建立连接, 并将用户的查询请求转换成协议识别的格式发送到目的端,目的端处理收到的请求,查询相应的数据库, 并将结果格式化为用户熟悉和期望的格式后返回给源端[3]。
随着浏览器/服务器的架构迅速的普及,客户机/服务器结构已经不能满足最终用户的需要,于是许多Z39.50的应用都建立了浏览器/WEB服务器/应用服务器三层结构,Web服务器通过CGI与Z39.50的客户端进行通信,再通过Z39.50服务器实现互操作。
在上述实现方式下, 数据中心的软、硬件要求较高,结构复杂、并且需要组织专门的专业人员负责中心数据库的建设和维护,人工成本高;数据量有限,因为对于全国而言,需求数据量是海量的,对于不同用户千差万别的数据需求,一个中心显然难以满足;数据中心数据流量大、业务处理繁忙,各终端用户对数据中心的依赖程度较大,一旦中心出现故障停止服务,所有终端将无法得到所需数据。数据接口方式不够灵活,当数据服务中心数据格式或结构发生改变的时候,终端就要针对中心的改变做相应改变。书目数据的CNMARC格式数据传输完全依赖Z39.50的网络应用协议,使得数据从服务端到客户端必须依靠拥有Z39.50接口的数据服务端和客户端应用程序,并且Z39.50所应用的数据端口210在防火墙限制情况下,将不能数据通信。
为了克服以上的缺点,并结合现有的网络解决方案,达到对图书编目的分布式实现,本文研究使用Web Service 技术来改造现有书目编目系统。
3 Web Service 技术原理
Web Service[4]是实施企业计算的一种新的应用模型,它通过一组部署在Web上的分布式组件,执行企业的商务逻辑,提供在线应用服务。这些服务组件遵循具体的开放技术规范,从而使得Web服务系统能够与其他兼容的组件之间进行互操作。Web Service隐藏了服务的实现细节,使得它具有硬件、软件平台和编程语言的无关性。这也使得基于Web Service的应用天生具有松散耦合、基于组件和跨平台实现的特性。Web Service技术包含一系列用于生成、描述、发现、定位、调用的技术:(1)简单对象访问协议(SOAP)[5]定义了Web服务参与者之间标准的交互协议,为各类XML消息提供了一个简单且轻量级的传输机制,但SOAP不对应任何对象模型,可以被任何语言使用和实现;(2)Web服务描述语言(WSDL)[6]提供了一种基于XML的描述服务接口的标准方法。它定义了一种描述接口的抽象语言,使服务的接口定义独立于底层协议和编码方式;(3)统一描述、发现和集成(UDDI)[7],UDDI是分布式Web服务的信息注册规范,用来对Web服务提供动态注册功能。在Web服务体系框架中有3 个基本角色,服务提供者、服务请求者、代理。其中服务提供者实现软件服务,为实现特定任务的软件提供Web服务接口。服务请求者发现和调用软件服务,把参数发送给服务提供者并接收响应结果。代理用来管理和发布服务,代理发布服务提供者提供的服务;帮助服务请求者查找其所需的服务,再通过创建到服务提供者的绑定来调用由服务提供者提供的服务。
4 网络体系结构设计
在各图书馆的管理系统中,都有自己的管理服务和数据库服务,对于数据标准的国家行业规定,又都是一致的,一般采用的是CNMARC,而各馆因为自身特色或规模的不同,数据也因此各异,所以,各馆之间即可直接通过互联网实现联机数据服务。为了能够找到需要连接的其它图书馆数据,通过Web Service系统改造,在原来的数据中心设置UDDI信息中心,为连接提供查询中介,各成员馆首先查询UDDI,找到需要的服务,然后再从具体提供服务的图书馆获取编目数据。网络结构图示如图1所示。其中,UDDI信息中心A存储和管理MARC网络服务端B的信息,接受B的注册和信息发布,同时面向编目客户端C的连接和查询请求,返回B的信息,让C直接与B产生网络连接。B作为本馆业务管理的同时,更通过将B端的数据以Web服务的方式向所有C(包括异馆之间)提供数据服务,B端向A端随时更新自己的信息。编目客户端C通过A查询B,再与B实现连接,查找下载具体书目数据,添加本馆信息后存储在B的系统平台上的数据库中。
具体的改进分为三个部分:(1)在原来数据中心的服务机构,新建立UDDI信息中心服务,目的是提供远程数据源的查询信息,同时也为各图书馆提供自己的信息登记和发布;(2)对原来各图书馆管理系统的服务进行改造,原来是主要以内部客户端为服务对象改为面向互联网络中所有图书馆编目客户端的WEB服务;(3)对于原来的编目终端,其实现功能不变,但要针对新的数据接口设计,通过系统改进,编目终端将会获得更多的数据源选择和连接服务,同时,网络上的所有图书馆,通过UDDI中心的信息关联,可以互通有无,彼此互联,籍由此实现由集中式向分布式服务的转变。
图1 基于Web Service图书编目网络结构图
5 模块功能设计
在基于Web Service的联机编目系统中,系统由三个部分组成,即:UDDI中心、数据请求者、数据发布者,如图2所示。
图2 系统组成结构图
UDDI服务中心负责存储和管理图书馆书目数据服务的注册信息,接受服务端的注册和信息发布,同时面向客户端的连接和查找请求,返回服务端的信息,让客户端直接与服务端绑定网络连接。所以一个主要的功能是注册管理:通过Web页面接受用户注册申请,规定“UDDI中心”和“数据提供者”之间的服务协议,在“数据提供者”接受协议的条件下填写申请注册表单,经系统管理员审核后,成为“UDDI中心”注册会员,随时添加和更新“数据提供者”数据服务信息。还有信息发布:通过Web服务,将“数据提供者”信息以Web页面或WIN API方式面向“数据使用者”,接受“数据使用者”对“数据提供者”的信息查询,并返回“数据提供者”URL及相关信息。还包括系统管理、用户管理等功能。
服务提供端作为本馆业务管理的同时,更通过将服务端的数据以Web服务方式向所有客户端(包括不同馆之间)提供数据服务,接受远程用户查询、下载,返回结果数据,在针对客户端数据请求到返回数据的操作,并向UDDI随时更新自身信息。具体实现功能包括登录认证、接受业务请求、查询代理、连接代理、返回数据等功能。
编目客户端,首先通过在UDDI中心查找到书目数据服务端,再与服务端进行连接后,查找和下载具体书目数据,添加本馆信息后存储在本系统平台上的数据库。具体实现功能包括与UDDI Web站点连接、查询数据、接收返回数据、数据连接代理。
作为联机编目系统,三个部分相互联系和作用。服务端和客户端往往同时存在于一个图书馆中,只是UDDI为Web服务中介,其位置相对独立,相对复杂的是服务端,在整个网络系统中,其实体可以是图书馆、出版社、书目数据服务商等,编目客户端只是在传统的编目端增加查询UDDI中心,并连接服务端,其余部分与传统的客户端类似。
6 结束语
通过对现有图书编目系统的改造,使得原来存储书目中心只存储数目服务端B的信息,减轻了数据中心的负担,并且数据的传输上,应用SOAP协议,能有效的穿越防火墙,从而克服了原有系统的一些缺点。实际上,对于图书馆书目数据的各种应用,如果在UDDI注册中心做详细的分类和参数设定,图书馆的其它业务,包括联机公共目录查询服务、远程数据查重、书刊采购、联合采购、馆际互借等都可以通过Web服务得以实现。
但系统在客户端查询UDDI中心时,有可能被查到的服务提供端失效或者停止服务,所以下一步的研究方向需要使Web Service调用更可靠和更透明,增强调用的动态性。
参考文献:
[1] 张桂华. 网络环境下计算机编目的发展趋势——联机联合编目[J]. 农业图书情报学刊,2006,(7):159-161.
[2] CALIS管理中心. 我国数字图书馆标准与建设规范:Z39.50协议应用指南. 2004,(4). http://cdls.nstl.gov.cn/cdls2/w3c/.
[3] 胡开胜, 莫伟鸣. Z39.50协议及其在联合编目中的应用[J]. 高校图书馆工作,2005,(1):36-38.
[4] 柴晓路. Web服务架构与开放互操作技术[M]. 北京:清华大学出版社,2002.
[5] Simple object access protocol(SOAP) l.2, http://www.w3.org/TR/SOAP.
[6] Web services description language(WSDL)1.1 http://www.w3.org/TR/wsdl.html.
[7] UDDI Technical white Paper[EB/OL]. http://www.oasis-open.org/news/oasis_news_02_03_05.pdf.
注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。