Fundamentals > Windchill Search > Search Reference > Keyword Search Rules
  
Keyword Search Rules
Different rules apply to keyword searches in installations where Windchill Index Search is installed and enabled.
* 
Windchill Index Search must be both installed and enabled to work. To verify whether it is installed, check with an administrator or select Quick Links > Help > About Windchill. If Windchill Index Search is installed, it will be listed under Products Installed. For more information, see Installing Windchill Index Search.
Once installed, indexing can be enabled or disabled based on your preference settings. To set this preference, select Quick Links > My Settings > Preferences. Expand the Search preference group and verify that Enable Index Search is set to Yes.
The following topic only applies when your Search Mode preference is set to Simple. This is the default value. For information on Advanced mode searches, see Advanced Mode Searching.
Keyword searches are performed using global search or the advanced search Keyword field. This is not the same as entering text into an attribute value search field:
* 
Database searches are sometimes referred to as “attribute searches.”
The rules for entering text into an attribute value field under Criteria are the same as those applied towards non-indexed keyword searches. This is true even when Windchill Index Search is installed. These rules are listed below.
Entering a keyword for a non-indexed search executes a database search. Global search and the Keyword field follow the same rules as a database search.
In other words, a non-indexed keyword search is essentially the same as entering text into the Name and Number fields under Criteria.
Search Capabilities
One of the benefits of Windchill Index Search is that it compares your keyword terms against a much larger database of information. However, this means that indexed searches typically take a longer time to execute than a database search or a non-indexed keyword search.
Keyword Variable
Indexed Search
Non-Indexed Search
Primary content
Keyword strings are compared against indexed object content. For example, the content of a Microsoft Word file uploaded as a Windchill document.
This also includes secondary content, which is a file that is uploaded as an attachment. If your keyword matches a string located within an attachment, the object to which the file is attached appears in the search results. For more information, see Unexpected Results.
For a list of supported file types, see Supported File Types for Content Indexing.
* 
This is only true when the Keyword Search Behavior preference is set to the default behavior (Keyword). For more information, see Windchill Search Preferences.
Search terms are not compared against file content. This is true for both non-indexed keyword searches and any attribute value search.
Attribute fields
Keyword strings are compared against all indexed attribute values.
* 
The exception is when a keyword search string begins with an asterisk (*). For more information, see Wildcard Behavior in Indexed Keyword Searches.
* 
Your Keyword Search Behavior preference must be set to the default behavior (Keyword). For more information, see Windchill Search Preferences.
* 
You can use the Keyword Search Behavior preference to limit keyword searches to Name, Number, or Name and Number. For more information, see Windchill Search Preferences.
Non-indexed keyword searches are performed against a limited set of attributes. By default, only the Name and Number fields are searchable.
For example, if you are searching for all documents with “Wheel Hub” in the Title field and enter Wheel Hub as a keyword, the search fails.
Instead, you can perform an advanced search and select Criteria > Title. In the search field provided, enter the exact value or a partial value with a wildcard.
* 
Site administrators can add more attributes to non-indexed keyword searches. For more information, see Configuring Non-Indexed Keyword Searches.
* 
You can use the Keyword Search Behavior preference to limit keyword searches to Name, Number, or Name and Number. For more information, see Windchill Search Preferences.
Non-latest iterations
Indexed searches are only performed against the latest iteration of each revision. For example, if an object has versions A.4 and B.2, then the keyword search is restricted to A.4 and B.2. Versions A.1, A.2, A.3, and B.1 are not searched.
You can use the Iteration attribute to include non-latest iterations in your search results. However, if you are performing a keyword search that includes multiple attribute criteria, your search might include unexpected results. For more information, see Search Using Revision and Iteration Criteria and Non-Latest Iterations Using Multiple Criteria.
To search non-latest iterations, include the Iteration attribute under Criteria.
Search mode
When your Search Mode preference is set to Advanced, you can use Solr queries within your keywords. For more information, see Advanced Mode Searching.
Solr search commands are not recognized in keyword searches.
Capitalization and Spacing
Keyword Variable
Indexed Search
Non-Indexed Search
Capitalization
All text searches are case insensitive.
All text searches are case insensitive.
Search operators and spaces in search strings
Spaces in your keyword search string are interpreted as AND operators. To use an OR operator, set the Search Mode preference to Advanced. Once enabled, you can explicitly specify OR as an operator.
For example, entering wheel hub as the keyword returns “Wheel Hub 032,” but does not return “Wheel 2” or “Hub 1.”
If you enable advanced mode searching , you can enter wheel OR hub as the keyword. This search would return all three results: “Wheel Hub 032,” “Wheel 2,” and “Hub 1.”
* 
Advanced mode searching allows you to use Solr queries within your keywords. For more information, see Advanced Mode Searching.
Spaces in a text string are interpreted literally and become part of the keyword search.
To separate individual search strings, use a semicolon (;) as a separator. For example, a search for the following keyword:
wheel hub 032; doc32; budgetmatrix
Returns the following object names:
Wheel Hub 032
doc32
BudgetMatrix
Spaces in source strings
Windchill Index Search uses spaces and some special characters to separate strings.
For example, an object named “Wheel Hub 032” is indexed as:
wheel
hub
032
You can search for the object by entering one or more of the keywords.
For example, you only need to enter the keyword hub in order to return “Wheel Hub 032” in your search results. See “Inexact search terms” under Keyword Flexibility.
* 
Some special characters are also interpreted as spaces. For more information, see Special Characters in Keywords.
Spaces are used to separate distinct text strings, but must be included in your keyword search.
For example, an object named “Wheel Hub 032” is stored in the search database as:
wheel
hub
032
wheel<space>hub<space>032
Unlike indexed searches, your keyword search term must account for every character and space in the attribute value:
wheel<space>hub<space>032
You can do this by entering the exact value as your keyword search term (Wheel Hub 032) or by using a combination of characters and wildcards (such as wheel* or *hub*). See “Inexact search terms” under Keyword Flexibility.
* 
In some circumstances, spacing can affect whether a search using a wildcard character fails to return the correct results. For more information, see the sections “Using Multiple Wildcards in a Keyword” and “Unique Wildcard Behavior in Indexed Keyword Searches” in the Search Wildcards topic.
Keyword Flexibility
Windchill Index Search allows a certain amount of uncertainty when entering a keyword search term. You can provide a partial or inexact search term and, in most cases, still return the desired results. Database searches and non-indexed searches are much more specific and literal.
Keyword Variable
Indexed Search
Non-Indexed Search
Inexact search terms
Inexact or incomplete strings are accepted to an extent. Your search term does not have to match the complete field value; a keyword string within the value is enough. Windchill Index Search uses spaces and special characters to distinguish unique keyword strings.
For example, entering template as a keyword might return results for “Planning Templates” and “d2_template_03.prt.” However, “templatetheme” would not return results.
Similarly, entering temp as a keyword would return “Temp Copy,” but would not return “Template Copy.”
Keyword searches must match the complete field.
For example, if you are searching for a document named “Plan Contact Matrix” and enter plan contact, the search fails.
Either use the full, exact value or use a wildcard. For example, plan contact* or *matrix or *contact*.
For more information, see Search Wildcards.
Stemming
Stemming is applied to keywords.
Stemming uses forms of the base word entered in the keyword field to search the index. For example, entering revise as a keyword might return results for “revision,” “revised,” and “revising.”
Stemming is not applied to keywords.
Search text must match the complete field or you can use a wildcard. For example, revis*.
Wildcards and Special Characters
Keyword Variable
Indexed Search
Non-Indexed Search
Wildcards
The asterisk (*) and question mark (?) wildcards characters are accepted.
However, wildcard behavior is unique for indexed searches in the following situations:
Leading asterisks
Leading or trailing question marks
Spaces between keywords
The asterisk (*) and question mark (?) wildcards characters are accepted. For more information, see Search Wildcards.
Special characters
You can include or ignore special characters such as hyphens (-), periods (.), and underscores (_).
For example, if you are searching for “part_AS1.prt,” then any of the following keyword searches would work:
part AS1
part_AS1
AS1
AS1.prt
.prt
Other special characters (%, /, \, ?, (, ), *, “, ”) are interpreted as spaces. For more information, see Special Characters in Keywords.
All special characters are interpreted literally.
For example, if you are searching for “part_AS1.prt” and enter part AS1.prt, the search fails.
Phrase searches and quotation marks
You can use quotation marks to perform a keyword search for an exact phrase.
For example, you upload and index two documents, “Presentation1” and “Presentation2”:
Presentation1 contains the phrase:
approach to new marketing guidelines
Presentation2 contains the phrase:
guidelines and marketing approach
If you perform a keyword search and enter marketing guidelines, then both documents are returned.
If you perform a keyword search and enter "marketing guidelines", then only Presentation1 is returned.
* 
You can combine keyword terms and phrases. For example, a keyword search for "marketing approach" guidelines returns Presentation2.
Phrased searches do not apply to non-indexed keyword searches. As described earlier, inexact keyword searches are not allowed. The keyword must match the full, exact value of the field.
Therefore, all non-indexed keyword searches inherently perform as phrase searches, unless you use a wildcard.
All special characters are interpreted literally. If you include quotation marks that are not part of the actual attribute value, the search fails.
If an object name or attribute field includes quotation marks, then you must include the quotation marks as part of your search.
Indexing Behavior
When performing a search with indexing enabled, keyword searches might fail to perform as expected for one of the following reasons:
New objects—Objects are added to the Windchill index based on a schedule set by your administrator. If an object is very new, it might not be fully indexed yet.
Indexing rules—Your site administrator can set rules determining what objects and information are added to the Windchill search index.
File types—If you are performing a keyword search for information within a content file, verify that indexing is enabled for that file type. Check with your administrator or see Supported File Types for Content Indexing. By default, CAD document note content is not indexed. For more information, see Add CAD Data to Windchill Index Search.
System errors—In rare instances, the indexing queue might fail to process data to add to the search index, or the indexing engine might otherwise be disabled or failing.
For more information, see Unexpected Results and Indexing Rules.
* 
When indexing is installed and enabled, the Keyword field and the global search field always use the search indexing engine, regardless of whether it is experiencing errors. In other words, Windchill will not perform a database search using keywords even if indexed searching is failing.
To bypass the Windchill search index, perform an explicit database search. To do this, navigate to the Advanced Search page and leave the Keyword field blank. Use the Type, Context, and Criteria fields to narrow your search results. For more information, see Advanced Search.
When performing a search with indexing enabled, the priority of the search result depends on name, number, creator and most recent timestamp of the Windchill object. Consider the following examples to understand the relevant search results:
If a document is named Doc001 and the same characters are assigned as the number to another document, then both the attributes are given the same level of priority.
Based on your login, the search result displays the list of Windchill objects in the Folder Contents table. Consider that a Product Creator creates a document named Doc001 and a Product Member creates a document named Doc002. When a Product Creator runs a search, the search result displays Doc001at the top. When a Product Member runs the same search, the search result lists Doc002 first followed by Doc001.
If a document is modified, the search result lists the document with most recent modifications at the top. This behavior is valid for the last modified document only and not for a newly created document. To enable this behavior, set the following properties to true in the wt.properties file:
com.ptc.windchill.search.getLastModifiedSearchResults
com.ptc.windchill.search.enableOrderingOnLastModifiedDate
The properties are set to false by default.