The advanced search system is a powerful tool that can combine multiple search queries to provide a highly refined set of search results.
Advanced searches make use of Boolean operators - AND, OR and NOT. To perform an advanced search, it’ll help to know what Boolean operators mean and where to use them.
- ‘OR’: Searches for documents that have any of your keywords. E.g. Searching for body CONTAINS John OR body CONTAINS Peter gets you all emails with either “John” or “Peter” in them
- ‘AND’: Searches for documents that have all your keywords. E.g. Searching for body CONTAINS John AND body CONTAINS Peter will get you only the emails with both the words “John” and “Peter in them
- ‘NOT’: Searches for documents that don’t have your keyword. E.g. Searching for body CONTAINS John AND NOT body CONTAINS Peter gets you emails with the word “John” but not “Peter.” Use the ‘NOT’ operator to cut out irrelevant results
Parameters and Operators are the other important components that make up a complete search.
- Body, tags, subject, date and from address are an example of some of the parameters. You can find a description of all available parameters here.
- CONTAINS, DOES NOT CONTAIN, IS, IS NOT, and the numerical operators (=, >, <, <=, >=) are the operators that can be used. In addition to this, there are some complex operators that let you enter multiple values against a single parameter without having to create a new condition for each one. You can learn more about them here
The Advanced Search feature can be accessed from both the 'Advanced Search' view (accessible from the left pane,) and the search bar at the top of the screen.
Note: The GoldFynch search engine utilizes word stemming and stop words for all its searches for better results. Learn more about them here.
Performing a complex search from the Advanced Search view
Let's see how we can use the Advanced Search to build complex searches beginning with a simple condition and then adding additional conditions and then grouping some of the conditions.
To understand this process we will use the following example -
- Contains the word 'Categorization' (Condition1)
- And the file should be of type 'docx' (Condition 2) or it should be tagged as 'Documentation' (Condition 3)
We will breakdown the process of creating the search query into three steps -
- Step 1 - Create a basic search that will retrieve all files that contain the word 'Categorization'
- Step 2 - Add the condition that the files should have the type 'docx'
- Step 3 - Create a group that will select files that are either of type 'docx' or have a tag of 'Documentation'.
Step 1 - Create a basic search query
a. Click the 'Advanced Search' button in the left pane
b. Click on the 'Create New Search' button
c. Click on the edit icon (the pencil) or click anywhere in the condition box to enter your search criteria
d. Select the 'body' parameter from the drop-down menu. The default parameter is 'body.
e. Enter the word 'Categorization' in the value field and select the 'CONTAINS' operator - in the case of text-based fields you can type this information into the box provided, or in the case of dates, file types, etc. you'll be allowed to select the data from a drop-down menu
Step 2 - Add a second search query
a. Click on the '+Click to add condition' text below the first condition to add an additional condition
b. Follow steps c. to e. from above (1.) for the new query
Step 3 - Separate the queries into groups:
The Advanced Search system also allows you to group queries together to create 'nested' searches. Using the example given above let us see how we can group queries:
There are two ways in which you can create groups.
- Method 1 - drag the Boolean Operator box present to the right of the screen and drop it around an already existing condition in the query builder area. After this, additional conditions can be added to the group.
- Method 2 - drag and drop the Boolean Operator in the query builder area and then add all the conditions to the group.
Create a group using Method 1
Using the example given at the start of this article and utilizing the search that was created in Steps 1 and 2,
a. Drag the Boolean Operator 'OR' and drop it around the condition "type = docx"
b. Add a new condition box by clicking on the +Click to add another condition text present within the nested portion of the query
c. Click on the condition box to edit it
d. Select the 'tag' parameter from the drop-down menu and select 'Documentation' from the value drop-down menu
Create a group using Method 2
a. Create a new search and edit the condition to say 'body CONTAINS Categorization'. This can be done by following steps c. to e. in Step 1 above
b. Select the Boolean Operator 'OR' and drag and drop it into the query builder area
c. Click on the '+Click to add condition" text in the new group to add a condition
d. Click on the edit icon or click anywhere in the condition box to enter the new condition.
e. Select 'type' from the parameter drop-down menu and then select 'docx' from the value drop-down menu.
f. Click on the '+Click to add condition' text to add another condition box into the 'OR' group in the query builder area.
g. Click on the edit icon or click anywhere in the condition box to enter the second condition for the group.
h. Select 'tag' from the parameter drop-down menu and then select 'Documentation' from the value drop-down menu.
4. Click the 'Execute Search' button
The query preview section gives you a breakdown of what the final search query would look like if the advanced search were to be performed directly from the search bar (more on that below)
Choosing a Boolean Operator:
- By default when you add a new condition it is connected to the existing query with the 'AND' Boolean operator, to change this you just need to click on the 'AND' and it will change to an 'OR' Boolean operator
- To select files that do not meet a particular condition, Drag the 'NOT' box found to the right of the screen and drop it around the entered condition. In the graphic below we can see how to create a search that retrieves files that do not have the tag 'GOLDFYNCH 101'
Raising a Group's Level and Rearranging Groups and Conditions
- To raise a group's level all you need to do is click on the indent button found on the top right corner of the group. Note: If the group contains multiple conditions then the level of all the conditions will be raised.
- To rearrange groups and conditions just drag and drop them to the location that you want them to be placed at. Note: The system is built to prevent redundant or illogical group and condition movement. The group or condition can be moved only if the destination is valid.
Performing an advanced search directly from the search bar can make searching for files much faster than if you'd used the Advanced Search view. We will use the same example that we used for creating a search from the Advanced Search View
1. Begin typing in the search bar at the top of the screen
2. Select the ‘Advanced Search’ tab in the drop-down menu that appears under the search bar
3. Continue typing your query in the search bar using the provided suggestions until it is complete. As you type out your search query, GoldFynch tracks whether your query up till that point is valid, and provides you with the available options to complete the query.
4. Type out a second query after the first
5. Connect the first query to the second query using an operator: 'AND' or 'OR'
6. Group the queries together and nest groups within other groups, if required, using brackets - "(" and ")"
7. Hit the 'return' key to perform the search
The information provided by the Advanced Search tab can be broken down into:
1. Error information:
- Parse error: The first line provides you with the location of the first invalid section of your entered query (in the above example, “column 6” denotes the 6th character in the query)
- Text entered: The second line displays the text you’ve entered so far into the search bar
^symbol is displayed below your search query to point out the character mentioned by the parse error. In the example below, the query is valid till “body.date “ but the symbol
-is invalid, and needs to be changed to a valid symbol
2. Expected text:
As you type into the search bar, GoldFynch will give you a list of the valid characters, parameters, and operators that you can use
- When you begin typing in the search box the expected text section gives you the list of usable parameters
- After entering in a parameter, it will give you a list of valid operators for that parameter
- Finally, it will give you the valid inputs to be searched against
Here are some things to keep in mind while performing advanced searches from the search bar:
- The operators AND, OR, and NOT can be used to join multiple search parameters together
- Parenthesis ( ) can be used to group search terms together
- Some of the valid operators that can be used are 'CONTAINS', 'DOES NOT CONTAIN', 'IS', 'IS NOT','EXISTS', 'DOES NOT EXIST' and the numerical operators(=,<,>,etc.)
- The operators 'CONTAINS' and 'IS' can be combined with the phrases 'ANY OF' or 'ALL OF' to perform the function of retrieving results equivalent to using multiple 'OR' and multiple 'AND' conditions respectively
- The operator to be used after the parameters 'body', 'subject' and 'name' is 'CONTAINS'
- The numerical operators are to be used after the parameters 'attachment depth', 'child-count' and any date related parameter
- All other parameters use the operators 'IS'
- A slop value can be assigned to a 'body' or 'subject' section of a search query by adding "\~X" immediately after the phrase's quotation marks (where X is the slop value).
Note: Only free text search results from the search bar (basic quick searches) and searches with the "body" parameter are highlighted within the body of the document - GoldFynch does not separately highlight instances of metadata parameters used, so a search for an email parameter like "from.address" will not be highlighted. If you wish to search for an email address in the body of a document, run a quick search or use the "body" parameter with the email address as the value.
Saving, Loading, and Deleting Searches
GoldFynch allows you to name and save your search queries. Note that all saved search queries are available across the case for all shared users.
To save a search:
1. After creating a search, click on the red text under the search bar and give it a name
2. Click on the `save` or the `save as...` buttons to save the search
Undo and Redo
If you have made a change to your search query that you want to undo, you can use the
undo button. Similarly, to revert to a change that you’d made before using undo, you can use the
redo button, highlighted below.
Note: Undo and Redo only track changes made in the current search query, so if you create a new case or load an old case you will not be able to undo or redo your changes across the cases.