OpenSearch テクノロジを使用したリモート データ ストアへの検索フェデレーションに対する Windows 7 のサポートにより、ユーザーは Windows エクスプローラー内からリモート データにアクセスして操作できます。 Windows フェデレーション検索を使用して検索できる Web ベースのデータ ストアを構築し、Windows クライアント側のコードを記述または展開することなく、リモート データ ソースを Windows エクスプローラーと高度に統合できます。
このトピックは次のように構成されています。
- フェデレーション検索とは
- フェデレーション検索を構築する手順
- フェデレーション検索のしくみ
- クエリの送信と RSS または Atom での検索結果の返し
- フェデレーション検索の例
- その他のリソース
- 関連トピック
フェデレーション検索とは
Windows 7 では、 OpenSearch プロトコルを使用した Windows クライアントへの外部ソースの接続がサポートされています。 これにより、ユーザーはリモート データ ストアを検索し、Windows エクスプローラー内から結果を表示できます。 OpenSearch v1.1 標準では、単純なファイル形式を定義しています。この形式を使用して、クライアントが Web サービスに対してデータ ストアのクエリを実行する方法と、クライアントによってレンダリングされる結果をサービスが返す方法を記述できます。 Windows フェデレーション検索は 、OpenSearch クエリを受け取る Web サービスに接続し、結果を RSS または Atom XML 形式で返します。
次のスクリーン ショットは、SharePoint サイトをリモートで検索した後に取得された検索結果を示しています。
フェデレーション検索を構築する手順
フェデレーション検索を構築するには、次の手順に従います。
- 結果を RSS または Atom 形式で返すことができる OpenSearch と互換性のある Web サービスを提供することで、Windows エクスプローラーからデータ ストアを検索できるようにします。
- Web サービスに接続する方法と、RSS または Atom XML 内のカスタム要素をマップする方法を説明する OpenSearch Description (.osdx) ファイルを作成します。
- .osdx ファイルを使用して Windows クライアント コンピューターに検索コネクタを展開します。
次の図は、フェデレーション検索を構築する手順を示しています。
フェデレーション検索のしくみ
Windows エクスプローラーと OpenSearch Web サービス間の通信は、Windows データレイヤーを介して実行されます。 Windows データ レイヤーは、Windows ストア プロバイダーを介してさまざまな種類のデータ ストアと通信できます。 各プロバイダーは、特定のプロトコルをサポートし、特定の機能を持つデータ ストアとの通信を専門としています。 たとえば、次の図は、OpenSearch プロバイダーがOpenSearch 標準をサポートする Web サービスを提供するデータ ストアと通信する方法を示しています。
データ ストアで Windows 7 でのフェデレーション検索をサポートできるようにするには、いくつかのタスクを実行する必要があります。 次の表に、データ ストアを有効にするためのタスク、各タスクを実行するために必要な内容、ドキュメントを検索する場所を示します。
| Task | Requirement | Documentation |
|---|---|---|
| データ ストアを Windows エクスプローラーで検索できるようにします。 |
OpenSearch と互換性のある Web サービスを構築します。 OpenSearch Description (.osdx) ファイルを作成します。 |
Windows フェデレーション検索での Web サービスの接続 Windows フェデレーション検索でのデータ ストアの有効化 |
| 企業内のユーザーに Web サービスを積極的にデプロイします。 |
.osdx ファイルをユーザーに提供し、ローカルにコピーし、ショートカットを使用してユーザーがアクセスできるようにします。 |
Windows フェデレーション検索での検索コネクタの展開 |
| クエリに応答して Windows エクスプローラーで検索結果を列挙します。 |
クエリ文字列を受け取り、結果を RSS または Atom 形式で返す Web サービスを実装します。 |
Windows フェデレーション検索での Web サービスの接続 |
| ユーザーが Windows エクスプローラーにデータ ストアを追加できるようにします。 |
.osdx ファイルを作成し、ユーザーに提供します。 |
Windows フェデレーション検索でのデータ ストアの有効化 |
| エクスプローラーで、ファイルのような項目としてアイテムを表示します。 |
エンクロージャまたは media:content 要素を使用して、ファイルまたはコンテンツ ストリームの URL を返します。 クライアント コンピューターが認識するファイル名拡張子または MIME の種類を指定します。 |
Windows フェデレーション検索でのデータ ストアの有効化 |
| WINDOWS エクスプローラーで、RSS または Atom 標準で定義されているプロパティ以外のカスタム プロパティを表示します。 |
RSS/Atom 出力で別の XML 名前空間を使用して、追加のメタデータを提供します。 .osdx ファイルにプロパティ マップを追加します。 |
Windows フェデレーション検索での OpenSearch 記述ファイルの作成 |
| エクスプローラーでアイテムに表示されるプロパティをカスタマイズします。 |
.osdx ファイルに proplist マッピングを追加します。 |
Windows フェデレーション検索での OpenSearch 記述ファイルの作成 |
| プレビュー ウィンドウにアイテムのカスタム Web ページ ビューを表示します。 |
個別のリンクとエンクロージャの値を返します。 URL 値を System.WebPreviewUrl Windows シェル プロパティにマップします。 |
Windows フェデレーション検索での OpenSearch 記述ファイルの作成 |
| エクスプローラーに、Web サイトにクエリをロールオーバーするコマンド バー ボタンを表示します。 |
.osdx ファイルに Url format="text/html" テンプレートを指定します。 |
Windows フェデレーション検索での OpenSearch 記述ファイルの作成 |
クエリを送信し、RSS または atom で検索結果を返す
ユーザーがエクスプローラーの右上隅にある検索ボックスに用語を入力すると、クエリは OpenSearch プロバイダーに送信され、その後、リモート データ ストアにクエリが送信されます。 リモート Web サービスは、サポートされている 2 つの形式 (RSS または Atom) のいずれかで、通常はフィードと呼ばれる XML ドキュメントで結果を提供することでクエリに応答します。 フィード内の各結果アイテムには、タイトル、URL、説明、サムネイル画像など、アイテムのメタデータを表したり説明したりする XML 子要素が含まれています。 OpenSearch プロバイダーは、WINDOWS アプリケーションで使用できる Windows シェル システム プロパティに XML 要素の値をマッピングする役割を担います。
フェデレーション検索の例
次の OpenSearch Description (.osdx) ファイルの例は、 ShortName 要素と Url 要素で構成されています。これは、OpenSearch プロトコルを介して外部データ ストアを Windows クライアントに接続するために最低限必要な子要素です。
<OpenSearchDescription xmlns="https://a9.com/-/spec/opensearch/1.1/">
<ShortName>My web Service</ShortName>
<Url format="application/rss+xml" template="https://example.com/rss.php?query={searchTerms}&start={startIndex}&cnt={count}" />
</OpenSearchDescription>
次の例は、Web 対応データ ストアを RSS 形式で検索できるようにする方法と、1 つの検索項目を返すように指定する方法を示しています。
<rss version="2.0" xmlns:media="https://search.yahoo.com/mrss/" xmlns:example="https://example.com/namespace">
<channel>
<title>Search Results</title>
<item>
<title>An example result</title>
<link>https://example.com/pictures.aspx?id=01</link>
<description>This is a test of the emergency search results system. If this were a real emergency result, then you would be reading something more useful.</description>
<pubDate>Wed, 1 Oct 2008 23:12:00 GMT</pubDate>
<media:content url="https://example.com/pictures/picture01.jpg" fileSize="212889" type="image/jpeg" height="768" width="1024"/>
<media:thumbnail url="https://example.com/thumbnails/picture01.jpg" height="120" width="160"/>
<example:dateTaken>Mon, 22 Sep 2008 23:12:00 GMT</example:dateTaken>
</item>
</channel>
</rss>
次の例は、表示される項目が並べ替えられてグループ化されるように、プロパティを既定のシステム プロパティにマップする方法を示しています。
<author>Sanjay Jacobs</author>
<category>Nature</category>
<pubDate>Thu, 24 Apr 2008 2003 21:34:38 GTMT</pubDate>
次の例は、Windows エクスプローラーの各項目にサムネイル画像の表示を追加する方法を示しています。
<media:thumbnail>
その他のリソース
Windows 7 以降で OpenSearch テクノロジを使用してリモート データ ストアに検索フェデレーションを実装する方法の詳細については、Windows のフェデレーション検索の「その他のリソース」を参照してください。
関連トピック