クエリ文字列 (必須)

Windows Internet Explorer 8 の新機能

Internet Explorer 7 を起動するとクイック検索ボックスが表示されます。このボックスではオートコンプリート機能を使って、以前の検索で使用した検索用語を検索できます。 また、Internet Explorer 7 では、複数の検索プロバイダーを追加することもできます。 Internet Explorer 8 では検索効率の向上に重点を置き、クイック検索ボックスのドロップダウン メニューや検索候補の機能を大幅に強化しました。
このトピックは、エンド ユーザーと Web サイト開発者の両方を対象としています。 前半では、エンド ユーザーを対象に、検索プロバイダーをインストール、管理したり、検索プロバイダーを使用して目的の用語を検索したりする方法について説明します。 そして、後半では Web サイト開発者を対象に、検索プロバイダーの利用を促進する方法、および検索候補を使用して検索プロバイダーのユーザー エクスペリエンスを向上させる方法を紹介します。

このトピックでは、次の項目について説明します。

  • エンド ユーザー向け検索機能
    • 検索プロバイダーを追加する
    • 検索プロバイダーを管理する
    • お気に入りの検索プロバイダーで検索する
    • ヒントとテクニック
  • Web 開発者向け検索機能
    • OpenSearch Description ファイルを作成する
    • 検索プロバイダーの利用を促進する
    • 検索候補を表示する
    • 検索候補メニューの大きさを確認する
    • 検索参照元を特定する
    • 検索候補をローカライズする
    • 注釈
  • 関連トピック

エンド ユーザー向け検索機能

Internet Explorer 8 のクイック検索機能を使用すると、エンド ユーザーがお気に入りの検索プロバイダーを追加したり、検索中にプロバイダーをすばやく切り替えたりできます。 また、Internet Explorer 8 では、ユーザーがより適切な検索クエリを送信できるよう検索候補機能をサポートしています。 検索プロバイダーがクエリに対してすばやく応答することもできます。 クイック検索ボックス以外のほかにアクセラレータ メニューが用意されており、ユーザーはこのメニューからすべての検索プロバイダーにアクセスできます。 これらの機能は、検索エクスペリエンスを向上し、エンド ユーザーの生産性を高めることを目的としています。
このセクションは、次のトピックで構成されています。

  • 検索プロバイダーを追加する
  • 検索プロバイダーを管理する
  • お気に入りの検索プロバイダーで検索する
  • ヒントとテクニック

検索プロバイダーを追加する

Internet Explorer 7 および Internet Explorer 8 では、Windows 検索アシスタント (検索ウィンドウ) に代わってブラウザー ウィンドウの右上隅に表示されるクイック検索ボックスが導入されました。 特定の検索プロバイダーを使用するには、そのプロバイダーを一覧に追加しておく必要があります。 検索プロバイダーを追加するには、まず、そのプロバイダーの Web サイトにアクセスします。 検索プロバイダーをインストールする方法は 2 とおりあります。

1 つは、プロバイダーの Web サイトには、そのプロバイダーを検索プロバイダーとして一覧に追加するためのボタンまたはリンクが表示されている場合があるので、それをクリックする方法です。 そのリンクまたはボタンをクリックすると、[検索プロバイダーの追加] ダイアログ ボックスが表示されます。ここで選択内容を確認します。

[検索プロバイダーの追加] ダイアログ ボックス
図 1. [検索プロバイダーの追加] ダイアログ ボックス

この検索プロバイダーが既にインストールされている場合は、その旨がダイアログ ボックスで通知されます。または、プロバイダーをアップグレードするためのオプションが示されたダイアログ ボックスが表示されます。 たとえば、新しい機能として検索プロバイダーが検索候補を提供できることがあります。

もう 1 つは、検索プロバイダーを発見して追加する方法です。 プロバイダーの Web ページが読み込まれると、クイック検索ボックスのドロップダウン矢印がオレンジ色に変わります。これは、検索プロバイダーをインストールできることを示します。

クイック検索ボックスのオレンジ色のドロップダウン矢印
図 2. クイック検索ボックスのオレンジ色のドロップダウン矢印

オレンジ色のドロップダウン矢印をクリックすると、インストールされている検索プロバイダーの一覧と、利用できる他のオプションが表示されます。 Internet Explorer 8 によって発見された検索プロバイダーの横には金色のアイコンが表示されます。 [検索プロバイダーを追加] をクリックすると、利用できるプロバイダーの一覧が表示されます。 次の図には、製品、イメージ、ビデオの 3 つの Live Search オプションが示されています。

検索プロバイダーと検索オプションが表示されている [検索プロバイダーを追加] メニュー
図 3. 検索プロバイダーと検索オプションが表示されている [検索プロバイダーを追加] メニュー

注 : Internet Explorer ギャラリーでは、作業を開始する際に役立つ利用可能なプロバイダーの一覧を確認できます。 このギャラリーにアクセスするには、クイック検索ボックスのドロップダウン矢印から [追加のプロバイダーを検索] を選択します (図 3 を参照)。

独自の検索プロバイダーを追加する

使用している検索プロバイダーを、検索プロバイダーとして直接追加する方法がない場合は、手動で追加することができます。独自の検索プロバイダーを作成する方法については、Windows Search Guide のページを参照してください。このウィジェットでは、プロバイダーは、検索候補機能を備えていない検索プロバイダーとして追加されます。プロバイダーが検索候補機能を提供している場合は、検索プロバイダーの Web サイトを使用して追加してください。

検索プロバイダーを管理する

最大 200 の検索プロバイダーをインストールできるため、検索プロバイダーを管理するのは大変な作業です。Internet Explorer 8 で検索プロバイダーを管理するには、クイック検索ボックスのドロップダウン矢印をクリックし、[検索プロバイダーの管理] をクリックします。 次の図で示すように、プロバイダーの順番を変更したり、既定の状態を変更したり、プロバイダーを削除したりすることができます。

[Internet Explorer アドオンの表示と管理] ダイアログ ボックス
図 4. [Internet Explorer アドオンの表示と管理] ダイアログ ボックス

検索プロバイダーの属性を変更するには、プロバイダーの名前をクリックし、変更を行い、[閉じる] をクリックします。

注 : 現在既定として設定されているプロバイダーは削除できません。 既定のプロバイダーを削除するには、他のプロバイダーを既定として設定する必要があります。 それには、[検索プロバイダーの管理] ダイアログ ボックスを開いて他のプロバイダーをクリックし、[既定に設定] をクリックします。 次に、削除するプロバイダーをクリックし、[削除] をクリックします。

お気に入りの検索プロバイダーで検索する

検索を実行するには、クイック検索ボックスに検索用語を入力します。 Internet Explorer 7 に慣れている方であれば、Internet Explorer 8 の検索機能が大幅に強化されたことにお気づきでしょう。
Internet Explorer 8 では、クイック検索ボックスをクリックするとクイック ピック メニューが表示されます。 クイック ピック メニューの幅はクイック検索ボックスの幅と同じで、その幅に収まる分だけ検索プロバイダーのアイコンが表示されます。これにより、プロバイダー間を簡単に切り替えることができます。 クイック ピック メニューにより多くの検索プロバイダーを表示するには、クイック検索ボックスのサイズを大きくします。 これらのプロバイダー間であれば、同じ用語を容易に検索することが可能です。それぞれのプロバイダーの Web サイト間を移動する必要はありません。

クイック ピック メニュー
図 5. クイック ピック メニュー

検索用語を入力したら、Enter キーを押して現在の検索プロバイダーを使用するか、クイック ピック メニューからプロバイダーを選択して検索を実行します。 使用している検索プロバイダーが検索候補機能をサポートしている場合は、入力内容に基づいて検索候補が表示されます。 たとえば、Live Search を使用して "Xbox" を検索すると、次の一覧が候補として表示されます。

ドロップダウン メニューに表示された Live Search の検索候補
図 6. ドロップダウン メニューに表示された Live Search の検索候補

候補メニューの最上部はオートコンプリート セクションで、入力した検索用語と一致する最近の検索結果が表示されます。 候補メニューの 2 番目のセクションは候補セクションです。ここには、現在の検索プロバイダーによって提供された検索候補の一覧が表示されます。 候補メニューの 3 番目のセクションは履歴セクションで、以前にアクセスしたサイトのうち、入力した検索用語と一致する Web サイトのタイトルと URL が表示されます。 検索用語と一致する用語は強調表示されます。 この一覧から、検索する用語を選択します。 メニューの下部に表示されているクイック ピック メニューを使用すると、よく使用する検索プロバイダーにすばやくアクセスできます。

Internet Explorer 8 では、検索プロバイダーが候補をビジュアル表示します。 たとえば、検索プロバイダーでは、小さなイメージとテキストを表示したり、イメージだけを表示したりすることが可能です。これらのイメージは、通常のテキストの候補と一緒に表示できます。 次の図は、検索用語 "Xbox" に対するビジュアル表示の候補とテキストの候補です。

Xbox に対するビジュアル表示の検索候補とテキストの検索候補
図 7. Xbox に対するビジュアル表示の検索候補とテキストの検索候補

さらに、検索プロバイダーは、検索クエリに対してすばやく応答することができます。 このクイック応答機能を使用すると、検索している情報が、検索結果ページを介さずに直接表示されます。 これにより、検索をより効率的に行うことができます。

アクセラレータを使用して検索する

Internet Explorer 8 では、アクセラレータの概念が新しく追加されました。 アクセラレータを使用すると、サービス プロバイダーにページのどこからでもアクセスできます。 Internet Explorer 8 では、検索プロバイダーを一覧に追加するたびに、そのプロバイダーがアクセラレータに自動的に変換されます。 この機能を使用するには、検索するテキストを強調表示し、表示された [アクセラレータ] アイコン Cc848862.ie8_accelerators_icon(en-us,VS.85).gif をクリックします。 すると、要約されたインストール済み Web サービスの一覧が表示されます。 この中に既定の検索プロバイダーがあります。 他の検索プロバイダーを使用するには、[すべてのアクセラレータ] をクリックします。 次の図は、[すべてのアクセラレータ] メニューの項目を示しています。

利用できる Web サービスが表示されている [すべてのアクセラレータ] メニュー
図 8. 利用できる Web サービスが表示されている [すべてのアクセラレータ] メニュー

また、アクセラレータには、検索結果をプレビューできるというメリットもあります。 使用している検索プロバイダーが検索プレビューをサポートしている場合、Web ページでテキストを選択してアクセラレータのアイコンをクリックし、検索プロバイダーの名前をマウスでポイントすると (プロバイダーを表示するには [すべてのアクセラレータ] リストを開くことが必要になる場合があります)、プレビュー ウィンドウが開き、選択した用語に対する検索結果が表示されます。 これにより、インストールされている検索プロバイダーを使用して、すばやく簡単に検索を実行できるようになります。 アクセラレータの詳細については、「OpenService アクセラレータ開発者ガイド」(英語の可能性あり) を参照してください。

このページの検索

このページの検索機能は、Internet Explorer 8 で強化されたユーザー エクスペリエンス関連の機能の 1 つです。検索を実行するには、クイック ピック メニューの右側にある [検索] をクリックするか、Ctrl キーを押しながら F キーを押します。 このページの検索機能を使用すると、クイック検索ボックスに入力された用語が現在のページで検索されます。 次のスクリーン ショットのページでは、検索用語と一致するすべての用語が強調表示され、最初に一致した用語が選択されています。 さらに、ページ内で一致した用語の数も表示されています。

このページの検索機能
図 9. このページの検索機能

ヒントとテクニック

上記で紹介できなかった機能とヒントをいくつか次に示します。

  • 検索履歴を削除できます。 たとえば、以前検索した用語や履歴ページを履歴一覧から削除することができます。 この機能は、入力ミスした用語をオートコンプリート セクションに表示しないようにするときに役立ちます。 アドレス バーまたはクイック検索ボックスに入力すると、検索候補がオートコンプリートおよび履歴のセクションに表示されます。 オートコンプリートまたは履歴の一覧から削除する項目をマウスでポイントすると、次の図で示すように、その項目の横に X マークが表示されます。 X をクリックすると、一覧からその項目が削除されます。
    履歴一覧からの項目の削除
    図 10. 履歴一覧からの項目の削除
  • アドレス バーから検索を実行できます。 アドレス バーを使用すると、現在の検索プロバイダーを使用して検索候補が表示されますが、検索は既定の検索プロバイダーによって実行されます。 アドレス バーから検索を実行するには、検索用語の前に ? を挿入します。 たとえば、xbox を検索するには「? xbox」と入力します。 すると、現在の検索プロバイダーを使用して xbox の検索候補が表示されます。 用語を選択するか Enter キーを押すと、既定の検索プロバイダーを使用して検索が実行されます。
  • クイック検索ボックスのサイズを変更できます。 クイック検索ボックスのサイズを変更するには、まず、クイック検索ボックスの左端をマウスでポイントします。 水平ポインターが表示されたら、ドラッグしてクイック検索ボックスのサイズを変更します。

Web 開発者向け検索機能

サイトが検索プロバイダーを提供できるようになりました。これにより、ユーザーは、特定のサイトにアクセスしなくても、Internet Explorer の枠から直接検索を実行できます。 また、既定の検索プロバイダーを使用して、アドレス バーから検索を実行することもできます。 Internet Explorer 8 で検索プロバイダーの利用を促進するには、ユーザーが Web サイトを検索プロバイダーとして検索ボックスにインストールできるようにしておく必要があります。 それには、2 つの手順を実行する必要があります。 まず、検索プロバイダーの OpenSearch Description World Wide Web リンク ファイルを作成します。次に、作成したファイルを Web サイトで公開し、ユーザーがそのファイルをインストールできるようにします。

このセクションは、開発者が Internet Explorer 8 の検索機能に対する理解を深めるのに役立ちます。また、こうした検索機能を利用して、ユーザーの検索エクスペリエンスを向上させる方法についても説明します。 このセクションは、次のトピックで構成されています。

  • OpenSearch Description ファイルを作成する
  • 検索プロバイダーの利用を促進する
  • 検索候補を表示する
  • 検索候補メニューの大きさを確認する
  • 検索参照元を特定する
  • 検索候補をローカライズする
  • 注釈

OpenSearch Description ファイルを作成する

サービスの利用を促進し、ユーザーが検索プロバイダーのインストール オプションを利用できるようにするには、OpenSearch Description World Wide Web リンク ファイルを作成しておく必要があります。 OpenSearch Description ファイルは小さな XML ファイルで、Internet Explorer 8 に対する検索プロバイダーの説明が記述されています。次の表で、OpenSearch Description ファイルの値について説明します。

次のサンプル OpenSearch Description ファイルは、提供する検索サービスの種類を定義しています。

<?xml version="1.0" encoding="UTF-8"?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/" xmlns:ie="https://schemas.microsoft.com/Search/2008/">
	<ShortName>My Custom Search</ShortName>
	<Image height="16" width="16" type="image/icon">http://example.com/example.ico</Image>
	<Url type="text/html" template="http://example.com/search.aspx?q={searchTerms}&amp;source=IE"/>   
	<Url type="application/x-suggestions+json" template="http://suggestions.example.com/search.aspx?q={searchTerms}"/>
	<Url type="application/x-suggestions+xml" template="http://suggestions.example.com/search.aspx?q={searchTerms}"/>
	<ie:PreviewUrl type="text/html" template="http://suggestions.example.com/search.aspx?q={searchTerms}"/>
</OpenSearchDescription>

すべての OpenSearch Description ファイルに検索プロバイダー名と検索 URL が含まれている必要があります。 これらの要素がないと、Internet Explorer 8 では検索プロバイダーをインストールできません。 検索 URL には必ずクエリ文字列の任意の場所に "{searchTerms}" が含まれている必要があります。 Internet Explorer 8 がこのプロバイダーにアクセスして検索結果を取得するとき、"{searchTerms}" は、ユーザーがクイック検索ボックスに入力したクエリ文字列に置き換えられます。また、OpenSearch Description ファイルにはアイコンを挿入する必要があります。 "Image" 属性で指定されたアイコンが見つからない場合、Internet Explorer 8 では汎用アイコン汎用検索プロバイダー アイコンが使用され、そのアイコンがクイック ピック メニューで検索プロバイダーを表します。

OpenSearch Description ファイルをすばやく作成するには、Windows Search Guide のページに掲載されているウィジェットを使用して独自の XML ファイルを作成します。 ウィジェットの指示に従って操作し、手順 5. の [XML を表示] をクリックすると、前述のコード スニペットに似た XML 構文が作成されます。 出力を XML ファイルに保存し、そのファイルを Web サーバーにアップロードします。 XML ファイルが有効であること、および URL 内の "&" 文字がエンコードされていることを必ず確認してください。

注 : ウィジェットでは、使用およびカスタマイズできる基本 XML ファイルのみが生成されます。 アイコンや候補 URL は生成されません。 これらのアイコンや URL は自分で追加する必要があります。

検索候補を OpenSearch Description ファイルに追加する

Internet Explorer 8 では、検索プロバイダーが候補をユーザーに提供できます。 検索候補を使用すると、ユーザーが適切な検索用語によって、目的の情報をより速やかに見つけられるようになります。 JSON および XML 形式の検索候補を提供するには、次の要素を Description ファイルに追加します。

<Url type="application/x-suggestions+json" template="http://suggestions.example.com/search.aspx?q={searchTerms}"/>
<Url type="application/x-suggestions+xml" template="http://suggestions.example.com/search.aspx?q={searchTerms}"/>

追加の URL 要素を追加するときは、"text/html" 形式が最初に表示されていることを確認します。 これは下位互換性を維持するためのものです。 他の形式はこの後ろに任意の順番で追加できます。 検索候補を使用できない場合、または検索候補が以前のバージョンでサポートされていない場合、Internet Explorer の既定では、"text/html" の URL が汎用検索 URL として使用されます。 ただし、XML および JSON の URL が両方とも存在する場合、Internet Explorer 8 は XML 候補 URL を使用します。

注 : 検索候補機能をサポートする前の検索プロバイダーをユーザーが追加した場合は、検索プロバイダーを再度追加する必要がありあます。 Internet Explorer 8 は、検索プロバイダーが既にインストールされていること、およびその検索プロバイダーが検索候補機能を提供していることを検出します。 [検索プロバイダーの追加] ダイアログ ボックスには、プロバイダーをアップグレードするためのボタンが表示されます。また、このダイアログ ボックスでは検索候補のチェック ボックスをオンにすることができます。

検索プレビューをサポートする

インストールされているすべての検索プロバイダーが自動的にアクセラレータに変換されます。 アクセラレータはプレビューをサポートしているため、次に示すように PreviewUrl を OpenSearch Description ファイルに追加することで、検索プレビューをサポートすることができます。

<ie:PreviewUrl type="text/html" template="http://suggestions.example.com/search.aspx?q={searchTerms}/>

OpenSearch Description ファイルに追加されたこの要素によって、検索結果ページの簡易ビューを表示できます。 ユーザーが Web ページでテキストを選択し、アクセラレータ アイコンをクリックして、検索プロバイダー名をマウスでポイントすると、プレビューが 320 x 240 のウィンドウに表示されます。 アクセラレータとプレビュー機能の詳細については、「OpenService アクセラレータ開発者ガイド」(英語の可能性あり) を参照してください。

注 : ie:PreviewUrl は、Internet Explorer の名前空間の宣言によって提供されている名前空間を使用します。 この機能を使用するときは、この宣言が OpenSearchDescription タグ xmlns:ie="https://schemas.microsoft.com/Search/2008/" で定義されていることを確認してください。

検索プロバイダーの利用を促進する

OpenSearch Description ファイルを作成したら、ユーザーにサービスの利用を促すことができます。 検索プロバイダーの利用を促進する方法は主に 2 とおりあります。 1 つは、Description ファイルを指定するリンクまたはボタンをユーザーが利用できるようにする方法です。 この場合、ユーザーはプロバイダーをインストールするための操作を行う必要があります。 もう 1 つは、プロバイダーを発見可能にする方法です。 この場合、Web ページの上部に 1 行のコードが必要です。これにより、ユーザーがサイトを閲覧したとき、Internet Explorer 8 でプロバイダーを発見できるようになります。

次のコードでは、ユーザーがリンクをクリックしたときに、検索プロバイダーが追加されます。

<a href="#"
   onclick="window.external.AddSearchProvider('http://www.example.com/provider.xml')"
   >Add Search Provider Example</a>

このコードは、AddSearchProvider メソッドを呼び出しています。 AddSearchProvider メソッドは、windowexternal オブジェクトから使用できます。 このコードを Internet Explorer 8 の HTML ページから実行すると、[検索プロバイダーの追加] ダイアログ ボックスが表示されます。

検索プロバイダーを発見できるようにする

検索プロバイダーを発見可能にして、検索プロバイダーの利用を促進することもできます。 OpenSearch 仕様では、link 要素を Web ページの head に追加することで検索プロバイダーの利用を促進する方法について説明しています。 次のコードを使用すると、Internet Explorer 8 で検索プロバイダーを発見できます。

<link title="My Provider" rel="search"
   type="application/opensearchdescription+xml"
   href="http://www.example.com/provider.xml">

rel 属性は "search"、type は "application/opensearchdescription+xml" です。 title の値は、クイック検索ボックスのドロップダウン メニューに表示されます。 href 属性には、OpenSearch Description ファイルの場所を指定する絶対 URL または相対 URL が指定されています。

Internet Explorer 8 にページが読み込まれると、クイック検索ボックスのドロップダウン矢印がオレンジ色に変わります。これは新しい検索プロバイダーがドロップダウン メニューに追加されていることを示します。 ドロップダウン メニューには最新の発見可能な検索プロバイダーが 3 つ表示されます。このプロバイダーをインストールしないと、追加プロバイダーを一覧に表示することはできません。 ユーザーが他のドメインを閲覧すると、前に発見された検索プロバイダーは削除されます。 ユーザーは、新しいプロバイダーを試してから一覧に追加することができます。 ユーザーが検索プロバイダーをインストールするように選択すると、[検索プロバイダーの追加] ダイアログ ボックスが表示されます。

検索候補を表示する

  • JSON 候補形式を使用する
  • XML 候補形式を使用する
  • 候補をビジュアル表示する
  • 応答エラーを処理する

Internet Explorer 8 から、クイック検索ボックスが検索候補をサポートするようになりました。 検索候補機能では、ユーザーが検索ボックスにテキストを入力すると同時に、入力されたクエリ文字列の要求が Internet Explorer 8 によって検索プロバイダーに送信されます。Web 開発者はユーザーが適切な検索用語を使用できるよう候補をユーザーに提供できます。 Internet Explorer 8 は、JSON 形式と XML 形式の 2 つの検索候補形式をサポートしています。 JSON 形式を使用するとテキスト ベースの検索候補を表示できます。この候補には説明と URL を追加できます。 XML 形式では JSON 候補で利用できるコンテンツのほかに、セクション タイトルを使用できます。また、検索候補をビジュアル表示することも可能です。 XML 検索候補形式の詳細については、「XML 検索候補形式の仕様」(英語の可能性あり) を参照してください。

注 : このセクションでは、個別の候補応答についてのみ説明しています。 検索候補を完全にサポートするには、これらの候補を生成し、要求ごとに適切な候補を提供しなければなりません。 サポートされている候補のこの処理はプロバイダー固有であるため、ここでは説明しません。

JSON 候補形式を使用する

JSON 検索候補は、配列の Microsoft JScript 配列として返されます。 この配列には 4 つの値が含まれます。

説明
クエリ文字列 (必須) 要求された検索用語です。 ブラウザーが "xbox" の候補を要求した場合は、クエリ文字列として "xbox" が返されます。 配列でクエリ文字列を返すことで、返された候補と要求された検索用語が確実に対応します。
Completion 配列 (必須) 指定されたクエリ文字列に対する候補です。
Description 配列 (オプション) 指定された Completion に関する追加情報またはコンテキストを提供する文字列です。
Query URL 配列 (オプション) 指定された候補をユーザーが選択した場合に使用する URL の一覧です。 検索用語に対するクイック応答として動作し、検索結果ページではなく URL をユーザーに表示します。

JSON 応答は、Completion 配列でクエリ文字列と検索候補を返します。 Description と Query URL を省略した場合のシンプルな JSON 応答の例を次に示します。

["xbox",
	["Xbox 360", "Xbox cheats", "Xbox 360 games"]]

注 : 一度に表示される検索候補の数は最大で 10 個です。 また、説明、イメージ、およびセクションを追加すると、提供される候補の数が制限されます。 最も関連がある候補を Completion 配列の先頭で送信することが重要です。

ユーザーが適切な検索用語を使用できるように、候補と一緒にその説明を提供できます。 クイック応答のフォームとして URL が提供される場合もあります。 クエリ URL が提供されている場合、候補をクリックしたユーザーは、検索結果ページではなくそのクエリ URL のページに直接アクセスできます。 詳細な JSON 応答の例を次に示します。

["xbox",
	["Xbox 360", "Xbox cheats", "Xbox 360 games"], 
	["The official Xbox website from Microsoft", "Codes and walkthroughs", "Games and accessories"],	
	["https://www.xbox.com","http://www.example.com/xboxcheatcodes.aspx", "http://www.example.com/games"]]

この JSON 応答の最初の検索候補は次の要素で構成されています。

  • 最初の配列の第 1 要素 ("Xbox 360")
  • 2 番目の配列の第 1 要素 ("The official Xbox website from Microsoft")
  • 3 番目の配列の第 1 要素 ("https://www.xbox.com")

上記の応答により次の結果が生成されます。

JSON 検索候補
図 11. JSON 検索候補

XML 候補形式を使用する

上記の JSON 応答は、次の例で示すように XML 候補形式で表すことができます。 この例の候補応答は上記の JSON 候補の応答と同じです。これにより、JSON 候補とまったく同じ結果が生成されます。

<?xml version="1.0"?>
<SearchSuggestion xmlns="https://schemas.microsoft.com/Search/2008/suggestions">
    <Query>xbox</Query>
    <Section>
	<Item>
		<Text>Xbox 360</Text>
		<Description>The official Xbox website from Microsoft</Description>
		<Url>http://www.xbox.com</Url>
	</Item>
	<Item>
		<Text>Xbox cheats</Text>
		<Description>Codes and walkthroughs</Description>
		<Url>http://www.example.com/xboxcheatcodes.aspx</Url>
	</Item>
	<Item>
		<Text>Xbox 360 games</Text>
		<Description>Games and accessories</Description>
		<Url>http://www.example.com/games</Url>
	</Item>
    </Section>
</SearchSuggestion>

JSON 候補形式では、候補メニューにセクション タイトルを指定できません。 Internet Explorer 8 では、検索プロバイダーの名前と "候補" というテキストがセクション タイトルになります。 たとえば、検索プロバイダーが "Joe's Search" の場合、候補のタイトルは "Joe's Search 候補" になります。 次の例では、"My Custom Search" という検索プロバイダーなので、"My Custom Search 候補" がタイトルとして表示されます。 複数のセクションの候補を整理するには、XML 候補形式を使用します。 XML 候補形式は、セクション タイトルのほか、検索候補のビジュアル表示をサポートしています。 XML 検索候補形式の詳細については、「XML 検索候補形式の仕様」(英語の可能性あり) を参照してください。

XML 検索候補機能は、JSON 検索候補と同じ機能だけでなく、JSON では使用できない追加機能をサポートしています。 たとえば、次の追加機能をサポートしています。

  • 候補セクションのタイトルをカスタマイズする。
  • 複数のセクション セパレーターに候補を分割する。
  • 候補をビジュアル表示する。

セクション タイトルをカスタマイズするには、"title" 属性を Section 要素に追加するか、セパレーターを追加します。 セパレーターは、タイトルがあるものとないものがあります。 次の例では、タイトルが "My Text Suggestions" のセパレーターと、タイトルがないセパレーターを追加しています。

<?xml version="1.0"?>
<SearchSuggestion xmlns="https://schemas.microsoft.com/Search/2008/suggestions">
    <Query>xbox</Query>
    <Section>
	<Separator title="My Text Suggestions"/>
	<Item>
		<Text>Xbox 360</Text>
		<Description>The official Xbox website from Microsoft</Description>
 		<Url>http://www.xbox.com</Url>
	</Item>
	<Item>
		<Text>Xbox cheats</Text>
		<Description>Codes and walkthroughs</Description>
		<Url>http://www.example.com/xboxcheatcodes.aspx</Url>
	</Item>
	<Item>
		<Text>Xbox 360 games</Text>
		<Description>Games and accessories</Description>
		<Url>http://www.example.com/games</Url>
	</Item>
	<Separator />
	<Item>
		<Text>xbox 360 lowest price</Text>
	</Item>
	<Item>
		<Text>xbox 360 news</Text>
	</Item>
    </Section>
</SearchSuggestion>

上記のコードにより次の結果が生成されます。

カスタム タイトルとセクション セパレーターが設定されている XML 検索候補
図 12. カスタム タイトルとセクション セパレーターが設定されている XML 検索候補

候補をビジュアル表示する

一般的には、検索候補は、ユーザーが検索している用語に対するテキスト候補または関連する用語で構成されています。 Internet Explorer 8 では、検索候補の概念が拡大され、クエリ文字列、リンク、またはビジュアル表示の候補が追加されています。 ビジュアル表示の候補にはイメージが含まれます。 検索プロバイダーは、ユーザーの検索用語に対する候補としてイメージとテキストを表示したり、イメージのみを表示したりできます。 ビジュアル表示の候補を応答に追加するには、Image 要素をその候補の Item 要素に追加します。 このとき、イメージの幅と高さも必ず指定してください。 たとえば、検索用語 "Xbox" に対するビジュアル表示の候補を表示するには、次のコードを返します。

 <Separator title="My Visual Suggestions" />
  <Item>
  	<Text>Xbox 360 Game Consoles</Text>
  	<Description>Game console systems and packages at a great deal.</Description>
  	<Image source="http://www.example.com/xboxconsole.jpg" alt="Xbox 360 Consoles" width="75" height="75"/> 
  	<Url>http://www.example.com/</Url>
  </Item>
  <Item>
  	<Text>Xbox 360 Wireless Controller</Text> 
  	<Image source="http://www.example.com/xboxcontroller.jpg" alt="Xbox 360 Wireless Controller" width="75" height="75"/> 
  </Item>
  <Item>
  	<Text>Xbox 360 Live Games</Text> 
  	<Image source="http://www.example.com/live.jpg" alt="Xbox 360 Live Games" width="75" height="75"/> 
  	<Url>http://www.example.com/games.aspx?q="Xbox 360"</Url> 
  </Item>

上記のコードにより次の結果が生成されます。

Xbox に対するビジュアル表示の候補
図 13. Xbox に対するビジュアル表示の候補

この例では、2 つの候補に URL が示されています。 Internet Explorer 8 では、URL で指定されたページがユーザーに直接表示されます。 URL が提供されていない場合は、Text 要素の値 ("Xbox 360 Wireless Controller") が検索用語として使用されます。 Text または Descriptoin を指定せずにビジュアル表示の候補を提供するには、URL を指定して、Internet Explorer 8 がどのページをユーザーに表示するかを判断できるようにします。

テキストとイメージを含める場合、既定では、イメージの横に上下中央揃えでテキストが配置されます。 align 属性値を "top"、"middle"、または "bottom" に設定すると、イメージを基準とした Text 要素および Description 要素の配置を指定できます。

テキストを配置するには、align 属性を image 要素に追加します。 たとえば、次の例では align 属性を "top" に設定しています。

<Image source="http://www.example.com/xboxconsole.jpg" alt="Xbox 360 Consoles" width="75" height="75" align="top"/> 

応答エラーを処理する

検索候補を提供していると、検索候補がない用語、または検索用語自体を認識できない用語に遭遇することがあります。 この場合も、有効な XML 応答を送信する必要があります。そうしないとエラー メッセージがユーザーに表示されます。 このメッセージが表示されないようにするには、検索用語に対する候補が見つからない場合の有効な XML 応答を送信します。 次のコード スニペットは、検索用語 xbox に対する候補がない場合の応答を送信しています。 この応答により、"検索結果が見つかりませんでした" というメッセージが表示されます。

<?xml version="1.0"?>
<SearchSuggestion xmlns="https://schemas.microsoft.com/Search/2008/suggestions">
    <Query>xbox</Query>
</SearchSuggestion>

JSON 応答の場合は次を返します。

 ["xbox"] 

検索用語に対する候補がないという状況のほかに、候補自体は存在しているはずなのにエラー メッセージが表示されるというケースがあります。 この場合は、エンコードに対する要求を確認します。 既定では、検索用語は HTTP GET 要求メソッドで UTF-8 を使用してエンコードされます。 つまり、ユーザーがアクセント付き文字を入力すると、その文字は、対応する ASCII (テキスト) 文字列にエンコードされます。 たとえば、検索用語が café の場合、送信される用語は q=caf%c3%a9 です。つまり、アクセント付きの é という文字は対応する ASCII 文字列 %c3%a9 にエンコードされます。

注 : 検索プロバイダーでは HTTP GET 要求メソッドが使用されている必要があります。POST 要求メソッドはサポートされていません。

検索候補メニューの大きさを確認する

ビジュアル表示の候補を提供する場合は、イメージの高さと幅を指定する必要があります。 この値を省略すると、Internet Explorer 8 では、イメージ用のスペースとして既定のサイズが割り当てられ、そのサイズに合わせてイメージの大きさが調整されます。 この場合、スペースの既定のサイズはテキスト 1 行分の高さと同じになります。

クイック検索ボックスのサイズは変更できるので、検索候補ドロップダウン メニューの大きさも変更されていることがあります。 検索候補メニューの大きさを確認するには、パラメーターを OpenSearch Description URL に追加します。これにより、検索候補ドロップダウン メニューのサイズが返されます。 次のパラメーターを使用できます。

パラメーター 説明
{maxWidth} ドロップダウン メニューの幅 (ピクセル単位)
{sectionHeight} 候補セクション全体の高さ
{rowHeight} テキスト 1 行の高さ (テキスト 1 行と同じ)

次の例では、上記のパラメーターが OpenSearch Description ファイルの URL に追加されています。

<Url type="application/x-suggestions+xml" 
	template="http://suggestions.example.com/search.aspx?q={searchTerms}&amp;
	maxwidth={maxWidth}&amp;rowheight={rowHeight}&amp;sectionHeight={sectionHeight}" 
/>

次の図は、各パラメーターの領域を示しています。

検索候補メニューのパラメーター
図 14. 検索候補メニューのパラメーター

検索参照元を特定する

Internet Explorer 7 以降、OpenSearch 参照元の拡張機能 World Wide Web リンク がサポートされています。 ユーザーが検索を実行すると、referrer 属性が検索クエリに追加されます。これは、クイック検索ボックスまたはアドレス バーのどちらで検索が実行されたかを示します。 クイック検索ボックスから検索が実行された場合、referrer 属性は IE-SearchBox に設定されます。 アドレス バーから検索が実行された場合は、お気に入りまたは直接入力のどちらで実行されたとしても、referrer 属性は IE-Address に設定されます。

検索候補をローカライズする

複数の言語でサービスを提供している場合は、{Language} 属性をクエリ文字列に追加して、どのローカライズ候補を送信するかを指定できます。 次の例は、言語情報をユーザーから受け取り、ローカライズ要求を処理する方法を示しています。

<Url type="application/x-suggestions+xml" 
	template="http://suggestions.example.com/search.aspx?
	q={searchTerms}&amp;language={Language}" 
/>

Internet Explorer で候補が要求されると、その要求は、ユーザー システムのロケールで定義されている、Internet Explorer がサポートする言語で置き換えられます。 ユーザーのシステムのロケールは、コントロール パネル、および Internet Explorer の [インターネット オプション] ダイアログ ボックスの言語設定から設定できます。

注 : ロケール応答に影響する可能性がある文字エンコードの詳細については、上記の「応答エラーを処理する」を参照してください。

注釈

考慮すべきガイドラインを次に示します。

  • Web サイトで [検索プロバイダーの追加] ダイアログ ボックスが自動的に起動することはありません。 Web サイトはポップアップ ブロックによってロックダウンされますが、ダイアログ ボックスもこれと同様にロックダウンされます。このダイアログ ボックスは、ユーザーの操作によってのみ起動できます。
  • 短いタイトル (16 文字以下が理想的) を使用します。 この文字列はクイック検索ボックスで使用されます。 タイトルが検索ボックスよりも長いと、はみ出たテキストが表示されないことがあります。
  • link タグのタイトルは、XML 記述ファイルで使用されているタイトルと同じものを使用します。 この 2 つのタイトルの文字列が一致していれば、プロバイダーがインストールされていることが発見機能によって認識されるため、クイック検索ボックスのドロップダウン矢印がオレンジ色に変わったり、インストールされているプロバイダーが、発見されたプロバイダーの一覧に追加されたりすることはありません。
  • ユーザーが Internet Explorer の既定の設定に戻すと、カスタム検索プロバイダーはすべて削除されます。
  • スクリプトを使用してプロバイダーを追加する場合は、IsSearchProviderInstalled ヘルパー メソッドを呼び出して、プロバイダーがインストールされているかどうかを確認する必要があります。
  • 記述ファイルを作成するときは、そのファイルが有効な XML 構文で構成されていること、クエリ文字列のすべての文字がエンコードされていること、およびすべての "&" 文字が "&amp;" にエスケープされていることを確認します。
  • ユーザーがクイック検索ボックスのサイズを変更できるので、Web 開発者は、Internet Explorer 8 に対してクエリを実行し、検索候補ドロップダウンの大きさを返すよう求めることができます。これを行うには、パラメーターを XML 記述ファイルの URL に追加します。

関連トピック