Advanced Search Capabilities

This appendix covers the following topics:

Overview

This appendix describes advanced search features of the Oracle Endeca Server that users access through applications built with Studio.

Search capability is a fundamental building block of Oracle E-Business Information Discovery and includes value search, record search, boolean search, and partial search.

Value search can be confused with record search, and understanding the differences between the two search types is important before creating a solution for a specific business problem using partial search and boolean search.

The following table lists the differences between value and record search:

Type of Search Description
Value Search
(Type-ahead search)
Using the Search Box component or type-ahead search in the Available Refinements component.
Allows users to perform keyword searches across attributes of type string for values with matching values.
Returns attribute values that match the user's search terms.
The search result is presented in the suggestion list and categorized per attribute.
Record Search
(Text search)
Using the Search Box component.
Allows a user to perform a keyword search against specific attribute values assigned to records.
Returns records that have matching attribute values, along with any valid refinement values.

Partial (Wildcard) Search

Partial search is the ability to match user search terms to fragments of words within text. Search operations such as value search and record search typically match user search terms to entire words.

For example, performing a record search for the word 'shop' returns only those results containing the specific word 'shop'. Text that contains 'shop' as a substring of larger words (such as shops, shopping, or workshop) returns no match.

In addition, performing a value search for the word 'shop' returns only those results beginning with the specific word 'shop'. Text containing 'shop' as a substring of larger words (such as workshop) returns no match.

With partial search enabled, you can enter a search containing the special asterisk operator (*). The asterisk operator matches any string of zero or more characters. You can enter a search term such as *shop* which will match any text containing the string shop, even if it occurs in the middle or at the end of a word such as 'shops', 'shopping'. or 'workshop'.

Partial search is useful for performing a text search on string attributes such as sales order numbers, asset description, project name, item description, and part numbers. For example, inventory users are searching for item number for 'Envory Custom Laptop 3064'. The data domain may contain records with item numbers such as QADPP3064 and QASDP3064 because these are the full item numbers specified by the supplier. However, to end users these Envoy custom laptops are known by the more generic number 3064. In such cases, partial search is a useful feature to fill the gap between user terminology and the source data. For example, the user enters the search term *3064*, and the result returns all values containing this term such as 'QADPP3064', 'QASDP3064'.

You can configure partial search in value search and record search.

2.1 Partial Value Search

Search Box and Available Refinements type-ahead suggestions support attribute value search.

2.1.1 Setup Steps

Configure partial search during value searches in the Global Configuration Record (GCR). The GCR globally affects the enablement of partial search in value search for all attributes in the data domain.

To enable partial search in value search:

  1. In the product sandbox , add the parameter GCR_FILE in the workspace.prm:

          <GraphParameter name="GCR_FILE" value="sandbox://<sandbox name>/data-in/gcr.xml"/>

    the picture is described in the document text

    This parameter specifies the location for gcr.xml.

  2. Copy the file gcr.xml from the common sandbox (config-in folder) to the product sandbox (data-in folder).

    the picture is described in the document text

  3. In the product sandbox, edit the gcr.xml file and set the parameter as follows:

          <mdex-config_EnableValueSearchWildcard> to true

    the picture is described in the document text

  4. Using the Integrator ETL Designer, open the common sandbox at: graph > FullLoad.grf , and edit the Call Central FullLoad Config by adding the parameter: GCR_FILE in the Graph parameters to pass properly.

    the picture is described in the document text

  5. Run FullLoadConfig.grf.

Example

In the Search Box Component, enter the search term between two asterisk (*) operators. The partial value search result is presented in the suggestion list and categorized per attribute.

the picture is described in the document text

In the Available Refinement type-ahead search, enter the search term between two asterisk (*) operators:

the picture is described in the document text

2.2 Partial Record Search

Record search with boolean search is supported.

2.2.1 Setup Steps

Configure partial search during record searches by changing the attribute profile in the PDR to one of the following profiles:

Using either the SQL script or using the Information Discovery Developer responsibility from EBS:

To enable partial search in record search using the Information Discovery Developer responsibility:

  1. Log in to EBS using 'sysadmin'.

  2. Navigate to the Information Discovery responsibility.

  3. Search for the data domain. The attribute must be enabled for partial record search.

  4. Set attribute profile to DimensionWildcard.

    the picture is described in the document text

    Note: The attribute profile DimensionWildcard enables wildcard record search for attribute types of 'Dimension' only.

  5. Run FullLoadConfig.grf.

Example

In the Search Box, enter the search term between two asterisk (*) operators and press enter or click the search icons.

the picture is described in the document text

the picture is described in the document text

2.2.3 Partial Record Search with Boolean Expressions

2.2.3.1 Boolean Search

Boolean search allows users to specify complex expressions that describe the exact search criteria for their searches using AND, OR, AND NOT operators.

The following table describes boolean operations:

Operator Description
AND Executes an intersection of its two operands
OR Executes a union of the two operands
AND NOT Executes a set subtract, subtracting the second operand from the first

You can use parentheses to create sub-expressions such as: “red AND NOT (blue OR green)”

The parentheses operators have two meanings, depending on their usage:

2.2.3.2 Operator Precedence

The NOT operator has the highest precedence, followed by the AND operator, and then followed by the OR operator. You can control the precedence by using parentheses.

2.2.3.3 Configuration

To configure boolean search in Studio in the display option of the Search Box component, select 'Allow Boolean search'.

the picture is described in the document text

To use boolean search, set the match mode to boolean by selecting the 'Boolean search' check box.

the picture is described in the document text

To use partial search with boolean expressions, use the asterisk (*) operator with boolean operators.

Examples

the picture is described in the document text

the picture is described in the document text

the picture is described in the document text

Interaction of Partial Search with Other Features

The following table describes features that are either supported or not supported for partial search queries:

Feature Support with Partial Search Notes
Stemming No  
Thesaurus matching No  
Misspelling correction No Auto-correct and “Did You Mean?” are not supported.
Relevance ranking Yes  
Snippeting No  
Phrase search No  

Performance Impact of Partial Search

If partial record search is enabled (even if it is not used by end users), then it increases the time and disk space required for indexing. You should carefully consider your business requirements when selecting and enabling attributes for partial record search.

For optimal performance, use partial search queries with a minimum of two or three non-wild card characters, such as abc* and ab*de. Avoid wildcard searches with one non-wild card character, such as a*. Wildcard queries with extremely low information, such as a*, require a significant amount of processing time.

Queries that contain only wildcards, or only wildcards with punctuation or spaces, such as *. (star followed by period), or * * (star space star), are rejected by the Oracle Endeca Server.

Partial Search Guidelines

Carefully consider your business requirements when selecting and enabling attributes for partial record search. If partial search is enabled separately for each attribute, then added complexity and misleading customer expectations may result.

A maximum of fifteen (15) attributes should be enabled for partial record search.

The best usage of partial search is to use two (2) star operators for a substring. For example:

Partial search is not supported within more than one word. For example:

You can combine standard value search with partial search by writing the first search word, add a space, and then use the star operator for partial search in the next word. For example:

Partial search results may vary depending on the attributes being considered during record search.

Exclude All Functionality

3.1 Negative Refinements

Negative refinement refers to data that is refined to only include records that do NOT match the selected attribute value.

By default, negative refinements are available for each attribute in the 'Available Refinements' component.

Select the negative refinement icon for each attribute to refine the data to only include records that do NOT match that value.

the picture is described in the document text

3.2 Exclude All

This functionality was added in the Available Refinements component in release V8.

the picture is described in the document text

The 'Exclude ALL' button lets you apply all values of the attribute as negative refinements.

the picture is described in the document text

You can capture all matches regardless of how many display on the UI, and you are not required to click on show more to capture the entire list for additional refinement.

the picture is described in the document text

Note: You can use a filter to limit the number of distinct values used. The limit by default is 500 and can be changed from the Configuration Options tab of the Available Refinements window.

To configure this value:

  1. Navigate to the Available Refinements window > List of Values Settings.

  2. In the Maximum values to show for a single attribute field, enter the maximum number of values that can be displayed.

  3. In the Number of values to display before "Show More" button field, enter the number of values to initially display.

    the picture is described in the document text

3.3 Show More

The Show More button allows you to display the remaining values, up to the maximum values set in the show setting.

Note: Show More functionality works with type-ahead search results in the Available Refinements component.

.

the picture is described in the document text

3.4 Select All

Change the behavior of 'Select All' functionality to be the same as 'Exclude All'.

the picture is described in the document text

The 'Select ALL' button allows you to apply all values of the attribute as refinements.

the picture is described in the document text

You can capture all matches regardless of how many display on the UI, and you are not required to click on show more to capture the whole list for additional refinement.

the picture is described in the document text