Query Web サービスの使用

最終更新日: 2010年7月20日

適用対象: SharePoint Server 2010

適用先: Microsoft SharePoint Server 2010 Search および Microsoft FAST Search Server 2010 for SharePoint
Query Web サービスは Microsoft SharePoint Server 2010 の SharePoint エンタープライズ検索機能をクライアント アプリケーションに公開します。これにより、SharePoint サイトのコンテキスト以外のクライアント アプリケーションや Web アプリケーションから検索結果にアクセスできます。

Query Web サービスにアクセスする

Query Web サービスは、次のパスにあります。

https://Server_Name/[sites/][Site_Name/]_vti_bin/search.asmx

Microsoft Visual Studio などの開発ツールを使用して、Query Web サービスにアクセスするためのクライアント アプリケーションを作成できます。Visual Studio 開発環境では、クライアント アプリケーションに Web 参照を追加することにより、自動的にプロキシ クラスを生成し、Query Web サービスにアクセスできます。Microsoft Visual Studio 2010 で Query Web サービスに Web 参照を追加する方法の順を追った説明については、「[方法] クエリ Web サービスに Web 参照を追加する」を参照してください。

また、Web サービス記述言語 (WSDL) ツールを使用して、Query Web サービスのプロキシを生成することもできます。詳細については、「Web Services Description Language Tool (Wsdl.exe)」と「Creating an XML Web Service Proxy」を参照してください。Web サービスを呼び出すクライアント アプリケーションを作成する方法については、「Building XML Web Service Clients」を参照してください。

Web メソッド

以下の表は、Query Web サービスで利用できる Web メソッドについて説明しています。

名前

説明

GetPortalSearchInfo()

範囲のリストを返します。

GetQuerySuggestions

クエリ候補 (クエリ前候補、またはクエリ後候補) のリストを返します。

GetSearchMetadata

管理されたプロパティおよび範囲のリストを返します。

Query

指定したクエリの結果セットを XML 文字列で返します。

QueryEx

指定したクエリの結果セットを DataSet で返します。

RecordClick(String)

クエリ ログの検索クエリに関する情報を記録します。

Registration(String)

指定したサイトの名前を返します。

Status()

検索サービスを利用できるかどうかを返します。

Query メソッド

Query Web サービスには、検索結果を取得するための 2 つのメソッド (Query と QueryEx) があります。どちらのメソッドも、同じ入力と、検索クエリ パラメーターを指定する XML を含む文字列を受け取ります。ただし返される結果の形式は異なります。

Query Web サービス メソッドを選択する

複数の結果の種類 (関連性のある特殊用語など) や、検索結果での絞り込み結果の種類を返すには、QueryEx メソッドを使用する必要があります。

検索クエリの XML を作成する

検索クエリの XML 形式は、Microsoft.Search.Query スキーマ で定義されます。

実際の検索クエリは、Microsoft.Search.Query スキーマの QueryText 要素 で指定されます。QueryText 要素の type 属性で使用されるクエリ構文を指定します。SharePoint エンタープライズ検索のクエリ構文のリファレンスについては、「検索クエリを作成する」を参照してください。

以下のコード例は、SQL 構文を使用して検索クエリを指定する QueryText 要素のサンプル XML です。

<QueryText language=xml:lang type='MSSQLFT'>
SELECT Title, Path, Description, Write, Rank, Size FROM Scope() WHERE CONTAINS(Description,'SharePoint')
</QueryText>

注意

Query メソッドで SQL 構文を使用している場合は、SQL クエリの SELECT ステートメントで、次のプロパティを指定する必要があります。Title、Path、Description、Write、Rank、および Size。

以下のコード例は、キーワード構文を使用して検索クエリを指定する QueryText 要素のサンプル XML です。

<QueryText language=xml:lang type='STRING'>
SharePoint
</QueryText>

注意

検索プロバイダーとして SharePoint Server Search と FAST Search Server 2010 for SharePoint のどちらを使用するかによって、XML にいくつかの違いがあります。これは各要素の "適用対象" で明記されています。

Microsoft.Search.Query スキーマの Property 要素 要素を使用して、キーワード クエリで返すプロパティを指定できます。

クエリ XML でプロパティを何も指定しなければ、既定のプロパティ セットが返されます。

以下は、Query メソッドで返される既定のプロパティ セットです。

  • Title

  • Description

  • Date

  • Relevance

以下は、検索プロバイダーとして SharePoint Server Search を使用している場合に、QueryEx メソッドで返される既定のプロパティ セットです。

  • WorkId

  • Rank

  • Title

  • Author

  • Size

  • Path

  • Description

  • Write

  • SiteName

  • CollapsingStatus

  • HitHighlightedSummary

  • HitHighlightedProperties

  • ContentClass

  • IsDocument

  • PictureThumbnailURL

以下は、検索プロバイダーとして FAST Search Server 2010 for SharePoint を使用している場合に、QueryEx メソッドで返される既定のプロパティ セットです。

  • WorkId

  • Rank

  • Title

  • Author

  • Size

  • Path

  • Description

  • Write

  • SiteName

  • CollapsingStatus

  • HitHighlightedSummary

  • HitHighlightedProperties

  • ContentClass

  • IsDocument

  • PictureThumbnailURL

  • Url

  • ServerRedirectedUrl

  • FileExtension

  • SpSiteUrl

  • docvector

  • fcocount

  • fcoid

  • PictureWidth

  • PictureHeight

検索結果を返す

QueryEx メソッドは検索結果を DataSet オブジェクトで返し、Query メソッドは検索結果を XML として文字列で返します。

注意

Query メソッドでサポートされている結果の種類は、関連する結果のみです。

Query メソッド

Query メソッドで返される XML の形式は、Microsoft.Search.Response スキーマMicrosoft.Search.Response.Document スキーマ によって定義されます。検索結果の完全なセットは Microsoft.Search.Response スキーマの Results 要素 に含まれ、個々の結果は Microsoft.Search.Response.Document スキーマの Document 要素 によって表されます。

QueryEx メソッド

QueryEx メソッドによって返される DataSet オブジェクトには、クエリに関する追加情報を提供する ExtendedProperties プロパティが含まれています。表 1 では、返される拡張プロパティについて説明します。

表 1. 拡張プロパティ

名前

適用対象

説明

QueryModification

FAST Search Server 2010 for SharePoint

検索結果に応じたクエリの変更。元のクエリが結果を何も返さない場合、FAST Search Server 2010 for SharePoint では、クエリにあるクエリ XML の ResubmitFlags 要素の設定に応じてクエリを変更できます。

Keyword

SharePoint Server Search
FAST Search Server 2010 for SharePoint

Definition 拡張プロパティに定義されたトークン。

IgnoredNoiseWords

SharePoint Server Search

元のクエリで無視されたノイズ ワードのリスト (元のクエリにノイズ ワードが含まれている場合)。

QueryTerms

SharePoint Server Search
FAST Search Server 2010 for SharePoint

元の検索クエリの用語。

SharePoint Server Search の場合、クエリ用語はセミコロン (";") で区切られます。FAST Search Server 2010 for SharePoint の場合、元のクエリ テキストが返されます。

ElapsedTime

SharePoint Server Search
FAST Search Server 2010 for SharePoint

検索クエリの実行時間 (ミリ秒)。

Definition

SharePoint Server Search
FAST Search Server 2010 for SharePoint

Keyword 拡張プロパティで指定された用語の定義。

SpellingSuggestion

SharePoint Server Search
FAST Search Server 2010 for SharePoint

検索結果のスペル候補。

QueryEx 要求で指定されたオプションと検索プロバイダーに応じて、返されるデータセットには最大 5 つのデータ テーブル (表 2 で説明) を含めることができます。

表 2. QueryEx で返されるデータセットに含まれるテーブル

DataTable 名

適用対象

説明

RelevantResults

SharePoint Server Search
FAST Search Server 2010 for SharePoint

クエリに一致するコンテンツ インデックスからの検索結果を含む主要な結果セット。このテーブルには、検索結果ごとに 1 行と、要求された管理プロパティごとに 1 列が含まれます。

HighConfidenceResults

SharePoint Server Search

検索クエリの精度の高い結果として定義された結果を含む結果セット。

SpecialTermResults

SharePoint Server Search
FAST Search Server 2010 for SharePoint

検索クエリに一致するおすすめコンテンツを含むセット。このテーブルには、検索結果ごとに 1 行が含まれています。テーブルの列は以下のとおりです。

  • Title  おすすめコンテンツのタイトル。

  • Url  おすすめコンテンツへのリンクの URL。

  • Description  おすすめコンテンツの説明。

RefinementResults

FAST Search Server 2010 for SharePoint

検索クエリに一致する結果のクエリ絞り込み情報。テーブルには、絞り込み bin ごとに 1 行と、列 RefinerNameRefinementNameRefinementValueRefinementCount、および RefinementToken が含まれています。

詳細については、「ff394639(v=office.14).md」を参照してください。

VisualBestBetsResults

FAST Search Server 2010 for SharePoint

検索結果に一致するビジュアルおすすめコンテンツ。テーブルには、ビジュアルおすすめコンテンツごとに 1 行と、列 NameUriDescriptionKeywordTeaser、および TeaserContentType が含まれています。列には、ビジュアルおすすめコンテンツの名前、ビジュアルおすすめコンテンツがリンクする URL、ビジュアルおすすめコンテンツの人間が読むことができる説明、表示する簡単な宣伝文句、宣伝文句のコンテンツ タイプが含まれています。