Upgrading SharePoint Portal Server Search 2003 Customizations to Enterprise Search

In Microsoft Office SharePoint Portal Server 2003 (SharePointPSSearch), you could customize the SharePoint Portal Server Search 2003 (SharePointPSSearch) search experience in several ways. Upgrading SharePoint Portal Server 2003 portal sites to Office SharePoint Server 2007 can affect your search customizations. This topic addresses SharePointPSSearch 2003 customizations and how they are affected by the upgrade process.

Upgrade Process

When you upgrade your portal site from SharePoint Portal Server 2003 to Office SharePoint Server 2007, you can choose from two upgrade processes:

  • In Place Upgrade. This process upgrades everything in the portal site upgraded at one time; the portal site is unavailable until the upgrade process is complete.

  • Side by Side Upgrade. This upgrade process is gradual; parts of the portal site use the new version, while other sites continue to use the previous version.

Office SharePoint Server 2007 Search supports both upgrade processes. When you use Side-by-Side upgrade, your server farm will have both the SharePointPSSearch service and Office SharePoint Server 2007 search service running together.

Note

Only the search configuration settings are upgraded; the content index is not included in the process. You must recrawl content after the upgrade to build a new content index.

Search Customizations

In SharePoint Portal Server 2003, you could customize search in several different ways. Following is a list of these customizations; click the link to find out more about how your custom solutions for that area might be affected in the upgrade:

  • Customization Using Search Administration

  • Querying Search

  • Search UI Customizations

Customization Using Search Administration

For SharePointPSSearch, the search administration classes were located in the Microsoft.SharePoint.Portal.Admin.Search namespace. In Office SharePoint Server 2007 search, Microsoft.SharePoint.Portal.Admin.Search has been replaced with a new search administration namespace, Microsoft.Office.Server.Search.Administration.

You can write custom code to programmatically administer search using the classes contained in Microsoft.Office.Server.Search.Administration, located in Microsoft.Office.Server.Search.dll.

Note

Because Microsoft.SharePoint.Portal.Admin.Search is removed, any code you have that uses the classes it contained will no longer work after you upgrade to Office SharePoint Server 2007.

QueryProvider Class

In SharePointPSSearch, you used the QueryProvider class in the Microsoft.SharePoint.Portal.Search namespace to execute a search query against the search service from custom code.

In Office SharePoint Server 2007 search, this class has been deprecated, but is still supported, so code written against this class will continue to work after you upgrade the search service to Office SharePoint Server 2007 search.

For any new code you write to the query search service, use the new classes that replace the QueryProvider class. These classes are found in the Microsoft.Office.Server.Search namespace, located in Microsoft.Office.Server.Search.dll, and include:

FullTextSqlQuery – used for full text syntax search queries

KeywordQuery – used for keyword syntax search queries.

Search Query Web Service

Office SharePoint Server 2007 search includes the Query Web service, which is backward-compatible with SharePointPSSearch:

http://<portal_site>/_vti_bin/search.asmx

After you have finished the upgrade process, client applications that called the SharePointPSSearch Query Web service will continue to work, with results returned using the Microsoft.Search.Document schema format. However the new version of the Web service has a slight change in how results are returned; best bets are now returned separately from relevant results. Because the Microsoft.Search.Document schema format does not support returning multiple result sets, any clients still using this earlier schema for results will only get back relevant results. Best bets will not be included.

Query Syntax

Office SharePoint Server 2007 search supports SQL Server full-text search syntax, so most search queries written for SharePointPSSearch will continue to work after upgrading to Office SharePoint Server 2007 search. There are some changes in the syntax though, with support for some SQL syntax elements removed, or deprecated. These are identified in Table 1.

Table 1. SQL Syntax Changes in Office Server Search

Element Description

COALESCE_TABLE function

Removed. Queries using this function will need to be re-written.

Column Weighting

Removed. If present in queries to Office SharePoint Search, it will be ignored.

Rank Modification

Removed. If present in queries to Office SharePoint Search, it will be ignored.

UNION ALL element

Removed. If present in queries to Office SharePoint Search, it will be ignored.

MATCHES predicate

Removed. Queries using this predicate will need to be rewritten.

FROM <scope>

Specifying a search scope in the FROM clause is no longer supported. Enterprise Search only supports the following FROM clause syntax:

…FROM scope()…

Note

Support for keyword syntax in search queries has been added to Office SharePoint Server 2007 search. For more information, see the Keyword Query Syntax reference.

Search UI Customizations

Search.aspx

The Search.aspx file is not changed or overwritten during the Office SharePoint Server 2007 upgrade process. Customizations you have made to this page should continue to work after upgrading.

Search Web Parts

Custom Microsoft ASP.NET pages containing any of the SharePointPSSearch Web Parts, such as the SearchBox or SearchResults, should continue to work after the upgrade to Office SharePoint Server 2007.