+ * Revision 1.70 1997-10-31 12:34:43 adam
+ * Changed a few log statements.
+ *
+ * Revision 1.69 1997/10/29 12:05:02 adam
+ * Server produces diagnostic "Unsupported Attribute Set" when appropriate.
+ *
+ * Revision 1.68 1997/10/27 14:33:06 adam
+ * Moved towards generic character mapping depending on "structure"
+ * field in abstract syntax file. Fixed a few memory leaks. Fixed
+ * bug with negative integers when doing searches with relational
+ * operators.
+ *
+ * Revision 1.67 1997/09/29 09:06:10 adam
+ * Removed one static var in order to make this module thread safe.
+ *
+ * Revision 1.66 1997/09/25 14:58:03 adam
+ * Windows NT port.
+ *
+ * Revision 1.65 1997/09/22 12:39:06 adam
+ * Added get_pos method for the ranked result sets.
+ *
+ * Revision 1.64 1997/09/18 08:59:20 adam
+ * Extra generic handle for the character mapping routines.
+ *
+ * Revision 1.63 1997/09/17 12:19:18 adam
+ * Zebra version corresponds to YAZ version 1.4.
+ * Changed Zebra server so that it doesn't depend on global common_resource.
+ *
+ * Revision 1.62 1997/09/05 15:30:09 adam
+ * Changed prototype for chr_map_input - added const.
+ * Added support for C++, headers uses extern "C" for public definitions.
+ *
+ * Revision 1.61 1997/02/10 10:21:14 adam
+ * Bug fix: in search terms character (^) wasn't observed.
+ *
+ * Revision 1.60 1997/01/31 11:10:34 adam
+ * Bug fix: Leading and trailing white space weren't removed in scan tokens.
+ *
+ * Revision 1.59 1997/01/17 11:31:46 adam
+ * Bug fix: complete phrase search didn't work.
+ *
+ * Revision 1.58 1996/12/23 15:30:45 adam
+ * Work on truncation.
+ * Bug fix: result sets weren't deleted after server shut down.
+ *
+ * Revision 1.57 1996/11/11 13:38:02 adam
+ * Added proximity support in search.
+ *
+ * Revision 1.56 1996/11/08 11:10:32 adam
+ * Buffers used during file match got bigger.
+ * Compressed ISAM support everywhere.
+ * Bug fixes regarding masking characters in queries.
+ * Redesigned Regexp-2 queries.
+ *
+ * Revision 1.55 1996/11/04 14:07:44 adam
+ * Moved truncation code to trunc.c.
+ *
+ * Revision 1.54 1996/10/29 14:09:52 adam
+ * Use of cisam system - enabled if setting isamc is 1.
+ *
+ * Revision 1.53 1996/06/26 09:21:43 adam
+ * Bug fix: local attribute set wasn't obeyed in scan.
+ *
+ * Revision 1.52 1996/06/17 14:26:20 adam
+ * Function gen_regular_rel changed to handle negative numbers.
+ *
+ * Revision 1.51 1996/06/11 10:54:15 quinn
+ * Relevance work
+ *
+ * Revision 1.50 1996/06/07 08:51:53 adam
+ * Bug fix: Character mapping was broken (introducued by last revision).
+ *
+ * Revision 1.49 1996/06/04 10:18:11 adam
+ * Search/scan uses character mapping module.
+ *
+ * Revision 1.48 1996/05/28 15:15:01 adam
+ * Bug fix: Didn't handle unknown database correctly.
+ *
+ * Revision 1.47 1996/05/15 18:36:28 adam
+ * Function trans_term transforms unsearchable characters to blanks.
+ *
+ * Revision 1.46 1996/05/15 11:57:56 adam
+ * Fixed bug introduced by set/field mapping in search operations.
+ *
+ * Revision 1.45 1996/05/14 11:34:00 adam
+ * Scan support in multiple registers/databases.
+ *
+ * Revision 1.44 1996/05/14 06:16:44 adam
+ * Compact use/set bytes used in search service.
+ *
+ * Revision 1.43 1996/05/09 09:54:43 adam
+ * Server supports maps from one logical attributes to a list of physical
+ * attributes.
+ * The extraction process doesn't make space consuming 'any' keys.
+ *
+ * Revision 1.42 1996/05/09 07:28:56 quinn
+ * Work towards phrases and multiple registers
+ *
+ * Revision 1.41 1996/03/20 09:36:43 adam
+ * Function dict_lookup_grep got extra parameter, init_pos, which marks
+ * from which position in pattern approximate pattern matching should occur.
+ * Approximate pattern matching is used in relevance=re-2.
+ *
+ * Revision 1.40 1996/02/02 13:44:44 adam
+ * The public dictionary functions simply use char instead of Dict_char
+ * to represent search strings. Dict_char is used internally only.
+ *
+ * Revision 1.39 1996/01/03 16:22:13 quinn
+ * operator->roperator
+ *
+ * Revision 1.38 1995/12/11 09:12:55 adam