searching

This configuration element, which can be found in the instance-specific config/searching.xml file, determines the details of the search for content on the live system and of the advanced search on the editorial system. Example:

<searching>
  <preprocessor>tclProcName</preprocessor>
  <postprocessor>tclProcName<postprocessor>
  <searchResultFormatterCommands>
    <procedureAliasName>trueProcedureName</procedureAliasName>
    <uppercase>uppercase</uppercase>
  </searchResultFormatterCommands>
</searching>

The elements below the searching element have the following meaning:

  • postprocessor: This element is optional. Its content can be the name of a Tcl procedure which is called after a search request has been processed. To the Tcl procedure the XML-Fragment searchResults, i.e. the search result as a string, is passed as the only argument. The procedure can modify this fragment and must return it as a syntactically correct XML string.
  • preprocessor: This element is optional. Its content can be the name of a Tcl procedure which is called before the search process itself is triggered. The XML fragment search, originating from the search request, is passed to the procedure as the only argument. The procedure can modify this fragment if desired. The return value of the procedure is required to be a string that forms a syntactically correct search element of a search query.
  • searchResultFormatterCommands: This element is optional. Its subelements define the alias names and the real names of Tcl procedures used for formatting the field values of documents returned by a search. Each subelement assigns an alias to a name. The element name corresponds to the alias, the element’s content to the procedure name. To such a procedure the value to be formatted is passed as the only argument. The procedure’s return value is the formatted string.

The Tcl procedures referenced in the system configuration elements described above should be implemented in a Tcl script file which is sourced during start-up from one of the Search Server's script directories (share/script/ses/serverCmds and instance/instanceName/script/ses/serverCmds).