3.1.4.7.3.1 KeywordQueryProperties
Namespace: http://www.microsoft.com/sharepoint/search/KnownTypes/2008/08
The KeywordQueryProperties complex type contains information about a Keyword query search query. KeywordQueryProperties extends the QueryProperties data type specified in section 2.2.4.11.
-
<xs:complexType name="KeywordQueryProperties" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:complexContent mixed="false"> <xs:extension base="q2:QueryProperties"> <xs:sequence> <xs:element xmlns:q3="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="CustomRefinementIntervals" nillable="true" type="q3:ArrayOfKeyValueOfstringArrayOfRefinementInterval_PFsic3Az"/> <xs:element minOccurs="0" name="EnableFQL" type="xs:boolean"/> <xs:element xmlns:tns5="http://schemas.datacontract.org/2004/07/Microsoft.Office.Server.Search.Query" minOccurs="0" name="EnableSpellcheck" type="tns5:SpellcheckMode"/> <xs:element minOccurs="0" name="EnableUrlSmashing" type="xs:boolean"/> <xs:element minOccurs="0" name="GenerationId" type="xs:long"/> <xs:element minOccurs="0" name="HiddenConstraints" nillable="true" type="xs:string"/> <xs:element minOccurs="0" name="IsCachable" type="xs:boolean"/> <xs:element minOccurs="0" name="MaxShallowRefinementHits" type="xs:int"/> <xs:element minOccurs="0" name="MaxSummaryLength" type="xs:int"/> <xs:element minOccurs="0" name="MaxUrlLength" type="xs:int"/> <xs:element xmlns:q3="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="RefinementFilters" nillable="true" type="q3:ArrayOfanyType"/> <xs:element minOccurs="0" name="Refiners" nillable="true" type="xs:string"/> <xs:element minOccurs="0" name="ReorderingRules" nillable="true" type="q2:ReorderingRuleCollection"/> <xs:element xmlns:tns5="http://schemas.datacontract.org/2004/07/Microsoft.Office.Server.Search.Query" minOccurs="0" name="ResubmitFlags" type="tns5:ResubmitFlag"/> <xs:element xmlns:q3="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="SelectProperties" nillable="true" type="q3:ArrayOfanyType"/> <xs:element minOccurs="0" name="SimilarTo" nillable="true" type="xs:string"/> <xs:element xmlns:tns5="http://schemas.datacontract.org/2004/07/Microsoft.Office.Server.Search.Query" minOccurs="0" name="SimilarType" type="tns5:SimilarType"/> <xs:element minOccurs="0" name="SortList" nillable="true" type="q2:SortCollection"/> <xs:element minOccurs="0" name="SortSimilar" type="xs:boolean"/> <xs:element minOccurs="0" name="TrimDuplicatesIncludeId" type="xs:long"/> <xs:element minOccurs="0" name="TrimDuplicatesKeepCount" type="xs:int"/> <xs:element minOccurs="0" name="TrimDuplicatesOnProperty" nillable="true" type="xs:string"/> <xs:element minOccurs="0" name="UserContextData" nillable="true" type="xs:string"/> <xs:element minOccurs="0" name="UserContextGroupID" nillable="true" type="xs:string"/> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType>
CustomRefinementIntervals: Specifies the refinement bins for one or more refiners. The protocol server MUST use these refinement bins if returning refinement values for the refiner. If QueryProperties.ResultsProvider, as specified in section 2.2.4.11, is SearchProvider.SharepointSearch, and the value MUST be ignored by the protocol server.
EnableFQL: Specifies the type of the query. A value of "true" specifies that the query is specified as a FAST Query Language (FQL) query, as specified in [MS-FQL2]; a value of "false" indicates that the query is specified as a SharePoint Search keyword query, as specified in [MS-SEARCH] section 2.2.10. If EnableFQL is not set by the protocol client, the protocol server MUST behave as if the value "false" is specified by protocol client. If QueryProperties.ResultsProvider is SearchProvider.SharepointSearch, the value MUST be ignored by the protocol server.
EnableSpellcheck: Specifies how the protocol server SHOULD suggest a different spelling of the search query, as specified in section 3.1.4.7.4.1. If the value is "SpellcheckMode.Off", the protocol server MUST NOT suggest a different spelling of the search query. If the value is "SpellcheckMode.Suggest", the protocol server SHOULD suggest a different spelling if there is a good chance that the spelling suggestion will increase the quality of the search results. The criteria used to determine the spelling suggestion is specific to the implementation of the protocol server. If there is a spelling suggestion, the protocol server MUST set it in the SpellingSuggestion property of the search result, as specified in 3.1.4.1.3.1. If the value is "SpellcheckMode.On", the protocol server MUST re-write the search query to be the same as the spelling suggestion before evaluating the query and returning results, if there is a good chance that the spelling suggestion will increase the quality of the search results. The exact details of how the protocol server decides if there is a good chance to improve quality of the search results is an implementation detail of the server and is not specified by this protocol. If there was a rewrite of the query, the protocol server MUST set it in the QueryModification property of the search result, as specified in 3.1.4.1.3.1. If EnableSpellCheck is not set by the protocol client, the protocol server MUST behave as if the value "SpellcheckMode.Suggest" is specified by the protocol client. If QueryProperties.ResultsProvider, as specified in section 2.2.4.11, is "SearchProvider.SharepointSearch", the value MUST be ignored by the protocol server.
EnableUrlSmashing: Specifies whether the protocol server MUST combine all the tokens of the query text to form a query result with the URL formed by combining the tokens. A value of "true" specifies that the protocol server SHOULD return the URL formed by combining the tokens as a search result; a value of "false" specifies that the protocol server MUST NOT return the URL formed by combining tokens as a search result. If QueryProperties.ResultsProvider, as specified in section 2.2.4.11, is equal to "SearchProvider.FASTSearch", the complex type MUST be ignored by the protocol server.
GenerationId: Specifies the identifier for the search index generation to get the query results from.
HiddenConstraints: Specifies additional query terms that MUST be appended to the QueryProperties.queryText element. This element is used by the end-user interface to pass hidden constraints of the query that are not entered by the end user. If this element is not present or a value is not specified, a default value of an empty string MUST be used. If there are two or more query terms, use " " as a separator.
IsCachable: Specifies if the user-specific access control entry (ACE) is ignored while security trimming the query results.
MaxShallowRefinementHits: For details see Query.IncludeRefinementResults.MaxShallowRefinementHits, as specified in [MS-SEARCH] section 2.2.3.1. If QueryProperties.ResultsProvider, as specified in section 2.2.4.11, is "SearchProvider.SharepointSearch", the value MUST be ignored by the protocol server.
MaxSummaryLength: Specifies the maximum length of characters of the property with the name HitHighlightedSummary. MUST be a positive integer.
MaxUrlLength: Reserved. MUST be ignored by the protocol server.
RefinementFilters: The list of refinement tokens for drilldown into search results. Refinement tokens are returned as part of the RefinementResults table, as specified in 3.1.4.1.3.6, for the search query. If QueryProperties.ResultsProvider, as specified in section 2.2.4.11, is "SearchProvider.SharepointSearch", the value MUST be ignored by the protocol server.
Refiners: Specifies a list of refiners as a comma-separated list of strings. A refiner is a Query.IncludeRefinementResults.Refiners.Refiner, as specified in [MS-SEARCH] section 2.2.3.1. If QueryProperties.ResultsProvider, as specified in section 2.2.4.11, is "SearchProvider.SharepointSearch", the value MUST be ignored by the protocol server.
ReorderingRules: Specifies the list of rules used to reorder search results. MUST be a ReorderingRuleCollection data type, as specified in section 3.1.4.7.3.7.
ResubmitFlags: Specifies how the protocol server MUST behave if no query results are returned from the original query. If present, the value MUST be a ResubmitFlag data type, as specified in section 3.1.4.7.4.2. Section 3.1.4.7.4.2 also describes how the protocol server MUST behave. If not present, the protocol server MUST behave as if ResubmitFlag.NoResubmit was set. If QueryProperties.ResultsProvider, as specified in section 2.2.4.11, is "SearchProvider.SharepointSearch", the value MUST be ignored by the protocol server.
SelectProperties: Specifies the list of managed properties that the protocol server MUST return for each search result. For all the managed properties specified in the child elements of this element the value of the Retrievable flag MUST be set to "true" in the search schema, as specified in section 3.1.1.3.
If this element is not present or a value is not specified, and QueryProperties.ResultsProvider, as specified in section 2.2.4.11, is not "SearchProvider.FASTSearch", the protocol server MUST use the following list of default managed properties, if available:
WorkId
Rank
Title
Author
Size
Path
Description
Write
SiteName
CollapsingStatus
HitHighlightedSummary
HitHighlightedProperties
ContentClass
PictureThumbnailURL
IsDocument
For a description of these properties, see section 3.1.1.3.
If this element is not present or a value is not specified, and QueryProperties.ResultsProvider, as specified in section 2.2.4.11, is "SearchProvider.FASTSearch", the protocol server MUST use the following list of default managed properties if available:
WorkId
Rank
Title
Author
Size
Path
Description
Write
SiteName
CollapsingStatus
HitHighlightedSummary
HitHighlightedProperties
ContentClass
IsDocument
PictureThumbnailURL
Url
ServerRedirectUrl
FileExtension
SpSiteUrl
docvector
fcocount
fcoid
PictureHeight
PictureWidth
SimilarTo: For details see Query.FindSimilar.SimilarTo, as specified in [MS-SEARCH] section 2.2.3.1. [MS-SEARCH] section 2.2.5.6 specifies the syntax. If QueryProperties.ResultsProvider, as specified in section 2.2.4.11, is "SearchProvider.SharepointSearch", the value MUST be ignored by the protocol server.
SimilarType: Specifies how the protocol server MUST transform the search query when SimilarTo is set. The protocol server MUST append the query text in SimilarTo to the QueryText based on SimilarType. MUST be one of the values specified in section 3.1.4.7.4.3. If not set, but SimilarTo is set, the protocol server MUST behave as if "SimilarType.Find" was specified. If set, but SimilarTo is not set, the protocol server MUST ignore this value and MUST NOT transform the query text. If QueryProperties.ResultsProvider, as specified in section 2.2.4.11, is "SearchProvider.SharepointSearch", the value MUST be ignored by the protocol server.
SortList: Specifies the list of properties with which to sort the search results. MUST be a SortCollection data type, as specified in section 3.1.4.7.3.4. If this element is not present or a value is not specified, the default managed property Rank and default direction of "Descending" MUST be used.
SortSimilar: For details see Query.FindSimilar.SortSimilar, as specified in [MS-SEARCH] section 2.2.3.1. If QueryProperties.ResultsProvider, as specified in section 2.2.4.11, is "SearchProvider.SharepointSearch", the value MUST be ignored by the protocol server.
TrimDuplicatesIncludeId: For details see Query.TrimDuplicates.includeid, as specified in [MS-SEARCH] section 2.2.3.1. If QueryProperties.ResultsProvider, as specified in section 2.2.4.11, is "SearchProvider.SharepointSearch", the value MUST be ignored by the protocol server.
TrimDuplicatesKeepCount: For details see Query.TrimDuplicates.keepcount, as specified in [MS-SEARCH] section 2.2.3.1. If QueryProperties.ResultsProvider, as specified in section 2.2.4.11, is "SearchProvider.SharepointSearch", the value MUST be ignored by the protocol server.
TrimDuplicatesOnProperty: For details see Query.TrimDuplicates.onproperty, as specified in [MS-SEARCH] section 2.2.3.1. If QueryProperties.ResultsProvider, as specified in section 2.2.4.11, is "SearchProvider.SharepointSearch", the value MUST be ignored by the protocol server.
UserContextData: For details see Query.UserContext.UserContextData, as specified in [MS-SEARCH] section 2.2.3.1. If QueryProperties.ResultsProvider, as specified in section 2.2.4.11, is "SearchProvider.SharepointSearch", the value MUST be ignored by the protocol server.
UserContextGroupID: Specifies an identifier that is used to group keywords used for matching best bets and visual best bets to the search query. If UserContextGroupID is present, and QueryProperties.ResultTypes is set to include SpecialTermResults, the protocol server MUST only return best bets and visual best bets results when the search query contains a keyword in the specified group. If QueryProperties.ResultsProvider, as specified in section 2.2.4.11, is "SearchServer.SharepointSearch", the value MUST be ignored by protocol server.
Properties: Specifies a property bag of key-value pairs as specified in section 2.2.4.11. SHOULD contain the following properties besides the properties specified in QueryProperties.Properties:
-
-
CollapseSpecification: A set of collapse specifications containing managed properties that are used to determine how to collapse individual search results. Results are collapsed into one or a specified number of results if they match any of the individual collapse specifications. Within a single collapse specification, results will be collapsed if their properties match all of the individual properties in the collapse specification.
-
EnableSorting: Specifies whether sorting of results is enabled or not. MUST ignore the SortList specified if this value is set to false.
-
MaxKeywordQueryTextLength: Specifies the maximum characters allowed in QueryProperties.QueryText as specified in section 2.2.4.11. The protocol server MUST return a FaultException<ExceptionDetail> message if the QueryProperties.QueryText exceeds the maximum characters allowed.
-