Using stoplists in Faceted Search

Release 1.3 - ...

Introduction

On this page the maintenance and functional usage of stoplists are explained regarding to Faceted Search. Please refer to this item for more generic information about SQL Server's FTS Stoplists and Noise word lists as well as how to create and manage stoplists apart from Faceted Search.

For the time being, the rest of this page applies to SQL Server only.

SQL Server 2005

In SQL Server 2005 noise words are stored per supported language in a plain text noise word list as a physical file on the database server. This noise word list applies to the entire database instance per supported language. Editing the noise words can be done using a plain text editor like notepad. One can add, edit or delete one or more words and save the file without renaming it.

Changes of one or more noice word list only takes place after rebuilding the full-text catalog. To force rebuild the catalog using T-SQL, see the code example below. Caution: for large catalogs, rebuilding can take quite some time while the results of Faceted Search may be incorrect.

SQL CopyCode image Copy Code
/* Rebuild the catalog after editing noise file(s) */
ALTER FULLTEXT CATALOG SmsSearch
REBUILD WITH ACCENT_SENSITIVITY = OFF; /* Without this hint accent sensitivity depends on used collation */

SQL Server 2008

Creating the Custom Stoplist

As a default the Custom Stoplist is not set during Faceted Search setup. A Custom Stoplist can be created pre-filled with the system stoplist or enitirely empty in order to fill it manually.

SQL CopyCode image Copy Code
/* Create custom stoplists using T-SQL */
--
/* Copy from system stoplist */
CREATE FULLTEXT STOPLIST EmptySix_Stoplist
FROM SYSTEM STOPLIST;
--
/* Copy from custom stoplist */
CREATE FULLTEXT STOPLIST Extra_Stoplist
FROM EmptySix_Stoplist;
--
/* Entirely empty stoplist */
CREATE FULLTEXT STOPLIST New_Stoplist;

One full-text catalog can contain multiple stoplists. It is also possible to just create a stoplist without using it. A stoplist is always multilingual. However, in the graphical user interface mentioned below, stoplists can easily be managed per language.

SQL CopyCode image Copy Code
/* Set system stoplist to an indexed view */
ALTER FULLTEXT INDEX ON vwtsContentPUB
SET STOPLIST = SYSTEM;
--
/* Set custom stoplist to an indexed view */
ALTER FULLTEXT INDEX ON vwtsContentCMS
SET STOPLIST = EmptySix_StopList;
--
/* Unset any stoplist from an indexed view */
ALTER FULLTEXT INDEX ON vwtsContentSXML
SET STOPLIST = OFF;

Managing a Stoplist

In contrast to SQL Server 2005, using Faceted Search with SQL Server 2008 will supply a couple of additional graphical interfaces within Smartsite iXperion. If using SQL Server 2008 it is possible to manage stopwords in Smartsite iXperion manager under user action group Faceted Search Control, default under Tools.

In the appearing dialog, the default Stoplists can be edited immediately:

  • System Stopwords (Dutch)
  • Custom Stopwords (Dutch)
  • Custom Stopwords (English)

Clicking on one of the Stoplists above, will show a list of Stopwords in the right pane. One can add, remove and edit Stopwords in a intuitive manner similar to any other DataEditor.