Managing Keywords

Keywords are words or phrases that an organization has identifies as important for searching. Keywords provide a way for search administrators to display additional information and recommended links on the initial results page. This information would not otherwise be displayed in the search results for queries that contain a particular word or phrase that is added to the keywords list. Understand the following when you are managing keywords:

  • Partial matching of a keyword is not possible, as the terms are not separated into individual words by a word breaker.

  • When different versions of a keyword exist—for example, C# and CSharp—you should use synonyms, because the keyword match is performed on the unmodified query terms that the user entered.

  • Two pieces of information can be displayed for a keyword: a definition of the term, and the “best bets,” which is a list of links identified as being especially relevant for that term.


A definition is essentially the same as a glossary term; it provides an explanation of the keyword's meaning. The definition text is included as part of the keyword’s entry in the Keywords list, specified in the Definition property.

Best Bets

Best bets are a list of resources recommended by the search administrator for a keyword.

There is a many-to-many relationship between keywords and best bets. A keyword will likely have more than one best bet associated with it, and a best bet can be associated with multiple keywords. This means the best bets list is configured separately from the keywords list. After a best bet is added to this list, it can be associated with the appropriate entries in the Keywords list.

Keywords Object Model

You can find the classes for managing search scopes in the Microsoft.Office.Server.Search.Administration namespace, located in Microsoft.Office.Server.Search.dll.

Individual keywords are represented by the Keyword class. Table 1 lists the properties for this class.

Table 1. Keyword properties

Name Description


The word or phrase representing the keyword.


A collection of synonyms of the keyword.


The contact responsible for the keyword.


A collection of best bets for the keyword.


The definition of the keyword.


The activation date for the keyword.


The expiry date for the keyword.


The date to notify the keyword’s contact that the term is due for review.

The Keyword class contains two methods: one to update the keyword with any changes made, and one to delete the keyword from the Keyword list.

The BestBet class represents individual best bets. Table 2 lists the properties for this class.

Table 2. BestBet properties

Name Description


Title for best bet.


URL for best bet.


Description of best bet.


Collection of keywords that use this best bet.

To return the keywords and best bets for a given site collection, you use the Keywords class. Methods in this object return either a KeywordCollection object, which holds the collection of keywords, or the BestBetCollection object, which holds the collection of best bets.

You can also use the BestBetsCollection object to hold the collection of best bets for a given keyword. To hold the collection of synonyms for a given keyword, you can use the SynonymCollection object.

See Also




Getting Started with the Enterprise Search Administration Object Model
Improving Relevance