Skip to main content
ExLibris
  • Subscribe by RSS
  • ExLibris Dev

    Collection and Call Number Searches Do Not Work With Full Stop in Search Term

    • Article Type: General
    • Product: Aleph
    • Product Version: 20

    Description:
    I have defined WCL1 & WCN1 as the indexes for Collection and Call Number respectively.
    Both indexes work fine if the data does not include a full stop ("."), but it fails when the punctuation is included.
    I tried to remove "to_blank" procedure in tab_word_breaking, but even that didn't help.

    tab11_word
    Z30-1 hi 03 WRD WCN1
    Z30-2 hi 03 WRD WCN1

    Resolution:
    Regarding the collection problem, we changed XXX01/tab/tab_word_breaking from
    03 # to_blank !@#$%^()_={}[]:";<>,.?|\
    to (added the period)
    03 # to_blank !@#$%^()_={}[]:";<>,?|\
    AND from
    90 # to_blank @$^_={}[]:;<,.\/
    to
    90 # to_blank @$^_={}[]:;<,\/

    The 90 breaking procedure must also be changed, because it is used to parse find commands entered in the GUI or OPAC.

    The call number is caused by a different tab_word_breaking procedure that removes the dot between numbers.
    The "numbers" procedure compresses commas and dots between numbers, e.g., 100,000 or 100.000 become 100000.

    Once it is removed (commented out) from tab_word_breaking, thus preserving the dot in the middle of the call number, the search works.
    !03 # numbers

    If these settings are not appropriate for other word indexes, we recommend adding a separate procedure for indexes WCL1 and WCN1. Column 6 of the tab11_word table controls which word breaking procedure is used for each index.

    The results of these changes can be tested via UTIL-F-1-2.
    Enter Procedure Identifier (Q to quit): 03
    Legal values are 01,41: 03
    Enter text (Q to quit) : QA76.73.J38
    WORD 1 -qa76.73.j38-

    This tab_word_breaking procedure may also be relevant, depending on the setup of these fields:
    to_blank_2 = change characters listed in col.4 to blank, if the character is followed by a blank. For example:
    01 # to_blank_2 .,:;
    Note that this procedure is relevant only if the actual value of these characters is retained in the /alephe/unicode/unicode_to_word_gen table.
    Examples
    * in "Jones, Arthur", the comma is changed to blank.
    * in "One, two,three", the commas are retained.
    * in "XI.1.1.3", the dots are retained
    This can be particularly useful for shelf or class numbers.

    After making this change, restart the pc_server.


    • Article last edited: 10/8/2013
    //doorbell.io feedback widged