Skip to main content
ExLibris
  • Subscribe by RSS
  • Ex Libris Knowledge Center

    RC 000198: New file_list mechanism based on templates

    • Article Type: Q&A
    • Product: Aleph
    • Product Version: 20

    Question

    How does the file_list mechanism based on templates work?

    Answer

    This is described in 16.02 rep_change 198 (but is still valid through and including v22):

    A new file_list mechanism based on templates has been implemented.
    This feature is optional and will work only if you add definitions to your library's prof_library file. This development will have no effect otherwise.
    It is no longer necessary to have the file_list under the root directory of the libraries. Templates for different library types have been added to the ./aleph/tab directory. This means that if the file_list supplied by Ex Libris suits the site's needs, then there is no reason to have a file_list under the root directory of the libraries and the template located under the ./aleph/tab directory will be used instead.
    To support this, the prof_library file of the library can now contain the following three variables:
    setenv file_list_type
    setenv file_list_size
    setenv file_list_ts1
    For example:
    setenv file_list_type BIB
    setenv file_list_size DEMO
    setenv file_list_ts1 ts5

    1. The file_list_type variable defines which template should be used. Under the ./aleph/tab directory following templates have been defined:
    file_list.COURSE
    file_list.VIR
    file_list.ADM
    file_list.HOL
    file_list.Z105
    file_list.AUT
    file_list.ILL
    file_list.BIB
    file_list.PW
    file_list.USR
    The variable can be set to one of the following values:
    BIB, ADM, HOL, ILL, COURSE, VIR, Z105, AUT, PW, USR, NONE.
    The NONE type is for special cases where no template suits the library and it only uses the template under the data_root directory.
    In our demo libraries, USR00 is set to NONE, because of the pwd_library, usr_library and z105_library flags (set to USR00 in our demo). Even though the library is set to NONE, it is going to include the templates for PW, USR and Z105. Since we are not going to keep in our standard demo libraries file_list in the root_directory, in this case the file list for USR00 will be a sum of three templates.

    2. The file_list_size parameter defines the size of the library and this will determine which size should be taken from the specific template.
    The variable can be set to one of the following values: DEMO, VSMALL, SMALL, MEDIUM, LARGE and HUGE.
    A sample line from the file_list template:
    !1 2 3 4 5 6
    TAB zxx 100K,300K,500K,etc... 0K ts0,ts5,ts10,etc..
    If the parameter is set to DEMO, then 100K and ts0 are assigned to zxx.
    If the parameter is set to VSMALL, then 300K and ts5 are assigned to zxx.
    If the parameter is set to SMALL, then 500K and ts10 are assigned to zxx.

    3. The file_list_<table/index space name> parameter can be used to change the default table/index space assigned in the template.
    In multi-ADM environments this variable can be useful when each ADM library uses different tablespaces but use the same template (file_list.ADM).
    A sample line from the file_list template:
    !1 2 3 4 5 6
    TAB zxx 100K,300K,500K,etc... 0K ts0,ts5,ts10,etc..
    If the prof_library is defined as follows:
    setenv file_list_type ADM
    setenv file_list_size SMALL
    setenv file_list_ts10 ts20
    The template used will be file_list.ADM, the size for zxx will be 500K and the tablespace will be ts20.

    Additional Information

    Additional note:
    If a library uses a template but does not want to use a table defined in it (for example, Z95 in an ADM library), then to their local file_list they should add a line for the table where the first column is NA. Another example of the merge that is performed is our USM51 library. This library uses the file_list.ADM template but since the vendors are managed under the USM50 library, the file_list under the root_directory for USM51 was defined as follows:
    LS z70 USM50
    NA z70_id 0K 0K ts1
    NA z70_id1 0K 0K ts1
    NA z70_id2 0K 0K ts1
    NA z70_id3 0K 0K ts1
    NA z70_id11 0K 0K ts1
    NA z70_id12 0K 0K ts1
    NA z70_id13 0K 0K ts1

    In addition to the templates, a new utility has been added: Edit file_list of <library> Tables
    This utility includes the following options:
    1. Edit file_list of <library>
    2. View merged file_list
    The first option enables the editing of the file_list under the root directory.
    The second option enables the view of the merged file_list which is a combination of the template with the definitions under the root directory. For example:
    - If you select to view the merged file for USM50, you will actually see only definitions that come from the template. The reason is that the file_list file under USM50 is empty and the library only uses the template.
    - If you select to view the merged file for USM51, you will see a combination of the definitions under the root directory of the library and the definitions of the ADM template. In this particular case, the vendors file (z70) will set a synonym to USM50 (not as defined in the template) and all other table/index definitions will be taken from the template.

    Implementation Notes:
    If you want to implement the new file_list templates mechanism, set the following variables in the prof_library file of the library as explained under the Description field:
    setenv file_list_type
    setenv file_list_size

    For example:
    setenv file_list_type ADM
    setenv file_list_size SMALL

    If needed, use the file_list_<table/index space name> parameter to change the default table/index space assigned in the template. For example:
    setenv file_list_ts10 ts20

    Remove unnecessary lines from the library's file_list file.
    Important note: The implementation notes are only relevant for the new file_list mechanism. No changes are required if you do not want to use this new development.

    Unix files:
    ./alephm/source/com_c/make_library_file_list.c
    ./aleph/proc/util_a_17_10
    ./aleph/tab/file_list.ADM
    ./aleph/tab/file_list.AUT
    ./aleph/tab/file_list.BIB
    ./aleph/tab/file_list.COURSE
    ./aleph/tab/file_list.HOL
    ./aleph/tab/file_list.ILL
    ./aleph/tab/file_list.PW
    ./aleph/tab/file_list.USR
    ./aleph/tab/file_list.VIR
    ./aleph/tab/file_list.Z105

    Category: System Management (500)


    • Article last edited: 9/11/2014