2. Principal Consultant with Intellinet
Microsoft SharePoint Server MVP
Dev and Architect with MS stack since 1996
Working with SharePoint since 2002
3. Search Overview
◦ Review of features and Concepts
Search Site and Web Parts
◦ Review components of Search and Results pages
◦ Customize Search and Result pages
Overview of Search API
Possible Solutions
4. Crawling
◦ A scheduled activity that indexes the content,
meta-data and security.
Index
◦ Processed info
◦ Extremely fast compared to querying source
content
5. Managed Properties
◦ Can be used to query against a specific attribute
◦ 100+ by default, more can be added
◦ Examples:
Author
ContentType
CreatedBy
LastModifiedTime
DocId
FirstName
6. Content Classes
◦ Searches based on Object Type
◦ Examples:
SPSPeople
STS_Site
STS_Web
STS_list_[doccumentlibrary] *
STS_listitem_[documentlibrary] *
* Note name in brackets can be replaced with template name
7. Query Formatting
◦ Limit – 255 characters
◦ Content Classes - ContentClass:Value
◦ Managed Properties - Property:Value
◦ Logical Operators - AND, OR, NOT, +, -
◦ Relational Operators - <, >, <=, >=, <>
◦ Filename – filename:”name”
◦ File Type – filetype:value
◦ Wildcards – Property:Partial Value
Example: “ContentClass:STS_Web AND Blog”
Would return all Webs that have “Blog” in the meta-data.
8. People Search
◦ Queries the attributes in the User Profile store
◦ Used to find individual not content
◦ Similar to content search, but not tied to a specific
site
9.
10. Out of the Box Web Parts
◦ All Web Parts from the Search and Results Page are
available
◦ Including:
Paging
Results
Related Queries
Best Bets
Statistics
Summary
11. Search Results
◦ XSLT for both Content and People can be fully
customized
◦ Queries can be preset to create dynamically
generated content on sites
13. Namespaces
◦ Server
Microsoft.Office.Server.Search.Query
◦ Foundation
Microsoft.SharePoint.Search.Query
14. KeywordQuery – Simplified Queries
Property:Value – similar to standard search in UI
15. FullTextSqlQuery - Supports rich, SQL-like queries
SELECT <columns>
FROM <content source>
WHERE <conditions>
ORDER BY <columns>
Conditions
FREETEXT()
CONTAINS()
16. Example
SELECT LastName, FirstName, JobTitle, Title, accountname
FROM SCOPE()
WHERE ("scope" = 'People')
AND CONTAINS(JobTitle, 'Manager')
AND NOT CONTAINS(Department, '1099')
18. Rich Content Interactions
◦ Interacting with Very Large Lists & Libraries
◦ Listing Department members
Content Without Site Boundaries
◦ Cross-site navigation with security trimming
◦ Aggregating content
19.
20. MSDN SharePoint 2010 Resource Center
◦ http://msdn.microsoft.com/en-us/sharepoint/bb964529.aspx
Content Classes in SharePoint Search
◦ http://nextconnect.blogspot.com/2010/04/content-classes-in-
sharepoint-search.html
My Search Blog Posts
◦ http://nextconnect.blogspot.com/search/label/Search