Search driven application development on SharePoint 2010

Last week I wrote a high level overview on The Search Developer Story in SharePoint 2010 over at the Enterprise Search Blog. Next, I'll provide a more detailed look at the different integration points in a series of blog posts. It will be aimed mainly at developers and architects wanting a better understanding of the technical architecture on the search side, and how to leverage the SharePoint platform for developing search driven applications. 

Before diving into the details, let me provide a summary of the query side integration options. The diagram below shows the main query side integration points, applicable for both SharePoint Search and FAST Search for SharePoint, which now share a common platform and interfaces.

As shown in the figure, applications based on the SharePoint 2010 platform can leverage different query components (all available on the web front end in a SharePoint deployment). You can read more about the details of each integration point here, including benefits and some advanced features available with FAST Search only. For your convenience, here's a quick recap:

Search Web Parts

  • Shared for SharePoint Search and FAST Search, providing a unified user experience
  • Based on the Federation OM

The main SharePoint object models on the query side are the Federation OM and the Query OM.

The Federation Object Model (OM)

  • A new object model in SharePoint 2010
  • Provides a unified interface to search against different locations/engines
  • Allows for combining and merging of results
  • Supports 3 locations out-of-box in SharePoint 2010
    1. SharePoint Search
    2. FAST Search
    3. OpenSearch

The Query Object Model (OM)

  • The lower level, typed object model
  • The object model that other services and object models are based on
  • Communicates with the Search Service Application (SSA) for getting search results

Integration points that also are available for applications outside SharePoint farm, e.g. standalone non-web based applications and Silverlight applications;

The Query Web Service

  • SOAP based ASMX service 
  • Uses same schema for FAST Search and SharePoint Search
  • Provides search results, query suggestions, meta data and more

The Query RSS

  • Lightweight integration point

Coming up, more details on the Search Service Application, the object models, the web service and more. Stay tuned!