Hie, Advanced search on "content type" (Zebra index "ctype" corresponding to index "Content-type") doesn't work. Index is unknown. Index "Content-type" is used in records.abs (unimarc) : melm 110$a Type-Of-Serial:w:range(data,0,1),Frequency-code:w:range(data,1,1),Regularity-code:w:range(data,2,1),Content-type:w:range(data,3,1),Content-type:w:range(data,4,3),... First, in etc/zebradb/biblios/etc/bib1.att : ctype is declared as index 1034, it should be "Content-type". Second, in etc/zebradb/ccl.properties : Content-type 1=1034 t=b Why "t=b"? It means right and left truncation. Content type is a single letter ('a' to 'z'), it doesn't need truncation. Regards.
Created attachment 2684 [details] [review] Proposed patch
Created attachment 7614 [details] [review] Proposed patch (updated) Updated patch. Please signoff.
Fridolyn, Could you please resubmit this as a git patch?
Created attachment 9655 [details] [review] Bug 5295 : ctype index Zebra configuration Patch submitted originally by Fridolyn SOMERS Reformatted as a git patch
Tiny patch. Tested searches on Content-type and it works. So signing off
Created attachment 10175 [details] [review] [Signed-off] Bug 5295 : ctype index Zebra configuration Patch submitted originally by Fridolyn SOMERS Reformatted as a git patch Signed-off-by: Alex Arnaud <alex.arnaud@biblibre.com>
Replaces bib1.att ctype with Content-type, which is the correct index according to external sources, as well as ccl.properties. Marking Passed QA.
mmm... greping ctype, I see that there are a lot of references still here: etc/zebradb/ccl.properties:ctype Content-type etc/zebradb/marc_defs/normarc/biblios/record.abs:melm 008 date-entered-on-file:n:range(data,0,5),date-enter ed-on-file:s:range(data,0,5),pubdate:w:range(data,7,4),pubdate:n:range(data,7,4),pubdate:y:range(data,7,4),pubdate :s:range(data,7,4),pl:w:range(data,15,3),ta:w:range(data,22,1),ff8-23:w:range(data,23,1),ff8-29:w:range(data,29,1) ,lf:w:range(data,33,1),bio:w:range(data,34,1),ln:n:range(data,35,3),ctype:w:range(data,24,4),Record-source:w:range (data,39,0) etc/zebradb/marc_defs/marc21/biblios/record.abs:melm 008 date-entered-on-file:n:range(data,0,5),date-entere d-on-file:s:range(data,0,5),pubdate:w:range(data,7,4),pubdate:n:range(data,7,4),pubdate:y:range(data,7,4),pubdate: s:range(data,7,4),pl:w:range(data,15,3),ta:w:range(data,22,1),ff8-23:w:range(data,23,1),ff8-29:w:range(data,29,1), lf:w:range(data,33,1),bio:w:range(data,34,1),ln:w:range(data,35,3),ctype:w:range(data,24,4),Record-source:w:range( data,39,0) COULD SOMEONE USING MARC21 confirm that this patch does not break marc21 ? I've some doubts...
I think indeed MARC21 will be broken because it uses ctype in record.abs. By now, "ctype" works for MARC21 but it's a best pratice to use long names in configuration and short names only in CCL queries, no? Can we replace "ctype" by "Content-type" for all record.abs ?
(In reply to comment #9) > Can we replace "ctype" by "Content-type" for all record.abs ? Yes, you should, if you rename it in bib1.att. The patch at this moment will raise the warning: [warn] Index 'ctype' not found in attset(s). Nothing will be found anymore with ctype=... Changing status to reflect need for adjustment. Furthermore, you remove "t=b" (right and left truncation). I think that is okay (at least for left truncation). But note that this field is NOT a single letter. Actually, it contains (in MARC21) four characters. But they should be taken as four separate letters. That is currently a problem in Zebra; e.g. if I enter abc in Content-type, I cannot find this record when searching for ctype=b. In the correct interpretation of this marc field, I would like to find it when searching for a, b or c. Probably, this problem is outside the scope of your report.
> M. de Rooy : Furthermore, you remove "t=b" (right and left truncation) I agree with you. But I think truncation should not be implicit. You can add truncation in query search. Or create a second index CCL that contains truncation. ie : Content-type-truncated 1=1034 t=b
Still valid?