Provided by: libtm-perl_1.56-8_all bug

NAME

       TM::Index::Match - Topic Maps, Indexing support (match layer)

SYNOPSIS

           # somehow get a map (any subclass of TM will do)
           my $tm = ...

           # one option: create a lazy index which learns as you go
           use TM::Index::Match;
           my $idx = new TM::Index::Match ($tm);

           # for most operations which involve match_forall to be called
           # reading and querying the map should be much faster

           # learn about some statistics, what keys are most likely to be useful
           my @optimized_keys = @{ $stats->{proposed_keys} };

           # another option: create an eager index
           my $idx = new TM::Index::Match ($tm, closed => 1);

           # pre-populate it, use the proposed keys
           $idx->populate (@optimized_keys);
           # this may be a lengthy operation if the map is big
           # but then the index is 'complete'

           # query map now, should also be faster

           # getting rid of an index explicitly
           $idx->detach;

           # cleaning an index
           $idx->discard;

DESCRIPTION

       This index implements a generic query cache which can capture all queries not handled by
       more specific indices. This class inherits directly from TM::Index.

INTERFACE

   Constructor
       The constructor/destructors are the same as that described in TM::Index.

   Methods
       populate
           $idx->populate (@list_of_keys)

           To populate the index with canned results this method can be invoked. At this stage it
           is not very clever and may take quite some time to work its way through a larger map.
           This is most likely something to be done in the background.

           The list of keys to be passed in is a bit black magic. Your current best bet is to
           look at the index statistics method, and retrieve a proposed list from there:

              @optimized_keys = @{ $stats->{proposed_keys} };

              $idx->populate (@optimized_keys[0..2]); # only take the first few

           If this list is empty, nothing clever will happen.

       statistics
           $hashref = $idx->statistics

           This returns a hash containing statistical information about certain keys, how much
           data is behind them, how often they are used when adding information to the index, how
           often data is read out successfully. The "cost" component can give you an estimated
           about the cost/benefit.

SEE ALSO

       TM, TM::Index

COPYRIGHT AND LICENSE

       Copyright 200[6] by Robert Barta, <drrho@cpan.org>

       This library is free software; you can redistribute it and/or modify it under the same
       terms as Perl itself.