Koha/C4
David Cook 1e0b890b0c Bug 10096 - Add a Z39.50 interface for authority searching
This patch introduces a new Z39.50 interface for searching Z39.50
compliant databases for MARC authority records.

These databases aren't as common as their bibliographic equivalents,
but they're out there and very useful. I have included info at the
bottom of this messsage for sample authority databases you can try.

To test this patch:

1) Set up Z39.50 client targets for authority databases. (I've included
information at the bottom of this message for LibrariesAustralia's
test server for authorities as well as instructions on how to use
your Koha's z39.50 authority server as well. The Library of Congress
also has authority databases available (unsure if these are test or
prod), and you might have access to others through OCLC or RLIN. OCLC
provides login credentials for their test databases.

2) Go to the Authorities module

3) Click on the new "Z39.50 search button"

4) Select your authority search targets from the list.

5) Do a search for an authority you would like using either the "Raw"
input box or the more specific input boxes for names, subjects, subject
sub divisions, or titles. (I like searching Name (personal): Eric on
the LibrariesAustralia test DB.)

6) You should see a table listing the server, heading, authority type,
and two other columns (MARC and a nameless column). "Authority type"
is the type of authority it will become when imported in to Koha. In
the Eric example, "PERSO_NAME".

7) Click on "MARC" next to the results of interest to review the MARC
authority record.

8) When you're satisfied with a record, click on "Import".

9) The pop-up window will close and your original Koha window will
change to the "Adding authority Personal Name" screen (in the Eric
example).

10) All the relevant fields should be filled out for the record. Review
them and make any changes as necessary. (N.B. The 001 will be cleared
when saved, so if you have a use for the imported control number, move
it to the 010, 016, or 035 as appropriate. If you have a default value
for the 003, this will also likely be overwritten. Move it if necessary.
The 005 will also be updated when saved, so do not worry about that.)

11) When you're satisfied, click save.

12) Presto! You've imported your first authority record via Z39.50!

--

Here is the info for the LibrariesAustralia test Z39.50 authority
database:

Z39.50 server: LibrariesAustralia Authorities
Hostname: z3950-test.librariesaustralia.nla.gov.au
Port: 210
Database: AuthTraining
Userid: ANLEZ
Password: z39.50
Syntax: MARC21/USMARC
Encoding: utf8

-

The U.S.A. Library of Congress also provides Z39.50 access to its Name
and Subject Authorities (http://www.loc.gov/z3950/lcserver.html).

Name Authority:
Z39.50 server: Library of Congress Name Authority File
Hostname: lx2.loc.gov
Port: 210
Database: NAF
Syntax: MARC21/USMARC
Encoding: utf8

Subject Authority:
Z39.50 server: Library of Congress Subject Authority File
Hostname: lx2.loc.gov
Port: 210
Database: SAF
Syntax: MARC21/USMARC
Encoding: utf8

(N.B. Both of these databases also include title authorities.)

-

For testing purposes, you can also set up a Z39.50 client target,
which points at your own Koha instance's Z39.50 authority server.

To find the hostname, go to /etc/koha-conf.xml and find the value for
the <listen id="authorityserver"> element. Depending on your
configuration, this could be something like the following:

unix:/zebra/koha/var/run/zebradb/authoritysocket

(N.B. You might be using a different scheme than unix sockets...)

To find the database, scroll down to the bottom of koha-conf.xml until
you reach the <config> element. Within this, look for the value of the
element <authorityserver>. It should probably be "authorities".

To set up this Z39.50 client target in Koha...

Z39.50 server: my koha authorities
Hostname: unix:/zebra/koha/var/run/zebradb/authoritysocket
Port:
Database: authorities
Userid:
Password:
Syntax: MARC21/USMARC (or whichever flavour you need)
Encoding: utf8

Signed-off-by: Mason James <mtj@kohaaloha.com>

Bug 10096 [FOLLOW-UP] - Add a z39.50 interface for authority searching

This patch adds the "recordtype" column to the "z3950servers" table.

The value in this column (biblio or authority) then controls whether
the z3950 server shows up in a bibliographic search (through the
Acq and Cataloguing modules) or in an authority search (through
the Authorities module).

I also edited the z3950 management console to show this value
and allow users to edit it. The default value is "biblio", since
the vast majority of z3950 targets will be bibliographic. However,
there is an option to add/edit a z3950 target as a source of
authority records.

Test Plan:

1) Apply both patches
2) Run updatedatabase.pl (after setting your KOHA_CONF and PERL5
environmental variables)
3) Use the test plan from the 1st patch

N.B. Make sure that your Z39.50 client target has a Record Type
of Authority, otherwise it won't display when you're doing a
Z3950 search for authorities.

Signed-off-by: Mason James <mtj@kohaaloha.com>

Bug 10096 [FOLLOW-UP] - fix tabs/whitespace errors to pass QA

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-10-04 14:26:29 +00:00
..
AuthoritiesMarc Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
Barcodes Bug 6679 - [SIGNED-OFF] fix 6 perlcritic violations in C4/Barcodes/hbyymmincr.pm 2012-09-20 12:01:36 +02:00
ClassSortRoutine Bug 9770: fix sorting of Dewey call numbers that contain prefixes 2013-07-15 16:12:47 +00:00
Creators Bug 10763 - [SIGNED-OFF] Update POD of C4::Creators::Lib::html_table() to use TT syntax 2013-08-20 14:31:34 +00:00
External Bug 10320: (follow-up) correct license statement 2013-09-08 07:04:45 +00:00
Form Talking Tech Support - Phase I - Followup - Fix Messaging Preferences 2012-06-10 17:46:58 +02:00
Heading Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
ILSDI Bug 10667: Allow authentication with cardnumber for ILS-DI 2013-09-16 19:14:10 +00:00
Installer Bug 9611: add Crypt::Eksblowfish::Bcrypt to list of Perl dependencies 2013-10-03 22:22:32 +00:00
Labels bug 9370: improve splitting of LC call numbers for labels 2013-06-12 07:44:10 -07:00
Linker Bug 8447: Make sure we have enough subfields for broader_headings 2012-09-14 14:56:48 +02:00
Members Bug 7919: Fix unit test (Members_AttributeTypes.t) 2012-12-07 18:26:37 -05:00
OAI Bug 6440: Implement OAI-PMH Sets 2012-03-20 11:38:26 +01:00
Output Fix FSF address in directory C4/ 2010-03-16 20:17:56 -04:00
Patroncards Bug 8315 - remove use C4::* version 2012-07-13 14:17:20 +02:00
Reports Bug 10761: (follow-up) use explicit return in C4::Reports::Guided::delete_report() 2013-08-21 14:45:41 +00:00
Search Bug 5385: POD Cleanups (part 1) 2010-11-12 10:06:55 +13:00
SIP bug 9611: use checkpw_hash() instead of md5 hash for SIP2 logins 2013-10-03 23:01:46 +00:00
Utils Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
VirtualShelves Bug 9757: Make staff client list contents view more like search results 2013-06-26 09:04:04 -07:00
Accounts.pm Bug 6413 - QA Followup - Add notes for 'Pay selected' 2013-05-21 16:32:12 -07:00
Acquisition.pm Bug 5349: Create a table for order line transfers 2013-09-08 22:38:28 +00:00
Auth.pm Bug 9735 - Build the cookie array correctly 2013-10-04 03:26:56 +00:00
Auth_cas_servers.yaml.orig Bug 5630 CAS improvements 2011-10-13 10:49:49 +13:00
Auth_with_cas.pm Bug 10927: remove disused C4::Utils module 2013-10-03 14:53:02 +00:00
Auth_with_ldap.pm bug 9611: use hash_password() and checkpw_* for LDAP logins instead of md5 hash 2013-10-03 23:01:46 +00:00
AuthoritiesMarc.pm Bug 5635: bulkmarcimport new parameters & features 2013-03-21 20:21:54 -04:00
BackgroundJob.pm Bug 10601: (follow-up) improvements to ->set() and ->get() 2013-09-18 17:23:44 +00:00
Barcodes.pm Bug 6679 - [SIGNED-OFF] fix 8 perlcritic violations in C4/Barcodes.pm 2012-09-20 12:01:36 +02:00
Biblio.pm Bug 10324: fix display of editorial series in normal view (UNIMARC / no XSLT) 2013-09-08 01:33:35 +00:00
Bookseller.pm Bug 10640: give ModBookseller() an explicit return value. 2013-09-08 20:35:45 +00:00
Boolean.pm Bug 10080 - Change system pref IndependantBranches to IndependentBranches 2013-05-22 07:58:23 -07:00
Branch.pm Bug 10629: remove inappropriate uses of $sth->finish() in C4::Branch 2013-08-28 14:25:52 +00:00
Breeding.pm Bug 10096 - Add a Z39.50 interface for authority searching 2013-10-04 14:26:29 +00:00
Budgets.pm Bug 10535: by default sort funds by name 2013-07-11 16:52:34 +00:00
Calendar.pm Bug 7351 : feature that allows to delete a range of dates 2012-09-28 12:19:45 +02:00
Category.pm Bug 7919: FIX the "all" categories method 2013-01-02 16:50:52 -05:00
Charset.pm Bug 8347 - Koha forces UNIMARC 100 field code language to 'fre' 2013-02-20 09:06:57 -05:00
Circulation.pm Bug 9761: Make it possible to confirm future hold requests at checkin time 2013-09-25 00:26:34 +00:00
ClassSortRoutine.pm Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
ClassSource.pm Bug 10643: fix inappropriate uses of $sth->finish() in C4::ClassSource.pm 2013-08-09 15:32:22 +00:00
Context.pm Bug 10325: (follow-up) restore case-insensivity of syspref cache 2013-09-08 05:08:51 +00:00
Contract.pm Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
CourseReserves.pm bug 8215: (followup) rename GetItemReservesInfo 2013-05-21 15:51:03 -07:00
Creators.pm Bug 8315 - remove use C4::* version 2012-07-13 14:17:20 +02:00
Csv.pm Bug 7986: Export issues for patron 2012-09-13 17:58:30 +02:00
Dates.pm Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
Debug.pm Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
Heading.pm Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
HoldsQueue.pm Bug 10550: Fix database typo wthdrawn 2013-09-08 01:58:41 +00:00
HTML5Media.pm Bug 8377: Followup move style in a css file and do not pass template to a pm 2012-12-27 09:28:00 -05:00
Images.pm Bug 8710 - Don't show the images tab in the OPAC if the record has no local images 2012-11-28 18:54:40 -05:00
ImportBatch.pm Bug 10230: Don't limit valid matches to bibs 2013-05-19 08:40:13 -04:00
ImportExportFramework.pm bug 9611: (follow-up) remove md5_base64 from imports - not used 2013-10-03 23:00:32 +00:00
Input.pm Bug 7919 : Display of values depending on the connexion library 2012-12-05 10:10:57 -05:00
Installer.pm Bug 9752: Set marcflavour to NORMARC when NORMARC is chosen 2013-03-30 22:51:17 -04:00
ItemCirculationAlertPreference.pm Bug 6679 - [SIGNED-OFF] fix 2 perlcritic violations in C4/ItemCirculationAlertPreference.pm 2012-09-20 12:01:39 +02:00
Items.pm Bug 10872: UT for GetHiddenItemnumbers and POD fix 2013-09-18 15:55:46 +00:00
ItemType.pm Bug 10513: display a warning/message when returning a chosen item type 2013-09-16 17:45:31 +00:00
Koha.pm Bug 10426: Remove unused sub GetCcodes from Koha.pm 2013-09-06 18:27:16 +00:00
Labels.pm Bug 8315 - remove use C4::* version 2012-07-13 14:17:20 +02:00
Languages.pm Bug 8954: Make languages list in advanced search translatable (revision 1) 2012-11-20 14:39:56 -05:00
Letters.pm Bug 10621: use correct from-address for subscription alert emails 2013-07-25 13:54:41 +00:00
Linker.pm Bug 7284: Fix unit test broken by erroneous POD 2012-03-08 15:24:18 +01:00
Log.pm Bug 7067 - OPAC Borrower Self Registration 2012-12-14 08:08:59 -05:00
Maintainance.pm Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
Matcher.pm Bug 10230: no need to use SimpleSearch for matching auths 2013-05-19 08:40:13 -04:00
Members.pm Bug 9611: Change the password hashing algorithm from MD5 to Bcrypt 2013-10-03 22:22:32 +00:00
Message.pm Bug 6679 - [SIGNED-OFF] fix 3 perlcritic violations in C4/Message.pm 2012-09-20 12:01:39 +02:00
NewsChannels.pm Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
Output.pm Complete revert of 6554 2013-05-03 07:58:50 -07:00
Overdues.pm Bug 10256: Remove some unused subs from Overdues module 2013-06-17 09:08:50 -07:00
Patroncards.pm Bug 8315 - remove use C4::* version 2012-07-13 14:17:20 +02:00
Print.pm Bug 6679 - [SIGNED-OFF] fix 2 perlcritic violations in C4/Print.pm 2012-09-20 12:17:43 +02:00
Ratings.pm Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
Record.pm Bug 9274: Software error in bibtex export 2013-03-30 20:59:41 -04:00
Reports.pm Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
Reserves.pm Bug 10949: restore ability to successfully print hold slips 2013-10-02 14:38:30 +00:00
Review.pm Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
Ris.pm Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
RotatingCollections.pm Bug 10642: fix inappropriate uses of $sth->finish() in C4::RotatingCollections.pm 2013-08-16 16:19:02 +00:00
Scheduler.pm Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
Scrubber.pm Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
Search.pm Bug 10550: Fix database typo wthdrawn 2013-09-08 01:58:41 +00:00
Serials.pm Bug 9916 - Use DataTables in the OPAC 2013-08-19 14:19:02 +00:00
Service.pm POD Cleanups 2010-06-09 08:38:59 -04:00
ShelfBrowser.pm Bug 6679 - [SIGNED-OFF] fix 4 perlcritic violations in C4/ShelfBrowser.pm 2012-09-20 12:01:37 +02:00
SMS.pm Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
SocialData.pm bug 7470 follow-up, fix POD doc 2012-03-26 17:53:28 +02:00
SQLHelper.pm Bug 6679 - [SIGNED-OFF] fix 3 perlcritic violations in C4/SQLHelper.pm 2012-09-20 12:01:38 +02:00
Stats.pm Bug 4118 - Add Collection Code to Statistics Table 2012-09-13 18:42:46 +02:00
Suggestions.pm Bug 10080 - Change system pref IndependantBranches to IndependentBranches 2013-05-22 07:58:23 -07:00
Tags.pm Bug 9136: C4::Tags not Plack-compatible 2012-12-22 15:47:48 -05:00
Templates.pm Bug 9735 - Let the language be selected through URL parameters 2013-10-04 03:26:09 +00:00
TmplToken.pm Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
TmplTokenType.pm Revert "Bug 6679 - [SIGNED-OFF] fix 9 perlcritic violations in C4/TmplTokenType.pm" 2012-09-20 13:29:59 +02:00
TTParser.pm Bug 5327 : Follow up for TTParser test 2012-07-12 16:06:21 +02:00
UploadedFile.pm Bug 7941 : Fix version numbers in modules 2012-06-11 17:29:38 +02:00
VirtualShelves.pm Bug 10386: improvements to VirtualShelves.t 2013-06-28 05:19:49 -07:00
XISBN.pm Bug 9728: XISBN unit test update 2013-06-18 09:46:37 -07:00
XSLT.pm Bug 10550: Fix database typo wthdrawn 2013-09-08 01:58:41 +00:00