From 860cf900ade1ce113994b3d2587cafa395867b42 Mon Sep 17 00:00:00 2001 From: Jared Camins-Esakov Date: Wed, 1 Aug 2012 13:34:33 -0400 Subject: [PATCH] Bug 8550: Z39.50 searches for ISBN/ISSN problematic Rather than treating ISBN and ISSN as the same, this patch breaks them out into separate parts of the query, as well as changing the truncation attribute to enable right truncation (the correct behavior for the ISBN field in MARC21, and valid behavior in UNIMARC). Signed-off-by: Joseph Alway Signed-off-by: Chris Cormack --- cataloguing/z3950_search.pl | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/cataloguing/z3950_search.pl b/cataloguing/z3950_search.pl index a44b5ea50c..5e22636b5a 100755 --- a/cataloguing/z3950_search.pl +++ b/cataloguing/z3950_search.pl @@ -117,10 +117,14 @@ else { my $s = 0; my $query = ''; my $nterms; - if ($isbn || $issn) { - $term=$isbn if ($isbn); - $term=$issn if ($issn); - $query .= " \@or \@attr 1=8 \"$term\" \@attr 1=7 \"$term\" "; + if ($isbn) { + $term=$isbn; + $query .= " \@attr 1=7 \@attr 5=1 \"$term\" "; + $nterms++; + } + if ($issn) { + $term=$issn; + $query .= " \@attr 1=8 \@attr 5=1 \"$term\" "; $nterms++; } if ($title) { -- 2.39.5