koha-zebra
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Koha-zebra] Koha & zebra (continuing to try to understand...)


From: Mike Taylor
Subject: Re: [Koha-zebra] Koha & zebra (continuing to try to understand...)
Date: Tue, 9 Aug 2005 13:24:39 +0100

> Date: Tue, 9 Aug 2005 08:13:34 -0400 (EDT)
> From: "Stephen Hedges" <address@hidden>
> 
> I keep seeing references in this discussion to Net::Z3950 that could
> be taken to mean we're still going to be using that technology in
> Koha 3.0.
> [...]
> Since Net::Z3950 has been one of the biggest stumbling blocks to
> installing Koha on Mac OS X, I hope someone can assure me that we're
> not going to perpetuate that problem!

I've explained this situation several times to different individuals
in off-list messages -- clearly I should have sent it to the list in
the first place!  :-)

The current implementation of the Net::Z3950 Perl module is deficient
in several  respects, all of them due to its having been created
before ZOOM-C, and therefore depending on both a lower-level API
(which provides fewer services) and on the Event Perl module (which
does not port to Windows -- nor, it now transpires -- to OSX).

We will shortly begin work on a project, funded by Koha sponsors, to
create a Perl interface to the ZOOM-C code.  This not-yet-existent
code base is called ZOOM-Perl, and will supersede the current
Net::Z3950 module, providing both additional functionality
(e.g. Z39.50's "Updated" Extended Service, character-set
normalisation) and better portability.  That code will be callable
through a interface in the ZOOM namespace, e.g.

        use ZOOM;
        $conn = new ZOOM::Connection("z3950.loc.gov:7090/voyager");

and will also be supplied with a compatibility layer in the Net::Z3950
namespace, so that old code client will continue to work with the new
implementation:

        use Net::Z3950;
        $conn = new Net::Z3950::Connection("z3950.loc.gov", 7090,
                                           databaseName => "voyager");

So you can write Net::Z3950 code _now_, that runs under Unix and its
variants, and which searches the new Zebra-based bibliographic
database.  That client code will continue to work when we release
Perl-ZOOM (as Net::Z3950 v1.0, for CPAN-facism reasons), but will
quietly become more robust, portable and functional.  You may then, at
your discretion, change your calling code to use the the Perl-ZOOM
API in place of the old Net::Z3950 one, but it will not be necessary
to do so.

Hope that's clear.  Shout if you have any more questions.

 _/|_    ___________________________________________________________________
/o ) \/  Mike Taylor  <address@hidden>  http://www.miketaylor.org.uk
)_v__/\  "More means worse" -- Kingsley Amis.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]