An object-oriented framework for the implementation of search techniques