SlideShare ist ein Scribd-Unternehmen logo
1 von 24
Downloaden Sie, um offline zu lesen
MSIT – Information Services
     MOSS Metadata Search
     Solution/Configuration Guide




                                                     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




                                                                              1 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.




                                                     2 of 24
Search Results WP

                     Post form                      Send search
                       data                            query
Search UI Web Part               Query Builder WP

                                                                      Query Object
                                                                        Model


                                                                  Q                   R
                                                                  u                   e
                                                                  e                   s
                                                                  r                   u
                                                                  y                   l
                                                                                      t


                                                                      Query Engine




                                                                      Content Index




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




                                                    3 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       This web part reads all query string variables posted and replaces
                 Builder WP                  them in the query configuration with their values. Arguments from
                                             the query string are substituted into a query template.
                 Integrated QueryString      This web part is designed to be used for integrating simple search
                 Builder WP                  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      Uses a custom query configuration and returns only a subset of
                 WP                          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.



                                                 4 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=quot;ArtistDisplayNamequot; id=quot;MSITASC_artistquot;
   label=quot;Artist Name:quot; parse=quot;stringquot; relevant=quot;truequot; operator=quot;orquot;

          control=quot;Microsoft.InformationServices.Search.Controls.SPListLookupControl,
   Microsoft.InformationServices.Search.Controls, Version=1.0.0.0, Culture=neutral,
   PublicKeyToken=bca9770034f1f5b1quot;>
          <properties>
                 <property name=quot;Listquot;>Artists</property>
                 <!-- releative path to web containing the list -->
                 <property name=quot;Webquot;>/sites/artweb</property>
                 <!-- CAML Query -->
                 <property name=quot;Camlquot;>
                 <![CDATA[
                 <View>
                        <ViewFields>
                               <FieldRef Name='Title'/>
                        </ViewFields>
                        <Query>
                               <Where>
                                      <Neq>
                                             <FieldRef Name='Title'/>
                                                    <Value Type='Text'></Value>
                                      </Neq>
                               </Where>
                                  <OrderBy>
                                      <FieldRef Ascending=quot;TRUEquot; Name=quot;Titlequot; />
                                  </OrderBy>
                        </Query>
                 </View>
                 ]]>
                 </property>
                 <property name=quot;DataSourceIdquot;>artist_source</property>
                 <property name=quot;DataTextFieldquot;>Title</property>
                 <property name=quot;DataValueFieldquot;>Title</property>
                 <!-- allowable values are Multiple or Single -->
                 <property name=quot;SelectModequot;>Multiple</property>
                 <property name=quot;Empty_Textquot;>--No Artist Selected--</property>
                 <property name=quot;CssClassquot;>searchcenterlblong</property>
          </properties>
   </containsCollectionCondition>




                                               5 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_AdvancedSearch-Advanced-Generic_########.#x64ReleaseSetup




      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.



                                                     6 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      User requests a page; a web part on the page (with a default query) executes and
input required                         displays results on page load.
Links to search results using the      Parameters stored and pulled from a SharePoint list
following query sources                     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.




                                                      7 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).



                                UI generated from config
              Advanced                                                     Simple
                                xml in a web part property.
               Search                                                     Search
                                This config info is also
              Web part                                                    Web part
                                used to define the query.


                          Search information                                            Search information
                          gathered and posted to                                        gathered and posted to
                          same page or different                                        same page or different
                          page in the form collection.                                  page in the querystring




                                                                         Formatted or
                Query                 Query builder and results            Complex                  Builder and results
                Builder               webparts are connected             Querystring                webparts are connected
                                                                            Builder
                                      Query builder uses                                            Builder contains formatted
                                      configuration passed from                                     string (Formatted builder) or
                                      ASWP to construct query.                                      configuration xml (Complex
                                                                                                    builder). Arguments are
                                      Results web part gets query                                   retrieved from querystring
                                      from builder, adds sorting                                    and inserted into the query
               Search                 option, and runs query              Search
               Results                using FulltextSqlQuery              Results                   Results web part gets query
               Web part                                                   Web part                  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




                                                              8 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



                                                   9 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:




                                                  10 of 24
The following configuration file is used:
<?xml version=quot;1.0quot; encoding=quot;utf-8quot;?>
<query xmlns=quot;http://mslibrary1quot;>
       <select>Title, description, HorizonBibNumber, HorizonYearPublished, HorizonItemType1,
HorizonAuthor, HorizonFulfillmentUrl, ISBN
       </select>
       <where>
              <operator type=quot;andquot; relevant=quot;falsequot;>
                     <conditions>
                            <freetextCondition id=quot;MSITASC_keywordsquot;
column=quot;MSLibraryContentquot; label=quot;Title/Descriptionquot; parse=quot;stringquot; relevant=quot;truequot;
control=quot;System.Web.UI.WebControls.TextBox, System.Web, Version=2.0.0.0, Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3aquot;>
       <properties>
         <property name=quot;CssClassquot;>searchcentertbmed</property>
       </properties>
                            </freetextCondition>
                            <containsCondition column=quot;HorizonAuthorquot;
control=quot;System.Web.UI.WebControls.TextBox, System.Web, Version=2.0.0.0, Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3aquot; id=quot;MSITASC_Authorquot; label=quot;Authorquot; parse=quot;stringquot;
relevant=quot;truequot; operator=quot;andquot;>
       <properties>
         <property name=quot;CssClassquot;>searchcentertbmed</property>
       </properties>
                            </containsCondition>
<rangeCondition column=quot;HorizonYearPublishedquot;
control=quot;Microsoft.InformationServices.Search.WebParts.YearRangeControl,
Microsoft.InformationServices.Search.WebParts, Version=1.0.0.0, Culture=neutral,
PublicKeyToken=bca9770034f1f5b1quot; id=quot;MSITASC_datequot; relevant=quot;truequot; type=quot;numericquot;
negated=quot;falsequot; label=quot;Date Publishedquot;/>
       <containsCollectionCondition column=quot;HorizonItemType1quot; label=quot;Formatquot;
comparitor=quot;equalsquot; id=quot;MSITASC_itemtypequot; parse=quot;stringquot; operator=quot;orquot;
control=quot;System.Web.UI.WebControls.CheckBoxList, System.Web, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aquot; relevant=quot;truequot;>
              <items columns=quot;2quot; allItemsLabel=quot;All Collection Typesquot;>
                     <item name=quot;Bookquot; parsing=quot;stringquot; value=quot;Bookquot; />
                     <item name=quot;EBookquot; parsing=quot;stringquot; value=quot;EBooksquot; />
                     <item name=quot;Audioquot; parsing=quot;stringquot; value=quot;Audioquot; />
                     <item name=quot;Referencequot; parsing=quot;stringquot; value=quot;Referencequot;/>
                     <item name=quot;Coursewarequot; parsing=quot;stringquot; value=quot;Coursewarequot;/>
                     <item name=quot;Report/Standardquot; parsing=quot;stringquot; value=quot;Report/Standardquot; />
                     <item name=quot;Videoquot; parsing=quot;stringquot; value=quot;Videoquot; />
                     <item name=quot;Softwarequot; parsing=quot;stringquot; value=quot;Softwarequot; />
                     <item name=quot;Abstractquot; parsing=quot;stringquot; value=quot;Abstractsquot;/>
              </items>
       </containsCollectionCondition>
       <scopeCondition relevant=quot;falsequot;>quot;scopequot;='Library'</scopeCondition>
       <containsCollectionCondition relevant=quot;falsequot; column=quot;LibraryLocationquot;
id=quot;MSITASC_locationquot; comparitor=quot;equalsquot; operator=quot;orquot; parse=quot;stringquot;
control=quot;Microsoft.InformationServices.Search.WebParts.LibraryLocation,
Microsoft.InformationServices.Search.WebParts, Version=1.0.0.0, Culture=neutral,
PublicKeyToken=bca9770034f1f5b1quot; label=quot;quot; />
       </conditions>
       </operator>
       </where>
</query>


See the supplemental info section for additional schema details




                                                   11 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].




                                                       12 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:



                                                     13 of 24
http://{server-name}/SearchCenter/Pages/searchprovider.xml

And look like:

<?xml version=quot;1.0quot; encoding=quot;UTF-8quot; ?>
- <OpenSearchDescription xmlns=quot;http://a9.com/-/spec/opensearch/1.1/quot;>
  <ShortName>MSLibrary Intranet</ShortName>
  <Description>MSLibrary Intranet</Description>
  <InputEncoding>UTF-8</InputEncoding>
  <Url type=quot;text/htmlquot; template=quot;http://{server-
name}/SearchCenter/Pages/LibrarySimple.aspx?k={searchTerms}quot; />
</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=quot;HorizonYearPublishedquot; defaultDirection=quot;descquot; label=quot;Datequot; />
  <column name=quot;HorizonAuthorquot; defaultDirection=quot;ascquot; label=quot;Authorquot;/>
  <column name=quot;titlequot; defaultDirection=quot;ascquot; label=quot;Titlequot;/>
  <column name=quot;rankquot; defaultDirection=quot;descquot; label=quot;Relevancequot; fixedSort=quot;truequot; />
</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



                                                      14 of 24
Displaying Numbered Results
To display numbered search results a token must be called in the XSLT:
Add
<xsl:value-of select=quot;posquot; />




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




                                                   15 of 24
ELEMENT: OPERATOR
Contains the conditions of the where clause.
Parents:       where
Children:      conditions

Attributes:

 Name           Value                   Description
 type           and                     The type of Boolean operator to join the sub-elements
                or                      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                    Set relevant=”true” if this clause is sufficient to run the
                False                   query. If you want to force the user to filter on additional
                                        elements, set relevant=”false”.
Example:
<scopeCondition relevant=quot;falsequot;>quot;scopequot;='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                          Set relevant=”true” if this clause is sufficient to run
               False                         the query. If you want to force the user to filter on
                                             additional elements, set relevant=”false”.
 id            String in the format :        ID used to identify the control.
               MSITASC_<string>
 label         String                        Label to display in the UI.
 control       String                        Full name of the control used to collect the value in
                                             the UI.


                                                16 of 24
17 of 24
Example:
<scopeCollectionCondition control=quot;quot; id=quot;MSITASC_scopepickerquot; label=quot;Scopesquot;
relevant=quot;falsequot;>
      <properties>
            <property name=quot;CssClassquot;>scopePicker</property>
      </properties>
      <items>
            <item name=quot;Libraryquot; value=quot;Library Scopequot;/>
            <item name=quot;Market Researchquot; value=quot;Market Researchquot;/>
      </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                       Set relevant=”true” if this clause is sufficient to run
               False                      the query. If you want to force the user to filter on
                                          additional elements, set relevant=”false”.
 id            String in the format :     ID used to identify the control.
               MSITASC_<string>
 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”                   How the user input should be parsed. If string,
               “literal”                  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=quot;MSITASC_default propertiesquot;
column=quot;#DefaultPropertiesquot; label=quot;Keywordsquot; parse=quot;stringquot; relevant=quot;truequot;
control=quot;System.Web.UI.WebControls.TextBox, System.Web, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aquot;>
<properties>
             <property name=quot;CssClassquot;>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.




                                             18 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                    Set relevant=”true” if this clause is sufficient to run the
                False                   query. If you want to force the user to filter on additional
                                        elements, set relevant=”false”.
 Id             String in the format    ID used to identify the control.
                :
                MSITASC_<string>
 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”                How the user input should be parsed. If string, phrases
                “literal”               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                     Boolean operator used to join words and phrases in the
                or                      contains clause.

Example:
<containsCondition column=quot;HorizonAuthorquot;
control=quot;System.Web.UI.WebControls.TextBox, System.Web, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aquot;
id=quot;MSITASC_Authorquot; label=quot;Authorquot; parse=quot;stringquot; relevant=quot;truequot;
operator=quot;andquot;>
<properties>
             <property name=quot;CssClassquot;>searchcentertblong</property>
      </properties>
</containsCondition>

Above element outputs the following:
Contains(HorizonAuthor, „<wordlist>‟)

Where
wordlist: ”phrase” [and|or ”phrase”]
phrase : ”word [phrase]”




                                              19 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                        Set relevant=”true” if this clause is
                            False                       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 :      ID used to identify the control.
                            MSITASC_<string>
 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”                    How the user input should be parsed.
                            “literal”                   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                         Boolean operator used to join words
                            or                          and phrases in the contains clause.

Example:
<containsCollectionCondition column=quot;MRVendorquot; label=quot;Vendorquot;
id=quot;MSITASC_vendorquot; parse=quot;stringquot; operator=quot;orquot; relevant=quot;truequot;
control=quot;System.Web.UI.WebControls.CheckBoxList, System.Web, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aquot;>
<items columns=quot;3quot; allItemsLabel=quot;All Vendorsquot;>
            <item name=quot;AMI Partnersquot; parsing=quot;stringquot; value=quot;AMIquot; />
            <item name=quot;AMR Researchquot; parsing=quot;stringquot; value=quot;AMRquot; />
            <item name=quot;Canalysquot; parsing=quot;stringquot; value=quot;Canalysquot;/>
            <item name=quot;CI Worksquot; parsing=quot;stringquot; value=quot;CIquot;/>
            <item name=quot;CEBquot; parsing=quot;stringquot; value=quot;Corporatequot; />
            <item name=quot;Forresterquot; parsing=quot;stringquot; value=quot;Forresterquot;/>
            <item name=quot;Gartnerquot; parsing=quot;stringquot; value=quot;Gartnerquot;/>
            <item name=quot;IDCquot; parsing=quot;stringquot; value=quot;IDCquot;/>
            <item name=quot;In-Statquot; parsing=quot;stringquot; value=quot;In-Statquot;/>
            <item name=quot;Kaganquot; parsing=quot;stringquot; value=quot;Kaganquot;/>
      </items>
</containsCollectionCondition>

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




                                             20 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                        Set relevant=”true” if this clause is
                            False                       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 :      ID used to identify the control.
                            MSITASC_<string>
 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”                    How the user input should be
                            “literal”                   parsed.
                            “numeric”
                            “datetime”
 value          No          String                      Value to use if parse is set to
                                                        literal.
 comparator     yes         equals                      Comparison operator to use in the
                            not equals                  comparison
                            greater than
                            less than
                            greater than of equals
                            less than or equals

Example:
<sqlCondition column=quot;Categoryquot; comparitor=quot;equalsquot;
control=quot;System.Web.UI.WebControls.TextBox, System.Web, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aquot; id=quot;MSITASC_categoryquot;
label=quot;Categoryquot; parse=quot;stringquot; relevant=quot;truequot;/>
Above element outputs the following:
Category=’<string>’




                                             21 of 24
ELEMENT: RANGECONDITION
Use this element to query a range.
Parents:       conditions
Children:      properties

Attributes:

 Name           Required    Value                  Description
 Relevant       No          True                   Set relevant=”true” if this clause is
                            False                  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   ID used to identify the control.
                            :
                            MSITASC_<string>
 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                                                   Example:
                                                   Name of managed property to use in the
                                                   freetext clause.                  <rangeC
 Parse        Yes         “string”                                                   onditio
                                                   How the user input should be parsed.
                          “numeric”                                                  n
                          “datetime”                                                 column=
                          “literal”                                                  quot;Horizo
 Value        No          String            Value to use if parse is set to literal. nPublis
                                                                                     hDatequot;
control=quot;Microsoft.InformationServices.Search.WebParts.MSLibraryDateControl,
Microsoft.InformationServices.Search.WebParts, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=bca9770034f1f5b1quot; id=quot;MSITASC_datequot;
relevant=quot;truequot; parse=quot;datetimequot; label=quot;Date Publishedquot;/>
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       N/A         True                   Not applicable.
                            False
 Label          N/A         String                 Not applicable.
 Control        N/A         String                 Not applicable.
 Column         N/A         String                 Not applicable.
 Parse          N/A         “string”               Not applicable.
                            “numeric”
                            “datetime”


                                             22 of 24
“literal”
Value      No       String                 Value to use as a literal condition.
Id         Yes      String in the format   ID used to identify the control.
                    :
                    MSITASC_<string>


Example:
<literalCondition id=quot;MSITASC_facetquot;
value=quot;contains(HorizonSubjects,'quot;Sciencequot;')quot; />

Above element outputs the following:
contains(HorizonSubjects,'quot;Sciencequot;')




                                    23 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?ProjectNam
                                 e=sptoolbox&ReleaseId=13881

           Last save date        Friday, June 06, 2008

           Notes




                                                    24 of 24

Weitere ähnliche Inhalte

Ähnlich wie Moss Metadata Search Configuration Guide

Struts Intro Course(1)
Struts Intro Course(1)Struts Intro Course(1)
Struts Intro Course(1)wangjiaz
 
The Search Story in Sharepoint 2010
The Search Story in Sharepoint 2010The Search Story in Sharepoint 2010
The Search Story in Sharepoint 2010Tihomir Ignatov
 
Introduction to j2 ee frameworks
Introduction to j2 ee frameworksIntroduction to j2 ee frameworks
Introduction to j2 ee frameworksMukesh Kumar
 
Saphelp erp2004 en_9d_76563cc368b60fe10000000a114084_content
Saphelp erp2004 en_9d_76563cc368b60fe10000000a114084_contentSaphelp erp2004 en_9d_76563cc368b60fe10000000a114084_content
Saphelp erp2004 en_9d_76563cc368b60fe10000000a114084_contentmgassperera
 
WRStmlDSQUmUrZpQ0tFJ4Q_a36bc57fe1a24dd8bc5ba549736e406f_C2-Week2.pptx
WRStmlDSQUmUrZpQ0tFJ4Q_a36bc57fe1a24dd8bc5ba549736e406f_C2-Week2.pptxWRStmlDSQUmUrZpQ0tFJ4Q_a36bc57fe1a24dd8bc5ba549736e406f_C2-Week2.pptx
WRStmlDSQUmUrZpQ0tFJ4Q_a36bc57fe1a24dd8bc5ba549736e406f_C2-Week2.pptxsalemsg
 
Opinioz_intern
Opinioz_internOpinioz_intern
Opinioz_internSai Ganesh
 
Code igniter - A brief introduction
Code igniter - A brief introductionCode igniter - A brief introduction
Code igniter - A brief introductionCommit University
 
Microsoft Search Server 2008 - Technical Overview
Microsoft Search Server 2008 - Technical OverviewMicrosoft Search Server 2008 - Technical Overview
Microsoft Search Server 2008 - Technical Overviewukdpe
 
SharePoint 2010 Global Deployment
SharePoint 2010 Global DeploymentSharePoint 2010 Global Deployment
SharePoint 2010 Global DeploymentJoel Oleson
 
Spring review_for Semester II of Year 4
Spring review_for Semester II of Year 4Spring review_for Semester II of Year 4
Spring review_for Semester II of Year 4than sare
 
Spring from a to Z
Spring from  a to ZSpring from  a to Z
Spring from a to Zsang nguyen
 
Spring_Course_Content
Spring_Course_ContentSpring_Course_Content
Spring_Course_ContentMV Solutions
 
Super applied in a sitecore migration project
Super applied in a sitecore migration projectSuper applied in a sitecore migration project
Super applied in a sitecore migration projectdodoshelu
 
Vs2010 Aspnet MSP Bootcamp_MVP Ngan Seok Chern
Vs2010 Aspnet MSP Bootcamp_MVP Ngan Seok ChernVs2010 Aspnet MSP Bootcamp_MVP Ngan Seok Chern
Vs2010 Aspnet MSP Bootcamp_MVP Ngan Seok ChernQuek Lilian
 

Ähnlich wie Moss Metadata Search Configuration Guide (20)

Struts Intro Course(1)
Struts Intro Course(1)Struts Intro Course(1)
Struts Intro Course(1)
 
The Search Story in Sharepoint 2010
The Search Story in Sharepoint 2010The Search Story in Sharepoint 2010
The Search Story in Sharepoint 2010
 
Introduction to j2 ee frameworks
Introduction to j2 ee frameworksIntroduction to j2 ee frameworks
Introduction to j2 ee frameworks
 
Mvc
MvcMvc
Mvc
 
Saphelp erp2004 en_9d_76563cc368b60fe10000000a114084_content
Saphelp erp2004 en_9d_76563cc368b60fe10000000a114084_contentSaphelp erp2004 en_9d_76563cc368b60fe10000000a114084_content
Saphelp erp2004 en_9d_76563cc368b60fe10000000a114084_content
 
WRStmlDSQUmUrZpQ0tFJ4Q_a36bc57fe1a24dd8bc5ba549736e406f_C2-Week2.pptx
WRStmlDSQUmUrZpQ0tFJ4Q_a36bc57fe1a24dd8bc5ba549736e406f_C2-Week2.pptxWRStmlDSQUmUrZpQ0tFJ4Q_a36bc57fe1a24dd8bc5ba549736e406f_C2-Week2.pptx
WRStmlDSQUmUrZpQ0tFJ4Q_a36bc57fe1a24dd8bc5ba549736e406f_C2-Week2.pptx
 
Struts Ppt 1
Struts Ppt 1Struts Ppt 1
Struts Ppt 1
 
Opinioz_intern
Opinioz_internOpinioz_intern
Opinioz_intern
 
Code igniter - A brief introduction
Code igniter - A brief introductionCode igniter - A brief introduction
Code igniter - A brief introduction
 
Asp.net web api
Asp.net web apiAsp.net web api
Asp.net web api
 
Spring Boot
Spring BootSpring Boot
Spring Boot
 
Microsoft Search Server 2008 - Technical Overview
Microsoft Search Server 2008 - Technical OverviewMicrosoft Search Server 2008 - Technical Overview
Microsoft Search Server 2008 - Technical Overview
 
SharePoint 2010 Global Deployment
SharePoint 2010 Global DeploymentSharePoint 2010 Global Deployment
SharePoint 2010 Global Deployment
 
Spring review_for Semester II of Year 4
Spring review_for Semester II of Year 4Spring review_for Semester II of Year 4
Spring review_for Semester II of Year 4
 
Spring from a to Z
Spring from  a to ZSpring from  a to Z
Spring from a to Z
 
Olap
OlapOlap
Olap
 
Spring_Course_Content
Spring_Course_ContentSpring_Course_Content
Spring_Course_Content
 
Super applied in a sitecore migration project
Super applied in a sitecore migration projectSuper applied in a sitecore migration project
Super applied in a sitecore migration project
 
Vs2010 Aspnet MSP Bootcamp_MVP Ngan Seok Chern
Vs2010 Aspnet MSP Bootcamp_MVP Ngan Seok ChernVs2010 Aspnet MSP Bootcamp_MVP Ngan Seok Chern
Vs2010 Aspnet MSP Bootcamp_MVP Ngan Seok Chern
 
F04302053057
F04302053057F04302053057
F04302053057
 

Mehr von UGAIA

Milo-AI Milo AI Congress est conçu pour transformer votre compréhension de l'IA
Milo-AI Milo AI Congress est conçu pour transformer votre compréhension de l'IAMilo-AI Milo AI Congress est conçu pour transformer votre compréhension de l'IA
Milo-AI Milo AI Congress est conçu pour transformer votre compréhension de l'IAUGAIA
 
KIT GOV-1 · @peg500and's KIT-Governance Book
KIT GOV-1 · @peg500and's KIT-Governance BookKIT GOV-1 · @peg500and's KIT-Governance Book
KIT GOV-1 · @peg500and's KIT-Governance BookUGAIA
 
Smartphone et Copilot dans Windows 11 - Rendus sur PC.
Smartphone et Copilot dans Windows 11 - Rendus sur PC.Smartphone et Copilot dans Windows 11 - Rendus sur PC.
Smartphone et Copilot dans Windows 11 - Rendus sur PC.UGAIA
 
ConversationsAvecChatGPT-v5.pdf
ConversationsAvecChatGPT-v5.pdfConversationsAvecChatGPT-v5.pdf
ConversationsAvecChatGPT-v5.pdfUGAIA
 
Model-OpenAI-EROLw11-English.pdf
Model-OpenAI-EROLw11-English.pdfModel-OpenAI-EROLw11-English.pdf
Model-OpenAI-EROLw11-English.pdfUGAIA
 
Prompts-3languages en PDF v2
Prompts-3languages en PDF v2Prompts-3languages en PDF v2
Prompts-3languages en PDF v2UGAIA
 
Retirer les time code dialogue de film d'un document dans Word et le transfor...
Retirer les time code dialogue de film d'un document dans Word et le transfor...Retirer les time code dialogue de film d'un document dans Word et le transfor...
Retirer les time code dialogue de film d'un document dans Word et le transfor...UGAIA
 
Model-OpenAI-EROLw11-English.pptx
Model-OpenAI-EROLw11-English.pptxModel-OpenAI-EROLw11-English.pptx
Model-OpenAI-EROLw11-English.pptxUGAIA
 
Conversation avec ChatGPT-2.pdf --- v1 ---
Conversation avec ChatGPT-2.pdf --- v1 ---Conversation avec ChatGPT-2.pdf --- v1 ---
Conversation avec ChatGPT-2.pdf --- v1 ---UGAIA
 
Prompts in 3 Languages US-FR-CATv2
Prompts in 3 Languages US-FR-CATv2Prompts in 3 Languages US-FR-CATv2
Prompts in 3 Languages US-FR-CATv2UGAIA
 
Conversation pendant 24h avec une AI - ChatGPT
Conversation pendant 24h avec une AI - ChatGPTConversation pendant 24h avec une AI - ChatGPT
Conversation pendant 24h avec une AI - ChatGPTUGAIA
 
SPEAK with CHATGPT -US
SPEAK with CHATGPT -US SPEAK with CHATGPT -US
SPEAK with CHATGPT -US UGAIA
 
BOUCLES-DECOUVERTES NICE
BOUCLES-DECOUVERTES NICEBOUCLES-DECOUVERTES NICE
BOUCLES-DECOUVERTES NICEUGAIA
 
Les-OTTOMANS-NICE-T3
Les-OTTOMANS-NICE-T3Les-OTTOMANS-NICE-T3
Les-OTTOMANS-NICE-T3UGAIA
 
Bibliographie outils de Genealogie
Bibliographie outils de GenealogieBibliographie outils de Genealogie
Bibliographie outils de GenealogieUGAIA
 
Power automate desktop 2021
Power automate desktop 2021Power automate desktop 2021
Power automate desktop 2021UGAIA
 
Raci course b
Raci course bRaci course b
Raci course bUGAIA
 
Livre dunod
Livre dunodLivre dunod
Livre dunodUGAIA
 
Ugsf les url des présentations et des speakers pour la réunion du 11.12.13
Ugsf  les url des présentations et des speakers pour la réunion du 11.12.13Ugsf  les url des présentations et des speakers pour la réunion du 11.12.13
Ugsf les url des présentations et des speakers pour la réunion du 11.12.13UGAIA
 
4512 giraudy
4512 giraudy4512 giraudy
4512 giraudyUGAIA
 

Mehr von UGAIA (20)

Milo-AI Milo AI Congress est conçu pour transformer votre compréhension de l'IA
Milo-AI Milo AI Congress est conçu pour transformer votre compréhension de l'IAMilo-AI Milo AI Congress est conçu pour transformer votre compréhension de l'IA
Milo-AI Milo AI Congress est conçu pour transformer votre compréhension de l'IA
 
KIT GOV-1 · @peg500and's KIT-Governance Book
KIT GOV-1 · @peg500and's KIT-Governance BookKIT GOV-1 · @peg500and's KIT-Governance Book
KIT GOV-1 · @peg500and's KIT-Governance Book
 
Smartphone et Copilot dans Windows 11 - Rendus sur PC.
Smartphone et Copilot dans Windows 11 - Rendus sur PC.Smartphone et Copilot dans Windows 11 - Rendus sur PC.
Smartphone et Copilot dans Windows 11 - Rendus sur PC.
 
ConversationsAvecChatGPT-v5.pdf
ConversationsAvecChatGPT-v5.pdfConversationsAvecChatGPT-v5.pdf
ConversationsAvecChatGPT-v5.pdf
 
Model-OpenAI-EROLw11-English.pdf
Model-OpenAI-EROLw11-English.pdfModel-OpenAI-EROLw11-English.pdf
Model-OpenAI-EROLw11-English.pdf
 
Prompts-3languages en PDF v2
Prompts-3languages en PDF v2Prompts-3languages en PDF v2
Prompts-3languages en PDF v2
 
Retirer les time code dialogue de film d'un document dans Word et le transfor...
Retirer les time code dialogue de film d'un document dans Word et le transfor...Retirer les time code dialogue de film d'un document dans Word et le transfor...
Retirer les time code dialogue de film d'un document dans Word et le transfor...
 
Model-OpenAI-EROLw11-English.pptx
Model-OpenAI-EROLw11-English.pptxModel-OpenAI-EROLw11-English.pptx
Model-OpenAI-EROLw11-English.pptx
 
Conversation avec ChatGPT-2.pdf --- v1 ---
Conversation avec ChatGPT-2.pdf --- v1 ---Conversation avec ChatGPT-2.pdf --- v1 ---
Conversation avec ChatGPT-2.pdf --- v1 ---
 
Prompts in 3 Languages US-FR-CATv2
Prompts in 3 Languages US-FR-CATv2Prompts in 3 Languages US-FR-CATv2
Prompts in 3 Languages US-FR-CATv2
 
Conversation pendant 24h avec une AI - ChatGPT
Conversation pendant 24h avec une AI - ChatGPTConversation pendant 24h avec une AI - ChatGPT
Conversation pendant 24h avec une AI - ChatGPT
 
SPEAK with CHATGPT -US
SPEAK with CHATGPT -US SPEAK with CHATGPT -US
SPEAK with CHATGPT -US
 
BOUCLES-DECOUVERTES NICE
BOUCLES-DECOUVERTES NICEBOUCLES-DECOUVERTES NICE
BOUCLES-DECOUVERTES NICE
 
Les-OTTOMANS-NICE-T3
Les-OTTOMANS-NICE-T3Les-OTTOMANS-NICE-T3
Les-OTTOMANS-NICE-T3
 
Bibliographie outils de Genealogie
Bibliographie outils de GenealogieBibliographie outils de Genealogie
Bibliographie outils de Genealogie
 
Power automate desktop 2021
Power automate desktop 2021Power automate desktop 2021
Power automate desktop 2021
 
Raci course b
Raci course bRaci course b
Raci course b
 
Livre dunod
Livre dunodLivre dunod
Livre dunod
 
Ugsf les url des présentations et des speakers pour la réunion du 11.12.13
Ugsf  les url des présentations et des speakers pour la réunion du 11.12.13Ugsf  les url des présentations et des speakers pour la réunion du 11.12.13
Ugsf les url des présentations et des speakers pour la réunion du 11.12.13
 
4512 giraudy
4512 giraudy4512 giraudy
4512 giraudy
 

Kürzlich hochgeladen

Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 

Kürzlich hochgeladen (20)

Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 

Moss Metadata Search Configuration Guide

  • 1. MSIT – Information Services MOSS Metadata Search Solution/Configuration Guide 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 1 of 24
  • 2. 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. 2 of 24
  • 3. Search Results WP Post form Send search data query Search UI Web Part Query Builder WP Query Object Model Q R u e e s r u y l t Query Engine Content Index Note: The „Form Data‟ and „Search Query‟ are sent as encrypted values and decrypted accordingly at destination. 3 of 24
  • 4. 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 This web part reads all query string variables posted and replaces Builder WP them in the query configuration with their values. Arguments from the query string are substituted into a query template. Integrated QueryString This web part is designed to be used for integrating simple search Builder WP 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 Uses a custom query configuration and returns only a subset of WP 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. 4 of 24
  • 5. 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=quot;ArtistDisplayNamequot; id=quot;MSITASC_artistquot; label=quot;Artist Name:quot; parse=quot;stringquot; relevant=quot;truequot; operator=quot;orquot; control=quot;Microsoft.InformationServices.Search.Controls.SPListLookupControl, Microsoft.InformationServices.Search.Controls, Version=1.0.0.0, Culture=neutral, PublicKeyToken=bca9770034f1f5b1quot;> <properties> <property name=quot;Listquot;>Artists</property> <!-- releative path to web containing the list --> <property name=quot;Webquot;>/sites/artweb</property> <!-- CAML Query --> <property name=quot;Camlquot;> <![CDATA[ <View> <ViewFields> <FieldRef Name='Title'/> </ViewFields> <Query> <Where> <Neq> <FieldRef Name='Title'/> <Value Type='Text'></Value> </Neq> </Where> <OrderBy> <FieldRef Ascending=quot;TRUEquot; Name=quot;Titlequot; /> </OrderBy> </Query> </View> ]]> </property> <property name=quot;DataSourceIdquot;>artist_source</property> <property name=quot;DataTextFieldquot;>Title</property> <property name=quot;DataValueFieldquot;>Title</property> <!-- allowable values are Multiple or Single --> <property name=quot;SelectModequot;>Multiple</property> <property name=quot;Empty_Textquot;>--No Artist Selected--</property> <property name=quot;CssClassquot;>searchcenterlblong</property> </properties> </containsCollectionCondition> 5 of 24
  • 6. 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_AdvancedSearch-Advanced-Generic_########.#x64ReleaseSetup 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. 6 of 24
  • 7. 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 User requests a page; a web part on the page (with a default query) executes and input required displays results on page load. Links to search results using the Parameters stored and pulled from a SharePoint list following query sources 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. 7 of 24
  • 8. 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). UI generated from config Advanced Simple xml in a web part property. Search Search This config info is also Web part Web part used to define the query. Search information Search information gathered and posted to gathered and posted to same page or different same page or different page in the form collection. page in the querystring Formatted or Query Query builder and results Complex Builder and results Builder webparts are connected Querystring webparts are connected Builder Query builder uses Builder contains formatted configuration passed from string (Formatted builder) or ASWP to construct query. configuration xml (Complex builder). Arguments are Results web part gets query retrieved from querystring from builder, adds sorting and inserted into the query Search option, and runs query Search Results using FulltextSqlQuery Results Results web part gets query Web part Web part 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 8 of 24
  • 9. 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 9 of 24
  • 10. 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: 10 of 24
  • 11. The following configuration file is used: <?xml version=quot;1.0quot; encoding=quot;utf-8quot;?> <query xmlns=quot;http://mslibrary1quot;> <select>Title, description, HorizonBibNumber, HorizonYearPublished, HorizonItemType1, HorizonAuthor, HorizonFulfillmentUrl, ISBN </select> <where> <operator type=quot;andquot; relevant=quot;falsequot;> <conditions> <freetextCondition id=quot;MSITASC_keywordsquot; column=quot;MSLibraryContentquot; label=quot;Title/Descriptionquot; parse=quot;stringquot; relevant=quot;truequot; control=quot;System.Web.UI.WebControls.TextBox, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aquot;> <properties> <property name=quot;CssClassquot;>searchcentertbmed</property> </properties> </freetextCondition> <containsCondition column=quot;HorizonAuthorquot; control=quot;System.Web.UI.WebControls.TextBox, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aquot; id=quot;MSITASC_Authorquot; label=quot;Authorquot; parse=quot;stringquot; relevant=quot;truequot; operator=quot;andquot;> <properties> <property name=quot;CssClassquot;>searchcentertbmed</property> </properties> </containsCondition> <rangeCondition column=quot;HorizonYearPublishedquot; control=quot;Microsoft.InformationServices.Search.WebParts.YearRangeControl, Microsoft.InformationServices.Search.WebParts, Version=1.0.0.0, Culture=neutral, PublicKeyToken=bca9770034f1f5b1quot; id=quot;MSITASC_datequot; relevant=quot;truequot; type=quot;numericquot; negated=quot;falsequot; label=quot;Date Publishedquot;/> <containsCollectionCondition column=quot;HorizonItemType1quot; label=quot;Formatquot; comparitor=quot;equalsquot; id=quot;MSITASC_itemtypequot; parse=quot;stringquot; operator=quot;orquot; control=quot;System.Web.UI.WebControls.CheckBoxList, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aquot; relevant=quot;truequot;> <items columns=quot;2quot; allItemsLabel=quot;All Collection Typesquot;> <item name=quot;Bookquot; parsing=quot;stringquot; value=quot;Bookquot; /> <item name=quot;EBookquot; parsing=quot;stringquot; value=quot;EBooksquot; /> <item name=quot;Audioquot; parsing=quot;stringquot; value=quot;Audioquot; /> <item name=quot;Referencequot; parsing=quot;stringquot; value=quot;Referencequot;/> <item name=quot;Coursewarequot; parsing=quot;stringquot; value=quot;Coursewarequot;/> <item name=quot;Report/Standardquot; parsing=quot;stringquot; value=quot;Report/Standardquot; /> <item name=quot;Videoquot; parsing=quot;stringquot; value=quot;Videoquot; /> <item name=quot;Softwarequot; parsing=quot;stringquot; value=quot;Softwarequot; /> <item name=quot;Abstractquot; parsing=quot;stringquot; value=quot;Abstractsquot;/> </items> </containsCollectionCondition> <scopeCondition relevant=quot;falsequot;>quot;scopequot;='Library'</scopeCondition> <containsCollectionCondition relevant=quot;falsequot; column=quot;LibraryLocationquot; id=quot;MSITASC_locationquot; comparitor=quot;equalsquot; operator=quot;orquot; parse=quot;stringquot; control=quot;Microsoft.InformationServices.Search.WebParts.LibraryLocation, Microsoft.InformationServices.Search.WebParts, Version=1.0.0.0, Culture=neutral, PublicKeyToken=bca9770034f1f5b1quot; label=quot;quot; /> </conditions> </operator> </where> </query> See the supplemental info section for additional schema details 11 of 24
  • 12. 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]. 12 of 24
  • 13. 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: 13 of 24
  • 14. http://{server-name}/SearchCenter/Pages/searchprovider.xml And look like: <?xml version=quot;1.0quot; encoding=quot;UTF-8quot; ?> - <OpenSearchDescription xmlns=quot;http://a9.com/-/spec/opensearch/1.1/quot;> <ShortName>MSLibrary Intranet</ShortName> <Description>MSLibrary Intranet</Description> <InputEncoding>UTF-8</InputEncoding> <Url type=quot;text/htmlquot; template=quot;http://{server- name}/SearchCenter/Pages/LibrarySimple.aspx?k={searchTerms}quot; /> </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=quot;HorizonYearPublishedquot; defaultDirection=quot;descquot; label=quot;Datequot; /> <column name=quot;HorizonAuthorquot; defaultDirection=quot;ascquot; label=quot;Authorquot;/> <column name=quot;titlequot; defaultDirection=quot;ascquot; label=quot;Titlequot;/> <column name=quot;rankquot; defaultDirection=quot;descquot; label=quot;Relevancequot; fixedSort=quot;truequot; /> </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 14 of 24
  • 15. Displaying Numbered Results To display numbered search results a token must be called in the XSLT: Add <xsl:value-of select=quot;posquot; /> 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 15 of 24
  • 16. ELEMENT: OPERATOR Contains the conditions of the where clause. Parents: where Children: conditions Attributes: Name Value Description type and The type of Boolean operator to join the sub-elements or 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 Set relevant=”true” if this clause is sufficient to run the False query. If you want to force the user to filter on additional elements, set relevant=”false”. Example: <scopeCondition relevant=quot;falsequot;>quot;scopequot;='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 Set relevant=”true” if this clause is sufficient to run False the query. If you want to force the user to filter on additional elements, set relevant=”false”. id String in the format : ID used to identify the control. MSITASC_<string> label String Label to display in the UI. control String Full name of the control used to collect the value in the UI. 16 of 24
  • 18. Example: <scopeCollectionCondition control=quot;quot; id=quot;MSITASC_scopepickerquot; label=quot;Scopesquot; relevant=quot;falsequot;> <properties> <property name=quot;CssClassquot;>scopePicker</property> </properties> <items> <item name=quot;Libraryquot; value=quot;Library Scopequot;/> <item name=quot;Market Researchquot; value=quot;Market Researchquot;/> </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 Set relevant=”true” if this clause is sufficient to run False the query. If you want to force the user to filter on additional elements, set relevant=”false”. id String in the format : ID used to identify the control. MSITASC_<string> 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” How the user input should be parsed. If string, “literal” 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=quot;MSITASC_default propertiesquot; column=quot;#DefaultPropertiesquot; label=quot;Keywordsquot; parse=quot;stringquot; relevant=quot;truequot; control=quot;System.Web.UI.WebControls.TextBox, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aquot;> <properties> <property name=quot;CssClassquot;>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. 18 of 24
  • 19. ELEMENT: CONTAINSCONDITION Use this element to build a contains predicate into the query. Parents: conditions Children: properties Attributes: Name Value Description Relevant True Set relevant=”true” if this clause is sufficient to run the False query. If you want to force the user to filter on additional elements, set relevant=”false”. Id String in the format ID used to identify the control. : MSITASC_<string> 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” How the user input should be parsed. If string, phrases “literal” 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 Boolean operator used to join words and phrases in the or contains clause. Example: <containsCondition column=quot;HorizonAuthorquot; control=quot;System.Web.UI.WebControls.TextBox, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aquot; id=quot;MSITASC_Authorquot; label=quot;Authorquot; parse=quot;stringquot; relevant=quot;truequot; operator=quot;andquot;> <properties> <property name=quot;CssClassquot;>searchcentertblong</property> </properties> </containsCondition> Above element outputs the following: Contains(HorizonAuthor, „<wordlist>‟) Where wordlist: ”phrase” [and|or ”phrase”] phrase : ”word [phrase]” 19 of 24
  • 20. 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 Set relevant=”true” if this clause is False 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 : ID used to identify the control. MSITASC_<string> 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” How the user input should be parsed. “literal” 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 Boolean operator used to join words or and phrases in the contains clause. Example: <containsCollectionCondition column=quot;MRVendorquot; label=quot;Vendorquot; id=quot;MSITASC_vendorquot; parse=quot;stringquot; operator=quot;orquot; relevant=quot;truequot; control=quot;System.Web.UI.WebControls.CheckBoxList, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aquot;> <items columns=quot;3quot; allItemsLabel=quot;All Vendorsquot;> <item name=quot;AMI Partnersquot; parsing=quot;stringquot; value=quot;AMIquot; /> <item name=quot;AMR Researchquot; parsing=quot;stringquot; value=quot;AMRquot; /> <item name=quot;Canalysquot; parsing=quot;stringquot; value=quot;Canalysquot;/> <item name=quot;CI Worksquot; parsing=quot;stringquot; value=quot;CIquot;/> <item name=quot;CEBquot; parsing=quot;stringquot; value=quot;Corporatequot; /> <item name=quot;Forresterquot; parsing=quot;stringquot; value=quot;Forresterquot;/> <item name=quot;Gartnerquot; parsing=quot;stringquot; value=quot;Gartnerquot;/> <item name=quot;IDCquot; parsing=quot;stringquot; value=quot;IDCquot;/> <item name=quot;In-Statquot; parsing=quot;stringquot; value=quot;In-Statquot;/> <item name=quot;Kaganquot; parsing=quot;stringquot; value=quot;Kaganquot;/> </items> </containsCollectionCondition> Above element outputs the following: Contains(MRVendor, ‘”AMI”’) or contains(MRVendor, ‘”Gartner”’) etc. 20 of 24
  • 21. 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 Set relevant=”true” if this clause is False 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 : ID used to identify the control. MSITASC_<string> 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” How the user input should be “literal” parsed. “numeric” “datetime” value No String Value to use if parse is set to literal. comparator yes equals Comparison operator to use in the not equals comparison greater than less than greater than of equals less than or equals Example: <sqlCondition column=quot;Categoryquot; comparitor=quot;equalsquot; control=quot;System.Web.UI.WebControls.TextBox, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aquot; id=quot;MSITASC_categoryquot; label=quot;Categoryquot; parse=quot;stringquot; relevant=quot;truequot;/> Above element outputs the following: Category=’<string>’ 21 of 24
  • 22. ELEMENT: RANGECONDITION Use this element to query a range. Parents: conditions Children: properties Attributes: Name Required Value Description Relevant No True Set relevant=”true” if this clause is False 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 ID used to identify the control. : MSITASC_<string> 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 Example: Name of managed property to use in the freetext clause. <rangeC Parse Yes “string” onditio How the user input should be parsed. “numeric” n “datetime” column= “literal” quot;Horizo Value No String Value to use if parse is set to literal. nPublis hDatequot; control=quot;Microsoft.InformationServices.Search.WebParts.MSLibraryDateControl, Microsoft.InformationServices.Search.WebParts, Version=1.0.0.0, Culture=neutral, PublicKeyToken=bca9770034f1f5b1quot; id=quot;MSITASC_datequot; relevant=quot;truequot; parse=quot;datetimequot; label=quot;Date Publishedquot;/> 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 N/A True Not applicable. False Label N/A String Not applicable. Control N/A String Not applicable. Column N/A String Not applicable. Parse N/A “string” Not applicable. “numeric” “datetime” 22 of 24
  • 23. “literal” Value No String Value to use as a literal condition. Id Yes String in the format ID used to identify the control. : MSITASC_<string> Example: <literalCondition id=quot;MSITASC_facetquot; value=quot;contains(HorizonSubjects,'quot;Sciencequot;')quot; /> Above element outputs the following: contains(HorizonSubjects,'quot;Sciencequot;') 23 of 24
  • 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?ProjectNam e=sptoolbox&ReleaseId=13881 Last save date Friday, June 06, 2008 Notes 24 of 24