Zebra add z39.50 attribute rfc

From Koha Wiki
Jump to navigation Jump to search

Add Z39.50 attribute tag to koha-indexdefs.xml files

Status: unknown
Sponsored by: no-one
Developed by: no-one
Expected for:
Bug number: Bug
Work in progress repository:
Description: Add Z39.50 attribute tag to koha-indexdefs.xml files, making them a single point of truth for zebra indexes.


There are a relatively small number of variables that are tracked by the various files that we use for zebra configuration:

  1. Marc field
  2. Marc Subfield
  3. Zebra index name
  4. Zebra Search type
  5. Z39.50 attribute

All of these, *except* for Z39.50 attribute are in biblio-koha-indexdefs.xml -- but biblio-koha-indexdefs.xml isn't used directly -- it is transformed using xsltproc and koha-indexdefs-to-zebra.xsl into biblio-zebra-indexdefs.xsl. If we go ahead and store Z39.50 attribute in biblio-koha-indexdefs.xml, then we can modify koha-indexdefs-to-zebra.xsl so that it will not write that information into biblio-zebra-indexdefs.xsl. This will allow us to use biblio-koha-indexdefs.xml as a single point of truth for all information about indexes.

This way, we can then use biblio-koha-indexdefs.xml for the following:

  • Generate bib1.att
  • Generate ccl.properties
  • Generate pqf.properties (?)
  • Generate record.abs for backward compatibility (?)
  • We should be deprecating non dom config all together, so lets not generate recrod.abs MRenvoize 10:19, 3 September 2014 (EDT)
  • Populate `@indexes` in C4::Search::getIndexes, removing the hard coding of index names.
  • I see this point as the biggest 'easy win' here MRenvoize 10:19, 3 September 2014 (EDT)

Because there are actually six *-koha-indexdefs.xml files, perhaps it would also be worth pushing the abstraction a layer further: A single configuration file containing all marc flavors, biblio and auth configuration -- this would eliminate all possible duplication when editing/adding zebra indexes.

Discussion

http://irc.koha-community.org/koha/2014-08-12#i_1551164

http://irc.koha-community.org/koha/2014-09-03#i_1562746

tcohen pointed out that *koha-indexdefs.xml is MARC flavor specific, so it can't act as a single point of truth, which barton to suggest using a master yaml file containing both marc flavor and search type (biblio vs. authorities)... all *koha-indexdefs.xml could be generated from the master file.