24
1 of 24 Table of Contents 1. Summary ...................................................................................................................................2 1.1. Solution Overview ............................................................................................................2 1.2. Solution Scope .................................................................................................................2 1.3. Solution Prerequisites ......................................................................................................2 2. Solution Design and Architecture ..........................................................................................2 2.1. Web Part Gallery .............................................................................................................4 2.1.1. Web Part Connections .....................................................................................................4 2.2. Source Code Sample.......................................................................................................5 3. Installation ................................................................................................................................6 3.1. Installation Steps .............................................................................................................6 3.2. Un-installation Steps ........................................................................................................7 3.3. Upgrade Steps .................................................................................................................7 3.4. Post Install Validation ......................................................................................................7 4. Configuration Sample(s) .........................................................................................................7 4.1. User Scenarios ................................................................................................................7 4.2. Configuration Settings .....................................................................................................8 4.2.1. Basic Search (Quick Reference) .....................................................................................8 4.2.2. Advanced Search ............................................................................................................9 4.2.3. Editor File Configuration ................................................................................................10 4.3. Additional Configuration Details ....................................................................................12 4.3.1. Search Results Web Part ..............................................................................................12 4.3.2. Error Messages .............................................................................................................12 4.3.3. External XSLT Reference ..............................................................................................13 4.3.4. Miscellaneous Features .................................................................................................13 5. Supplemental Info: Schema Details .....................................................................................15 6. Troubleshooting Guide..........................................................................................................24 6.1. System-Generated Error Messages ..............................................................................24 6.2. Troubleshooting Tools ...................................................................................................24 Document Settings .......................................................................................................................24 MSIT Information Services MOSS Metadata Search Solution/Configuration Guide

Moss Metadata Search Configuration Guide

Embed Size (px)

DESCRIPTION

Moss Metadata Search Configuration Guide

Citation preview

Page 1: Moss Metadata Search Configuration Guide

1 of 24

Table of Contents 1. Summary ................................................................................................................................... 2

1.1. Solution Overview ............................................................................................................ 2 1.2. Solution Scope ................................................................................................................. 2 1.3. Solution Prerequisites ...................................................................................................... 2

2. Solution Design and Architecture .......................................................................................... 2 2.1. Web Part Gallery ............................................................................................................. 4 2.1.1. Web Part Connections ..................................................................................................... 4 2.2. Source Code Sample ....................................................................................................... 5

3. Installation ................................................................................................................................ 6 3.1. Installation Steps ............................................................................................................. 6 3.2. Un-installation Steps ........................................................................................................ 7 3.3. Upgrade Steps ................................................................................................................. 7 3.4. Post Install Validation ...................................................................................................... 7

4. Configuration Sample(s) ......................................................................................................... 7 4.1. User Scenarios ................................................................................................................ 7 4.2. Configuration Settings ..................................................................................................... 8 4.2.1. Basic Search (Quick Reference) ..................................................................................... 8 4.2.2. Advanced Search ............................................................................................................ 9 4.2.3. Editor File Configuration ................................................................................................10 4.3. Additional Configuration Details ....................................................................................12 4.3.1. Search Results Web Part ..............................................................................................12 4.3.2. Error Messages .............................................................................................................12 4.3.3. External XSLT Reference ..............................................................................................13 4.3.4. Miscellaneous Features .................................................................................................13

5. Supplemental Info: Schema Details .....................................................................................15

6. Troubleshooting Guide ..........................................................................................................24 6.1. System-Generated Error Messages ..............................................................................24 6.2. Troubleshooting Tools ...................................................................................................24

Document Settings .......................................................................................................................24

MSIT – Information Services MOSS Metadata Search

Solution/Configuration Guide

Page 2: Moss Metadata Search Configuration Guide

2 of 24

1. Summary

1.1. Solution Overview

Search service components were developed and deployed to deliver a richer, more extensible, and manageable metadata (read: document-centric) search experience than can be provided using out of box (OOB) advanced search web parts. The goal of this solution is to provide a comprehensive search experience that can be tailored to specific information services/sources, while future-proofing the design for the consumption of additional sources.

1.2. Solution Scope

These custom search components are designed to work with all SharePoint search scopes defined by the site administrator, whether they are defined locally or at the SSP. There are three types of search available with this solution, a pre-configured query with no user input required, links to search results using a SharePoint list or a query string in the URL, or the advanced search query (this is passed via a hidden form, not a query string). See Scenarios below for more information and examples. For even more details, see Architecture and Schema Details toward the end of this document.

1.3. Solution Prerequisites

This solution assumes deployment to an MOSS 2007 environment w/ search services enabled on the SSP.

2. Solution Design and Architecture

This custom solution breaks up the search process into three distinct phases: 1. Gathering search information from the user (active) or from a pre-configured list/string (passive); 2. Submitting information and building the information; 3. Executing the query and displaying results to the user.

Page 3: Moss Metadata Search Configuration Guide

3 of 24

Search UI Web Part Query Builder WP

Search Results WP

Query Object

Model

Query Engine

Content Index

Q

u

e

r

y

R

e

s

u

l

t

Post form

data

Send search

query

Note: The „Form Data‟ and „Search Query‟ are sent as encrypted values and decrypted accordingly at destination.

Page 4: Moss Metadata Search Configuration Guide

4 of 24

2.1. Web Part Gallery

Search UI Web Parts

Web Part Description

Simple Search WP This is used for setting up a keyword search. This web part has a textbox and a search button. Keyword value is sent in query string argument.

Advanced Search WP

This is used for setting up advanced search. This web part renders the UI elements based on the configuration set. Query arguments posted in form collection.

Query Builder Web Parts

Web Part Description

Query Builder WP This web part is used in conjunction with Advanced Search Web Part. Uses XML configuration posted by Advanced Search WP to process the form collection to build a query. This WP also has a query override property for creating static queries on a page

QueryString Builder WP

This web part used with simple search where the keyword and query are posted as query string values. Gets an encrypted query off the query string.

Formatted QueryString Builder WP

This web part reads all query string variables posted and replaces them in the query configuration with their values. Arguments from the query string are substituted into a query template.

Integrated QueryString Builder WP

This web part is designed to be used for integrating simple search with Faceted Search solution.

Search Results Web Parts

Web Part Description

Search Results WP Executes the search query and returns all the results.

Search Results Preview WP

Uses a custom query configuration and returns only a subset of results. A “More” link is created that sends the encrypted query in the query string.

2.1.1. Web Part Connections

The QueryStringBuilder WP and Search Results WP needs to be connected. To establish the connection, go to edit mode, select „edit‟ menu on the QueryStringBuilder WP >> Connections >> Send Query To >> Search Results WP.

Page 5: Moss Metadata Search Configuration Guide

5 of 24

2.2. Source Code Sample

The following is an example of a control that extends the out-of-box (OOB) Search UI functionality where the values of the contains clause are stored and managed in a SharePoint list. To create your own list controls, inherit from the appropriate base classes and implement your own UI code.

Configuration:

<containsCollectionCondition column="ArtistDisplayName" id="MSITASC_artist"

label="Artist Name:" parse="string" relevant="true" operator="or"

control="Microsoft.InformationServices.Search.Controls.SPListLookupControl,

Microsoft.InformationServices.Search.Controls, Version=1.0.0.0, Culture=neutral,

PublicKeyToken=bca9770034f1f5b1">

<properties>

<property name="List">Artists</property>

<!-- releative path to web containing the list -->

<property name="Web">/sites/artweb</property>

<!-- CAML Query -->

<property name="Caml">

<![CDATA[

<View>

<ViewFields>

<FieldRef Name='Title'/>

</ViewFields>

<Query>

<Where>

<Neq>

<FieldRef Name='Title'/>

<Value Type='Text'></Value>

</Neq>

</Where>

<OrderBy>

<FieldRef Ascending="TRUE" Name="Title" />

</OrderBy>

</Query>

</View>

]]>

</property>

<property name="DataSourceId">artist_source</property>

<property name="DataTextField">Title</property>

<property name="DataValueField">Title</property>

<!-- allowable values are Multiple or Single -->

<property name="SelectMode">Multiple</property>

<property name="Empty_Text">--No Artist Selected--</property>

<property name="CssClass">searchcenterlblong</property>

</properties>

</containsCollectionCondition>

Page 6: Moss Metadata Search Configuration Guide

6 of 24

3. Installation

3.1. Installation Steps

3.1.1. Navigate to the appropriate drop folder and verify the files located in the setup directory of the latest

build. Example: Search_Advanced\Search-Advanced-Generic_########.#\x64\Release\Setup

3.1.2. On the MOSS server, click Start->Run->”cmd”. This will open the command prompt. Navigate to the folder where the setup files are copied.

3.1.2.1. ALTERNATE: Run Installer.exe 3.1.3. Run the install.cmd file from the command prompt.

3.1.3.1. Since this package is composed of multiple solutions specify the cab_names value (install Search)

3.1.4. Provide the url of the site collection (e.g. http://portals) at the prompt and hit enter. 3.1.5. Follow the on screen instructions 3.1.6. The install will retract the solution and delete it if it is already installed 3.1.7. The install deploys the solution and prompts for confirmation 3.1.8. When prompted to check status on the admin page >> go to the Sharepoint 3.0 Central

Administration 3.1.9. Click on “Operations” in the left hand menu and then on “Solution Management” under “Global

Configuration”. 3.1.10. Confirm that the following solutions were deployed:

3.1.10.1. AdvancedSearchWebparts.v2.0.cab 3.1.10.2. ListLookupControl.cab

3.1.11. Switch back to the command prompt window and click enter to confirm that the solution is deployed.

Page 7: Moss Metadata Search Configuration Guide

7 of 24

NOTE: ListLookupControl.cab should be deployed as a part of the metadata search services solution (MSSS). This supplemental control provides a control for the advanced search configuration to populate from items stored in a SharePoint list.

3.2. Un-installation Steps

Run the UnInstall script located in the setup directory of the latest build. Follow the same prompts as described above.

3.3. Upgrade Steps

Run the Upgrade script located in the setup directory of the latest build. Follow the same prompts as described above.

3.4. Post Install Validation

Verify that the web parts are added to the web part gallery. Add smoke test for canned query example w/ a known scope.

4. Configuration Sample(s)

4.1. User Scenarios

The following list summarizes the key search scenarios supported by the solution:

Use Case Description

Pre-configured query with no user input required

User requests a page; a web part on the page (with a default query) executes and displays results on page load.

Links to search results using the following query sources

Parameters stored and pulled from a SharePoint list 1. Description: editor stores a set of subject values in a list field which are

passed to a builder either on the same page or a different page. 2. Example: Library Books Browse by Subject service where a combination

of keyword or authority code values might be stored to build a complex query against the library catalog.

Parameters pulled from a query string in the URL 3. Description: user clicks a link on the page which has parameters

attached to it which are read by the builder either on the same or a different page

4. Example: Library Training & Certs sub-pages where user clicks on a link that has query parameters baked into the URL.

Parameters pulled from a hidden form (passing query from one page to another) 5. Description: user gets a limited result set, but has a “more >>” link to a

fuller set of results on another page.

Advanced Search UI Business requires ability to easily extend or modify an advanced search interface to expose specific content source properties (and property field values, if known); query must support complex nested queries.

Page 8: Moss Metadata Search Configuration Guide

8 of 24

4.2. Configuration Settings

Simple and Advanced Search (Site Search Center) o Keyword Search (Simple) – text box available from right rail of all page layouts (excluding search

center pages). This search will pass submitted values, via query string, for query building (see details below).

o Metadata Search (Advanced) – scoped to Horizon catalog contents (inclusive of books, ebooks, video, courseware, and other items. Market Research items excluded).

Advanced

Search

Web part

Query

Builder

Search

Results

Web part

Search information

gathered and posted to

same page or different

page in the form collection.

Query builder and results

webparts are connected

Query builder uses

configuration passed from

ASWP to construct query.

Results web part gets query

from builder, adds sorting

option, and runs query

using FulltextSqlQuery

UI generated from config

xml in a web part property.

This config info is also

used to define the query.

Simple

Search

Web part

Formatted or

Complex

Querystring

Builder

Search

Results

Web part

Search information

gathered and posted to

same page or different

page in the querystring

Builder and results

webparts are connected

Builder contains formatted

string (Formatted builder) or

configuration xml (Complex

builder). Arguments are

retrieved from querystring

and inserted into the query

Results web part gets query

from builder, adds sorting

option, and runs query

using FulltextSqlQuery

4.2.1. Basic Search (Quick Reference)

To set up a keyword search, drop the following web parts onto the page and configure them.

IS Simple Search Web Part v2.0: Set the following properties on this web part.

Property Name Description

PostBackUrl Url to which the keyword gets submitted.

Search TextBox Css Class Css Class for TextBox

Search Image Css Class Css Class for search image.

QueryString Builder v2.0: Set the following properties on this web part.

Property Name Description

Configuration Editor Specify search query configuration

Page 9: Moss Metadata Search Configuration Guide

9 of 24

IS Search Results v2.0

Property Name Description

XSL Editor Specify the internal xslt for transforming search results.

Sorts Editor To enable sorting, specify the sorting configuration.

RSS Editor To enable RSS feed for the search results, specify this configuration.

Query Settings This property group contains settings for search query. Default settings are used if nothing has changed.

StyleSheet Settings Contains link to external css file and also the css class names for Pagination, Sorting and ToolBar controls.

Error Messages This contains two properties.

1. Search Service Not Found: Specify custom error message to be displayed when the search service was not found.

2. Generic Error Message: Custom error message for all other errors

Pagination and Sorting Contains properties for Pagination and Sorting.

SortControl Type: You can choose Horizontal type other than the regular SortControl.

You can turn the Paging, Sorting On/Off by using the check boxes.

External Xslt You can specify an external Xslt file for transforming the search results other than the internal one that is specified in the „XSLT Editor‟ property. To enable this turn on the „Use External Xslt‟ check box and specify the .xsl file path.

Miscellaneous 1. To enable RSS, check the „Display RSS‟.

2. To enable Search Provider for IE, check the „Display Add IE7 Search Provider‟ and enter location of the provider definition xml file.

4.2.2. Advanced Search

To set up Advanced Search, drop the following web parts onto the page and configure them.

IS Advanced Search Web Part v2.0: Set the following properties on this web part.

Property Name Description

Advanced Search Editor Specify configuration for UI elements as well as search query.

PostBackUrl Specify Url to which the form data gets posted. By default the page postback to itself.

CSS File External Css file for styling UI elements. Default file: /Style Library/en-us/Core Styles/advsearch.css

Search Button display Specifies the location and number of Search buttons.

DisplayAtTopOnly – Button is displayed only at top

Page 10: Moss Metadata Search Configuration Guide

10 of 24

DisplayAtBottomOnly – Button is displayed at the bottom.

DisplayBoth – Two buttons are displayed. One is at Top and one is at Bottom. By default this is selected.

Query Builder v2.0: This web part needs to be connected to IS Search Results v2.0 for sending the query

IS Search Results v2.0: Properties are same as explained in „Simple Search‟ above.

4.2.3. Editor File Configuration

Configuration of the editor file in the Advanced Search webpart is required to create both the appropriate query and search interface. For example, to generate the UI used on the Library catalog advanced search:

Page 11: Moss Metadata Search Configuration Guide

11 of 24

The following configuration file is used: <?xml version="1.0" encoding="utf-8"?>

<query xmlns="http://mslibrary1">

<select>Title, description, HorizonBibNumber, HorizonYearPublished, HorizonItemType1,

HorizonAuthor, HorizonFulfillmentUrl, ISBN

</select>

<where>

<operator type="and" relevant="false">

<conditions>

<freetextCondition id="MSITASC_keywords"

column="MSLibraryContent" label="Title/Description" parse="string" relevant="true"

control="System.Web.UI.WebControls.TextBox, System.Web, Version=2.0.0.0, Culture=neutral,

PublicKeyToken=b03f5f7f11d50a3a">

<properties>

<property name="CssClass">searchcentertbmed</property>

</properties>

</freetextCondition>

<containsCondition column="HorizonAuthor"

control="System.Web.UI.WebControls.TextBox, System.Web, Version=2.0.0.0, Culture=neutral,

PublicKeyToken=b03f5f7f11d50a3a" id="MSITASC_Author" label="Author" parse="string"

relevant="true" operator="and">

<properties>

<property name="CssClass">searchcentertbmed</property>

</properties>

</containsCondition>

<rangeCondition column="HorizonYearPublished"

control="Microsoft.InformationServices.Search.WebParts.YearRangeControl,

Microsoft.InformationServices.Search.WebParts, Version=1.0.0.0, Culture=neutral,

PublicKeyToken=bca9770034f1f5b1" id="MSITASC_date" relevant="true" type="numeric"

negated="false" label="Date Published"/>

<containsCollectionCondition column="HorizonItemType1" label="Format"

comparitor="equals" id="MSITASC_itemtype" parse="string" operator="or"

control="System.Web.UI.WebControls.CheckBoxList, System.Web, Version=2.0.0.0,

Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" relevant="true">

<items columns="2" allItemsLabel="All Collection Types">

<item name="Book" parsing="string" value="Book" />

<item name="EBook" parsing="string" value="EBooks" />

<item name="Audio" parsing="string" value="Audio" />

<item name="Reference" parsing="string" value="Reference"/>

<item name="Courseware" parsing="string" value="Courseware"/>

<item name="Report/Standard" parsing="string" value="Report/Standard" />

<item name="Video" parsing="string" value="Video" />

<item name="Software" parsing="string" value="Software" />

<item name="Abstract" parsing="string" value="Abstracts"/>

</items>

</containsCollectionCondition>

<scopeCondition relevant="false">"scope"='Library'</scopeCondition>

<containsCollectionCondition relevant="false" column="LibraryLocation"

id="MSITASC_location" comparitor="equals" operator="or" parse="string"

control="Microsoft.InformationServices.Search.WebParts.LibraryLocation,

Microsoft.InformationServices.Search.WebParts, Version=1.0.0.0, Culture=neutral,

PublicKeyToken=bca9770034f1f5b1" label="" />

</conditions>

</operator>

</where>

</query>

See the supplemental info section for additional schema details

Page 12: Moss Metadata Search Configuration Guide

12 of 24

Schema Element Description

query Top element. Defines the query to send to the search service and the UI to collect the information

select Takes a comma delimited list of managed properties to return in the query results

where Takes a comma delimited list of managed properties to return in the query results

operator Contains the conditions of the where clause

conditions Container for condition elements

scopeCondition Inserts a clause into the where statement in the form of “scope”=‟<scope>‟

scopeCollectionCondition Use this element to collect scope information from the user interface

freetextCondition Use this element to build a freetext predicate into the query

containsCondition Use this element to build a contains predicate into the query

containsCollectionCondition Use this element to build a contains predicate into the query

sqlCondition Use this element to build a sql style predicate into the query

rangeCondition Use this element to query a range

4.3. Additional Configuration Details

4.3.1. Search Results Web Part

Search Results Web Part has been amended in this release to support RSS streaming, IE7 Search Provider support; external XSLT support; vertical and horizontal sort display; and custom error messaging.

4.3.2. Error Messages

A custom service not found and generic error message can be provided. Default settings are [blank].

Page 13: Moss Metadata Search Configuration Guide

13 of 24

4.3.3. External XSLT Reference

An external (read: centralized XSLT) can be referenced by pointing the instantiated web part to the override file. If no external file is referenced then the default style contained in the XSL Editor is used.

NOTE: this reference can be a relative or absolute path. Be sure that the file is published.

4.3.4. Miscellaneous Features

In addition to displaying XML only or the executed query the results web part can be configured to display RSS and IE7 Search Provider links:

Activating these features enables the tokens in the default XSLT:

RSS editor option allows specifying what fields to make available in the RSS stream. Example: <PropertyMappings>

<Property name='TITLE' rssItem='title' />

<Property name='DESCRIPTION' rssItem='description' />

<Property name='HORIZONFULFILLMENTURL' rssItem='url' />

<Property name='HORIZONFULFILLMENTURL' rssItem='link' />

</PropertyMappings>

The IE7 Provider needs to specify a path to the XML configuration. By default this is created in the layouts directory, so the path should be overwritten to point to a file in the root of the search center:

Page 14: Moss Metadata Search Configuration Guide

14 of 24

http://{server-name}/SearchCenter/Pages/searchprovider.xml And look like: <?xml version="1.0" encoding="UTF-8" ?>

- <OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">

<ShortName>MSLibrary Intranet</ShortName>

<Description>MSLibrary Intranet</Description>

<InputEncoding>UTF-8</InputEncoding>

<Url type="text/html" template="http://{server-

name}/SearchCenter/Pages/LibrarySimple.aspx?k={searchTerms}" />

</OpenSearchDescription>

Paging and Sorting In addition to being able to toggle display of pagination and sort control, the sort control can also be presented vertically in a drop-down box (default) and vertically:

The sort display is configured via the Sorts Editor in the web part tool pane.

Corresponding configuration: <orderBy>

<column name="HorizonYearPublished" defaultDirection="desc" label="Date" />

<column name="HorizonAuthor" defaultDirection="asc" label="Author"/>

<column name="title" defaultDirection="asc" label="Title"/>

<column name="rank" defaultDirection="desc" label="Relevance" fixedSort="true" />

</orderBy>

Attribute Description

name mapped column name

defaultDirection specifies whether the default direction is ASCENDING or DESCENDING for that column

label value displayed in UI

Page 15: Moss Metadata Search Configuration Guide

15 of 24

Displaying Numbered Results To display numbered search results a token must be called in the XSLT: Add <xsl:value-of select="pos" />

5. Supplemental Info: Schema Details

ELEMENT: QUERY

Top element. Defines the query to send to the search service and the UI to collect the information. Parents: none Children: select, where

Attributes: none

ELEMENT: SELECT

Takes a comma delimited list of managed properties to return in the query results. Parents: query Children: none

Attributes: none

ELEMENT: WHERE

Takes a comma delimited list of managed properties to return in the query results. Parents: query Children: operator

Attributes: none

Page 16: Moss Metadata Search Configuration Guide

16 of 24

ELEMENT: OPERATOR

Contains the conditions of the where clause. Parents: where Children: conditions

Attributes:

Name Value Description

type and or

The type of Boolean operator to join the sub-elements of the operator element.

ELEMENT: CONDITIONS

Container for condition elements. Parents: where Children: scopeCondition, scopeCollectionCondition, freetextCondition, containsCondition, sqlCondition, containsCollectionCondition, sqlLookupCondition, sqlCollectionCondition, referencesCondition, literalCondition

Attributes: none

ELEMENT: SCOPECONDITION

Inserts a clause into the where statement in the form of “scope”=‟<scope>‟ Parents: conditions Children: none

Attributes:

Name Value Description

relevant True False

Set relevant=”true” if this clause is sufficient to run the query. If you want to force the user to filter on additional elements, set relevant=”false”.

Example:

<scopeCondition relevant="false">"scope"='Market Research'</scopeCondition>

ELEMENT: SCOPECOLLECTIONCONDITION

Use this element to collect scope information from the user interface. Parents: conditions Children: properties, items

Attributes:

Name Value Description

relevant True False

Set relevant=”true” if this clause is sufficient to run the query. If you want to force the user to filter on additional elements, set relevant=”false”.

id String in the format : MSITASC_<string>

ID used to identify the control.

label String Label to display in the UI.

control String Full name of the control used to collect the value in the UI.

Page 17: Moss Metadata Search Configuration Guide

17 of 24

Page 18: Moss Metadata Search Configuration Guide

18 of 24

Example: <scopeCollectionCondition control="" id="MSITASC_scopepicker" label="Scopes"

relevant="false">

<properties>

<property name="CssClass">scopePicker</property>

</properties>

<items>

<item name="Library" value="Library Scope"/>

<item name="Market Research" value="Market Research"/>

</items>

</scopeCollectionCondition>

ELEMENT: FREETEXTCONDITION

Use this element to build a freetext predicate into the query. Parents: conditions Children: properties

Attributes:

Name Value Description

relevant True False

Set relevant=”true” if this clause is sufficient to run the query. If you want to force the user to filter on additional elements, set relevant=”false”.

id String in the format : MSITASC_<string>

ID used to identify the control.

label String Label to display in the UI.

control String Full name of the control used to collect the value in the UI.

column string Name of managed property to use in the freetext clause.

parse “string” “literal”

How the user input should be parsed. If string, phrases are preserved and single quotes are escaped. If literal, the value of the value attribute is passed through unprocessed.

value String Value to use if parse is set to literal.

Example: <freetextCondition id="MSITASC_default properties"

column="#DefaultProperties" label="Keywords" parse="string" relevant="true"

control="System.Web.UI.WebControls.TextBox, System.Web, Version=2.0.0.0,

Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">

<properties>

<property name="CssClass">searchcentertblong</property>

</properties>

</freetextCondition>

Above element outputs the following: Freetext(#DefaultProperties, „<string>‟) where string is a space delimited list of words and phrases. Phrases are enclosed in double quotes. Single quotes are escaped.

Page 19: Moss Metadata Search Configuration Guide

19 of 24

ELEMENT: CONTAINSCONDITION

Use this element to build a contains predicate into the query. Parents: conditions Children: properties

Attributes:

Name Value Description

Relevant True False

Set relevant=”true” if this clause is sufficient to run the query. If you want to force the user to filter on additional elements, set relevant=”false”.

Id String in the format : MSITASC_<string>

ID used to identify the control.

Label String Label to display in the UI.

Control String Full name of the control used to collect the value in the UI.

Column String Name of managed property to use in the freetext clause.

Parse “string” “literal”

How the user input should be parsed. If string, phrases are preserved and single quotes are escaped. If literal, the value of the value attribute is passed through unprocessed.

Value String Value to use if parse is set to literal.

operator and or

Boolean operator used to join words and phrases in the contains clause.

Example: <containsCondition column="HorizonAuthor"

control="System.Web.UI.WebControls.TextBox, System.Web, Version=2.0.0.0,

Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"

id="MSITASC_Author" label="Author" parse="string" relevant="true"

operator="and">

<properties>

<property name="CssClass">searchcentertblong</property>

</properties>

</containsCondition>

Above element outputs the following: Contains(HorizonAuthor, „<wordlist>‟) Where wordlist: ”phrase” [and|or ”phrase”] phrase : ”word [phrase]”

Page 20: Moss Metadata Search Configuration Guide

20 of 24

ELEMENT: CONTAINSCOLLECTIONCONDITION

Use this element to build a contains predicate into the query. Parents: conditions Children: properties, items

Attributes:

Name Required Value Description

Relevant No True False

Set relevant=”true” if this clause is sufficient to run the query. If you want to force the user to filter on additional elements, set relevant=”false”.

Id Yes String in the format : MSITASC_<string>

ID used to identify the control.

Label No String Label to display in the UI.

Control Yes String Full name of the control used to collect the value in the UI.

Column Yes String Name of managed property to use in the freetext clause.

parse Yes “string” “literal”

How the user input should be parsed. If string, phrases are preserved and single quotes are escaped. If literal, the value of the value attribute is passed through unprocessed.

Value No String Value to use if parse is set to literal.

Operator and or

Boolean operator used to join words and phrases in the contains clause.

Example: <containsCollectionCondition column="MRVendor" label="Vendor"

id="MSITASC_vendor" parse="string" operator="or" relevant="true"

control="System.Web.UI.WebControls.CheckBoxList, System.Web, Version=2.0.0.0,

Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">

<items columns="3" allItemsLabel="All Vendors">

<item name="AMI Partners" parsing="string" value="AMI" />

<item name="AMR Research" parsing="string" value="AMR" />

<item name="Canalys" parsing="string" value="Canalys"/>

<item name="CI Works" parsing="string" value="CI"/>

<item name="CEB" parsing="string" value="Corporate" />

<item name="Forrester" parsing="string" value="Forrester"/>

<item name="Gartner" parsing="string" value="Gartner"/>

<item name="IDC" parsing="string" value="IDC"/>

<item name="In-Stat" parsing="string" value="In-Stat"/>

<item name="Kagan" parsing="string" value="Kagan"/>

</items>

</containsCollectionCondition>

Above element outputs the following: Contains(MRVendor, ‘”AMI”’) or contains(MRVendor, ‘”Gartner”’) etc.

Page 21: Moss Metadata Search Configuration Guide

21 of 24

ELEMENT: SQLCONDITION

Use this element to build a SQL style predicate into the query. Parents: conditions Children: properties

Attributes:

Name Required Value Description

Relevant No True False

Set relevant=”true” if this clause is sufficient to run the query. If you want to force the user to filter on additional elements, set relevant=”false”.

Id Yes String in the format : MSITASC_<string>

ID used to identify the control.

Label No String Label to display in the UI.

Control Yes String Full name of the control used to collect the value in the UI.

Column Yes String Name of managed property to use in the freetext clause.

parse Yes “string” “literal” “numeric” “datetime”

How the user input should be parsed.

value No String Value to use if parse is set to literal.

comparator yes equals not equals greater than less than greater than of equals less than or equals

Comparison operator to use in the comparison

Example: <sqlCondition column="Category" comparitor="equals"

control="System.Web.UI.WebControls.TextBox, System.Web, Version=2.0.0.0,

Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" id="MSITASC_category"

label="Category" parse="string" relevant="true"/>

Above element outputs the following: Category=’<string>’

Page 22: Moss Metadata Search Configuration Guide

22 of 24

ELEMENT: RANGECONDITION

Use this element to query a range. Parents: conditions Children: properties

Attributes:

Example: <rangeC

onditio

n

column=

"Horizo

nPublis

hDate"

control="Microsoft.InformationServices.Search.WebParts.MSLibraryDateControl,

Microsoft.InformationServices.Search.WebParts, Version=1.0.0.0,

Culture=neutral, PublicKeyToken=bca9770034f1f5b1" id="MSITASC_date"

relevant="true" parse="datetime" label="Date Published"/>

Above element outputs the following: HorizonPublishDate >= DATEADD(DAY, <offset>, GETGMTDATE()) and HorizonPublishDate <= DATEADD(DAY, <offset>, GETGMTDATE())

ELEMENT: LITERALCONDITION

Use this element to include a literal condition in the query. This element doesn‟t have a UI. Parents: conditions Children: properties

Attributes:

Name Required Value Description

Relevant No True False

Set relevant=”true” if this clause is sufficient to run the query. If you want to force the user to filter on additional elements, set relevant=”false”.

Id Yes String in the format : MSITASC_<string>

ID used to identify the control.

Label No String Label to display in the UI.

Control Yes String Full name of the control used to collect the value in the UI.

Column Yes String Name of managed property to use in the freetext clause.

Parse Yes “string” “numeric” “datetime” “literal”

How the user input should be parsed.

Value No String Value to use if parse is set to literal.

Name Required Value Description

Relevant N/A True False

Not applicable.

Label N/A String Not applicable.

Control N/A String Not applicable.

Column N/A String Not applicable.

Parse N/A “string” “numeric” “datetime”

Not applicable.

Page 23: Moss Metadata Search Configuration Guide

23 of 24

Example: <literalCondition id="MSITASC_facet"

value="contains(HorizonSubjects,'"Science"')" />

Above element outputs the following: contains(HorizonSubjects,'"Science"')

“literal”

Value No String Value to use as a literal condition.

Id Yes String in the format : MSITASC_<string>

ID used to identify the control.

Page 24: Moss Metadata Search Configuration Guide

24 of 24

6. Troubleshooting Guide

6.1. System-Generated Error Messages

If there is an error connecting to the configured scope a custom error message will be thrown

If the search service was not found then a custom error message will be thrown.

Note: These two error messages are configurable from web part properties.

6.2. Troubleshooting Tools

MOSS Query Tool can be used for validating query constructs.

Document Settings

Document Name MOSS_Metadata_Search-Configuration_Guide

Solution Reference Search-Advanced_20080602.1

CodePlex Project http://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=sptoolbox&ReleaseId=13881

Last save date Friday, June 06, 2008

Notes