2002-07-28  Wolfgang Müller  <Wolfgang.Mueller2@uni-bayreuth.de>

	* PluginMaker/libGIFTAc@PLUGIN_NAME@/cc/CAc@PLUGIN_NAME@.cc.in: 
	removed unnecessary expat include

2002-07-27  Wolfgang Müller  <Wolfgang.Mueller2@uni-bayreuth.de>

	* GIFTServer/HomeMadeServer.cc: i18n

	* GIFTServer/Makefile.am: remove references to package-included
	expat

	* libMRML/cc/CAlgorithmCollection.cc: 
	* libMRML/cc/CAccessorAdminCollection.cc: expat includes changed

	* Makefile.am (EXTRA_DIST): gift-check-perl-config.pl

2002-07-26  Wolfgang Müller  <Wolfgang.Mueller2@uni-bayreuth.de>

	* libMRML/cc/CAttributeList.cc: include algorithm

2002-07-24  Wolfgang Müller  <Wolfgang.Mueller2@uni-bayreuth.de>

	* libMRML/cc/CXMLElement.cc(traverse): 
	* libMRML/include/CXMLElement.h(traverse): added non-const 
	version of this function. Needed for i18n

2002-07-23  Wolfgang Müller  <Wolfgang.Mueller2@uni-bayreuth.de>

	* libMRML/cc/CXMLElementBuilder.cc: 
	* libMRML/include/CCommunicationHandler.h: 
	* libMRML/include/CI18nTranslator.h: 
	* libGIFTAcURL2FTS/cc/CAcURL2FTS.cc: 
	* GIFTServer/HomeMadeServer.cc: 
	* libGIFTAcHierarchy/cc/CAcHierarchy.cc: 
	* libMRML/cc/CSessionManager.cc: using pre-intalled
	expat instead of GIFT-provided one. changing includes.

2002-07-22  Wolfgang Müller  <Wolfgang.Mueller2@uni-bayreuth.de>

	* libMRML/cc/CXMLElementVisitor.h:
	* libMRML/cc/CXMLElementVisitor.cc: adding non-const
	member functions to CXMLElementVisitor. By default
	all they do is call the const members
	

	* libMRML/cc/CAttributeList.cc (getKeys): 
	* libMRML/include/CAttributeList.h(getKeys): 
	New function: get keys of all attributes

2002-07-21  Wolfgang Müller  <Wolfgang.Mueller2@uni-bayreuth.de>

	* libMRML/include/CSessionManager.h: 
	* libMRML/cc/CSessionManager.cc(clearLanguages): 
	* libMRML/cc/CSessionManager.cc(addLanguage): 
	* libMRML/cc/CSessionManager.cc(getLanguages): 
	* libMRML/cc/CSessionManager.cc(clearSessionLanguages): 
	* libMRML/cc/CSessionManager.cc(addSessionLanguage): 
	* libMRML/cc/CSessionManager.cc(getSessionLanguages): 
	Three new procedures for maintaining the languages preferred by
	a given session
	
	
2002-07-19  Wolfgang Müller  <Wolfgang.Mueller2@uni-bayreuth.de>

	* scripts/perl/gift-add-collection.pre-pl: files with special 
	characters now get correctly encoded. Little problem: the client
	has to offer these encodings. The php does not do so, currently.

	* libGIFTAcInvertedFile/cc/CAcIFFileSystem.cc: fixed: opening
	wrong file after indexing

	* libMRML/include/Makefile.am (install-data-local): Fixed
	strange intstallation problems seem to have to make
	the path before doing intall-local

	(install-data-hook): this target was an install-data-local 
	before. That crashed if the installation directory was
	not present before installation

2002-07-18  Wolfgang Müller  <Wolfgang.Mueller2@uni-bayreuth.de>

	* pthread-compile-test-program.cc (main): 
	return type must be int

2002-07-17  Wolfgang Müller  <Wolfgang.Mueller2@uni-bayreuth.de>

	* GIFTServer/Server.cc: 

	* libMRML/include/CSessionManager.h (class CSessionManager): 
	* libMRML/cc/CSessionManager.cc: 
	Uses now CI18nTranslator class
	
	* libMRML/cc/CI18nTranslator.cc: 
	* libMRML/include/CI18nTranslator.h: 
	adding support for internationalization of mrml files. This
	i18n is adapted to frequent changes of the languages during
	runtime, as it is appropriate for servers.

2002-07-12  Wolfgang Müller  <wolfgang.mueller2@uni-bayreuth.de>

	* scripts/perl/gift-add-collection.pre-pl: 
	Finding all images within a tree before starting.
	Enables us to write out progress.

2002-07-10  Wolfgang Müller  <wolfgang.mueller2@uni-bayreuth.de>

	* scripts/perl/gift-add-collection.pre-pl: 
	1) use strict
	2) applied bugfix for lThumbnailURLPrefix by karl s. eiringer

2002-07-08  Wolfgang Müller  <wolfgang.mueller2@uni-bayreuth.de>

	* dtd/mrml.dtd: Ralf Juengling tells me that there are 
	two definitions for algorithm in the dtd. Changed

2002-06-19  Wolfgang Müller  <wolfgang.mueller2@uni-bayreuth.de>

	* libGIFTAcInvertedFile/cc/CAcIFFileSystem.cc: 
	* libGIFTAcInvertedFile/include/CAcIFFileSystem.h: 
	Changes for putting temporary data at a place
	where we know we can write
	

2002-06-17  Wolfgang Müller  <kde3@btn1n6.inf.uni-bayreuth.de>

	* gift-check-perl-config.pl: this script checks if perl
	modules needed are there
	
	* scripts/perl/gift-start.pre-pl: making this script
	ready for public use.

2002-06-04  Wolfgang Müller  <wolfgang.mueller2@uni-bayreuth.de>

	* libMRML/cc/CQuery.cc (query): reading cutoff attribute
	as double value instead of long.

2002-06-03  Wolfgang Müller  <kde3@btn1n6.inf.uni-bayreuth.de>

	* Makefile.am: using current installed expat packaged
	version. This has become necessary for reasons of
	linking with external plugins. Sorry folx.

2002-06-03  Wolfgang Müller  <wolfgang.mueller2@uni-bayreuth.de>

	* expat/xmlparse/Makefile.am (LTLIBRARIES): It turns
	out that I have to install lib_temp_xml_parse.la when
	using new libtool and new gcc

2002-05-29  Wolfgang Müller  <wolfgang.mueller2@uni-bayreuth.de>

	* GIFTServer/CDomainSocket.cc(serveStream): 
	* GIFTServer/CTCPSocket.cc(serveStream): 
	cannot close socket in serveStream, otherwise multithreading
	goes down the drain

	* libGIFTAcInvertedFile/include/merge_sort_streams.h: 
	Quite massive changes to make it work with the full 
	file lenght allowed by the system. The problem is that
	stream_pos does not have incrementation operators etc...

	Checked in again, have done some debugging in the meanwhile
	
	* configure.in: moving cp statement to very end of the file
	makes sure that this is executed at the right moment

2002-05-28  Wolfgang Müller  <wolfgang.mueller2@uni-bayreuth.de>

	* libGIFTAcDistanceMatrix/include/CPersistentVector.h(init): 
	using fill for filling vector with intial value
	
	* libGIFTQuHierarchy/cc/CQHierarchy.cc: include <iterator>

	* libGIFTQuInvertedFile/cc/CQInvertedFile.cc: cast to int in call
	of limitNumberTo

	* libGIFTAcInvertedFile/include/CAcIFFileSystem.h: changes for v31

2002-05-26  Wolfgang Müller  <wolfgang.mueller2@uni-bayreuth.de>

	* libGIFTAcDistanceMatrix/include/CDrawer.h: 
	* CDrawer.h:
	* libGIFTAcInvertedFile/cc/CAdditionalDocumentInformation.cc: 
	* libGIFTAcInvertedFile/cc/CAcIFFileSystem.cc: 
	* libMRML/include/CMagic.h: 
	* libMRML/include/CIDRelevanceLevelPair.h: 
	* libMRML/include/CAccessorImplementation.h: 
	remove .h from standard include file names
	assert.h becomes cassert

	* libMRML/cc/CSessionManager.cc: include <iterator>
	
2002-05-24  Wolfgang Müller  <wolfgang.mueller2@uni-bayreuth.de>

	* libMRML/cc/CSessionManager.cc(setAlgorithm): 
	bracket notation in maps creates new empty element.
	this was a reason for some crashes. fixed.
	
	* libMRML/cc/CXEVCommunication.cc: removed try/catch exception handling

2002-05-15  Wolfgang Müller  <wolfgang.mueller2@uni-bayreuth.de>

	* configure.in(AM_CONFIG_HEADER): 
	added cp gift-config.h libMRML/include
	in order to install gift-config.h together with the 
	libMRML includes

	* libMRML/include/Makefile.am (install-data-local): 
	target to install the autoconf-generated gift-config.h
	
	* libMRML/cc/CSessionManager.cc(getNewID): if -luuid is present,
	session IDs will ge uuids, instead of integers starting at one

2002-05-08  Wolfgang Müller  <wmueller@bn1x1.inf.uni-bayreuth.de>

	* libMRML/cc/Makefile.am (libMRML-config.cc): 
	* libMRML/cc/libMRML-config.pre-cc (main): 
	changing the way libdir is treated.
	adding --plugin-dir flag.

2002-05-03  Wolfgang Müller  <Wolfgang.Mueller2@uni-bayreuth.de>

	* libMRML/cc/libMRML-config.pre-cc (main): 
	get rid of spaces that are "too much"

2002-04-30  Wolfgang Müller  <Wolfgang.Mueller2@uni-bayreuth.de>

	* libMRML/cc/CDynamicQueryFactory.cc: 
	* libMRML/cc/CAFPlugin.cc: exit -> exception

	* scripts/perl/Makefile.am (PERLCONFIG): adding "-e" before
	sed expression.

2002-03-30  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	* dtd/mrml.dtd: appliet Pruet Boonma's segment query patch
	as discussed in help-gift@gnu.org

	* libGIFTAcInvertedFile/cc/CAcIFFileSystem.cc (URLToFeatureList): 
	Bugfix: deplaced endif to avoid returning NULL pointers.
	(Bug report Dr. Stéphane Marchand-Maillet)
	
	* scripts/perl/gift-dtd-to-keywords.pre-pl (translateToCC): 
	generating include statement with correct location where mrml_const.h 
	will be installed. (Bug report Pruet Boonma).

2002-03-30  Wolfgang M&uuml;ller  <muellerw@linux.unige.ch>

	* libMRML/cc/Makefile.am (libMRML-config.cc): 
	* configure.in:
	* libMRML/cc/libMRML-config.pre-cc: 
	with-mysql-dir configure option and its usage
	
2002-03-03  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	* libMRML/cc/CQueryParadigmMatcher.cc: 
	bugfix in operator(). one branch did not always
	return a defined value
	
	* libMRML/cc/Makefile.am (libMRML_la_LDFLAGS): 
	incrementing version info

	* libMRML/include/CAccessorAdmin.h: 
	* libMRML/cc/CAccessorAdmin.cc: 
	Added: getQueryParadigmList
	
	* libMRML/include/CAccessorAdminCollection.h: 
	* libMRML/cc/CAccessorAdminCollection.cc: 
	New member functions: getCollectionElement,
  	getQueryParadigmList. They makes it easier
	to find configuration errors without constructing
	an CQuery element (not yet used)


2002-03-02  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	Release gift-0.1.8.

2002-03-02  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	* libMRML/include/Makefile.am (dist-hook): 
	* libMRML/cc/Makefile.am (dist-hook): remove
	files that contain configuration data
	

2002-02-28  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	* libGIFTAcDistanceMatrix/include/CPersistentVector.h: 
	* libGIFTAcDistanceMatrix/include/CPersistentMatrix.h: make
	it compile with gcc v3. mainly more picky for implicit type 
	casting as well as local classes

2002-02-26  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libMRML/cc/CQueryParadigmMatcher.cc(matches): 
	implemented matcher function

2002-02-18  MUELLER Wolfgang  <Wolfgang.Mueller@cui.unige.ch>

	* README: removed first line as requested by RMS

2002-02-18  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	* libMRML/include/GIFTExceptions.h: 
	* libMRML/cc/GIFTExceptions.cc: 
	const and non-const constructor, destructor
	
2002-02-18  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	* libMRML/cc/CSessionManager.cc: catching non-default
	exception in query

	* libMRML/cc/CQueryTreeBuilder.cc (getQueryByID): 
	throwing on error. commented out giving back
	first algorithm on exception. this can fail miserably. 
	better is to tell error.

	* libMRML/cc/createErrorMessage.cc: 
	* libMRML/include/createErrorMessage.h: 
	convenience function for creating MRML error 
	messages

	* libMRML/cc/CXEVCommunication.cc: 
	catch exception on algorithm construction
	

	* libGIFTAcURL2FTS/cc/CAcURL2FTS.cc (CAcURL2FTS): 
	Throw exception if url2fts unreadable
	
	* libMRML/cc/GIFTExceptions.cc: adding an accessor to
	the message contained in the exception.

	* libGIFTAcURL2FTS/include/CAcURL2FTS.h: 
	* libGIFTAcURL2FTS/cc/CAcURL2FTS.cc: adding exception
	class VEConfigurationError. This is thrown if an
	error occurs that is caused by some configuration mistake.

2002-02-10  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	* GIFTServer/CDomainSocket.cc:
	* GIFTServer/CTCPSocket.cc:
	* GIFTServer/CMultiServer.cc:
	multiple sockets used by one gift instance
	
	* GIFTServer/Makefile.am: 
	* GIFTServer/CDomainSocket.h:
	* GIFTServer/CTCPSocket.h:
	* GIFTServer/CMultiServer.h:
	* GIFTServer/processMessage.cc: 
	* GIFTServer/processMessage.h: 
	* GIFTServer/CProcessMessageParameters.h: 
	* GIFTServer/CProcessMessageParameters.cc: 
	* GIFTServer/Server.cc: 
	* Makefile.am:
	Moving classes and functions defined in Server.cc 
	out of Server.cc in order to make them usable for 
	other servers like e.g. multi-gift

2002-01-26  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	* libMRML/cc/Makefile.am (libMRML_la_LDFLAGS): 
	changed libtool version number

	* CRPipe.cc:
	* CReaper.cc:
	* CReaperDistributor.cc:
	* executeVector.cc:
	* CRPipe.h: 
	* CReaper.h: 
	* CReaperDistributor.h:
	* safePopen.h:
	these files contain the implementation of a kind of
	safe popen
	
	* libMRML/cc/Makefile.am: added CRPipe.cc CReaper.cc 
	CReaperDistributor.cc safePopen.cc 

	* libMRML/include/Makefile.am (libMRML_HEADERS): added
	 CRPipe.h CReaper.h CReaperDistributor.h safePopen.h

2002-01-23  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	* libGIFTAcInvertedFile/include/Makefile.am (InvertedFile_HEADERS): 
	* libGIFTAcDistanceMatrix/include/Makefile.am (DistanceMatrix_HEADERS): 
	* libGIFTQuInvertedFile/include/Makefile.am (libGIFTQuInvertedFile_HEADERS): 
	* libMRML/include/Makefile.am (libMRML_HEADERS): 
	* libGIFTAcHierarchy/include/Makefile.am (libGIFTAcHierarchydir): 
	(libGIFTAcHierarchy_HEADERS): 
	* libGIFTQuHierarchy/include/Makefile.am: 
	* libGIFTAcURL2FTS/include/Makefile.am: 
	adding uses-declarations.h to distribution

	
	* libGIFTAcInvertedFile/cc/CAcIFFileSystem.cc (init): 
	show errno
	(init): have to clear file flags after close

	* GIFTServer/oneMinus.cc: 
	* GIFTServer/modifyDistanceMatrix.cc: using namespace std

	* GIFTServer/modifyDistanceMatrix.cc: include iostream

	* GIFTServer/Server.cc (main): return int
	change fstream::in+fstream::out to fstream::in|fstream::out
	
	* libGIFTAcInvertedFile/include/merge_sort_streams.h: 
	streampos becomes STREAMPOS which is defined as 
	long long int => ++ is defined
	
	* libGIFTAcInvertedFile/cc/CInvertedFileChunk.cc: 
	(writeBinary): 
	* libGIFTAcInvertedFile/cc/CIFListStart.cc: 
	read and write need typecast to char* when using g++ v3

2002-01-22  MUELLER Wolfgang  <Wolfgang.Mueller@cui.unige.ch>

	* GIFTServer/Server.cc (main): adding seeding by pid
	third parameter has to be "0" to block seeding

2002-01-20  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	* libMRML/cc/Makefile.am (libMRML-config.cc): 
	* libMRML/cc/libMRML-config.pre-cc (main): 
	make it work. replacing @ by % in the sed operation
	transforming pre-cc to cc and consequently in the 
	pre-cc source 

2002-01-12  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	* configure.in: $(CXX) instead of $(CC) in perl test
	compile

2002-01-11  MUELLER Wolfgang  <Wolfgang.Mueller@cui.unige.ch>

	* configure.in(AC_CHECK_FILE[$PERL...]): 
	added -ldl to non-perl branch as consequence of
	patch suggestion by 
	Pruet Boonma <pruet@eng.cmu.ac.th>

2002-01-10  MUELLER Wolfgang  <Wolfgang.Mueller@cui.unige.ch>

	* libGIFTAcInvertedFile/include/merge_sort_streams.h: 
	streampos troubles

	* libGIFTAcInvertedFile/cc/CDocumentFrequencyList.cc: 
	* libGIFTAcInvertedFile/cc/CDocumentFrequencyElement.cc: (char*) cast 
	in read/write from/to stream

	* libGIFTAcURL2FTS/cc/CAcURL2FTS.cc: Yay, gcc v3.0.3 found
	me an error mIDToFFN.find gave back an iterator mURLToFFN.

	* libMRML/cc/CXMLElement.cc: 
	* libMRML/cc/CAttributeList.cc: 
	* libMRML/cc/CXMLElementBuilder.cc: include iostream

	* libMRML/include/CQMultiple.h: 
	* libMRML/include/CAccessorImplementation.h: 
	ifdef HAS_HASH_MAP

	* libGIFTAcInvertedFile/cc/CBitSetCollection.cc: 
	* libGIFTAcInvertedFile/include/CIFListStart.h: 
	* libGIFTAcInvertedFile/include/CAdditionalDocumentInformation.h: 
	* libGIFTAcInvertedFile/include/CAcSQLInvertedFile.h: 
	* libGIFTAcInvertedFile/include/CAcInvertedFile.h: 
	* libGIFTAcInvertedFile/include/CAcIFMySQL.h: 
	* libGIFTAcInvertedFile/include/CADIHash.h: 
	* libGIFTAcInvertedFile/include/CAcIFFileSystem.h: 
	* libMRML/include/myNew.h: 
	* libGIFTAcInvertedFile/cc/CIFListStart.cc: 
	* libGIFTAcInvertedFile/include/CDocumentFrequencyElement.h: 
	iostream.h becomes iostream
	fstream.h becomes fstream etc.

	* libMRML/include/GIFTExceptions.h: added using namespace

	* libMRML/include/CIDRelevanceLevelPair.h: casting to double
	for making fabs unambiguous

	* libMRML/include/CAccessorElement.h: 
	include <iostream> makes it compile

	* libMRML/cc/CAccessorElement.cc(operator<<): small changes
	not affecting functionality for obtaining better error messages
	from gcc v3
	

2002-01-09  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	* libMRML/cc/CAccessorElement.cc: cast TID to long

	* scripts/perl/gift-dtd-to-keywords.pre-pl (translateToH(): 
	adding using namespaces directive to c++ output

	* libMRML/cc/CAccessorElement.cc: 
	convert "char" to strings

2002-01-09  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	* libGIFTAcInvertedFile/include/uses-declarations.h:
	* libGIFTAcDistanceMatrix/include/uses-declarations.h:
	* libGIFTQuInvertedFile/include/uses-declarations.h:
	* libMRML/include/uses-declarations.h:
	* libGIFTAcHierarchy/include/uses-declarations.h:
	* libGIFTAcPerl/include/uses-declarations.h:
	* libGIFTQuHierarchy/include/uses-declarations.h:
	* libGIFTQuPerl/include/uses-declarations.h:
	* libGIFTAcURL2FTS/include/uses-declarations.h:

	Added header files containing the "using namespace" declarations
	for each library.

	* /libGIFTAcInvertedFile/include/CADIHash.h:
	* libGIFTAcInvertedFile/include/CAcSQLInvertedFile.h:
	* libGIFTAcInvertedFile/include/CDocumentFrequencyHash.h:
	* libGIFTAcInvertedFile/include/CDocumentFrequencyList.h:
	* libGIFTAcInvertedFile/include/CIFListStart.h:
	* libGIFTAcInvertedFile/include/CAdditionalDocumentInformation.h:
	* libGIFTAcInvertedFile/include/CBitSetCollection.h:
	* libGIFTAcInvertedFile/include/CAFSpecialised.h:
	* libGIFTAcInvertedFile/include/CIFBuilderTriplet.h:
	* libGIFTAcInvertedFile/include/CAFIFMySQL.h:
	* libGIFTAcInvertedFile/include/CInitializedDouble.h:
	* libGIFTAcInvertedFile/include/CInvertedFileChunk.h:
	* libGIFTAcInvertedFile/include/CAFInvertedFile.h:
	* libGIFTAcInvertedFile/include/CComparisonResults.h:
	* libGIFTAcInvertedFile/include/CAcInvertedFile.h:
	* libGIFTAcInvertedFile/include/CAcIFFileSystem.h:
	* libGIFTAcInvertedFile/include/CDocumentFrequencyElement.h:
	* libGIFTAcInvertedFile/include/CAcIFMySQL.h:
	* libGIFTAcInvertedFile/include/CAcInvertedFileAbstraction.h:
	* libGIFTAcDistanceMatrix/include/CSquasher.h:
	* libGIFTAcDistanceMatrix/include/CDistanceCalculator.h:
	* libGIFTAcDistanceMatrix/include/CPersistentTranslatedIndexMatrix.h:
	* libGIFTAcDistanceMatrix/include/CDrawer.h:
	* libGIFTAcDistanceMatrix/include/CInformationCalculator.h:
	* libGIFTAcDistanceMatrix/include/CIDToMatrixIndex.h:
	* libGIFTAcDistanceMatrix/include/CAcDistanceMatrix.h:
	* libGIFTAcDistanceMatrix/include/CAFDistanceMatrix.h:
	* libGIFTAcDistanceMatrix/include/CPersistentVector.h:
	* libGIFTAcDistanceMatrix/include/CProbabilityCombiner.h:
	* libGIFTAcDistanceMatrix/include/CPersistentMatrix.h:
	* libGIFTQuInvertedFile/include/CWeightingFunctionPointerList.h:
	* libGIFTQuInvertedFile/include/CQInvertedFile.h:
	* libGIFTQuInvertedFile/include/CWeightingFunction.h:
	* libGIFTQuInvertedFile/include/CQueryNormalizer.h:
	* libGIFTQuInvertedFile/include/CWFStandardTF.h:
	* libGIFTQuInvertedFile/include/CWFBestFullyWeighted.h:
	* libGIFTQuInvertedFile/include/CWFBinaryTerm.h:
	* libGIFTQuInvertedFile/include/CQNEuclideanLengthSquare.h:
	* libGIFTQuInvertedFile/include/CQNBestFullyWeighted.h:
	* libGIFTQuInvertedFile/include/CQNSquareDFLogICFSum.h:
	* libGIFTQuInvertedFile/include/CWFCoordinationLevel.h:
	* libGIFTQuInvertedFile/include/CWeighter.h:
	* libGIFTQuInvertedFile/include/CWFClassicalIDF.h:
	* libGIFTQuInvertedFile/include/CScoreBoard.h:
	* libGIFTQuInvertedFile/include/CQNNoNormalization.h:
	* libGIFTQuInvertedFile/include/CWFBestProbabilistic.h:
	* libGIFTQuInvertedFile/include/CQNMaxDocumentFrequency.h:
	* libGIFTQuInvertedFile/include/CWFProbability.h:
	* libGIFTQuInvertedFile/include/CWeightingFunctionPointerHash.h:
	* libMRML/include/CTimeStampGenerator.h:
	* libMRML/include/CXEVCommunication.h:
	* libMRML/include/CXEVTripletList.h:
	* libMRML/include/CMagic.h:
	* libMRML/include/CSelfDestroyPointer.h:
	* libMRML/include/CAccessorFactory.h:
	* libMRML/include/CSessionManager.h:
	* libMRML/include/CArraySelfDestroyPointer.h:
	* libMRML/include/CQueryTreeBuilder.h:
	* libMRML/include/CAccessorImplementation.h:
	* libMRML/include/CAFPlugin.h:
	* libMRML/include/CAccessorAdmin.h:
	* libMRML/include/CAlgorithm.h:
	* libMRML/include/CAccessorElement.h:
	* libMRML/include/CAccessor.h:
	* libMRML/include/CXMLHelper.h:
	* libMRML/include/CMutex.h:
	* libMRML/include/CQueryParadigmMatcher.h:
	* libMRML/include/CPropertySheetList.h:
	* libMRML/include/CXMLElementVisitor.h:
	* libMRML/include/CAccessorFactoryContainer.h:
	* libMRML/include/CRelevanceLevelList.h:
	* libMRML/include/CNoDelete.h:
	* libMRML/include/CQueryTreeNode.h:
	* libMRML/include/CAlgorithmCollection.h:
	* libMRML/include/CMRMLStringConstants.h:
	* libMRML/include/CQMultiple.h:
	* libMRML/include/CIDRelevanceLevelPairList.h:
	* libMRML/include/CQueryPlugin.h:
	* libMRML/include/CDebuggingMemoryManager.h:
	* libMRML/include/CStaticQueryFactory.h:
	* libMRML/include/CCommunicationHandler.h:
	* libMRML/include/CAttributeList.h:
	* libMRML/include/CRelevanceLevel.h:
	* libMRML/include/CXMLElementBuilder.h:
	* libMRML/include/CIDRelevanceLevelPair.h:
	* libMRML/include/CAccessorAdminCollection.h:
	* libMRML/include/CQuery.h:
	* libMRML/include/CQParallel.h:
	* libMRML/include/CXMLElement.h:
	* libMRML/include/CDynamicQueryFactory.h:
	* libGIFTAcHierarchy/include/CAFHierarchy.h:
	* libGIFTAcHierarchy/include/CAcHierarchy.h:
	* GIFTServer/CSelfDestroyPointer.h:
	* GIFTServer/CArraySelfDestroyPointer.h:
	* libGIFTAcPerl/include/CAFPerl.h:
	* libGIFTAcPerl/include/CAcPerl.h:
	* libGIFTQuHierarchy/include/CQHierarchy.h:
	* libGIFTQuPerl/include/CXMLTripletList.h:
	* libGIFTQuPerl/include/CQPerl.h:
	* libGIFTQuPerl/include/CXMLTriplet.h:
	* libGIFTAcURL2FTS/include/CAFURL2FTS.h:
	* libGIFTAcURL2FTS/include/CAcURL2FTS.h:
	Added an #include "../include/uses-declarations.h"
	for proper namespace handling
	
2002-01-04  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	* libMRML/cc/Makefile.am(libMRML-config.cc): bug in sed script
	INCLUDE substitution fixed

2002-01-08  MUELLER Wolfgang  <Wolfgang.Mueller@cui.unige.ch>

	* libMRML/cc/CCommunicationHandler.cc (getPeerAddressString): 
	(setPeerAddressString): 
	New functions to get at the peer address

	(readAndParse):	printing a time stamp, of the incoming message, 
	as well as the peer address string

	* GIFTServer/Server.cc(CProcessMessageParameters): 
	(main):
	Changes to get at the peer name, and pass it to the 
	communication handler

2002-01-03  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	* expat/Makefile.am: changing sequence of subdirs. xmlwf must be last,
	gennmtab must be first.

	* PluginMaker/libGIFTQu@PLUGIN_NAME@/Makefile.am.in (SUBDIRS): 
	cc AND include
	
	* PluginMaker/libGIFTAc@PLUGIN_NAME@/cc/CAF@PLUGIN_NAME@.cc.in: 
	* PluginMaker/libGIFTAc@PLUGIN_NAME@/include/CAF@PLUGIN_NAME@.h.in: 
	* PluginMaker/libGIFTAc@PLUGIN_NAME@/cc/CAc@PLUGIN_NAME@.cc.in: 
	* PluginMaker/libGIFTAc@PLUGIN_NAME@/include/CAc@PLUGIN_NAME@.h.in: 
	* PluginMaker/libGIFTQu@PLUGIN_NAME@/cc/CQ@PLUGIN_NAME@.cc.in: 
	* PluginMaker/libGIFTQu@PLUGIN_NAME@/include/CQ@PLUGIN_NAME@.h.in: 
	adjusting include paths
	
2002-01-03  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	* PluginMaker/configure.in.in(AC_OUTPUT): generate
	make files in include directories

	* PluginMaker/gift-plugin-maker.pl (wanted): don't copy
	files in the CVS directory when making plugin

2001-12-29  Wolfgang M&uuml;ller  <Wolfgang.Mueller@cui.unige.ch>

	* libMRML/cc/libMRML-config.pre-cc: 
	New file
	

2001-12-27  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	* libMRML/cc/CCommunicationHandler.cc (addToMultiResponse): 
	don't add empty trees

	* PluginMaker/libGIFTQu@PLUGIN_NAME@/include/Makefile.am.in: 
	* PluginMaker/libGIFTAc@PLUGIN_NAME@/include/Makefile.am.in: 
	new files

2001-12-26  Wolfgang M&uuml;ller  <muellerw@cui.unige.ch>

	* expat/xmlwf/Makefile.am(wf_HEADERS): 
	* expat/xmlparse/Makefile.am (parse_HEADERS): 

2001-12-23  Wolfgang M&uuml;ller  <Wolfgang.Mueller@cui.unige.ch>

	* expat/xmltok/Makefile.am (INCLUDES): adding gennmtab

	* expat/gennmtab/Makefile.am: making nametab.h at the right 
	place and time

2001-12-11  MUELLER Wolfgang  <Wolfgang.Mueller@cui.unige.ch>

	* libMRML/include/CQMultiple.h: 
	* libMRML/cc/CQMultiple.cc:
	Changes to accomodate merging by URL (instead of merging by ID).
	

	* Doc/Doxyfile.in (PROJECT_NAME): create ini file with
	@PACKAGE@ and @VERSION@ that will be substituted.

	* FeatureExtraction/Makefile.am (EXTRA_DIST): install headers

	* GIFTServer/gift-mrml-messages/Makefile.am: 
	gift-ihandshake.pre-mrml gift-iconfigure.pre-mrml

	* GIFTServer/gift-config/Makefile.am (EXTRA_DIST): gift-config.mrml

	* libGIFTAcInvertedFile/include/Makefile.am (noinst_HEADERS): 
	there were wrong headers in this file

	* expat/xmltok/Makefile.am (EXTRA_DIST): xmltok_impl.c xmltok_ns.c
	are actually  include files which need to be distributed using EXTRA_DIST

	* dtd/Makefile.am: make mrml.dtd part of the distro

	* Doc/Makefile.am: making doc makefile proof against missing tools

	* scripts/perl/Makefile.am: making sure all prerequisites are distributed

2001-12-10  MUELLER Wolfgang  <Wolfgang.Mueller@cui.unige.ch>

	* bootstrap-cvs.sh: add missing
	* expat/Makefile: removed

	Globally: moving automatically generated files
		out of CVS
	Move towards a working "make dist" target
	
2001-12-08  MUELLER Wolfgang  <Wolfgang.Mueller@cui.unige.ch>

	* libGIFTAcDistanceMatrix/include/Makefile.am: new file
	* libGIFTQuPerl/include/Makefile.am: new file
	* libGIFTQuPerl/Makefile.am(noinst_HEADERS): 
	* libMRML/include/Makefile.am(noinst_HEADERS): 
	make sure that *.h files are distributed

	* scripts/perl/Makefile.am (EXTRA_SCRIPTS): pre-
	pre-files must be distributed
	
	* libSquirePPM/Makefile.am (noinst_HEADERS): 

	* bootstrap-cvs.sh: Added bootstrap script which
	is to be called when having checked out the GIFT from
	CVS. 
	
	

2001-12-03  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libMRML/include/CQMultiple.h(mUsesFastQuery): 
	new attribute which checks if fastQuery is used 
	or not. This means either result merging by 
	URL (query) by ID (fastQuery). 

2001-11-23  Wolfgang Müller  <muellerw@cui.unige.ch>

	* dtd/mrml.dtd(query-result): can contain
	multiple query-result-element lists
	(query-step): changing the sequence in the model
	for working around bug in dtd-to-tex

2001-11-08  Wolfgang Müller  <muellerw@cui.unige.ch>

	* dtd/mrml.dtd: query step implied

2001-10-11  Wolfgang Müller  <muellerw@cui.unige.ch>

	* dtd/mrml.dtd: I added "error" tags as children of
	response tags where useful. The goal is to have components
	report their errors, and thus to make it clearer where
	the error occurred.

2001-11-01  Wolfgang Mueller  <Wolfgang.Mueller@cui.unige.ch>

	* dtd/mrml.dtd: added cui-text-query tag to dtd,
	enabled multiple user-relevance-lists in one query-step
	added cui-query-string.
	

2001-10-25  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libMRML/cc/CCommunicationHandler.cc(endMultiRequest): 
	* libMRML/cc/CCommunicationHandler.cc(startMultiRequest): 
	putting time stamp generation back into the code. Time stamp
	generation is interesting for logging

	* GIFTServer/Server.cc (main): write out into
	log file the time at which the GIFT was started 
	(as XML comment)	

2001-10-24  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* configure.in: Changed warning message for 
	enable-interactive.
	

	* libMRML/cc/Makefile.am (INCLUDES): removed doubly
	specified LDFLAGS

	* gift-install-prerequisites.pl: Heavy modification
	in all the script 

2001-10-16  Wolfgang Müller  <Wolfgang.Mueller@cui.unige.ch>

	* libMRML/cc/CAccessorAdminCollection.cc(getProxy): 
	* libMRML/include/CAccessorAdminCollection.h: 
	To counter problems with people who do queries
	to a collection with "" as ID, give back
	the default collection to the request.

	This is a quick but useful fix, please see
	code for caveats
	
2001-10-11  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libMRML/cc/CSessionManager.cc: Returning error tag
	if unknown session

2001-09-27  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libMRML/cc/CSessionManager.cc(query): 
	* libMRML/cc/CAlgorithmCollection.cc (CAlgorithmCollection): 
	Moving calls to my_throw in a way that they are USED =>
	this makes compilers with good exception handling necessary.

2001-05-31  Wolfgang Mueller  <Wolfgang.Mueller@cui.unige.ch>

	* configure.in: changeing package version number

2001-09-10  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libMRML/cc/CQMultiple.cc: CQMThread gets 
	an additional attribute: mWeight. mWeight
	describes which weight the result obtained
	by this thread should receive. It has to be
	taken care of manually, and it does not cause
	any thing to happen automatically.
	add CQMThread::getWeight function
	(fastQuery): using CQMThread::getWeight() for
	weighting result correctly.

2001-07-30  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libGIFTAcInvertedFile/cc/CAcIFFileSystem.cc: 
	* configure.in: add option --disable-foreign-urls and compiler
	define IGNORE_UNKNOWN_URLS for disabling people's use of URLs 
	that are not part of the collection queried.

	* scripts/perl/gift-url-to-fts.pre-pl (convertURLToFeatureFile): 
	adding a line that logs the external URL along with the time and
	the thumbnail file, as well as the name of the feature file generated

2001-05-08  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libMRML/include/CSessionManager.h (CSessionManager): 
	* libMRML/cc/CSessionManager.cc (CSessionManager): 
	adding a newSession function, that creates a session with a           given ID in case of a user requesting a non-exsistent 
	session.

2001-05-07  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libMRML/cc/CSessionManager.cc: Removed my_throw
	in case of unknown session for query

2001-04-21  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* FeatureExtraction/extract_block_features.c(init_feature_variables): 
	Applied David Squire's bug fix for wrong features
	(int) becomes rint()

	* configure.in: new flag __GIFT_FREE_UNUSED_ACCESSORS
	default is not to free unused accessors, in order to
	increase speed. Real solution to this would be some
	cacheing method.

	(AM_INIT_AUTOMAKE): Changed package version to 0.1.6pre2

2001-05-31  Wolfgang Mueller  <Wolfgang.Mueller@cui.unige.ch>

	* GIFTServer/generateInvertedFile.cc: have to initialise
	gMutex. Otherwise failure in gift-generate-inverted-file when
	doing multi-threading 

2001-05-22  Wolfgang Mueller  <Wolfgang.Mueller@cui.unige.ch>

	* libMRML/cc/CQMultiple.cc (fastQuery): commenting out 
	lTemporary [was unused].

	* scripts/perl/gift-add-collection.pre-pl (wanted): 
	removing ^ in front of second http: s[^http:/][^http://]
	is now s[^http:/][http://]

	* libMRML/cc/CIDRelevanceLevelPair.cc: 
	* libMRML/include/CIDRelevanceLevelPair.h: Added cmath include,
	as well as an author notice
	

	* libMRML/include/CAlgorithm.h(CAlgorithm): 
	* libMRML/cc/CAlgorithm.cc(CAlgorithm): 
	Now we can construct an algorithm not only from another algorithm, but also 
	from an exsisting CXMLElement

	* libMRML/include/CAccessorAdminCollection.h: 
	making private classes public where necessary

	* libMRML/cc/CQueryTreeNode.cc(configure): inAttributes
	is not any more a flat attribute list, but a tree of type
	CXMLElement

2001-04-19  Wolfgang Müller  <Wolfgang.Mueller@cui.unige.ch>

	* libMRML/cc/CAccessorAdmin.cc(closeAccessor): 
	CMutex/gMutex include
	New diagnostics including process ID
	(openAccessor): openclosecounter was not incremented
	when reusing accessor. fixed.

	* libGIFTAcInvertedFile/cc/CAcIFFileSystem.cc (URLToFeatureList): 
	return emty feature list instead of null pointer

	* libGIFTAcInvertedFile/cc/CDocumentFrequencyList.cc: 
	removing mutex from readbinary [should be already mutexed]
	(CDocumentFrequencyList) in default constructor, create array
	of one element to avoid segfault? removed assertion that
	makes the program fail in any case.

	* libMRML/cc/CMutex.cc (CMutex): printing out
	the lock pids

	* libGIFTAcInvertedFile/cc/CDocumentFrequencyList.cc(readBinary)	: 
	printing out the pid.

	* libMRML/include/CQueryTreeNode.h: changed
	CSelfDestructionPointer<CAlgorithm>
	CSelfDestructionPointer<CQuery>
	to CAlgorithm* CQuery* respectively

	* libMRML/cc/CQueryTreeNode.cc(~CQueryTreeNode): 
	Destroying mContent and mAlgorithm by hand
	to control destruction sequence

	* GIFTServer/Makefile.am: removed references
	to gift-debug-test

2001-04-17  Wolfgang Müller  <Wolfgang.Mueller@cui.unige.ch>

	* libGIFTQuInvertedFile/cc/CQInvertedFile.cc: added decent 
	destructor which closes the accessor on destruction

	* libGIFTAcInvertedFile/cc/CAcIFFileSystem.cc: changing
	local to global mutex

	* libMRML/cc/CCommunicationHandler.cc (endMultiRequest): 

2001-02-02  Wolfgang Müller  <Wolfgang.Mueller@cui.unige.ch>

	* configure.in: Changing quotes "" to [] in all calls
	of AC_MSG

2001-04-12  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libMRML/cc/CXMLElement.cc(clone): changeing
	copy() instruction to use of CAttributeList
	copy constructor.

	* libMRML/cc/CXMLElementBuilder.cc: adding empty
	default constructor

2001-04-11  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libMRML/cc/Makefile.am (libMRML_la_SOURCES): 
	adding CXMLElementBuilder to this list

2001-04-09  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* configure.in(CXXFLAGS): set flags for efence
	

	* libMRML/cc/CAttributeList.cc: took out a couple
	of checknprints as well as a call to check()

2001-04-05  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* configure.in: allow full multithreading

	* libMRML/cc/CAttributeList.cc: changing some
	printouts to asserts to increase speed.

2001-04-04  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libMRML/cc/CDebuggingMemoryManager.cc: 
	* libMRML/include/CDebuggingMemoryManager.h: 
	* libMRML/include/myNew.h: 
	* GIFTServer/Server.cc: 
	replacing memory management in order to have a better view
	on what happens in memory. part of memory overwrite problems
	and their solutions (hopefully).

	* libMRML/cc/CSessionManager.cc(setActiveAlgorithm): 
	* libMRML/cc/CAlgorithmCollection.cc(makeDefaultAlgorithm): check
	the default algorithm.
	

2001-04-03  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libMRML/cc/CMagic.cc: adding to assertion some
	printout to cout

	* libMRML/cc/CAttributeList.cc: 
	adding mutex locks
	
2001-03-29  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libMRML/include/CXMLElement.h: 
	adding mMutex

	* libMRML/cc/CQMultiple.cc: put back copying of
	CXMLElement on construction of CQMThread
	the help-gplusplus mailing list suggests there is
	a severe problem in bastring. quite a number of
	people report mystical problems. The general strategy
	is now to avoid synchronous reads on string 
	incarnations.

2001-03-28  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* configure.in:
	* libMRML/cc/CQMultiple.cc: 
	added  __GIFT_CQMULTIPLE_TREADS__
	 __NO_GIFT_CQMULTIPLE_TREADS__

	* configure.in:
	* GIFTServer/Server.cc: 
	added  __GIFT_SERVER_TREADS__
	 __NO_GIFT_SERVER_TREADS__


	* configure.in:
	* libMRML/cc/CQMultiple.cc: 
	* libMRML/cc/CMutex.cc: 
	* libMRML/include/CMutex.h: introduced new flag
	__GIFT_USES_THREADS__ instead of stupid use of
	HAVE_LIBPTHREAD

	* scripts/emacs-lisp/gift-compile-current.el (gift-Utomake): 
	splitting concat strings in another way to make commenting 
	options easier

2001-04-02  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libMRML/cc/CAttributeList.cc: 
	For verifying if there some bugs which seem
	to reside in the string classes kill the GIFT, 
	I am changing the type etc. of the attribute
	list to char wherever possible

	I am starting out with changing map<string,string>
	to map<string,char*> which is the easiest for
	going to map<char*,char*> I have to write a comparison
	operator

2001-03-14  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libMRML/include/CXMLElementBuilder.h: 
	* libMRML/cc/CXMLElementBuilder.cc: added #ifdefs
	around debugging printouts
	
2001-03-27  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libMRML/cc/CQMultiple.cc: cut out lone of CQuery
	in CQMThread

	* libMRML/cc/CAttributeList.cc: checking if attributes
	are longer than 200 char.

	* libMRML/cc/CTimeStampGenerator.cc (generateTimeStamp): 
	added lock/unlock

	* libMRML/cc/CCommunicationHandler.cc(readAndParse): 
	adding expressive debugging printouts to cerr§

	* scripts/perl/CFeedbackClient.pre-pm (addCollection): 
	Uncommented if $vDEBUG{addCollection};
	Applied Patch by Henning Müller:
	He sais:
	this patch basically changes two things. It adds 
	a new flag to the debug options, so I can block 
	any output on the screen in CFeedbackClient. I
	just called it others, so it does not conflict 
	with any of yours.
	The other problem I had when using the benchmark
	test was an error with an access to an undefined 
	hash element in getAlgorithm. I check wether this 
	element is defined and if not, I sent adefault back.

2001-03-26  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* GIFTServer/Server.cc: commented lock/unlock pair
	in processMessage
	
	* configure.in: Added -D_PTHREADS for multithreading
	

2001-03-23  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libMRML/cc/CQuery.cc (query): added mutex lock

	* scripts/perl/gift-add-collection.pre-pl: 
	Collections reference url2fts, however, the file
	name must be url2fts.xml

2001-03-22  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libMRML/cc/CCommunicationHandler.cc: 
	Currently each connection mutex-locks. I.e.
	multithreading is only used in CQMultiple.cc
	
	* libMRML/include/CXMLElement.h: Tracking misterious
	stuff happening when multithreading. Adding mutex
	to CXMLElement.

2001-03-21  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libMRML/cc/CQMultiple.cc (fastQuery): 
	I seem to have solved a problem regarding a leak
	of ressources when doing multi threading. You can
	find further description in the comment EX-LEAK

2001-03-08  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* GIFTServer/Server.cc: Teardown: tries to read
	all characters (includin junk) from the other side 
	before finally closing the socket.

	* scripts/perl/gift-start.pre-pl: a log of the 
	PRINTOUT of each gift instance goes now to a
	temporary file of the type gift$PID.tmplog
	$PID being the proces id of the instance of 
	gift-start.pre-pl (NOT the instance of the GIFT)

2001-03-07  MUELLER Wolfgang  <muellerw@cui.unige.ch>


	* dtd/mrml.dtd: added cui-time-stamp tag with 
	calendar-time attribute

	* libMRML/cc/Makefile.am: corresponding changes

	* libMRML/include/CTimeStampGenerator.h: 
	* libMRML/cc/CTimeStampGenerator.cc: 
	Added these files. A CTimeStampGenerator is made for
	generating time stamps

	* libMRML/cc/CSessionManager.cc(openSession): When opening 
	session, add session-name and user-id to the resulting
	<ackn-session-op ...> element. This resolves some ambiguities 
	in parsing log files. This is OPTIONAL MRML.
	
2001-03-02  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libMRML/include/CXMLElementBuilder.h: 
	* libMRML/cc/CXMLElementBuilder.cc: Added this class
	it builds an XML tree from a string. This currently is
	done within CCommunicationHandler, but I found I am using
	this about everywhere, so I put it into a special class.

	* libMRML/include/CCommunicationHandler.h: 
	small changes in the comments

2001-02-21  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* scripts/perl/gift-add-collection.pre-pl (wanted): adding
	code for URL escaping.

	* scripts/perl/gift-start.pre-pl (REAPER): added reaper
	to get rid of annoying problem in gift-start

2001-02-15  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libGIFTAcInvertedFile/cc/CDocumentFrequencyElement.cc: 
	_NO_PRINTOUT_WRITE_BINARY ifdeffed out annoying printouts
	on writing

	* libGIFTAcInvertedFile/include/merge_sort_streams.h: 
	replaced "int" by streampos to follow linux's evolution

	* libGIFTAcURL2FTS/cc/CAcURL2FTS.cc (CAcURL2FTS): 
	made lBuffer a global variable. FIXME: it's not elegant
	to slurp in the whole thing at once.

	* GIFTServer/Makefile.am:
	* configure.in: UNPUBLISHED_DIR contains
	now the name of the unpublished directory
	AND the -L flags. This is a fix for libtool
	problems I had
	

2001-02-13  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* GIFTServer/generateInvertedFile.cc (main): 
	changed url2fts to url2fts.xml

2001-02-06  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* scripts/perl/gift-add-collection.pre-pl (wanted): 
	changing the argument list in the "system" calls to
	avoid shell escapes and misinterpretation of 
	spaces.

	* scripts/perl/gift-start.pre-pl:
	new file. This script starts up the GIFT, and sends out
	mails if the gift goes down.

2001-02-05  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libGIFTAcURL2FTS/cc/CAcURL2FTS.cc: changed XML Error
	message to give information in which file the error 
	occured.

	* scripts/perl/CXTVWriter.pre-pm: 
	use CXMLTreeVisitor;

2001-01-31  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libGIFTAcInvertedFile/cc/CAcIFFileSystem.cc (_NO_CONSISTENCYPRINT):
	(_NO_CHECK_CONSISTENCY): These defines block some annoying
	checks and check printouts, that are done when indexing
	collections, and which take MUCH longer than the indexing
	itself.

	* scripts/perl/Makefile.am (distclean): Added this target.
	It does the same as make clean in this directory

	* libMRML/cc/CCommunicationHandler.cc(parseString): do not
	exit on XML error

	* libMRML/cc/CAlgorithmCollection.cc (CAlgorithmCollection): 
	* libMRML/cc/CAccessorCollection.cc(CAccessorCollection): added to
	printout on XML error.

	* GIFTServer/Makefile.am: remove data_DATA line

2001-01-24  Wolfgang Mueller  <Wolfgang.Mueller@cui.unige.ch>

	* configure.in: replaced all "CPPFLAGS" by
	"CXXFLAGS"
	$CC pthread-compile-test-program.cc uses
	LDFLAGS now.

2001-01-23  Wolfgang Mueller  <Wolfgang.Mueller@cui.unige.ch>

	* GIFTServer/Makefile.am(gift_LDADD): changed link sequence
	we need to link libMRML first. Otherwise the perl stuff does
	not get linked correctly

2001-01-11  Wolfgang Müller  <muellerw@cui.unige.ch>

	* scripts/perl/CXMLTreeBuilder.pm (handleChar): added ?
	after newline in regexp. makes me catch more whitespace
	text nodes.

2001-01-03  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libGIFTQuBayesian/cc/Makefile.am (libGIFTQuBayesian_la_SOURCES): 
	Renamed CIFQuickAndDirtyHunter to CQTracker.
	
	* libGIFTQuBayesian/cc/CIFQuickAndDirtyHunter.cc:
	* libGIFTQuBayesian/include/CIFQuickAndDirtyHunter.h:
	* libGIFTQuBayesian/cc/CQTracker.cc:
	* libGIFTQuBayesian/include/CQTracker.h:
	Renamed CIFQuickAndDirtyHunter to CQTracker. This fits
	the naming scheme, it's shorter, and it meeds the case better.

2000-12-29  Wolfgang Müller  <muellerw@cui.unige.ch>

	* scripts/emacs-lisp/gift-compile-current.el (gift-associated): 
	Change routines for finding associated files so that they
	cope also with flat directory structures.
	(gift-switch-to-associated-h): 

2000-12-28  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libGIFTAcURL2FTS/include/CAcURL2FTS.h: 
	* libGIFTAcURL2FTS/cc/CAcURL2FTS.cc:
	adding the functions newStartURL2FTSElement
	newEndURL2FTSElement in order to read url2fts.xml
	files.

	* scripts/perl/gift-add-collection.pre-pl: 
	Making this script xml-ready.

2000-12-24  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libMRML/cc/CXEVCommunication.cc: 
	changed include CCommunicationHandler

2000-12-23  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libMRML/cc/Makefile.am (libMRML_la_SOURCES): 
	* GIFTServer/Makefile.am (gift_SOURCES): 
	* GIFTServer/CCommunicationHandler.cc:
	* GIFTServer/CCommunicationHandler.h:
	* libMRML/cc/CCommunicationHandler.cc:
	* libMRML/include/CCommunicationHandler.h:
	moved CCommunicationHandler.cc to libMRML

2000-12-20  Wolfgang Müller  <muellerw@cui.unige.ch>

	* scripts/perl/gift-add-collection.pre-pl: 
	appending an "/" to lIndexPrefix. We assume
	that the path ends with a "/" throughout the
	program.
	

2000-12-15  Wolfgang Müller  <muellerw@cui.unige.ch>

	* scripts/emacs-lisp/gift-compile-current.el (gift-Utomake): 
	(gift-Itomake): use --enable-multi-threading option

	* NEWS: news.

	* Doc/gift-guide.sgml: documented new options of
	configure. Erased "done" items from "to-do" list.
	
	* configure.in: created --enable-multi-threading 
	option. 

2000-12-14  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libGIFTQuPerl/cc/plug_in_fo.cc: surrounding
	the whole file with #ifdef __GIFT_WITH_PERL__

2000-12-13  Wolfgang Müller  <muellerw@cui.unige.ch>

	* Doc/Makefile.am (CLEANFILES): Don't remove 
	gift-guide.txt and configuring-and-hacking-the-gift.txt
	these files are part of the distribution. Now.

	* README: New short readme for the impatient

	* configure.in: Making gift-install-prerequisites.pl
	part of the configuration process.

	* Doc/gift-guide.sgml (Caveat): Adding and changing
	some parts about the installation procedure which
	has become much nicer.

	* gift-install-prerequisites.pl: added this file
	it automatically installs all software prerequisites.
	that are needed by the GIFT.

2000-12-10  Wolfgang Müller  <muellerw@cui.unige.ch>

	* dtd/Makefile.am: making automatically 
	libMRML/cc/mrml_const.cc and libMRML/include/mrml_const.h
	and mrml_const.java using scripts/perl/gift-dtd-to-keywords.pl
	
	* Makefile.am (SUBDIRS): changing sequence. make
	scripts first, then dtd, then libraries. 

2000-12-07  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libMRML/cc/CAlgorithm.cc(getInheritsFrom):
	* libMRML/include/CAlgorithm.h(getInheritsFrom):
	added

2000-12-06  Wolfgang Müller  <muellerw@cui.unige.ch>

	* GIFTServer/CCommunicationHandler.cc(waitReadStream):
	Added error handling

	* GIFTServer/CCommunicationHandler.h: A mutex for
	the communication handler makes sure that
	no two threads write to the log in the same moment.
	

2000-12-05  Wolfgang Müller  <muellerw@cui.unige.ch>

	* GIFTServer/Server.cc: waiting for eof from
	client for better teardown

	* GIFTServer/CCommunicationHandler.cc(waitReadStream): removed
	&lWaitingTime from read wait
	

2000-12-01  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libGIFTAcInvertedFile/include/CAcIFFileSystem.h: 
	improving doc of the constructor

	* Doc/Makefile.am: New targets and new cleanfiles
	for making more documentation
	(noinst_DATA): Now the documentation is automatically made.
	(system-doc): Doxyfile is a precondition for the target.

	* Doc/Doxyfile (MAN_EXTENSION): 
	Manpages into 3gift

	* configure.in: replacing kdoc by doxygen.

2000-11-30  Wolfgang Müller  <muellerw@cui.unige.ch>

	* scripts/perl/gift-url-to-fts.pre-pl (convertURLToFeatureFile): 
	did not give __BINDIR__ for gift-extract-features

	* libMRML/cc/CQMultiple.cc(fastQuery): Giving something
	to do for the main thread
	(CQMThread): adding function callFunction which does
	not spawn a thread

	* scripts/perl/gift-add-collection.pre-pl: 
	lDatabaseName became lCollectionName
	Reading DOT_FILE .gift-add-collection
	Primitive variable reprlacement
	Moved generation/copying of configuration files behind
	processing of the --help option

2000-11-29  Wolfgang Müller  <muellerw@cui.unige.ch>

	* configure.in: Now doing explicit check for being
	able to lock recursively.

	* libGIFTAcInvertedFile/cc/CAcIFFileSystem.cc (URLToFeatureList): 
	adjusted path to new directory.h [bugfix relative to unreleased
	version].

2000-11-28  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libMRML/cc/CSessionManager.cc: 
	* libMRML/include/CSessionManager.h:
	making CSession threadsafe:
	mMutexSession

	* libGIFTAcURL2FTS/include/CAcURL2FTS.h: 
	* libGIFTAcURL2FTS/cc/CAcURL2FTS.cc: 
	analog: adding mMutexURL2FTS
	
	* libGIFTAcHierarchy/include/CAcHierarchy.h: 
	adding mMutexHierarchy

	* libGIFTAcHierarchy/cc/CAcHierarchy.cc: adding
	mMutexHierarchy.lock()/unlock() to all functions

2000-11-27  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libMRML/cc/CQMultiple.cc: added function doQueryThread. 
	This function is supposed to run in a spawned thread.

	* configure.in: Added check for POSIX threads
	Changing versioning for libraries

	* GIFTServer/Makefile.am (gift_generate_inverted_file_LDADD): 
	Changing library paths to match reality...

	* GIFTServer/Server.cc (main): moving the construction
	of gHandler into the socket listening loop

	* GIFTServer/CCommunicationHandler.h: 
	* GIFTServer/CCommunicationHandler.cc: 
	Changed constructor to take the session manager
	as parameter, as well as the ostream of the logfile.
	The corresponding members become references instread
	of auto variables.
	Deleted unused members mSessionFile mConfigFile

	* GIFTServer/CCommunicationHandler.cc: 
	* libMRML/cc/CXEVCommunication.cc: 
	* libMRML/include/CXEVCommunication.h: 
	Disentangling the two classes in order to prepare them
	for multithreading.

	* libMRML/cc/CSessionManager.cc: Instead of throwing
	exceptions giving back error message in case
	of unknown session. Advantage: easier multithreading.

2000-11-24  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libGIFTAcInvertedFile/cc/CAcIFFileSystem.cc: 
	adding lock/unlock calls to all functions

	* libMRML/include/CAccessor.h: Beginning to add
	multithreading using posix threads. Adding
	conditionally a lock/unlock, and a mutex.
	
	

2000-11-22  Wolfgang Müller  <muellerw@cui.unige.ch>

	* Doc/Makefile.am (CLEANFILES): the automatically
	generated documentation will now be deleted before
	shipping.

	* Doc/autoDoc/HTML: 
	* Doc/autoDoc/TeX:
	Deleted.

	* libGIFTAcInvertedFile/cc/Makefile.am:
	* libMRML/cc/Makefile.am:
	* libGIFTAcInvertedFile/cc/CAcIFFileSystem.cc (URLToFeatureList): 
	* libMRML/cc/CAccessorCollection.cc: These files
	now use directory.h . This makes the use of
	pre-cc obsolete. Makefile.am-s changed accordingly.

2000-11-21  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libMRML/include/CAccessorFactory.h(closeAccessor): 
	* libMRML/cc/CAccessorFactory.cc(closeAccessor): 
	Added closeAccessor function
	
	* libMRML/include/CAccessorProxy.h(CContent): 
	* libMRML/cc/CAccessorProxy.cc(openAccessor): 
	* libMRML/include/CAccessorFactoryContainer.h(CContent): 
	* libMRML/cc/CAccessorFactoryContainer.cc(openAccessor): 
	Moved the open/close-accessor logic from the
	factory container to the accessor proxy.
	Affects openAccessor in both classes, as well
	as the definition of a map which administrates this logic.
	This is mContent of type CContent

	* libMRML/include/CAccessorFactoryContainer.h: 
	* libMRML/cc/CAccessorFactoryContainer.cc: 
	Changed params of CAccessorFactoryContainer::configure
	to CXMLElement* [was const].

2000-11-20  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libMRML/include/Makefile.am: 
	* libMRML/Makefile.am: 
	generating a file directory.h from ./configure results
	in order to get around this ugly pre-cc business
	
	
	* GIFTServer/Makefile.am: Added remark
	that CAcPerl and CQuPerl HAVE to be linked
	at linking time.

	* libMRML/include/CAccessorFactoryContainer.cc: 
	* libMRML/cc/CAccessorFactoryContainer.cc: 
	Some aftermath of cleaning the accessorfactorycontainer business up.
	CAccessorFactoryContainer::openAccessor needed a new parameter.
	changed call to openAccessor
	
	* libMRML/cc/CAFPlugin.cc: 
	* libMRML/include/CAFPlugin.h: 
	Added these files. They implement an accessor Factory which
	functions for plugged-in accessors.
	
	* libMRML/cc/CAccessorFactoryContainer.cc: 
	Receives now a parameter which is an XML parse
	tree. This tree is scanned for names of directories.
	These directories will be scanned for plugins.
	Changed error message, if a plugin is registered twice



2000-11-18  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libMRML/cc/CAccessorFactoryContainer.cc: Made
	a constructor for this function

2000-11-17  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libMRML/cc/CAlgorithmCollection.cc:
	* libMRML/cc/CAccessorCollection.cc:
	  ifdef-ed out some debugging printout
	
	* libMRML/include/CAccessorCollection.h: 
	* libMRML/cc/CAccessorCollection.cc: unused function
	  getAllQueryMethods deleted

	* libMRML/cc/CAccessorProxy.cc(constructor): 
	emptied constructor of things which are realy none of
	CAccessorProxy's business [moved into 
	CAccessorFActoryContainer]
	(constructor): Gets new parameter inFactoryContainer

	* libMRML/cc/CAccessorCollection.cc(constructor):
	Give mFactory as parameter to new new CAccessorProxy

	* libMRML/include/CAccessorCollection.h: mFactory
	becomes new member

	* libMRML/cc/CDynamicBaseTypeFactory.cc: 
	Two query engines are not plugins CQPerl and CQMultiple.
	CQMultiple will be used too often, and CQPerl would be
	only doable if we could count on libPerl being present
	on the system.
	Now I consider CQuery plugins working. Tomorrow we
	do the same with CAccessors.

	* libMRML/cc/CBaseTypeFactory.cc (makeQuery): ifdef-ed out
	this function if LINK_DYNAMICALLY

	* libMRML/cc/CSessionManager.cc(makeQuery):
	call works without algorithm collection now

	* libMRML/cc/CAlgorithmCollection.cc: 
	* libMRML/include/CAlgorithmCollection.h: mFactory
	removed. becomes inFactory in makeQuery, which means
	that makeQuery has become quite obsolete

	* libMRML/cc/CAlgorithmCollection.cc (constructor): 
	Takes now a CBaseTypeFactory as parameter

	* libMRML/include/CDynamicBaseTypeFactory.h: Is now inherited
	from CBaseTypeFactory

	* libMRML/include/CBaseTypeFactory.h: making makeQuery
	virtual

	* libMRML/include/CSessionManager.h (class CSessionManager): 
	Added mBaseTypeFactory

	* libMRML/cc/CSessionManager.cc(setActiveAlgorithm): 
	added inBaseTypeFactory to the call, handed through
	to buildQueryTree
	

	* libMRML/include/CQueryTreeBuilder.h: 
	* libMRML/cc/CQueryTreeBuilder.cc: 
	Added an inBaseTypeFactory parameter to the configure
	call. and to the buildQueryTree function.
	

	* libMRML/include/CQueryTreeNode.h: Things are getting
	hot. I removed mFactory from CQueryTreeNode. This 
	design is not compatible to the idea of having external
	plugins.

	Added an inBaseTypeFactory parameter to the configure
	function.

	* libMRML/include/CAlgorithmCollection.h:
	* libMRML/include/CAlgorithmCollection.cc:
	Changed things that dependent on the -DLINK_DYNAMICALLY
	flag, either the classic CBaseTypeFactory or the
	new CDynamicBaseTypeFactory is used

	* libMRML/cc/Makefile.am:
	Added the aforementioned files
	
	* libMRML/cc/CQueryPlugin.cc: 
	* libMRML/include/CQueryPlugin.h: 
	* libMRML/include/CDynamicBaseTypeFactory.h: 
	* libMRML/cc/CDynamicBaseTypeFactory.cc: 
	New files: The dynamic pendant to CBaseTypeFactory. It scans
	a directory for suitable .so-s and then calls their plug_in_fo
	functions. This gets stored in CQueryPlugin objects.
	
	* libGIFTQuHierarchy/cc/plug_in_fo.cc: 
	* libGIFTQuInvertedFile/cc/plug_in_fo.cc: 
	* libGIFTQuPerl/cc/plug_in_fo.cc: 
	New files. This file contains functions to be used
	as plugin information.
	
2000-11-16  Wolfgang Müller  <muellerw@cui.unige.ch>

	* GIFTServer/CCommunicationHandler.cc: 
	moved the "ID administration subsystem"
        TID gID; to libMRML/cc/CSessionManager.cc



2000-11-15  Wolfgang Müller  <muellerw@cui.unige.ch>

	* GIFTServer/Server.cc: Cleaned include list
	and added CAcURL2FTS accessor

	* GIFTServer/CCommunicationHandler.h: Cleaned the include list
	* GIFTServer/CCommunicationHandler.cc: Cleaned the include list

	* libGIFTAcInvertedFile/include/CAcIFMySQL.h: 
	added include of CAcURL2FTS

	* libMRML/include/CAccessor.h: 
	* libGIFTAcInvertedFile/include/CAcInvertedFile.h: Slimmed list of includes

	* GIFTServer/Makefile.am: 
	(gift_LDADD): removed @PERL_LD_ADD@ from this target and put it
	into libInvertedFile_la_LIBADD

	* libInvertedFile/cc/Makefile.am (libInvertedFile_la_LIBADD): 
	created this target.

	* GIFTServer/CSelfDestroyPointer.h (CSelfClonePointer): 
	Added <T> to CSelfClonePointer

	* CAccessor.h:
	* CAccessorCollection.h:
	* CAccessorElement.h:
	* CAccessorFactory.h:
	* CAccessorFactoryContainer.h:
	* CAccessorProxy.h:
	* CAlgorithm.h:
	* CAlgorithmCollection.h:
	* CAttributeList.h:
	* CBaseTypeFactory.h:
	* CIDRelevanceLevelPair.h:
	* CIDRelevanceLevelPairList.h:
	* CMagic.h:
	* CPropertySheetList.h:
	* CRelevanceLevel.h:
	* CRelevanceLevelList.h:
	* CSessionManager.h:
	* CXEVCommunication.h:
	* CXEVTripletList.h:
	* CXMLElement.h:
	* CXMLElementVisitor.h:
	* CXMLHelper.h:
	* GIFTExceptions.h:
	* mrml_const.c:
	moved these files from libInvertedFile/include to libMRML/include

	* CAccessor.cc:
	* CAccessorCollection.cc:
	* CAccessorElement.cc:
	* CAccessorFactory.cc:
	* CAccessorFactoryContainer.cc:
	* CAccessorProxy.cc:
	* CAlgorithm.cc:
	* CAlgorithmCollection.cc:
	* CAttributeList.cc:
	* CBaseTypeFactory.cc:
	* CIDRelevanceLevelPair.cc:
	* CIDRelevanceLevelPairList.cc:
	* CMagic.cc:
	* CPropertySheetList.cc:
	* CRelevanceLevel.cc:
	* CRelevanceLevelList.cc:
	* CSessionManager.cc:
	* CXEVCommunication.cc:
	* CXEVTripletList.cc:
	* CXMLElement.cc:
	* CXMLElementVisitor.cc:
	* CXMLHelper.cc:
	* GIFTExceptions.cc:
	* mrml_const.c:
	moved these files from libInvertedFile/cc to libMRML/cc
	
	* libMRML/Makefile.am: created

	* configure.in: added entry for libMRML. This library will
	contain all the MRML-specific parts of the GIFT, i.e. the
	framework. I will subsequently break down libInvertedFile
	into smallerlibs which will eventualley end up as plugins.

	* GIFTServer/Server.cc: 
	* GIFTServer/CCommunicationHandler.cc: 
	moved sendMessage and readMessage from Server.cc to 
	CCommunicationHandler.cc in order to solve linking problems
	when using dynamic libraries
	
	* scripts/emacs-lisp/gift-compile-current.el (gift-GIFTServerMake): 
	Changed this function to do what the name sais 
	[quite a change, actually]. It now does the same as Utomake, but
	without configuring first.

	* GIFTServer/Makefile.am: adding -L$(libdir) to a 
	number of targets.

	* configure.in: restructured the file to use 
	libtool, inspired by the libtool demo

2000-11-12    <muellerw@pc71114.unige.ch>

	* scripts/perl/CGLDistanceMatrix.pre-pm: created

	* scripts/perl/CXTVWriter.pre-pm: moved 'use lib'
	statement out of CXTVWriter

2000-11-11    <muellerw@pc71114.unige.ch>

	* libInvertedFile/include/CAcDistanceMatrix.h: 

	* GIFTServer/obsolete.cc:
	removed this file

2000-11-09    <muellerw@pc71114.unige.ch>

	* GIFTServer/gift-config/gift-config.pre-mrml(m/$lTheLine/):
	Changed query-paradigm tag. now clear that the types
	inverted-file and perl-demo can be used

	* scripts/perl/gift-add-collection.pre-pl (wanted): 
	deleted this line from collection tag
	cui-perl-script-file="__BINDIR__/CGIFTLinkDemo.pl"
	it is rather part of the algorithm tag

	* GIFTServer/gift-config/gift-config.pre-mrml: Setting
	pruning to 70% of the features as default, except
	for histogram features

	* libInvertedFile/include/CAcURL2FTS.h: Adding friend
	entry for CAcIFFileSystem.

	* libInvertedFile/cc/CAcIFFileSystem.pre-cc (checkConsistency): 
	Function did not compile (was defined out)
	
	* libInvertedFile/cc/CAcIFFileSystem.pre-cc (FeatureToList): 
	* libInvertedFile/cc/CAcIFFileSystem.pre-cc (getFeatureFile): 
	Removing old emulation of read binary for lists

	* libInvertedFile/cc/CDocumentFrequencyList.cc: 
	Cleaning up: making readBinary read also into a list

	* libInvertedFile/cc/CQInvertedFile.cc(buildQueryHash): 
	Cleaning error-prone redundancies.

2000-11-04    <muellerw@pc71114.unige.ch>

	* expat/Makefile (check): Adding a message
	into the expat makefile, along with the check
	target. Presently we do not run any
	checking, but at least the target should run 
	through.

2000-10-30  Wolfgang Müller  <muellerw@cui.unige.ch>

	* CAcInvertedFile.cc:
	* CAcInvertedFile.pre-cc:
	Files obsolete: deleted

	* GIFTServer/gift-config/gift-config.pre-mrml: 
	cui-perl-package attribute added

	* GIFTServer/gift-config/Makefile.am (data_DATA): 
	Removed InvertedFileFeatureDescription.db

	* GIFTServer/gift-config/gift-config.pre-mrml: 
	Changed line for cui-perl-script-file to reflect
	new perl embedding architecture and the
	location of gift-add-collection.pre-pl

	* scripts/perl/gift-add-collection.pre-pl: 
	Added part which automatically adds 
	gift-embed-perl-modules.pl

	* IFFDBase.db:
	* InvertedFileFeatureDescription.db:
	Deleted. They are now automatically generated
	during installation.
	
	
2000-10-29  Wolfgang Müller  <muellerw@cui.unige.ch>

	* Doc/Makefile.am (system-doc): Removed 
	"../libBayesian/include/*.h" from kdoc call.
	We cannot ship libBayesian, because we have
	to clear that yet (possible patents of others).

	* libInvertedFile/cc/CQPerl.cc (CQPerl): Changing
	completely the way CQPerl works. Reason for this are
	inherent memory leaks in the current version.

	* libInvertedFile/cc/CDocumentFrequencyList.cc: 
	Cured small bugs end(), end()const, setEnd()

	* libInvertedFile/cc/CAcPerl.cc: Adding destructor

2000-10-25  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libInvertedFile/include/CSelfDestroyPointer.h: 
	Bracketed out some debugging output: ifdef 
	_DEBUG_SELF_DESTROY_

	* scripts/perl/CXTVWriter.pre-pm (initialize): 
	Setting data mode in XML::Writer

2000-10-23  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libInvertedFile/cc/CAcInvertedFile.cc: The whole file
	was already commented out. These comments are now deleted
	inorder to de-obfuscate the line count

	* libInvertedFile/include/CXMLElement.h: Made destructor of
	CXMLElement virtual

	* libInvertedFile/include/CQuery.h: Made destructor of
	CQuery virtual.

	* libInvertedFile/include/CAccessor.h: Made destructor of
	CQuery virtual.

	* libInvertedFile/cc/CSessionManager.cc: added deleteSession
	function. 
	(setActiveAlgorithm): have to delete old mQueryTree before
	constructing new one.

	* libInvertedFile/cc/CXEVCommunication.cc: activated 
	delete-session signal.
	

	* libInvertedFile/cc/CAcIFFileSystem.pre-cc (FeatureToList): 
	Noticed that I have not used the readBinary function from the 
	CDocumentFrequencyList class. I am using it now.

	* libInvertedFile/cc/CQInvertedFile.cc(buildQueryHash): 
	* libInvertedFile/cc/CInvertedFileChunk.cc (writeBinary): 
	Replacement code for vector<CDocumentFrequencyElement>::push_back

	* libInvertedFile/include/CDocumentFrequencyList.h:
	* libInvertedFile/cc/CDocumentFrequencyList.cc:
	Adding functions to mimick STL, as well as function
	setEnd.

2000-10-22  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libInvertedFile/cc/CAcIFFileSystem.pre-cc: 
	Changed ifdef CDocumentFrequencyListIsVector to 
	ifndef CDocumentFrequencyListIsList

	* libInvertedFile/include/CDocumentFrequencyList.h: 
	* libInvertedFile/cc/CDocumentFrequencyList.cc: 
	Added a destructor + debugging code which counts up/down
	if the CDocumentFrequencyLists are properly 
	allocated/deallocated
	Replaced the use of vectors by the use of arrays
	

	* libInvertedFile/include/CWeightingFunctionPointerHash.h: 
	added function clear.

	* libInvertedFile/include/CXMLElement.h: 
	* libInvertedFile/cc/CXMLElement.cc: 
	Added destructor ~CXMLElement

	* libInvertedFile/include/CSessionManager.h: 
	* libInvertedFile/cc/CSessionManager.cc: 
	Added destructor for CSession
	(CSessionManager::closeSession): deleting the 
	session when closing for avoiding memory leaks.

	* libInvertedFile/include/CQueryTreeBuilder.h: 
	Changed type of CQueryContainer. Was before 
	map<string,CSelDestroyPointer<CQueryTreeNode> >
	This would lead to double destruction.

	* libInvertedFile/cc/CQueryTreeNode.cc: 
	* libInvertedFile/include/CQueryTreeNode.h: mContent
	changed type to CSelfDestroyPointer<CQuery>, i.e.
	it will be automatically destroyed on the destruction
	of the query tree. Had to put in some static_cast<CQuery*>
	in the cout ... lines.

2000-10-13  Wolfgang Müller  <muellerw@cui.unige.ch>

	* configure.in: instead of changing LD_FLAGS
	the check for perl now creates a new autoconf
	variable PERL_LD_ADD.
	(GIFTServer/Makefile.am): PERL_LD_ADD is used for
	linking gift. The standard method (LD_FLAGS) does not 
	work for reasons of sequence dependencies.

2000-10-12  Wolfgang Müller  <muellerw@cui.unige.ch>

	* configure.in: bugfix
	-D__GIFT_WITH_MYSQL__ to -D__GIFT_WITH_PERL__
	in perl expression

2000-10-10  Wolfgang Müller  <muellerw@cui.unige.ch>

	* scripts/perl/gift-add-collection.pre-pl: 
	help does not get called before anything happens.
	BAD. Changed this my moving a call to mkdir.
	(wanted): Added making a path to the thumbnail
	if necessary.

2000-10-09  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libInvertedFile/cc/xs_init.cc: 
	ifdef __GIFT_WITH_PERL__ comments out
	Perl-specific-parts, if needed.

	RELEASE 0.1.4 here
	
2000-10-08  Wolfgang Müller  <muellerw@cui.unige.ch>

	* scripts/perl/gift-add-collection.pre-pl (wanted): changed
	regexp which checks for image file name extensions to case 
	insensitive

	* Doc/gift-guide.sgml (Caveat): 
	This file was changed to make it more readable
	and to reflect some new features.

2000-10-06  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libInvertedFile/cc/Makefile.am: 

	* scripts/perl/gift-add-collection.pre-pl: 
	adding option --gift-home to specify a location
	for the configuration directory other than home,
	if the environment variable $GIFT_HOME is not set.

	* libInvertedFile/cc/CMatrix.cc:
	* libInvertedFile/include/CMatrix.h:
	* libInvertedFile/cc/CWeightedFeature.cc:
	* libInvertedFile/include/CWeightedFeature.h:
	* libInvertedFile/cc/CMatrixWithEigenVectors.cc:
	* libInvertedFile/include/CMatrixWithEigenVectors.h:
	* libInvertedFile/cc/Makefile.am (libInvertedFile_a_SOURCES): 
	removed CMatrix.cc CMatrixWithEigenVectors.cc 
	CWeightedFeature.cc as they are currently unused (old idea).

	* scripts/perl/gift-socket-workaround.pre-pl: 
	* scripts/perl/Makefile.am: 
	Removed gift-socket-workaround.pre-pl and related targets

	* libInvertedFile/cc/CAccessorProxy.cc: 
	* libInvertedFile/include/CAccessorProxy.h: 
	* libInvertedFile/include/CAFPerl.h: 
	* libInvertedFile/cc/CAFPerl.h: 
	* libInvertedFile/cc/CBaseTypeFactory.cc (makeQuery): 
	* libInvertedFile/include/CAcPerl.h: 
	* libInvertedFile/cc/CAcPerl.h: 
	* libInvertedFile/include/CQPerl.h: 
	* libInvertedFile/cc/CQPerl.cc: 
	ifdef __GIFT_WITH_PERL__ comments out
	Perl-specific-parts, if needed.

	* libInvertedFile/cc/Makefile.am (INCLUDES): 
	removed @PERL_CC_ADDITIONS@ 

	* GIFTServer/Makefile.am (gift_LDFLAGS): removed
	(gift_LDADD): removed @PERL_LD_ADDITIONS@ 

	* libInvertedFile/cc/Makefile.am (INCLUDES): 
	removed @MY_SQL_PLUS@ @MY_SQL@ 

	* configure.in: got rid of ugly perl code stuff. Implemented
	real test if -lsqlplus is there and working same for includes

	* scripts/emacs-lisp/gift-compile-current.el (gift-utomake): 
	Changed this to delete ./config.cache before deletion.

	* perl-compile-test-program.cc:
	File was added. This file is compiled when running
	./configure in order to test if perl is well installed.
	It should compile with a decently installed Perl 5.

2000-10-05  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libInvertedFile/include/CAcIFMySQL.h: 
		...(class string) not accepted
	by gcc any more. 
	

	* GIFTServer/Server.cc (main): 
	gGIFTHome is now the variable which contains
	the current home directory of the gift.

2000-10-02  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libInvertedFile/include/CDNFullyWeighted.h:
	* libInvertedFile/include/CDocumentNormalizer.h:
	these obsolete files were deleted

	
	* libInvertedFile/include/CAcIFFileSystem.h: 
	* libInvertedFile/include/CAcInvertedFile.h: 
	* libInvertedFile/include/CAccessorImplementation.h: 
	deleted: #include "CCollectionFrequencyList.h"

	* libInvertedFile/cc/Makefile.am (libInvertedFile_a_SOURCES): 
	removed CCollectionFrequencyElement.cc

	* libInvertedFile/cc/CCollectionFrequencyElement.cc: removed
	* libInvertedFile/include/CCollectionFrequencyElement.h: removed
	* libInvertedFile/include/CCollectionFrequencyList.h: removed
	
	* libInvertedFile/cc/CAlgorithmIDList.cc: 
	* libInvertedFile/cc/CAlgorithmIDListList.cc: 
	* libInvertedFile/include/CAlgorithmIDList.h: 
	* libInvertedFile/include/CAlgorithmIDListList.h: 

	* libInvertedFile/cc/CSessionManager.cc (startConfigElement): 
	removed references to algorithm-id-list-list
	(toXML): removed "lReturnValue += CAlgorithmIDListList::toXML();"
	(convertPropertyToXML): commented out this function

	* libInvertedFile/include/CSessionManager.h: 
	removed #include "CAlgorithmIDListList.h"

	* libInvertedFile/cc/Makefile.am (libInvertedFile_a_SOURCES): 
	Removed AlgorithmIDList AlgorithmIDListList

	* libInvertedFile/cc/CAttributeList.cc: ifdef'ed out a couple 
	of debugging printouts. 

2000-09-29  Wolfgang Müller  <muellerw@cui.unige.ch>

	* Doc/Makefile.am (gift-guide.txt): Added this target.
	It makes gift-guide.txt which is then copied to README 
	by hand.

2000-09-27  Wolfgang Müller  <muellerw@cui.unige.ch>

	* scripts/perl/CXMLTreeBuilder.pre-pm (addChildToTree): Changed
	debugging output

2000-09-26  Wolfgang Müller  <muellerw@cui.unige.ch>

	* scripts/perl/gift-add-collection.pre-pl (wanted): On finding
	a pre-exsisting feature file, gift checks, if this file is newer
	than the script. If so, the script will not generate a new feature
	file. This greatly simplifies re-indexing databases after adding 
	images. 

2000-09-25  Wolfgang Müller  <muellerw@cui.unige.ch>

	* scripts/perl/gift-url-to-fts.pre-pl (convertURLToFeatureFile): 
	* libInvertedFile/cc/CAcIFFileSystem.pre-cc (URLToFeatureList): 
	Removed feature file naming bug in the case of an previously 
	unknown image

	* libInvertedFile/cc/CQInvertedFile.cc: 
	If mModulo!=0, only features with 
	featureID % mModulo == mModuloClass are
	taken into account.

	* scripts/perl/CFeedbackClient.pre-pm (getAlgorithmID): 
	* scripts/perl/CFeedbackClient.pre-pm (getCollectionID): 
	Changed these functions in a way that they return identity
	if they are fed with an ID -instead of a number- by mistake.

	* libInvertedFile/include/CQInvertedFile.h: 
	* libInvertedFile/cc/CQInvertedFile.cc(CQInvertedFile::init): 
	Reading the attributes mrml::cui_pr_modulo mrml::cui_pr_moculo_class
	into the variable mModulo and mModuloClass.

	* libInvertedFile/include/mrml_const.h:
	* libInvertedFile/cc/mrml_const.cc:
	Newly generated these files from changed DTD using 
	gift-dtd-to-keywords.pl
	
	* dtd/mrml.dtd: added the attributes cui-pr-modulo and 
	cui-pr-modulo-class to algorithm

2000-09-22  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* GIFTServer/gift-mrml-messages/gift-iconfigure.mrml: 
	* scripts/perl/CFeedbackClient.pre-pm (configureSession): 
	Added a further optional parameter $lAdditionalAlgorithmAttributes.
	This is a string which will be placed at the position of an attribute
	within the MRML signal for configuration that will be sent to the 
	server.

2000-09-21  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* GIFTServer/gift-config/gift-config.pre-mrml: 
	Changed faulty reference to CVLDAudreyTam.pl to
	CViperLinkDemo.pl

	* scripts/perl/gift-mrml-client.pre-pl: Using Getopt::Long
	for better configuring this script.

	* ALLFILES: Viper has changed its name to GIFT. According
	to this all occurences of "viper" have been changed to "gift".
	Derived names have changed vrom CVL.... to CGL etc. The files
 	have also been MOVED accordingly. Sorry for this, but this gives
	us consistency.

2000-09-19  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* configure.in: adding --enable-set-web-publishing-directory
	--enable-set-web-publishing-location for improving
	v-add-collection.pl

	* Doc/viper-guide.sgml (Caveat): Added item containing 
	description how to "configure" SnakeCharmer after 
	unpacking.

2000-08-18  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* Doc/viper-guide.sgml (Always): Added changes to
	reflect changes in v-add-collection.pl . Also adding
	remarks about JAVA2 vs. JAVA1.1.

2000-08-17  Wolfgang MÜLLER  <muellerw@cui.unige.ch>

	* libInvertedFile/cc/CAlgorithmCollection.cc: Added function
	containsAlgorithmByType

2000-08-16  Wolfgang MÜLLER  <muellerw@cui.unige.ch>

	* libInvertedFile/cc/CAlgorithm.cc: Do attribute inheritance
	for CAlgorithms only (not for other XML elements) like e.g. 
	<property>

	* libInvertedFile/cc/CAccessorProxy.cc: added perl accessor
	entry

	* scripts/perl/v-add-collection.pre-pl: Putting thumbnails
	into a _thumbnail directory. if you are indexing ~/aaa, the
	thumbnails will be put into ~/aaa_thumbnails by default.

	* libInvertedFile/cc/CAlgorithmCollection.cc(CAlgorithmCollection::getAlgorithmByType): 
	New, more sensible strategy of returning default algorithm.
	
2000-08-15  Wolfgang MÜLLER  <muellerw@cui.unige.ch>

	* scripts/perl/v-add-collection.pre-pl: In order to avoid 
	bugs, this v-add-collection.pre-pl creates for each collection
	created its InvertedFileFeatureInformation.db on the fly.

	More than that, it will now recognize if an image directory is in
	the public_html, and will set the options accordingly. One does
	not need to do anything to put things on the web.
	

	* ViperServer/viper-config/viper-config.pre-mrml: 
	Changed this file for providing a reasonable configuration for
	novice users  

2000-07-27  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libInvertedFile/include/CAFIFMySQL.h: 
	* libInvertedFile/cc/CAFIFMySQL.cc: 
	Added file.

	* libInvertedFile/include/CDocumentFrequencyList.h: 
	Added default constructor

2000-07-17  Wolfgang MÜLLER  <muellerw@cui.unige.ch>

	* libInvertedFile/include/CAcIFFileSystem.h: 
	* libInvertedFile/cc/CAcIFFileSystem.cc: 
	This class does what CAcInvertedFile did before.
	In order to avoid double inheritance, I had to make
	the CAcURL2FTS class a member [instead of the 
	inheritance that was used before].

	* libInvertedFile/include/CAcInvertedFile.h: 
	* libInvertedFile/cc/CAcInvertedFile.cc: 
	CAcInvertedFile has become purely abstract.
	
	* libInvertedFile/include/CAccessor.h: 
	* libInvertedFile/cc/CAccessor.cc: 
	* libInvertedFile/include/CAccessorImplementation.h: 
	* libInvertedFile/cc/CAccessorImplementation.cc: 
	CAccessor has become a pure abstract class.
	CAccessorImplementation contains now the 
	implementation of CAccessor. This is preparing the structure
	for accessors which access SQL databases.

2000-07-14  Wolfgang MÜLLER  <muellerw@cui.unige.ch>

	* libInvertedFile/cc/CAcURL2FTS.cc: 
	* libInvertedFile/include/CAcURL2FTS.h: 
	Adding accessors to the filenames in CAcURL2FTS

	* scripts/emacs-lisp/v-compile-current.el (v-switch-to-associated-c++): 	
	this function is now aware of the fact that there exsist files
	which have the extension .pre-cc and which will be turned into
	.cc by a sed script. This allows some preconfigurations.
	(v-switch-to-associated-h): the same.
	(v-associated): the same.
	(v-compile-current): dito 

2000-07-05  Wolfgang MÜLLER  <muellerw@cui.unige.ch>

	* configure.in: "released" as 0.1.1

2000-07-03  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* Doc/Makefile.am (CLEANFILES): added viper-guide.info
	* Doc/Makefile.am (all): added target system-doc and 
	viper-guide.info, in a way that the Makefile will try to make
	them, however, building will be continued even if the Doc cannot
	be made.

2000-07-03  Wolfgang MÜLLER  <muellerw@cui.unige.ch>

	* Doc/viper-guide.sgml : removing remarks about
	known bugs which have been fixed in the meanwhile.

2000-06-26  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libInvertedFile/cc/CQPerl.cc (CQPerl): 
	Adding the use of CAcPerl

	* libInvertedFile/include/CAcPerl.h: 
	* libInvertedFile/cc/CAcPerl.cc: 
	* libInvertedFile/include/CAFPerl.h: 
	* libInvertedFile/cc/CAFPerl.cc: 
	New files for configuring perl accessors for a 
	collection

	
	* ViperServer/generateInvertedFile.cc (main): 
	* libInvertedFile/cc/CAFInvertedFile.cc: 
	Changing new CAcInvertedFile to
	new CAcIFFileSystem.

	* libInvertedFile/include/CAcIFFileSystem.h:
	* libInvertedFile/cc/CAcIFFileSystem.cc:
	* libInvertedFile/include/CAcInvertedFile.h:
	Moving files:
	CAcInvertedFile now contains some abstraction
	of CAcIFFileSystem and CAcIFMySQl.
	The old CAcInvertedFile is now CAcIFFileSystem

	* libInvertedFile/include/CAcIFMySQL.h:
	* libInvertedFile/cc/CAcIFMySQL.cc:
	Created. Will contain Cornelia's code?
	 removing getRandomRLLs, because unused.
	
	* libInvertedFile/include/CAcInvertedFile.h:
	* libInvertedFile/include/CAccessor.h: 
	adding comments removing getRandomRLLs, because unused

2000-06-23  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* ViperServer/Makefile.am: 
	Adding @PERL_LD_ADDITIONS@

	* libInvertedFile/cc/Makefile.am: Adding 
	@PERL_CC_ADDITIONS@ 

	* configure.in (PERL_LD_ADDITIONS): 
	* configure.in (PERL_CC_ADDITIONS): New variables 
	and substitutions which contain the additional cc 
	and ld flags needed when lining Perl with Viper

	* ViperServer/Server.cc (main): void cast became 
	char cast. uint became int.

2000-06-21  Wolfgang MÜLLER  <muellerw@cui.unige.ch>

	* libInvertedFile/include/CAlgorithmIDList.h: 
	* libInvertedFile/cc/CAlgorithmIDList.cc: 
	setID(const string&);

	* libInvertedFile/include/CSessionManager.h: 
	* libInvertedFile/cc/CSessionManager.cc(CSessionManager::toXMLHandshake): 
	is not anymore const.

2000-06-20  Wolfgang MÜLLER  <muellerw@cui.unige.ch>

	* configure.in: 
	* Makefile.am (SUBDIRS): Changing for separating
	the libBayesian files from the distribution. These
	files presently are unused, but we have to check the
	patent situation before making them GNU. In fact I do not see
	too many problems, as the inspiration drawn from the patented
	PicHunter system is quite remote, our system that uses libBayesian
	is slow and rather for research purposes. However, I would like to
	contact NEC first before proceeding

	* libBayesian/cc/CDistanceCalculator.cc: changing 
	calls to do_for_equal_first by adding lInserter.
	The in-line version does not compile any more with
	the new gcc.

2000-06-19  Wolfgang MÜLLER  <muellerw@cui.unige.ch>

	* scripts/perl/v-add-collection.pre-pl (wanted):
	Viper does not cope well with the fact that kaffe removes "//" out
	of URLs. So when adding collections, we have to do the same.

	* libInvertedFile/cc/CAccessorCollection.cc: 
	* libInvertedFile/cc/CAlgorithmCollection.cc: Proper error message
	when configuration file not found.

2000-06-14  Wolfgang MÜLLER  <muellerw@cui.unige.ch>

	* scripts/perl/CFeedbackClient.pre-pm (handleStart): 
	changing m[] to m:: in order to deconfuse the perl mode of
	XEmacs. Adding more comments.

	* dtd/mrml.dtd: added allows-children tag, as well as some
	further comments

	* scripts/perl/v-dtd-to-tex.pre-pl: Added a description
	of the --fragment option

2000-05-25  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libInvertedFile/cc/CAlgorithm.cc: the HACK
	marked part did not cope with text nodes
	in the configuration before.

2000-05-23  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libInvertedFile/include/CXMLElement.h: 
	* libInvertedFile/cc/CXMLElement.cc: getText Function.

2000-05-19  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* ViperServer/viper-config/Makefile.am (MRMLCONFIG): 
	Inserted __BINDIR__ and __PERL_LOCATION__ 

	* ViperServer/viper-config/viper-config.pre-mrml: 
	Added "a-perl" algorithm, removed legacy code 
	the (property-item-list) and algorithm-list-list.

2000-05-18  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libInvertedFile/cc/Makefile.am: 
	Added a echo|sed to the INCLUDE part. The goal of this
	is to remove the define -Dbool=char from the perl 
	configuration data.

	* libInvertedFile/include/CXMLElement.h: 
	* libInvertedFile/cc/CXMLElement.cc: 
	Added a type of nodes. Necessary for text/CDATA nodes.
	
2000-05-17  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* scripts/perl/CTripleTransfer.pre-pl: 
	* scripts/perl/CVLDAudreyMTam.pre-pl: 
	* scripts/perl/CVLStructuredAnnotation.pre-pm: 
	* scripts/perl/CViperLink.pre-pm: 
	* scripts/perl/CViperLinkDemo.pre-pl: 
	* scripts/perl/CXMLTreeBuilder.pre-pm: 
	* scripts/perl/CXMLTreeVisitor.pre-pm: 
	* scripts/perl/CXTVTripletList.pre-pm: 
	* scripts/perl/CXTVTripletList.pre-pm: 
	* scripts/perl/Makefile.am: 
	Added these files, changed Makefile.am accordingly
	(bin_SCRIPTS): 

2000-04-20  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* ViperServer/Server.cc: 
	* ViperServer/CCommunicationHandler.cc: fixing
	even more the problem when VIPER_HOME is unset.
	Test works now.
	

2000-04-19  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* scripts/perl/CFeedbackClient.pre-pm: 
	* scripts/perl/CFCMovingTarget.pre-pm: 
	I spent a "nice afternoon" (between 20:00 and 01:40) changing 
	some undocumented stuff, i.e. all the files which have to do 
	with benchmarking and MRML negotiation in Perl, fixing 
	some small annoying mistakes.

	* scripts/perl/CQueryPradigmMatcher.pre-pm:
	added a $self where it was missing.
	
2000-04-18  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* scripts/perl/CFeedbackClient.pre-pm (getCollection(): 
	Quite radical changes in about all the program
	for bringing MRML negotiation on the state of
	the JAVA/C++ packages.

2000-04-17  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* ViperServer/CCommunicationHandler.cc(readAndParse): 
	Fixed annoying bug which lets viper crash if the environment 
	variable VIPER_HOME is unset.
	
	* ViperServer/viper-config/Makefile.am (clean): 
	Have to delete viper-config.mrml when cleaning.

	* scripts/perl/CQueryPradigmMatcher.pre-pm: A perl
	module for matching query-paradigm and query-paradigm-list

	* scripts/perl/Makefile.am (EXTRA_SCRIPTS): Adding
	CQueryParadigmMatcher.pre-pm

2000-04-13  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* ViperServer/viper-config/viper-config.pre-mrml: Added query-paradigm
	tag into algorithm, as well as an empty property sheet.

	* scripts/perl/v-add-collection.pre-pl: Added query-paradigm
	tag to the "collection" elements in print statement.

2000-04-10  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* ViperServer/Server.cc(sendMessage): 
	Put last sent message into a separate file

	* ViperServer/CCommunicationHandler.cc(readAndParse): 
	Put last recieved message into a separate file

2000-04-04  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libInvertedFile/include/CAttributeList.h(operator[]): 
	* libInvertedFile/cc/CAttributeList.cc(operator[]): 
	got rid of embarassing workaround which seemed to be unnecessary
	AND causing bugs.
	
	* libInvertedFile/cc/CSessionManager.cc(CSessionManager::query): 
	fixed a bug which made the system crash if the session which 
	is supposed to be containing the query is unknown. Now the system 
	exits with an error message instead.
	
	* ViperServer/Server.cc(startMRMLElement): 
	* ViperServer/Server.cc(endMRMLElement): 
	Commented out this "legacy code".

	* ViperServer/CCommunicationHandler.h(CSortBySessionID_SH):
	* ViperServer/CCommunicationHandler.cc(CSortBySessionID_SH):
	never used=>removed

	* libInvertedFile/include/CXEVCommunication.h(startVisit): 
	* libInvertedFile/cc/CXEVCommunication.cc(startVisit): 
	* libInvertedFile/include/CXMLElementVisitor.h(startVisit): 
	* libInvertedFile/cc/CXMLElementVisitor.cc(startVisit): 
	* libInvertedFile/include/CXEVCommunication.h(endVisit): 
	* libInvertedFile/cc/CXEVCommunication.cc(endVisit): 
	* libInvertedFile/include/CXMLElementVisitor.h(endVisit): 
	* libInvertedFile/cc/CXMLElementVisitor.cc(endVisit): 
	Changing from preorder visits to a visit both ways, i.e.
	visitor is called once before visiting the children, 
	once afterwards 
		
	* ViperServer/CCommunicationHandler.h(processQuery): 
	* ViperServer/CCommunicationHandler.cc(processQuery): 
	* ViperServer/CCommunicationHandler.h(endConfiguration): 
	* ViperServer/CCommunicationHandler.cc(endConfiguration): 
	* ViperServer/CCommunicationHandler.h(setCurrentSession): 
	* ViperServer/CCommunicationHandler.cc(setCurrentSession): 
	Cleaning up. Deleted all functions which are not used any
	more because of the new visitor aproach. Also trying to move
	things into the threadsafe direction

2000-03-28  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* scripts/emacs-lisp/v-compile-current.el (v-compile-current): 
	added JAVA support to this function which before worked only for
	.cc and .h files

2000-03-27  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* libInvertedFile/cc/Makefile.am (libInvertedFile_a_SOURCES): 
	adding CXMLElementVisitor and CXEVCommunication

	* libInvertedFile/include/CXEVCommunication.h: 
	* libInvertedFile/cc/CXEVCommunication.cc: 
	* libInvertedFile/include/CXMLElementVisitor.h: 
	* libInvertedFile/cc/CXMLElementVisitor.cc: 
	A visitor which is supposed to visit the subtree of an 
	CXMLElement
	
	* ViperServer/Server.cc
	* ViperServer/CCommunicationHandler.h:
	* ViperServer/CCommunicationHandler.cc:
	Moving things towards DOM parsing with subsequent traversal. This
	is a bit slower, but easier to change afterwards.
	
	* ViperServer/CCommunicationHandler.h(stringOfRelevanceLevelList): 
	* ViperServer/CCommunicationHandler.cc(stringOfRelevanceLevelList): 
	Removed this obsolete function.

	* libInvertedFile/include/CXMLElement.h(getNumberOfAttributes): 
	* libInvertedFile/cc/CXMLElement.cc(getNumberOfAttributes): 
	adding a function to get the number of attributes in an CXMLElement.

	* libInvertedFile/include/CPropertySheetMatcher.h: 
	* libInvertedFile/cc/CPropertySheetMatcher.cc: 
	* libInvertedFile/cc/Makefile.am:
	A new class for matchin property sheets. This becomes important
	for getAlgorithm, getCollection.

	* ViperServer/CCommunicationHandler.cc(getAlgorithms): 
	* ViperServer/CCommunicationHandler.h(getAlgorithms): 
	added

	* ViperServer/Server.cc(startMRMLElement): 
	adding getAlgorithms and getCollections.

	* ViperServer/CCommunicationHandler.cc(getCollections): 
	* libInvertedFile/include/CSessionManager.h(getCollections): 
	* libInvertedFile/cc/CSessionManager.cc(getCollections): 
	New function. Probably only temporarily in CSessionManager, but
	here to stay in the CCommunicationHandler.

	* libInvertedFile/include/CAlgorithmCollection.h(CAlgorithmCollection): 
	* libInvertedFile/cc/CAlgorithmCollection.cc(CAlgorithmCollection): 
	Constructor now takes an argument, the config file.

	* libInvertedFile/include/CAlgorithmCollection.cc(startAlgorithmCollectionElement):
	* libInvertedFile/include/CAlgorithmCollection.cc(endAlgorithmCollectionElement): 
	Making CAlgorithmCollection read the configuration file
	as a part of operation to disentangle CAlgorithmCollection
	and CSessionManager

	* libInvertedFile/include/CSessionManager.h: 
	Adding some critic comments to CSessionManager.

	* libInvertedFile/cc/CAccessorProxy.cc(toXMLElement): 
	* libInvertedFile/include/CAccessorProxy.h(toXMLElement): 
	* libInvertedFile/include/CAccessorCollection.h(toXMLElement): 
	* libInvertedFile/cc/CAccessorCollection.cc(toXMLElement): 
	* libInvertedFile/cc/CAlgorithmCollection.cc(toXMLElement): 
	* libInvertedFile/include/CAlgorithmCollection.h(toXMLElement): 
	Added the function toXMLElement which turns the content of
	the respective structures into an CXMLElement which can be
	used for answering mrml_const::get_collections and
 	mrml_const::get_algorithms requests
	

2000-03-24  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* scripts/perl/v-dtd-to-tex.pre-pl: 
	complete rewrite of this perl program, in order
	to make output better, and in order to suppress
	our proprietary extensions from the tex output
	if needed. As a downside, this perl program now
	needs XML::Parser, which is not so surprising after
	all.

2000-03-23  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* ViperServer/CCommunicationHandler.h(openSession): 
	* ViperServer/CCommunicationHandler.h(renameSession): 
	* ViperServer/CCommunicationHandler.h(deleteSession): 
	* ViperServer/CCommunicationHandler.h(getSessionsForUser): 
	* ViperServer/CCommunicationHandler.cc(openSession): 
	* ViperServer/CCommunicationHandler.cc(renameSession): 
	* ViperServer/CCommunicationHandler.cc(deleteSession): 
	* ViperServer/CCommunicationHandler.cc(getSessionsForUser): 
	Changed return value of these functions to CXMLElement*
	
	* ViperServer/CCommunicationHandler.h(getSessions):
	* ViperServer/CCommunicationHandler.cc(getSessions):
	* ViperServer/Server.cc: 
	adding functions to implement mrml:get-sessions.

2000-03-22  MUELLER Wolfgang  <muellerw@cui.unige.ch>

	* ViperServer/CCommunicationHandler.h(newSession):
	* ViperServer/CCommunicationHandler.cc(newSession):
	deleted.

	* dtd/mrml.dtd(open-session): 
	Added "password" attribute.

	* ViperServer/CCommunicationHandler.h(openSession): 
	* ViperServer/CCommunicationHandler.h(renameSession): 
	* ViperServer/CCommunicationHandler.h(deleteSession): 
	* ViperServer/CCommunicationHandler.h(getSessionsForUser): 
	* ViperServer/CCommunicationHandler.cc(openSession): 
	* ViperServer/CCommunicationHandler.cc(renameSession): 
	* ViperServer/CCommunicationHandler.cc(deleteSession): 
	* ViperServer/CCommunicationHandler.cc(getSessionsForUser): 
	Adding new functions for new MRML handshake.

2000-03-21  MUELLER Wolfgang  <muellerw@cui.unige.ch>
        * version 0.1 as sent to the FSF.
	* configure.in: 
	* Makefile.am (SUBDIRS): 
	Added a new directory for scientific work which has not yet been 
	published and thus is not yet released.

2000-03-13  Wolfgang MÜLLER  <muellerw@cui.unige.ch>

	* libInvertedFile/cc/CAcInvertedFile.cc(newGenerateInvertedFile): 
	Delete viper-auxiliary-? files created by the mergesort performed.
	The files stay intact if newGenerateInvertedFile aborts with an
	error for facilitating debugging.

	* libInvertedFile/include/mrml_const.h: 
	* libInvertedFile/cc/mrml_const.cc: 
	Making all string constants named constants in the c++ sense.
	By this we can check if a string constant is defined or not, typos
	are detected at compile time.

2000-03-05  Wolfgang MÜLLER  <muellerw@cui.unige.ch>

	* libInvertedFile/include/CAcDistanceMatrix.h: 
	* libInvertedFile/include/CAcInvertedFile.h: 
	* libInvertedFile/include/CAcURL2FTS.h: 
	* libInvertedFile/cc/CAcDistanceMatrix.cc: 
	* libInvertedFile/cc/CAcInvertedFile.cc: 
	* libInvertedFile/cc/CAcURL2FTS.cc: 
	Have to change the constructors for the new CAccessor factory design

2000-03-01  Wolfgang MÜLLER  <muellerw@cui.unige.ch>

	* libInvertedFile/include/CAccessorFactoryContainer.h: 
	* libInvertedFile/include/CAccessorFactoryContainer.cc: 
	* libInvertedFile/include/CAccessorFactory.h: 
	* libInvertedFile/include/CAccessorFactory.cc: 
	* libInvertedFile/include/COpenCloseTracker.h: 
	* libInvertedFile/cc/COpenCloseTracker.cc: 
	* libInvertedFile/include/CAccessorProxy.h: 
	* libInvertedFile/cc/CAccessorProxy.cc: 
	* libInvertedFile/cc/CAccessorCollection.cc: 
	Changing the CAccessor factory design. Makes adding accessors as easy
	as adding CQueries.

2000-02-18  Wolfgang MÜLLER  <muellerw@cui.unige.ch>

	* scripts/perl/CFeedbackClient.pre-pm:
	* scripts/perl/v-mrml-client.pre-pl:
	renamed file from v-mrml-client.pre-pm to CFeedbackClient.pre-pm
	created new v-mrml-client.pre-pm which uses CFeedbackClient
	v-mrml-client contains now a very simple client which does
	a one-shot query

2000-02-17  Wolfgang MÜLLER  <muellerw@cui.unige.ch>

	* libInvertedFile/cc/CQInvertedFile.cc(buildQueryHash): 
	The deleting of feature lists that are not wanted 
	does is not compatible with STL vectors. Unfortunately
	we changed the type to vector, so we have to do something
	we chose to use the #define from CDocumentFrequencyList

	* ViperServer/Server.cc(startMRMLElement): 
	* ViperServer/Server.cc(endMRMLElement): 
	query-step: building an XML subtree instead of a 
	CRelevanceLevelList. Changing tag names to new MRML
	
	* ViperServer/CCommunicationHandler.h(startTreeBuilding): 
	* ViperServer/CCommunicationHandler.h(addToCurrentTree): 
	* ViperServer/CCommunicationHandler.h(moveUpCurrentTree): 
	* ViperServer/CCommunicationHandler.cc(startTreeBuilding): 
	* ViperServer/CCommunicationHandler.cc(addToCurrentTree): 
	* ViperServer/CCommunicationHandler.cc(moveUpCurrentTree): 
	Adding functionality for making document subtrees. 

	* libInvertedFile/cc/CSessionManager.cc: 
	* libInvertedFile/cc/CQuery.cc: 
	* libBayesian/cc/CEnhancedPicHunter.cc: 
	* libInvertedFile/cc/CQIFFerDeLance.cc: 
	* libInvertedFile/cc/CQInvertedFile.cc:
	* libInvertedFile/include/CSessionManager.h: 
	* libInvertedFile/include/CQuery.h: 
	* libBayesian/include/CEnhancedPicHunter.h: 
	* libInvertedFile/include/CQIFFerDeLance.h: 
	* libInvertedFile/include/CQInvertedFile.h:
	In fastQuery and query: a new way of passing parameters. Parameters
	now given as an XML document subtree (CXMLElement)

	
	
2000-02-14  Wolfgang MÜLLER  <muellerw@cui.unige.ch>

	* FeatureExtraction/extract_block_features.c: HACK to convert
	integer features to float features. WARNING: this is a real
	hack. We write floats in the place of integers. At the time
	of writing this happens at line 480. (For people who get the
	creeps: David wants to redesign feature extraction anyway).

	* FeatureExtraction/viper_features.h (FREQ_MAX): Changed to 0x7ffffff
	to get a high resolution for the above HACK

2000-02-10  Wolfgang Müller  <muellerw@cui.unige.ch>

	* libInvertedFile/cc/CAcInvertedFile.cc (newGenerateInvertedFile): 
	* libInvertedFile/cc/CAcInvertedFile.cc (generateInvertedFile): 
	* libInvertedFile/cc/CAcInvertedFile.h (newGenerateInvertedFile): 
	Changes for incorporating new writeBinary function.
	Added function newGenerateInvertedFile. Supposed to be much faster	
	* libInvertedFile/cc/CInvertedFileChunk.cc (writeBinary): added 
	one parameter. Now the CInvertedfileChunk also writes the FeatureID.
	Before that the caller had to assure that FeatureID was written.

2000-01-24    Wolfgang Mueller <muellerw@cui.unige.ch>

	* libInvertedFile/cc/CScoreBoard.h(CScoreboard::CScoreboard):
	* libInvertedFile/cc/CScoreBoard.cc(CScoreboard::operator()):
	* libInvertedFile/cc/CScoreBoard.cc(CScoreboard::CScoreboard): 
	  Changed things such, that CScoreBoard does not need a CAccessor for
	  being constructed. 

2000-01-06  Wolfgang Mueller  <Wolfgang.Mueller@cui.unige.ch>

	* libInvertedFile/cc/CQInvertedFile.cc (blockFeatureGroup): 
	now activates blocking of feature groups

2000-01-04  Wolfgang Mueller  <Wolfgang.Mueller@cui.unige.ch>

	* libInvertedFile/cc/CWeightingFunction.cc (addQueryFeature): 
		Even if the inital version entry is younger than this...
		This is to notify other members, that I deleted in
		the function mentioned above the adjustRelevanceSum entry,
		which seems redundant to me.
		(setID): Necessary changes for rocchio weighting.

1999-11-29  Wolfgang Mueller  <muellerw@flyer.unige.ch>

	* libInvertedFile/include/CInvertedFileQuery.h: 
	Changed pruning interface: Scoreboard pruning now works
	on a fraction of the total number of features, as well as
	a factor of the total number of documents we want to retrieve.
	

1999-11-18  Wolfgang Mueller  <muellerw@flyer.unige.ch>

	* libInvertedFile/include/ViperExceptions.h: 
	* libInvertedFile/include/ViperExceptions.h: VEProgrammingMistake
	added. Goal of this: show if we think what you experienced is not
	an uncaught case, but rather a blunt programming mistake.

	* libInvertedFile/cc/CAlgorithm.cc (buildQueryTree): 
	preliminary implementation

	* libInvertedFile/cc/CAlgorithmCollection.cc (getAlgorithm): 
	* libInvertedFile/cc/CAlgorithmCollection.cc (makeAlgorithm): 
	* libInvertedFile/include/CAlgorithmCollection.h (getAlgorithm):
	* libInvertedFile/include/CAlgorithmCollection.h (makeAlgorithm):
	Thes functions operate now on algorithm TYPES.

	* libInvertedFile/include/CQuery.h: added addChild function and
	lCChildren type and lCChildren mChildren variable. For building
	query trees.

	* libInvertedFile/cc/CAlgorithm.cc: 
	CAlgorithm::getType added in reaction to previous change.

	* mrml.dtd: added attribute "type" to algorithm.
	Background of this is: the actual IDs of the algorithms have to be
	generated by the interface, because there can be multiple
	instances of one type of algorithm. Only the interface knows if
	this is the case. So TODO: we need to add also the functionality to
	property sheets to send a unique ID.

	* libInvertedFile/cc/CInvertedFileQuery.cc
	(buildNormalizedQueryList): 
	Using CSortByAbsQueryFactor_WF instead of CSortByQueryFactor_WF
	(without the "Abs") for queries.

	* libInvertedFile/include/CWeightingFunction.h: 
	added CSortByAbsQueryFactor_WF. its a new sorting
	operator  for making Viper more immune
	against negative feedback. This probably will become unnecessary
	when we incorporate Rocchio feedback. The problem was that if
	features get negative they get pruned, although they might have
	large impact on the query result.
	

