ICE Indexing server extension for WWW servers
Pre beta Version 1.04a
May 1994

 Many thanks to Stefanie Hoefling and Bertram Kernke for their 
 patience while debugging my code. -- Chris

Copyright
---------
This code is free, but copyrighted. Unless explicitly stated otherwise, 
the code in these directories is the intellectual property of the 
Fraunhofer IGD. No liability whatsoever is accepted for any loss or 
damage of any kind resulting from any defect or inaccuracy in this 
information or code. 
You're free to use this code in any non-commercial product.

My lawyer can beat up your lawyer BTW. :-)

Installation
------------
First of all, if you don't have Perl installed yet, do so. You
won't regret getting familiar with Perl, it's a great tool for
all kinds of admin jobs. Maybe you'll want to check out
the URL "http://www.cis.ufl.edu/perl/".

Since you are reading this, you have probably already unpacked
the ICE distribution package.

Decide on where you want to put the perl scripts for
your server extension. For example, if you have your http server
installed in the directory "/usr/local/httpd", you could create
a subdirectory "IndexBin" and move all the stuff there - except
for "ice-form.pl" and "ice-line.pl". These two go in the CGI
directory. If you do not know about CGI scripts and their setup,
please consult the server documentation.

Edit the following scripts
  ice-form.pl
	ice-line.pl
	ice.pl
	ice-idx.pl
and set the configuration variables like index path.
An important thing is the mapping of virtual to physical
paths in "ice.pl": it enables the indexer to handle the
conversions defined by "aliases" in the http servers
config files. It is important that these are kept up to
date whenever changes are being made - perhaps you'll want
to add a comment in the servers config files like
  # if you make changes remember to edit "ice.pl" too!

as a reminder.  

Now set up cron in such a way that ice-idx.pl is being called in
regular intervalls in order to create a precomputed index.
In case you are curious and want test ICE indexing now, call
up ice-idx.pl for the first time "manually" to create
the word index.

How to use ICE
--------------
Call up the cgi interfaces by opening a URL
    http://your.servers.name/cgi-bin/ice-form.pl
if your browser supports forms, otherwise call up
    http://your.servers.name/cgi-bin/ice-line.pl
(This only uses the servers search dialog field
for entering search queries).
Change cgi-bin if you have mapped some other path
to point to your CGI executables. You'll probably want
to add a link 
  <HREF="/cgi-bin/ice-form.pl"> Search this server by keywords </A> 
to your servers homepage. Another useful link is
  <HREF="/cgi-bin/ice-form.pl?DAYS=7">changed during the last
  seven days </A>
which automatically computes a list of documents
that have been modified during that time. 

Future directions
-----------------
At this time (Jun. 9 1994) we still do not have a fully inverted
index. The recent move to Perl will allow introducing such
an inverted index, which will give a further speedup for
index requests. We are also working on adding interfaces to ICE
which allow for data gathering for ALIWEB server indexing etc.

The next version of ICE will probably support ISO latin-1 encoding.

In order to provide a more effizient index, we are currently
considering incorporating "glimpse" (See also
http://baskerville.cs.arizona.edu:1994/index.html) as
an index generator.

Bug reports and back rubs
-------------------------
Please contact me if you have bug-reports or suggestions: 
 Christian Neuss  
 c/o Fraunhofer IGD  
 Wilhelminenstr. 7  
 64283 Darmstadt  
 GERMANY
 Fax: (+49)6151 155-199  
 email:  neuss@igd.fhg.de

Have fun :-),
-- Chris

