Setting up search results filtering

In the clients of an i2 Analyze server, users can filter search results. You can configure the property types and metadata criteria that appear in the filter list by creating and configuring facets for each type of entity and link record that can appear in search results.

About this task

Selecting which property types to use for filtering search results can improve both system performance and the user experience. For example, if the values of properties of a particular type are always unique (license plates, social security numbers), then by default the user sees a separate, one-record facet for every value in the search results. If you configure that property type not to appear, then the system has fewer facets to calculate, and it can display more useful facets from different property types instead.

For records of each entity and link type, the results configuration file defines which property types and metadata criteria to use for filtering in Quick Search, external search, and Visual Query results views. All these views display the same set of facets.

The deployment toolkit contains a results configuration file for each of the example schemas in the examples\schemas directory, apart from the Chart Store schema. Their names all end in -results.configuration.xml. If your system uses a modified version of one of the example schemas, you can modify the appropriate results configuration file.

If you decide to write your own file, the entity and link types that appear must correspond to entity and link types from the deployed schemas. Examine the schemas and the data in your system, and decide which property types to display with facets in the results view. You can also decide which metadata criteria to use for the same purpose.

If you do not specify a results configuration file, all of the property types and metadata criteria that can be displayed with facets, for records of all entity and link types, are displayed in the results view in schema order.

If you follow this procedure in a deployment that provides high availability, you must complete each step on every Liberty server in your environment before you move to the next step.

For more information about the results configuration file and the changes that you can make, see Understanding the results configuration file.

Procedure

  1. Using an XML editor, open the results configuration file that you want to modify.
  2. Add, modify, or remove any <ItemTypeFacet> elements and appropriate child <PropertyTypeFacet> and <MetadataFacet> elements for your deployment.
    Note: Property types that have the following logical types cannot be used to filter search results:
    • GEOSPATIAL
    • MULTIPLE_LINE_STRING
  3. Save and close the file.
    Note: Ensure that your modified file is stored in the toolkit\configuration\fragments\common\WEB-INF\classes directory.
  4. If you have created the file or changed its name, you must update the name of the file that the deployment uses.
    1. Using a text editor, open the DiscoServerSettingsCommon.properties file in the toolkit\configuration\fragments\opal-services\WEB-INF\classes directory.
    2. Ensure that the value of the ResultsConfigurationResource property is set to the name of your results configuration file, and then save and close the file.
      Tip: If you do not want to configure search result filtering, clear the value of the ResultsConfigurationResource property.
Redeploy i2 Analyze to update the application with your changes.
  1. In a command prompt, navigate to the toolkit\scripts directory.
  2. Stop Liberty:
    setup -t stopLiberty
  3. Update the i2 Analyze application:
    setup -t deployLiberty
  4. Start Liberty:
    setup -t startLiberty

What to do next

Run a selection of queries against an i2 Analyze server. Continue to change the configuration until you are satisfied with the types of filter that are available.