Faceting

Valid from Datafari X.X to Y.Y

FacetConfig allows you to create custom facets, to delete them, or to modify their printing order.

The UI interacts with the fieldWeight and the facetconfig servlet:

  • fieldWeight reads the schema.xml,

  • facetconfig reads and writes the internationalisation file, the searchview.jsp and the search.js

At creation:

  • a request is made towards FieldWeight servlet to get the list of fields,

  • another request is made towards the facetConfig servlet to get all the existing servlets, removing them from the selection.

  • the submit button sends a post request to facet config, with all the facets. Those are differenciated between themselves by their parameters. Both types of facets are added pretty much the same way, except in the modification of the search.js.

Note that adding a facet modifies four files : the searchview.jsp, the search.js, then en and fr.json. You need to modify or add a json file after you have changed or added another language.

For query facets, the construction of the String added to the js is different, it includes every query that is filled, and if there is no query passed as parameters then it ignores the request.