[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Koha-zebra] [Fwd from koha-devel]: Worries about zebra
From: |
Sebastian Hammer |
Subject: |
Re: [Koha-zebra] [Fwd from koha-devel]: Worries about zebra |
Date: |
Mon, 11 Jul 2005 17:14:26 -0400 |
Hi All,
I work at Index Data, and I know something about what Zebra can and can't
do.. and perhaps of the pros and cons of different ways of approaching the
task of integrating it into an application. I hope it's OK if I take the
liberty of butting my head into the conversation.
At 06:09 PM 7/7/2005 +0200, Thomas D wrote:
I hope Windows users would not be lost by the change to Zebra.
They shouldn't be.. Zebra runs fine under Windows, and is use by one or two
Win-based (closed-source) ILS vendors today. We'd want to make sure that
the installation process is smooth and well-integrated with the install
process for the rest of Koha, that's all.
A Unix system might be installed at their site for actually running Koha.
It could be administered remotely if on site experience was lacking.
Yes indeed. For remote support, I personally have a great preference for
Unix, although I guess if you know what you're doing, it is possible to do
some remote support of a Win-box, too.
It would, however, be nice if the Event module and other software could be
installed on a wider range of systems. Apparently OSX is also problematic
for the event module.
I am guessing that this comment might address the Net::Z3950 module. For
various reasons, I would really like to see Koha use instead a newer Z39.50
client API, preferably one based directly on the YAZ/ZOOM high-level client
API in C. The YAZ/ZOOM API was developed after Net::Z3950, and it really
represents a generational leap... here are some of the benefits:
o YAZ/ZOOM can normalize MARC records into UTF-8 and XML, which potentially
simplifies a lot of things on the client side.
o Unlike the Event module in Net::Z3950, which has caused some problems
over the years, the multiplexing code in YAZ/ZOOM is very robust, and very
efficient.
o YAZ/ZOOM supports certain extensions to Z39.50 which allows a Perl
application to directly manage databases in a Zebra installation, update
records, etc. I believe that this may be the neatest and most efficient way
to integrate an application like Koha with Zebra.. superior to system()
calling the Zebra command-line interface, and more robust than the native
Zebra Perl API, which was developed by a third party and which may not be
entirely reliable.
o It includes support for the Z39.50 next-generation protocols SRW and SRU,
for whenever that becomes relevant.
o It integrates closely with Index Data's YAZ Proxy which provides caching
and session-management functionality which can hugely boost performance
when YAZ/ZOOM is used to access slower, remote targets (i.e. not Zebra).
This is valuable if you'll look at extdending Koha's remote-searching
capabilities in the future.
You'll see some discussion about YAZ/ZOOM at
http://www.indexdata.dk/yaz/doc/zoom.tkl, and about ZOOM in general at
http://zoom.z3950.org/. I can't promise that the Zebra-specific,
database-management options are documented here, though.
The big catch is that there is not presently a Perl-wrapper directly over
the YAZ/ZOOM "C" language API.. I ran into a fellow at ALA who used it
indirectly, by accessing the Visual Basic implementation directly through
Perl, under Windows, but of course that would leave our Unix customers
stranded. :-) At Index Data, we've developed most of our web-based
applications in PHP so we haven't been strongly motivated to work on this
yet... However, we do have a functional implementation of a Perl API over
YAZ/ZOOM floating around the office which might be a good starting point.
Finally, I'll note that the ZOOM API is, by design, very, very simple, and
friendly to the idioms of most programming languages.. it should not be a
very demanding job either for us at Index Data or or for someone else, to
roll out a neatly packaged implementation of ZOOM under Perl based on the
YAZ/ZOOM implementation of Z39.50.
I hope this helps clear up some issues, and maybe spark some discussion
about the integration issues.
--Sebastian
--
Sebastian Hammer, Index Data, www.indexdata.com
Direct phone: (603) 209-6853 Fax: (603) 357-1813