SharePoint 2007: Federated Search - TechNet Articles - United States (English) - TechNet Wiki

This document was originally published as Working with Federation (Office SharePoint Server) and has been reproduced here preliminary to updating the official documentation to allow the community to correct any other inaccuracies and provide other enhancements prior to including updates in the officia"r2 fiji-r2">

SharePoint 2007: Federated Search

This document was originally published as Working with Federation (Office SharePoint Server) and has been reproduced here preliminary to updating the official documentation to allow the community to correct anyl version of this topic..

In Office SharePoint Server 2007 with the Infrastructure Update for Microsoft Office Servers installed, federation enables end users to issue a query that searches multiple sources and displays results in separate Web Parts on a single search results page. These sources can be enterprise content repositories, other search engines, or portions of your Office SharePoint Server 2007 index. Using federation enables you to provide more extensive query results for your users without devoting your server resources to crawling and indexing content.

There are two approaches for processing queries to return search results:

  • Content crawling   In this approach, results are returned from the search server's content index based on the user's query. The content index contains content that is crawled by the search server, and includes text content and metadata for each content item. This is the same process that is described for Enterprise Search in Microsoft Office SharePoint Server. For more information, see Enterprise Search Architecture.

  • Federated search   In this approach, you are enabled to display search results for additional content that is not crawled by your search server. With federation, the query can be performed over the local content index, or it can be forwarded to an external content repository where it is processed by that repository's search engine. The repository's search engine then returns the results to the search server. The search server formats and renders the results from the external repository within the same search results page as the results from search server's own content index.

Comparing Federated Search to Content Crawling

To help you decide whether to crawl a repository's content directly or by using federated search, you should consider the differences between the two approaches. You must determine which is most appropriate based on the content repository, and your requirements for the search results you want to return. There are advantages to both approaches.

Advantages of crawling content

By querying the search server's content index for search results, you can do the following:

  • Sort results by relevance.

  • Control how frequently the content index is updated.

  • Specify what metadata is crawled.

  • Perform a single backup operation for crawled content.

Advantages of federating content

By using federated search to return search results:

  • You require no additional capacity requirements for the content index, as content is not crawled by the search service.

  • You can take advantage of a repository’s existing search engine. For example, you can federate to an Internet search engine to search the Web.

  • You can optimize the content repository's search engine for the repository's specific set of content, which might provide better search performance on the content set.

  • You can access repositories that are secured against crawls, but which can be accessed by search queries.

Federated Locations

A federated location defines the federated search connection to the external content repository, and is composed of the following:

  • Location type

  • Query and More Results link templates

  • Triggers

  • Display information

  • Restrictions

  • Authentication and credentials information

Location Type

Office SharePoint Server 2007 search supports the following types of federated locations:

  • Local Search Index   SharePoint sites local to the search service.

  • OpenSearch 1.0/1.1   The RSS feed for any remote search server's results page, or any searchable feed that supports the OpenSearch standard, and returns search results in structured XML format (for example, RSS or Atom results).

You can federate to other repositories by building a lightweight interface that exposes the repository with a searchable XML feed. You can then create an OpenSearch location that connects to the lightweight interface. For more information about how to expose repositories as searchable XML feeds, see Architecture Guidance for Building Federated Search Connectors [Search Server 2008].

Query and More Results Link Templates

The query template contains the parameterized URL that points to the location’s Web interface, and contains the search query and any other parameters that are required by the search engine.

The query template is equivalent to the URL template in the OpenSearch specification, and the syntax is based on the OpenSearch URL Template Syntax.

The more results link template contains the URL for an HTML page that displays results for the federated search location.

 

Triggers

A trigger is a query constraint that determines when a query is passed. Only queries that match the pattern specified for the triggers in the location definition are forwarded to the federated location. Triggers are essential to the federation experience, as they ensure you display only information that is targeted to the user’s query.

There are three types of triggers:

  • Always    An Always trigger always forwards queries to the federated location. If you specify this trigger for the federated location, ensure is based on the OpenSearch URL Template Syntax.

    The more results link template contains the URL for an HTML page that displays results for the federated search location.

     

Triggers

A trigger is a query constraint that determines when a query is passed. Only queries that match the pattern specified for the triggers in the location definition are forwarded to the federated location. Triggers are essential to the federation experience, as they ensure you display only information that is targeted to the user’s query.

There are three types of triggers:

    that the location has enough bandwidth to handle the additional query traffic.

  • Prefix   A prefix trigger contains an exact term, with which the query must be prefixed for the location to match the query. For example, if "weather" is specified as the prefix trigger, then the query "weather New York, NY" will match but only "New York, NY" is forwarded to the federated location.

  • Pattern   A pattern trigger contains a specified regular expression pattern, which the query must match for the trigger to forward the query. To forward only a portion of the query to the federated source, you can create a capture group. The capture group can then be referenced in the query template. For more information on regular expressions and capture groups, see.NET Framework Regular Expressions.

Display Information

The display information specifies how display the search results that are returned, and includes the following:

  • The XSLT specifying how to format and render the search results XML

  • The list of properties to display in the search results UI

  • The sample data that is used to provide a preview of the Top Federated Results Web Part when it is edited in a Windows SharePoint Services 3.0-compatible editor

Restrictions

You can specify restrictions in the location definition to limit the sites that can use the federated location.

Authentication and Credentials Information

In the authentication and credentials information section of the location definition, you specify the authentication type for the federated location. The authentication type can be one of the following:

  • Anonymous   No credentials are required to connect to the federated location.

  • Common   Each connection uses the same set of credentials to connect to the federated location.

  • Per-user   The credentials of the user who submitted the search query are used to connect to the federated location.

For the common and per-user authentication types, you must also specify one of the following authentication protocols:

  • Basic

  • Digest

  • NTLM Application Pool identity (common authentication type only)

  • NTLM

  • Kerberos (per user authentication type only)

  • Forms

  • Cookie

Note: If the federated location is configured for per-user authentication and the content repository for the location is on a remote server, you must either use Kerberos authentication or create custom versions of the federated search Web Parts. These custom versions must include UI elements to request the user's credentials so that they can be passed in the request to the federated location.

Federated Search Results UI

Search includes the following new Web Parts for displaying search results from federated locations.

Federated Results Web Part

This Web Part displays the results from a specified federated location. You can specify only one location in a Federated Results Web Part. By default there are two Federated Results Web Parts, one that displays related searches from Live Search, and the other that displays Live Search results.

Top Federated Results Web Part

This Web Part displays the results from the first federated location to return search results. You can configure multiple locations for the Web Part, in priority order. By default, there are no locations configured for this Web Part.

Customizing the Search Results UI

The search results for federated locations are returned to the search server as XML. The results are formatted and rendered based on the specified XSLT. This can be specified at the search service level, in the location definition configuration, or for a specific instance of the Web Part in the Web Part's properties. For information about modifying the XSLT to customize the search results view, see Enterprise Search Core Results XSLT Transformation.