Geonetwork uses for her search function Lucene. Lucene can be used directly or via  Hibernate Search.

Option 1 Implementing the search with Hibernate Search above Lucene. Advantages:

  • Using HQL for defining searches. Because we use Hibernate already, HQL is used anyway.
  • Hibernate Search is using Apache Lucene(tm) internally, and always provides the ability to fallback to the native Lucene APIs.

Option 2 Implementing the search with Lucene directly.

  • No abstraction to Lucene. Same approach used as in the Geonetwork Legacy.

It has been decided to use  Hibernate Search. For a description on how it is used in this project, see the page on Hibernate Search on this wiki.