欢迎您来到 数字平台。 您尚未登录。[登录] [注册新用户]
当前位置: 论坛首页 / 栏目 产品与服务 / 文章 130

点击:207888[回复顶层] [树状] [详细]
[回复留言] [回复(需要先登录)] [引用(需要先登录)]精品第 1 楼
文章id: 130
dp2Catalog -- Z39.50和多种协议编目客户端软件 介绍

作者: xietao


 

最近我们开发出了一个多协议(包括Z39.50/DTLP等)编目 前端软件,名为dp2Catalog,现在已提供测试,在这里可以下载:

http://dp2003.com/dp2catalog/publish.htm

http://dp2003.com/dp2catalog/v2/publish.htm

目前已经具备了Z39.50检索和数据另存为ISO2709文件的基本功能,可以用来访问各种Z39.50服务器。

也已具备了DTLP协议能力,可以检索和修改dt1000/dt1500/dt2000的编目数据。(11.12新增)

稍后,我们将在这个软件中加入其他一些协议的编目功能。其中包括,针对dp2系统的rmsws内核的编目功能(这个功能侧重单纯的联合编目),和针对图书馆业务服务器dp2libraryws的编目功能(这个功能侧重图书馆本馆业务)。

总之,dp2Catalog这一名字的寓意就是,有关“目录”的各种功能,都要包含在内。

~~~

功能改进列表:

~

1.0.0.17版

新增了对国会图书馆MARC21中MARC-8编码方式的支持。

~

1.0.0.18版(2006/11/22)

1) MARC编辑窗可以任意设置字体了。

2) 原来的版本有一个故障,当在工具条上点“下一批”按钮并且正在获取记录的时候,再次点这个按钮,会报错。现在已改进,当正在执行获取记录的时候,相关的工具条按钮都被禁止了。

~

1.0.0.19版(2006/11/23)

1) 增加对XML格式数据的支持。在Z39.50服务器“属性”对话框中,(“检索/获取”页)增加了一个“缺省元素集名”的配置列表。为了显示、编辑XML数据记录,新增了一种“XML记录窗”。当检索到的记录格式为XML格式时,双击会自动打开XML记录窗而不是MARC记录窗。

以访问国会图书馆Z39.50服务器为例,目前dp2Catalog可以支持下列XML格式获取数据:

    "dc"  --  Dublin Core (XML records)
    "mods"  -- MODS (XML records)
    "marcxml" -- MARCXML (XML records), default schema for XML
    "opacxml" -- MARCXML with holdings attached

不过,MARCXML格式是一个“双重格式”,它既是XML格式,也是MARC格式。所以,当检索得到的是MARCXML数据时,在浏览框上用右鼠标键单击出现popup menu,使用上面的“装入XML记录窗”或“装入MARC记录窗”命令,可以决定到底装入那种记录窗。

~

1.0.0.20版(2006/11/24)

1) 在Z39.50服务器属性对话框中,在“检索/获取”页,增加了“数据格式和字符集编码方式绑定关系”设置事项。因为dp2Catalog增加了获取XML格式数据的能力后,一些服务器返回的MARC格式数据和XML格式数据是不同的编码方式,原来采用一个“缺省编码方式”来指定就捉襟见肘了。如果不增加这个新的绑定配置,用户在切换获取格式时,就只能不停地到Z39.50服务器属性对话框中来修改编码方式设定,操作起来非常麻烦,妨碍使用。而有了绑定关系定义后,可以预先定义好数据格式和编码方式的对应关系,获取的数据会自动以正确的编码方式显示。

2) 在检索窗内增加了“数据格式”和“元素集名”两个下拉列表。在前一版本通过Z39.50服务器属性对话框可指定获取MARC或XML格式数据后,在实践中,发现这一特性就需要频繁切换,所以就在检索窗增加了这两个事项,以方便检索时随意切换。

3) 增加了Z39.50检索窗持久保存窗口尺寸的能力。

1.0.0.21版(2006/12/2)

1) 原来版本中,在Z39.50检索窗目标树的空白处点右鼠标键,会出现错误。这个错误已经改正。菜单功能还有几项修正。

2) MARC记录窗增加了删除DTLP数据库记录的功能。



发表时间: 2006-11-10 16:37:28
最后修改时间: 2011-07-04 16:59:10



[回复留言] [回复(需要先登录)] [引用(需要先登录)]普通文章第 2 楼
文章id: 131
跨代理问题



用户环境是局域网,通过代理访问外网。使用DP2CATOLOG程序时不能访问外网服务器,抓屏图如下:

建议增加“采用浏览器网络连接选项”设置。



发表时间: 2006-11-11 11:56:07
最后修改时间: 2006-11-11 12:02:04
[回复留言] [回复(需要先登录)] [引用(需要先登录)]普通文章第 3 楼
文章id: 132
回复: 跨代理问题

作者: xietao


以下是引用 孤舟蓑笠翁 于 2006-11-11 11:56:07 发表的文字:

用户环境是局域网,通过代理访问外网。使用DP2CATOLOG程序时不能访问外网服务器,抓屏图如下:

建议增加“采用浏览器网络连接选项”设置。

我听懂你的问题了,用户是内外网络,而不是常见的路由器上Internet,也就是早几年常见的模式。这种模式下,单位有一台服务器有双网卡,一个网卡有合法的外部IP地址,可以和Internet连通,而单位内部的其他机器,和上述服务器的另一块网卡相连,构成一个内部局域网,如果没有代理,单位内部的这些机器都不能访问外部Internet。
 
但你所说的“采用浏览器网络连接选项”就让我匪夷所思了。
 
Z39.50协议,前端(和服务器)走的根本不是HTTP协议,所以和前端机器内的IE浏览器根本没有关系。IE浏览器有一个选项对话框,可以配置代理,那是“HTTP”协议的代理,而不是socket代理。
 
而socket代理,常见的有SOCKS 5协议代理,IE浏览器也支持,但是需要和上述HTTP协议代理区分开来,两者不是同一码事。
 
所谓HTTP代理,就是单位的对外服务器上,有一个HTTP Proxy在监听,它收到前端的HTTP协议,然后同样用HTTP协议转发给远方的真正目的服务器。如果你向它发送Z39.50的通讯包,它是不会接受的。从通讯包的形态看,HTTP协议是文本型的,和TELNET/FTP等的同属于一族,可以用telnet前端模拟和观看。但是Z39.50的协议包,完全是二进制的,如果不用专门的解析工具,完全是看不懂的。
 
所谓SOCKS代理,就是从TCP协议的层次,转发通讯包,不管它是文本的还是二进制的,没有特别的要求,原样转发。这样,SOCKS代理的适应性就要强得多,HTTP协议和Z39.50以及一切基于TCP的上层协议,都可以通过SOCKS出去到外网。
 
不过,SOCKS代理也有一些特点需要引起注意:SOCKS应用,简单分成两种模式:1)从前端机器底层接管socket通讯,前端软件没有感觉,自动透明地就可以访问外网了。这种方式,需要在前端安装SOCKS底层软件;2)前端应用程序裸露地直接支持SOCKS5,也就是说,前端应用软件必须开发针对SOCKS的接口,没有这个接口就不行。例如IE浏览器,QQ软件,原来的ZTRANS等,都开发有SOCKS接口。
 
不管哪种模式,当然对外的服务器上都要安装SOCKS服务器软件。这通常是一个小软件,因为它的功能很简单,就是转发通讯包而已。
 
目前dp2Catalog还没有来得及编写SOCKS5接口。如果必要,今后会加上。不过,现在听说对SOCKS5的需求,好像听到了古代的需求似的。因为现在路由太普及了,不能通过路由出去的局域网,太罕见了。
 
如果着急,可以用抓包器TcpMonitoer呀!
 
dp2Catalog配置实际的地址到单位的对外服务器,在对外服务器上装一个tcpmonitor,然后配置到真正的目标服务器。
 
可惜的是,tcpmonitor暂时没有多个端口一起监听,提供针对多个目标转发的功能,因此用户只能用来玩一下访问一个服务器。如果针对这个需求,把tcpmonitor改造成可以多个端口一起监听,似乎是有一些意义。在这种模式下,dp2Catalog看到的“端口”,成了最终目标服务器的暗示条件。如果要对外访问100个Z39.50服务器,tcpmonitor就得监听100个端口呢。这维护管理都是一个问题。
 
所以,真的动干戈起来,你就会发现,实际上SOCKS协议已经比较好解决了此类问题(只是前端需要增加接口)。因为SOCKS在启动通讯阶段,前端会给服务器发去最终目标服务器的地址和端口信息,它是专门为这个设计的。只要前端软件增加了SOCKS接口,就皆大欢喜了,成本也不高。而上述tcpmonitor增强方案,好处可能是前端软件并不需要增加接口,而只要操心端口含义就可以了。


发表时间: 2006-11-11 16:20:13



[回复留言] [回复(需要先登录)] [引用(需要先登录)]普通文章第 4 楼
文章id: 133
就是采用浏览器连接选项中的SOCKS代理设置





发表时间: 2006-11-12 09:08:05
[回复留言] [回复(需要先登录)] [引用(需要先登录)]普通文章第 5 楼
文章id: 134
回复: 就是采用浏览器连接选项中的SOCKS代理设置

作者: xietao


那也只能是让浏览器可以通过SOCKS出去,而不能让dp2catalog或者其他软件出去。



发表时间: 2006-11-12 11:14:53



[回复留言] [回复(需要先登录)] [引用(需要先登录)]普通文章第 6 楼
文章id: 135
明白了





发表时间: 2006-11-12 16:31:23
[回复留言] [回复(需要先登录)] [引用(需要先登录)]普通文章第 7 楼
文章id: 136
新增对DTLP协议的支持!

作者: xietao


今天是11月12号。短短两天时间,dp2Catalog就被加上了对DTLP协议的支持。

DTLP协议是丹诚dt1000/dt1500/dt2000的前后端之间的应用层通讯协议,自从1996年开发出来后,已经在几代产品中用了10年。这是一个很成熟的通讯协议。

dp2Catalog新增了一个“DTLP检索窗”,可以针对任何dt1000/dt1500/dt2000应用服务器进行检索操作,已有的MARC记录窗,也增加了MARC记录修改保存回服务器的的操作。

由于dp2Catalog也拥有“Z39.50检索窗”,所以完全可以将Z39.50服务器中的记录检索出来,装入MARC记录窗,然后转而保存到dt1000/dt1500/dt2000的数据库中,实现数据下载到本地编目系统的操作。(注:这个功能今天尚未实现,明天就做)这个功能甚至超出了dt1000/dt1500/dt2000系统的原有能力,因为在那里只能通过外挂ZTRANS下载数据后转入编目系统,而不能在同一个界面上无缝完成。

MARC记录窗在dp2Catalog中是协议无关的,也就是说只有一种MARC记录窗,而没有所谓Z39.50或DTLP协议专用的MARC记录窗。之所以这样设计,就是为了一个主要目标:Z39.50协议获取的MARC记录,可以无缝另存到DTLP(或者其他协议)的数据库。

~~~

接下来,dp2Catalog将逐步加入dp2系统自家的两个编目协议能力。一个是针对rmsws的,一个是针对dp2libraryws的。

看来,如果这样弄下去,dp2Catalog完全有潜力成为当代功能最牛的编目系统(支持4种协议,而且是互串)。



发表时间: 2006-11-12 18:13:21



[回复留言] [回复(需要先登录)] [引用(需要先登录)]普通文章第 8 楼
文章id: 137
刚试试用过,这种模式确实不错,期待!

作者: wuhao


刚试试用过,这种模式确实不错,期待!何时有Z39.50的服务端。



发表时间: 2006-11-14 15:42:38
[回复留言] [回复(需要先登录)] [引用(需要先登录)]普通文章第 9 楼
文章id: 138
回复: 刚试试用过,这种模式确实不错,期待!



DP1系统已有一个Z39.50服务器(中山馆联合编目中心不是在用它吗?),只不过,它不支持UNICODE。

Z39.50毕竟是一个古老的协议,既复杂,应用面也窄小,主要应用于图书馆行业。嚷嚷了这么多年,事实上,真为Z39.50协议买单的用户还是很少——除了有实力的数据提供商或大图书馆外,多数用户仅需要利用前端软件套录数据服务商或大馆的数据。何况,不同的Z39.50开发商,采用的上载协议或多或少有些差异,导致真正的异构系统间的数据上载兼容性较差,所谓的异构系统间的联合编目常不得不采用某种指定的上载模块——这跟同构系统联合编目又有什么本质的区别呢?

所以,在更新的、更标准、支持面更广、认可度更高的Web Service这种异构系统数据交换接口标准出现的今天,个人认为,Z39.50早晚会被Web Service替代。因而,虽然有现成的技术,但没有用户推动(订单推动)的情况下,可能不会再重新开发或完善我们已有的Z39.50服务器——商业成本的压力与技术炫耀的自豪,哪一个重要?

==========

以下是引用 wuhao 于 2006-11-14 15:42:38 发表的文字:

刚试试用过,这种模式确实不错,期待!何时有Z39.50的服务端。

==========



发表时间: 2006-11-14 21:22:32
最后修改时间: 2006-11-14 21:23:49
[回复留言] [回复(需要先登录)] [引用(需要先登录)]普通文章第 10 楼
文章id: 139
这么牛喳喳的东西 马上下载用用

作者: wetmao

关键词: catelogue z39.50


几天不见就有好东西啊

 不过得以前用过丹诚才可能对您的这个支持什么dhlp(dtlp更正 呵呵)协议东西有兴趣。



发表时间: 2006-11-16 09:22:58
页 1 / 3 |< 1 2 3 > >|
 

在线用户
(无) 
当前栏目在线用户数 0, 总在线用户数 0