[Koha-patches] [PATCH] Add specific MARC21 tags to Topics (su-to) facet
Frederic Demians
frederic at tamil.fr
Sat May 31 08:25:53 CEST 2008
>>> In fact, I believe the facets should be stored in the database,
>>> the object was never intended to be stored hard-coded in the DB,
>>> but was supposed to be moved into a table that would allow people
>>> to add new facets on the fly, etc.
>> What do you thing of a syspref in the meantime? A hash like
>> NoZebraIndexes syspref?
> It could work, but I think it wouldn't be much more difficult to create
> it properly with a table and a management interface ...
Isn't it a bit early? As I understand current facets management in Koha,
it suffers from limitations:
(1) Facets are generated by scanning a limited portion of a search
result set.
For example, suppose a search for 'surgery' get a 10,000 biblio records
resultset. The first result page displays 20 records. On this first
page, the facets are retrieved from 1 to 20 first records not from the
entire resultset. Consequences:
* It's impossible to display facets weight: number of biblio records
containing facet in the resultset.
* Facets from 21-10000 records are just ignored. It's not difficult
to imagine we miss 'some' authors, some subjects, which are more
important (weight) than those from 1-20 records.
The correct facets behavior is on Worldcat:
http://www.worldcat.org/search?q=surgery
As you know, a new Zebra feature allow to improve Koha in this area :
http://tinyurl.com/56lyy2
(2) Facets are extracted from only one MARC field letter
For example, UNIMARC author facet definition (Koha.pm) is:
link_value => 'au',
label_value => 'Authors',
tags => [ '700', '701', '702', ],
subfield => 'a',
So if you have two distinct authors in two biblio records:
700 $aWeber$bHenry
700 $aWeber$Max
You will have just one facet: 'Weber'. You should have two: 'Weber
Henry' and 'Weber Max'.
(3) Mixed Configurability
You suggest to define facets in a DB table and to add a management
interface. But facets as defined now in Koha.pm are incomplete (see 2)
and rely on Zebra configuration files:
* ccl.properties (contains 'au' or 'su-to')
* record.abs (which map to MARC data structure)
* bib1.att.
So for example suppose I want to create a new specific facet: a 'Surgery
Subject' (surgery-only vocabulary). I will have (in MARC21) to:
1. add something in ccl.properties: su-sur
2. add something in record.abs: Subject-surgery pointing to, say, 691 tag
3. add something in bib1.att: Subject-surgery
4. define a facet in Koha linked to 'su-sur' (defined in 1) and
linked to 691 (definied in 2)
Clearly, I must forget something...
Am I correct or just paranoid?
--
Frédéric
More information about the Koha-patches
mailing list