Designing a search for your Matrix website
This section looks at the things that should be considered during the requirements planning and design phases of any DXP Content Management website design to plan and prepare the site for integration with search.
Some of these items can be retro-fitted to existing implementations and others require consideration during the design phase.
See also: Search design and optimization for general advice on designing a web search for use with the DXP search.
Planning your metadata
The DXP search can make use of metadata in a number of ways to enhance the user’s search experience.
Custom search summaries
The search result entries can be customized to display any available metadata. This can be used to produce better looking and more useful search result summaries:
-
Enhance the results but printing a metadata description or abstract in place of an automatically generated summary.
-
Augment the results with additional fielded information, thumbnail (using a URL to a thumbnail image).
-
Enrich the result by dynamically returning Javascript that uses metadata to populate variables
When designing the search result wireframes, think about what fielded content would be appropriate in the search result item layout and what metadata field will be used to provide the data to fill this field. |
Faceted navigation
When designing a site consider how users should ideally filter the search. Consider both the different filters (that you might apply concurrently) and the choices that are offered within each of the filters.
Thinking about this will influence the metadata that needs to be specified as part of your design.
Facets should ideally be based on metadata fields, with the available categories sourced from the set of values defined within the field.
In the example below there are two facets defined (Portfolio, Functions).
To facilitate this faceted navigation structure all pages should have three metadata fields that correspond to the facets.
There should be a field that is used to populate the portfolio facet and the values would be defence, health and so on. (e.g. <meta name="portfolio" content="defence" />
)
You can include a page in multiple categories by applying multiple metadata keyword values. E.g. if an item should be included in both defence and education categories then you would need a field similar to <meta name="agency.function" content="defence|education" />
)
A page can be included in multiple filters by applying the appropriate fields. E.g. you might have something like:
<meta name="portfolio" content="defence" />
<meta name="agency.function" content="defence|education" />
Hierarchy can be supported for faceted navigation (when using single select facets, with drill-down). This creates facets with categories and sub-categories. (e.g. you could have a location facet with hierarchy - Location: Australia > Vic > St Kilda)
For this you would have metadata similar to:
<meta name="country" content="Australia" />
<meta name="state" content="Vic" />
<meta name="suburb" content="St Kilda" />
Facet counts are produced automatically for the facets when a search is run. The counts are an estimate of the number of results that will be returned after the facet is applied. Because the estimate is produced based on the result set the value can change after selecting a facet.
There are several types of faceted navigation available including single and multi-select options.
See: Faceted navigation
Result collapsing (grouping)
Metadata can also be used as a key for the grouping or collapsing of search results. It’s possible to configure multiple result collapsing keys - these can be a single field, or a several fields which are combined. These keys are similar in concept to a primary key in a database.
Once result collapsing is configured the DXP search you can choose to collapse the results based on one of the defined keys. This will cause all results with an identical key value to be grouped together, or collapsed, into a single result.
Result collapsing can also be turned on and off at query time, so collapsing/grouping can be built in to the search UI as a control (similar to a sort by control).
When designing a site, think about the sort of groupings that could be useful in the results. For example, you might wish to group results by:
-
Subject (e.g. Documents with identical subject metadata)
-
Version (e.g. Documents with the identical title metadata)
See: Result collapsing