(57)【特許請求の範囲】
【請求項１】
検索条件として指定された複数のキーワードを、それぞれ少なくとも１つのキーワードを含む２つの子検索条件に分割する分割手段と、
前記検索条件として指定された複数のキーワードの全てに合致する検索対象を検索するとともに、前記子検索条件ごとに該子検索条件に含まれるキーワードの全てに合致する検索対象を検索する検索手段と、
前記子検索条件の一方により検索された検索対象の何れかと、前記子検索条件の他方により検索された検索対象の何れかと、の組み合わせの中から、互いに予め定められた関連を有する検索対象の組み合わせを抽出する抽出手段と、
前記抽出手段により抽出された前記組み合わせの中から、前記検索条件により検索された検索対象よりもユーザにとって取引上有利な前記組み合わせを特定する特定手段と、
前記特定手段により特定された前記組み合わせの情報を提供する提供手段と、
を備えることを特徴とする検索装置。
【請求項２】
請求項１に記載の検索装置において、
前記分割手段は、前記子検索条件の一方により検索された検索対象の数が予め設定された数未満である場合に、該子検索条件の一方を２つの孫検索条件に分割し、
前記検索手段は、前記孫検索条件ごとに該孫検索条件に含まれるキーワードの全てに合致する検索対象を検索し、
前記抽出手段は、前記孫検索条件の一方により検索された検索対象の何れかと、前記孫検索条件の他方により検索された検索対象の何れかと、前記子検索条件の他方により検索された検索対象の何れかと、の組み合わせの中から、互いに前記関連を有する検索対象の組み合わせを抽出することを特徴とする検索装置。
【請求項３】
請求項１または請求項２に記載の検索装置において、
前記分割手段は、前記子検索条件の一方により検索された検索対象の数が予め設定された数未満である場合に、該子検索条件の一方を２つの孫検索条件に分割するとともに、該孫検索条件の他方を前記子検索条件の他方に統合し、
前記検索手段は、前記孫検索条件の一方に含まれるキーワードの全てに合致する検索対象と、前記子検索条件の他方に含まれるキーワードの全てに合致する検索対象と、をそれぞれ検索し、
前記抽出手段は、前記孫検索条件の一方により検索された検索対象の何れかと、前記子検索条件の他方により検索された検索対象の何れかと、の組み合わせの中から、互いに前記関連を有する検索対象の組み合わせを抽出することを特徴とする検索装置。
【請求項４】
請求項１乃至３の何れか１項に記載の検索装置において、
前記分割手段は、前記複数のキーワードのうち検索される検索対象の数が最も少ない１つのキーワードを前記子検索条件の他方に含め、前記子検索条件の他方に含まれないキーワードを前記子検索条件の一方に含めることを特徴とする検索装置。
【請求項５】
請求項１乃至４の何れか１項に記載の検索装置において、
検索対象の複数の属性項目の中から、前記複数のキーワードの少なくとも何れかに含まれる語により属性値が表される属性項目を選択する選択手段を更に備え、
前記特定手段は、前記選択手段により選択された前記属性項目において、前記検索条件により検索された検索対象の属性値よりもユーザにとって取引上有利な属性値が付与される前記組み合わせを特定することを特徴とする検索装置。
【請求項６】
検索装置により実行される検索方法であって、
検索条件として指定された複数のキーワードを、それぞれ少なくとも１つのキーワードを含む２つの子検索条件に分割する分割ステップと、
前記検索条件として指定された複数のキーワードの全てに合致する検索対象を検索するとともに、前記子検索条件ごとに該子検索条件に含まれるキーワードの全てに合致する検索対象を検索する検索ステップと、
前記子検索条件の一方により検索された検索対象の何れかと、前記子検索条件の他方により検索された検索対象の何れかと、の組み合わせの中から、互いに予め定められた関連を有する検索対象の組み合わせを抽出する抽出ステップと、
前記抽出ステップにおいて抽出された前記組み合わせの中から、前記検索条件により検索された検索対象よりもユーザにとって取引上有利な前記組み合わせを特定する特定ステップと、
前記特定ステップにおいて特定された前記組み合わせの情報を提供する提供ステップと、
を含むことを特徴とする検索方法。
【請求項７】
検索装置に含まれるコンピュータを、
検索条件として指定された複数のキーワードを、それぞれ少なくとも１つのキーワードを含む２つの子検索条件に分割する分割手段、
前記検索条件として指定された複数のキーワードの全てに合致する検索対象を検索するとともに、前記子検索条件ごとに該子検索条件に含まれるキーワードの全てに合致する検索対象を検索する検索手段、
前記子検索条件の一方により検索された検索対象の何れかと、前記子検索条件の他方により検索された検索対象の何れかと、の組み合わせの中から、互いに予め定められた関連を有する検索対象の組み合わせを抽出する抽出手段、
前記抽出手段により抽出された前記組み合わせの中から、前記検索条件により検索された検索対象よりもユーザにとって取引上有利な前記組み合わせを特定する特定手段、及び、
前記特定手段により特定された前記組み合わせの情報を提供する提供手段、
として機能させることを特徴とする検索プログラム。
【請求項８】
検索装置に含まれるコンピュータを、
検索条件として指定された複数のキーワードを、それぞれ少なくとも１つのキーワードを含む２つの子検索条件に分割する分割手段、
前記検索条件として指定された複数のキーワードの全てに合致する検索対象を検索するとともに、前記子検索条件ごとに該子検索条件に含まれるキーワードの全てに合致する検索対象を検索する検索手段、
前記子検索条件の一方により検索された検索対象の何れかと、前記子検索条件の他方により検索された検索対象の何れかと、の組み合わせの中から、互いに予め定められた関連を有する検索対象の組み合わせを抽出する抽出手段、
前記抽出手段により抽出された前記組み合わせの中から、前記検索条件により検索された検索対象よりもユーザにとって取引上有利な前記組み合わせを特定する特定手段、及び、
前記特定手段により特定された前記組み合わせの情報を提供する提供手段、
として機能させることを特徴とする検索プログラムがコンピュータ読み取り可能に記録されていることを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検索条件として指定された複数のキーワードに基づいて検索を行う検索装置及び検索方法の技術分野に関する。
【背景技術】
【０００２】
従来、ユーザにより指定されたキーワードに基づいて検索を行う検索装置が知られている。検索対象となるものは、例えば、物、事柄、情報等がある。また、商品やサービス等の取り引きが可能な対象を検索する検索装置も知られている。ユーザが複数のキーワードを指定した場合、検索装置は、一般的には、指定された全てのキーワードに合致する検索対象を検索する。そして、検索装置は、検索された検索対象に関する情報を、検索結果として提供する。例えば、特許文献１には、ユーザが入力した文から抽出された複数のキーワードの論理積を条件式として用いて検索を行う技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−９２０３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、キーワードが複数指定された場合、キーワードが１つのみ指定された場合よりも、検索される検索対象が限定される。そのため、キーワードが１つのみ指定された場合よりも、検索される検索対象の中に、ユーザにとって取引上有利な検索対象が存在しない蓋然性が高い。従って、ユーザは、指定された複数のキーワードの全てに合致する検索対象の中から、ユーザにとって取引上さほど有利ではない検索対象を選択せざるを得ない場合がある。
【０００５】
本発明は、以上の点に鑑みてなされたものであり、ユーザが検索条件として複数のキーワードを指定した場合であっても、ユーザにとって取引上有利な検索対象の情報を提供可能とする検索装置、検索方法、検索プログラム及び記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、請求項１に記載の発明は、検索条件として指定された複数のキーワードを、それぞれ少なくとも１つのキーワードを含む２つの子検索条件に分割する分割手段と、前記検索条件として指定された複数のキーワードの全てに合致する検索対象を検索するとともに、前記子検索条件ごとに該子検索条件に含まれるキーワードの全てに合致する検索対象を検索する検索手段と、前記子検索条件の一方により検索された検索対象の何れかと、前記子検索条件の他方により検索された検索対象の何れかと、の組み合わせの中から、互いに予め定められた関連を有する検索対象の組み合わせを抽出する抽出手段と、前記抽出手段により抽出された前記組み合わせの中から、前記検索条件により検索された検索対象よりもユーザにとって取引上有利な前記組み合わせを特定する特定手段と、前記特定手段により特定された前記組み合わせの情報を提供する提供手段と、を備えることを特徴とする。
【０００７】
この発明によれば、複数のキーワードの何れのキーワードについても、指定されたキーワードに合致する検索対象が、抽出される組み合わせを構成する複数の検索対象の中に存在する。また、特定される組み合わせは、互いに関連を有する検索対象の組み合わせである。更に、特定される組み合わせは、検索条件として指定された複数のキーワードの全てに合致する検索対象よりも、ユーザにとって取引上有利な組み合わせである。そのため、ユーザが検索条件として複数のキーワードを指定した場合であっても、指定された複数のキーワードの全てに合致する検索対象よりもユーザにとって取引上有利な検索対象の組み合わせの情報を提供することができる。
【０００８】
なお、組み合わせに含まれる検索対象のうち少なくとも１つが、取り引き可能な対象であればよい。
【０００９】
また、検索条件として指定された複数のキーワードを３つ以上の子検索条件に分割する態様も、本発明の技術的範囲に属する。例えば、ａ、ｂ、ｃ、ｄ及びｅの５つのキーワードが指定されていたとする。ここで、５つのキーワードが、例えば、ａ及びｂを含む子検索条件と、ｃ及びｄを含む子検索条件と、ｅを含む子検索条件と、に分割されたとする。この場合、例えば、５つのキーワードの一部分であるａ、ｂ、ｃ及びｄも、検索条件として指定された複数のキーワードである。そして、ａ、ｂ、ｃ及びｄという複数のキーワードが、２つの子検索条件に分割されている。つまり、複数のキーワードを３つ以上の子検索条件に分割する処理は、複数のキーワードを２つの子検索条件に分割する処理を含むのである。
【００１０】
請求項２に記載の発明は、請求項１に記載の検索装置において、前記分割手段は、前記子検索条件の一方により検索された検索対象の数が予め設定された数未満である場合に、該子検索条件の一方を２つの孫検索条件に分割し、前記検索手段は、前記孫検索条件ごとに該孫検索条件に含まれるキーワードの全てに合致する検索対象を検索し、前記抽出手段は、前記孫検索条件の一方により検索された検索対象の何れかと、前記孫検索条件の他方により検索された検索対象の何れかと、前記子検索条件の他方により検索された検索対象の何れかと、の組み合わせの中から、互いに前記関連を有する検索対象の組み合わせを抽出することを特徴とする。
【００１１】
この発明によれば、子検索条件の一方により検索される検索対象の数が、設定された数よりも少ない場合であっても、子検索条件の一方が２つの孫検索条件が分割され、それぞれの孫検索条件で検索が行われる。孫検索条件は、子検索条件の一方よりもキーワードの数が少ないので、孫検索条件を用いて検索を行った方が、子検索条件を用いて検索を行うよりも、検索対象が検索される蓋然性が高い。そのため、ユーザが望む検索結果を、より得やすくすることができる。
【００１２】
なお、子検索条件を３つ以上の孫検索条件に分割する態様も、検索条件として指定された複数のキーワードを３つ以上の子検索条件に分割する場合と同様の理由で、この発明の技術的範囲に属する。
【００１３】
請求項３に記載の発明は、請求項１または請求項２に記載の検索装置において、前記分割手段は、前記子検索条件の一方により検索された検索対象の数が予め設定された数未満である場合に、該子検索条件の一方を２つの孫検索条件に分割するとともに、該孫検索条件の他方を前記子検索条件の他方に統合し、前記検索手段は、前記孫検索条件の一方に含まれるキーワードの全てに合致する検索対象と、前記子検索条件の他方に含まれるキーワードの全てに合致する検索対象と、をそれぞれ検索し、前記抽出手段は、前記孫検索条件の一方により検索された検索対象の何れかと、前記子検索条件の他方により検索された検索対象の何れかと、の組み合わせの中から、互いに前記関連を有する検索対象の組み合わせを抽出することを特徴とする。
【００１４】
この発明によれば、子検索条件の一方により検索される検索対象の数が、設定された数よりも少ない場合には、子検索条件の一方が２つの孫検索条件に分割され、孫検索条件の他方が子検索条件の他方に統合される。孫検索条件は、子検索条件の一方よりもキーワードの数が少ないので、孫検索条件を用いて検索を行った方が、子検索条件を用いて検索を行うよりも、検索対象が検索される蓋然性が高い。そのため、抽出される組み合わせに含まれる検索対象の数を増やすことなく、ユーザが望む検索結果を、より得やすくすることができる。
【００１５】
請求項４に記載の発明は、請求項１乃至３の何れか１項に記載の検索装置において、前記分割手段は、前記複数のキーワードのうち検索される検索対象の数が最も少ない１つのキーワードを前記子検索条件の他方に含め、前記子検索条件の他方に含まれないキーワードを前記子検索条件の一方に含めることを特徴とする。
【００１６】
この発明によれば、指定された検索条件から１つのキーワードを除いたものが、子検索条件の一方となる。また、子検索条件の一方から除かれるキーワードは、検索される検索対象の数が最も少ないキーワードである。そのため、子検索条件の一方を、指定された検索条件にできるかぎり近づけることができるとともに、子検索条件の一方により検索対象を検索することができる蓋然性を高めることができる。
【００１７】
請求項５に記載の発明は、請求項１乃至３の何れか１項に記載の検索装置において、前記分割手段は、前記複数のキーワードのうち検索される検索対象の数が最も少ない１つのキーワード以外のキーワードを前記子検索条件の一方に含め、前記子検索条件の一方に含まれないキーワードを前記子検索条件の他方に含めることを特徴とする。
【００１８】
この発明によれば、ユーザが重視する蓋然性がある属性項目の属性値により取引上有利である組み合わせが特定されるので、指定された複数のキーワードの全てに合致する検索対象よりもユーザが望む蓋然性がある組み合わせの情報を提供することができる。
【００１９】
請求項６に記載の発明は、検索装置により実行される検索方法であって、検索条件として指定された複数のキーワードを、それぞれ少なくとも１つのキーワードを含む２つの子検索条件に分割する分割ステップと、前記検索条件として指定された複数のキーワードの全てに合致する検索対象を検索するとともに、前記子検索条件ごとに該子検索条件に含まれるキーワードの全てに合致する検索対象を検索する検索ステップと、前記子検索条件の一方により検索された検索対象の何れかと、前記子検索条件の他方により検索された検索対象の何れかと、の組み合わせの中から、互いに予め定められた関連を有する検索対象の組み合わせを抽出する抽出ステップと、前記抽出ステップにおいて抽出された前記組み合わせの中から、前記検索条件により検索された検索対象よりもユーザにとって取引上有利な前記組み合わせを特定する特定ステップと、前記特定ステップにおいて特定された前記組み合わせの情報を提供する提供ステップと、を含むことを特徴とする。
【００２０】
請求項７に記載の発明は、検索装置に含まれるコンピュータを、検索条件として指定された複数のキーワードを、それぞれ少なくとも１つのキーワードを含む２つの子検索条件に分割する分割手段、前記検索条件として指定された複数のキーワードの全てに合致する検索対象を検索するとともに、前記子検索条件ごとに該子検索条件に含まれるキーワードの全てに合致する検索対象を検索する検索手段、前記子検索条件の一方により検索された検索対象の何れかと、前記子検索条件の他方により検索された検索対象の何れかと、の組み合わせの中から、互いに予め定められた関連を有する検索対象の組み合わせを抽出する抽出手段、前記抽出手段により抽出された前記組み合わせの中から、前記検索条件により検索された検索対象よりもユーザにとって取引上有利な前記組み合わせを特定する特定手段、及び、前記特定手段により特定された前記組み合わせの情報を提供する提供手段、として機能させることを特徴とする。
【００２１】
請求項８に記載の発明は、検索装置に含まれるコンピュータを、検索条件として指定された複数のキーワードを、それぞれ少なくとも１つのキーワードを含む２つの子検索条件に分割する分割手段、前記検索条件として指定された複数のキーワードの全てに合致する検索対象を検索するとともに、前記子検索条件ごとに該子検索条件に含まれるキーワードの全てに合致する検索対象を検索する検索手段、前記子検索条件の一方により検索された検索対象の何れかと、前記子検索条件の他方により検索された検索対象の何れかと、の組み合わせの中から、互いに予め定められた関連を有する検索対象の組み合わせを抽出する抽出手段、前記抽出手段により抽出された前記組み合わせの中から、前記検索条件により検索された検索対象よりもユーザにとって取引上有利な前記組み合わせを特定する特定手段、及び、前記特定手段により特定された前記組み合わせの情報を提供する提供手段、として機能させることを特徴とする。
【発明の効果】
【００２２】
本発明によれば、複数のキーワードの何れのキーワードについても、指定されたキーワードに合致する検索対象が、抽出される組み合わせを構成する複数の検索対象の中に存在する。また、特定される組み合わせは、互いに関連を有する検索対象の組み合わせである。更に、特定される組み合わせは、検索条件として指定された複数のキーワードの全てに合致する検索対象よりも、ユーザにとって取引上有利な組み合わせである。そのため、ユーザが検索条件として複数のキーワードを指定した場合であっても、指定された複数のキーワードの全てに合致する検索対象よりもユーザにとって取引上有利な検索対象の組み合わせの情報を提供することができる。
【図面の簡単な説明】
【００２３】
【図１】一実施形態に係る情報提供システムＳ１の概要構成の一例を示す図である。
【図２】（ａ）は、宿泊施設と地域との組み合わせの検索例を示す図であり、（ｂ）は、宿泊施設検索条件と地域検索条件との変更例を示す図である。
【図３】（ａ）は、単独で検索された各宿泊施設のユーザの家からの距離の一例を示す図であり、（ｂ）は、検索された各組み合わせのユーザの家からの距離の一例を示す図である。
【図４】検索結果ページの表示例を示す図である。
【図５】一実施形態に係る宿泊施設予約サーバ１の概要構成の一例を示すブロック図である。
【図６】（ａ）は、会員情報ＤＢ１２ａに登録される内容の一例を示す図であり、（ｂ）は、宿泊施設情報ＤＢ１２ｂに登録される内容の一例を示す図であり、（ｃ）は、地域情報ＤＢ１２ｃに登録される内容の一例を示す図であり、（ｄ）は、スポット情報ＤＢ１２ｄに登録される内容の一例を示す図であり、（ｅ）は、宿泊施設キーワード情報ＤＢ１２ｅに登録される内容の一例を示す図である。
【図７】一実施形態に係る宿泊施設予約サーバ１のシステム制御部１４の検索処理における処理例を示すフローチャートである。
【図８】一実施形態に係る宿泊施設予約サーバ１のシステム制御部１４の宿泊施設検索処理における処理例を示すフローチャートである。
【図９】一実施形態に係る宿泊施設予約サーバ１のシステム制御部１４の地域検索処理における処理例を示すフローチャートである。
【図１０】一実施形態に係る情報提供システムＳ２の概要構成の一例を示す図である。
【図１１】（ａ）は、商品の検索例を示す図であり、（ｂ）は、部分検索条件１の分割例を示す図である。
【図１２】（ａ）は、単独で検索された各商品の商品価格及び配送方法の一例を示す図であり、（ｂ）は、検索された各組み合わせの商品価格及び配送方法の一例を示す図である。
【図１３】商品検索結果ページの表示例を示す図である。
【図１４】一実施形態に係る電子商店街サーバ４の概要構成の一例を示すブロック図である。
【図１５】（ａ）は、会員情報ＤＢ４２ａに登録される内容の一例を示す図であり、（ｂ）は、ジャンル情報ＤＢ４２ｂに登録される内容の一例を示す図であり、（ｃ）は、店舗情報ＤＢ４２ｃに登録される内容の一例を示す図であり、（ｄ）は、商品情報ＤＢ４２ｄに登録される内容の一例を示す図であり、（ｅ）は、関連商品情報ＤＢ４２ｅに登録される内容の一例を示す図である。
【図１６】一実施形態に係る電子商店街サーバ４のシステム制御部４４の検索処理における処理例を示すフローチャートである。
【発明を実施するための形態】
【００２４】
以下、図面を参照して本発明の実施形態について詳細に説明する。
【００２５】
［１．第１実施形態］
以下に説明する第１実施形態は、宿泊施設の予約を行うための情報提供システムに対して本発明を適用した場合の実施形態である。
【００２６】
［１−１．情報提供システムの構成及び機能概要］
先ず、本実施形態に係る情報提供システムＳ１の構成について、図１を用いて説明する。図１は、本実施形態に係る情報提供システムＳ１の概要構成の一例を示す図である。
【００２７】
図１に示すように、情報提供システムＳ１は、宿泊施設予約サーバ１と、複数の宿泊施設端末２と、複数のユーザ端末３と、を含んで構成されている。そして、宿泊施設予約サーバ１と各宿泊施設端末２及び各ユーザ端末３とは、ネットワークＮＷを介して、例えば、通信プロトコルにＴＣＰ／ＩＰ等を用いて相互にデータの送受信が可能になっている。なお、ネットワークＮＷは、例えば、インターネット、専用通信回線（例えば、ＣＡＴＶ（Community Antenna Television）回線）、移動体通信網（基地局等を含む）、及びゲートウェイ等により構築されている。
【００２８】
宿泊施設予約サーバ１は、宿泊施設予約サイトに関する各種処理を実行するサーバ装置である。宿泊施設予約サーバ１は、本発明における検索装置の一例である。宿泊施設予約サイトは、宿泊施設の宿泊の予約の受け付けを行うＷｅｂサイトである。宿泊施設予約サイトは、複数の宿泊施設から予約の受け付けを委託されている。宿泊施設予約サーバ１は、ユーザ端末３からのリクエストに応じて、例えば、宿泊施設予約サイトのＷｅｂページを送信したり、宿泊施設の検索や、宿泊の予約等に関する処理を行ったりする。なお、宿泊施設は、本発明における検索対象の一例である。
【００２９】
宿泊施設端末２は、宿泊施設予約サイトに予約の委託をしている宿泊施設の従業員等により利用される端末装置である。宿泊施設端末２は、従業員等からの操作に基づいて宿泊施設予約サーバ１等のサーバ装置にアクセスする。これにより、宿泊施設端末２は、サーバ装置からＷｅｂページを受信して表示する。宿泊施設端末２には、ブラウザや電子メールクライアント等のソフトウェアが組み込まれている。従業員は、宿泊施設端末２を利用することにより、例えば、宿泊施設の情報を宿泊施設予約サイトに登録したり、宿泊施設の予約状況を確認したりする。
【００３０】
ユーザ端末３は、宿泊施設予約サイトを利用するユーザの端末装置である。ユーザ端末３は、ユーザからの操作に基づいて宿泊施設予約サーバ１にアクセスすることにより、宿泊施設予約サーバ１からＷｅｂページを受信して表示する。ユーザ端末３には、ブラウザや電子メールクライアント等のソフトウェアが組み込まれている。ユーザ端末３としては、例えば、パーソナルコンピュータ、ＰＤＡ（Personal Digital Assistant）、スマートフォン等の携帯情報端末、携帯電話機等が用いられる。
【００３１】
ユーザは、ユーザが利用する宿泊施設を宿泊施設予約サイトで探すために、検索条件を指定することができる。例えば、検索条件として、キーワードの指定が可能である。ユーザは、例えば、ユーザが所望する宿泊施設の条件を簡潔に表す語を、キーワードとして入力する。検索条件が指定されると、宿泊施設予約サーバ１は、検索条件を満たす宿泊施設を検索する。具体的に、宿泊施設予約サーバ１は、指定されたキーワードを宿泊施設名や宿泊施設の詳細情報に含む宿泊施設を検索する。そして、宿泊施設予約サーバ１は、検索結果ページをユーザ端末３へ送信する。
【００３２】
検索結果ページは、検索された宿泊施設の一覧が表示されるＷｅｂページである。例えば、検索結果ページは、宿泊施設名、宿泊施設の画像、宿泊施設の簡単な説明、宿泊プランの情報等が、宿泊施設ごとに表示される。宿泊プランは、例えば、宿泊施設により企画された宿泊サービスである。宿泊プランの情報は、１つの宿泊施設につき複数表示される場合がある。また、検索結果ページには、検索された宿泊施設の宿泊施設ページへのハイパーリンク（以下、「リンク」という）が埋め込まれている。宿泊施設ページは、１つの宿泊施設に関する情報が表示されるＷｅｂページである。宿泊施設ページは、宿泊施設ごとに複数種類存在する。例えば、宿泊施設のトップページ、宿泊施設の詳細情報が表示されるＷｅｂページ、宿泊プランの一覧が表示されるＷｅｂページ等がある。ユーザは、宿泊施設ページにおいて、予約の操作を行うことにより、宿泊施設の予約を行うことができる。
【００３３】
［１−２．取引上有利な宿泊施設と地域との組み合わせの情報の提供］
ユーザは、検索したい宿泊施設に対して要求する条件を複数持っている場合がある。例えば、条件としては、宿泊施設から提供を受けたいサービス、利用したい設備、ユーザがやりたいこと等がある。サービス及び施設は、本発明において、ユーザに提供される提供対象の一例である。また、ユーザがやりたいことを実現するサービス、設備、場所等も、本発明における提供対象の一例である。ユーザが、要求する条件ごとにその条件に関連するキーワードを入力すると、検索条件として複数のキーワードが指定されることになる。複数のキーワードが指定された場合、宿泊施設予約サーバ１は、指定された複数のキーワードの全てに合致する宿泊施設を検索する。そのため、指定されたキーワードの数が多くなるほど、全てのキーワードに合致する宿泊施設の数が少なくなったり、全てのキーワードに合致する宿泊施設が存在する蓋然性が低くなったりする。そうすると、ユーザが望む検索結果をユーザが得ることができない場合がある。具体的に、ユーザがキーワードを１つのみ指定した場合よりも、検索される宿泊施設が限定される。そのため、検索された宿泊施設の中に、ユーザにとって取引上有利な宿泊施設がないということが起こる蓋然性が高くなる。ユーザが望む検索結果とは、ユーザにとって取引上有利な宿泊施設が含まれる検索結果である。ユーザにとって取引上有利な宿泊施設がない場合、ユーザは、取引上さほど有利ではない宿泊施設、あるいは、取引上不利な宿泊施設を選択せざるを得ない。宿泊施設の選択としては、例えば、宿泊施設ページを表示させこと、予約すること等がある。
【００３４】
取引上有利であるか否かは、例えば、宿泊施設の属性に基づいて判断される。各宿泊施設は、それぞれ複数の属性を有する。宿泊施設の属性項目としては、例えば、宿泊施設名、宿泊料金、住所等がある。また、宿泊施設の各属性は、属性項目に適合する何らかの属性値を有する。属性値は、属性の内容を表す情報である。ユーザにとっての取引上における有利・不利の判断に用いられる宿泊施設の属性項目としては、例えば、ユーザの家からの距離、宿泊料金等がある。ユーザの家からの距離が近いほど、ユーザに有利である。宿泊料金が低いほどユーザに有利である。なお、ユーザにとっての取引上における有利・不利の判断に用いられる属性項目を、「有利判定項目」という。
【００３５】
取引上有利ではない宿泊施設の選択を避けるため、ユーザは、指定するキーワードの数を減らして宿泊施設予約サーバ１に再検索を要求することはできる。つまり、ユーザは、最初に指定した複数のキーワードの中から一部のキーワードを除外することによって、検索条件を再指定する。あるいは、宿泊施設予約サーバ１が、自動的にキーワードを減らして、再検索を行うことも考えられる。ところが、この場合、最初に指定された検索条件と、新しく指定された検索条件とは同一ではなくなる。そのため、ユーザが望む検索結果が得られない場合がある。新しい検索条件で検索された宿泊施設の中には、ユーザが最初に望んだ全ての条件を満たす宿泊施設が含まれていない蓋然性が高いからである。
【００３６】
そこで、宿泊施設予約サーバ１は、ユーザが指定した複数のキーワードの全てに合致する宿泊施設を検索するとともに、宿泊施設と地域とを組み合わせた場合に、ユーザが指定した複数のキーワードの全てに合致する組み合わせを検索する。そして、宿泊施設予約サーバ１は、検索した組み合わせのうち、単独で検索された宿泊施設よりもユーザにとって取引上有利である組み合わせを、検索結果としてユーザ端末３によりユーザへ提示させる。これにより、ユーザは、取引上有利な宿泊施設を、宿泊施設と地域との組み合わせに含まれる宿泊施設として選択することができる。なお、単独で検索された宿泊施設とは、ユーザが指定した複数のキーワードの全てに合致する宿泊施設である。
【００３７】
宿泊施設と地域との組み合わせを検索する場合、宿泊施設予約サーバ１は、検索条件として指定された複数のキーワードを、それぞれ少なくとも１つ以上のキーワードを含む２つの検索条件に分割する。２つの検索条件のうちの一方は、宿泊施設検索条件である。宿泊施設検索条件は、宿泊施設の検索に用いられる検索条件である。２つの検索条件のうちの他方は、地域検索条件である。地域検索条件は、宿泊施設の検索に用いられない検索条件である。代わりに、地域検索条件は、地域の検索に用いられる。宿泊施設検索条件及び地域検索条件は、それぞれ本発明における子検索条件の一例である。宿泊施設予約サーバ１は、宿泊施設検索条件を満たす宿泊施設を検索するとともに、地域検索条件を満たす地域を検索する。そして、宿泊施設予約サーバ１は、検索された宿泊施設の何れかと、検索された地域の何れかと、の組み合わせの中から、関連を有する宿泊施設と地域との組み合わせを抽出する。ここで、宿泊施設予約サーバ１は、施設がある場所が、地域に対して予め定められた範囲内にある場合、その施設とその地域とは、関連を有するもの判定する。なお、地域は、本発明における検索対象の一例である。
【００３８】
あるキーワードによって表された対象またはそのキーワードに関連する対象を提供するスポットが宿泊施設の近くにあるのであれば、その対象を宿泊施設が提供することができなくてもよいと考えられる。ユーザは、その宿泊施設を利用するときに、そのスポットに行くことによって、ユーザの要求を満足させることができるからである。各地域には、それぞれユーザの要求を満たすかもしれないスポットがある。従って、ユーザが指定した複数のキーワードのうち一部のキーワードを含む宿泊施設検索条件を宿泊施設が満たし、残りのキーワードを含む地域検索条件を地域が満たすような、宿泊施設と地域の組み合わせであれば、全体としてユーザの要求は満たされる。
【００３９】
図２（ａ）は、宿泊施設と地域との組み合わせの検索例を示す図である。宿泊施設予約サーバ１は、ユーザにより指定された複数のキーワードを、宿泊施設検索条件と地域検索条件とに分割する。分割の基準は、例えば、キーワードが、宿泊施設によって提供可能な対象に関連するか否かである。つまり、宿泊施設予約サーバ１は、複数のキーワードのそれぞれを、宿泊施設によって提供される対象に関連するキーワードと、宿泊施設によって提供されない対象に関連するキーワードと、の何れかに分類する。
【００４０】
例えば、ユーザは、露天風呂及び岩盤浴を利用したいと思い、且つ、登山、ダイビング及び花火を楽しみたいと思ったとする。更に、ユーザは、蟹を食べたいと思い、且つ、飲み物が飲み放題である食事をとりたいと思ったとする。そこで、ユーザは、例えば、図２（ａ）に示すように、複数のキーワードとして、「露天風呂  登山  蟹  飲み放題  ダイビング  花火  岩盤浴」を指定したとする。空白で分けられたそれぞれの語が、キーワードである。そして、この複数のキーワードが、「露天風呂  蟹  飲み放題  岩盤浴」を含む宿泊施設検索条件と、「登山  ダイビング  花火」を含む宿泊施設検索条件と、に分割される。「露天風呂  蟹  飲み放題  岩盤浴」の中のそれぞれのキーワードが表す対象は、宿泊施設による提供が可能な対象である。一方、「登山  ダイビング  花火」の中のそれぞれのキーワードが表す対象は、一般的には宿泊施設で提供されない対象である。
【００４１】
次いで、宿泊施設予約サーバ１は、宿泊施設検索条件に含まれる全てのキーワードに合致する宿泊施設を検索するとともに、地域検索条件に含まれる全てのキーワードに合致する地域を検索する。検索された宿泊施設を要素とする集合を、「該当宿泊施設集合」という。また、検索された地域を要素とする集合を、「該当地域集合」という。そして、宿泊施設予約サーバ１は、該当宿泊施設集合と該当地域集合とから、互いに関連を有する宿泊施設と地域との組み合わせを抽出する。
【００４２】
ある宿泊施設Ａとある地域Ｂとが互いに関連するか否かの基準は、宿泊施設Ａがある場所が、地域Ｂに対して予め定められた範囲内にあるか否かである。例えば、この範囲は、ユーザが旅先での旅行中に、宿泊施設Ａから地域Ｂにユーザが行くことができる範囲とされる。例えば、宿泊施設予約サーバ１は、宿泊施設がある地域を、宿泊施設と関連する地域であると判定する。また、宿泊施設予約サーバ１は、宿泊施設がある地域に隣接する地域にまで、宿泊施設と関連する対象を広げてもよい。また、宿泊施設予約サーバ１は、宿泊施設がある地域に近接する地域にまで、宿泊施設と関連する対象を広げてもよい。また、宿泊施設予約サーバ１は、宿泊施設がある場所から予め設定された距離までの範囲内にある地域を、宿泊施設と関連する地域としてもよい。
【００４３】
例えば、図２（ａ）に示すように、「露天風呂  蟹  飲み放題  岩盤浴」に合致する宿泊施設として、ＡＡＡ旅館、ＢＢＢホテル及びＣＣＣ旅館が検索されたとする。これらの宿泊施設は、それぞれ、露天風呂、蟹、飲み放題及び岩盤浴を提供可能である蓋然性がある。また、ＡＡＡ旅館は、奥多摩にある。また、ＢＢＢホテルは、箱根にある。また、ＣＣＣ旅館は、内房にある。一方、「登山  ダイビング  花火」に合致する地域として、つくば、内房及び湘南が検索されたとする。これらの地域内には、登山、ダイビング及び花火が提供されるそれぞれのスポットがある蓋然性がある。なお、奥多摩、箱根、内房、つくば及び湘南は、互いに隣接する地域ではない。また、これらの地域は、互いに近接する地域ではないものとする。
【００４４】
この場合、ＣＣＣ旅館は、検索された地域の１つである内房にある。そのため、検索結果として、ＣＣＣ旅館と内房との組み合わせが抽出される。
【００４５】
宿泊施設と地域との組み合わせが検索された場合、宿泊施設予約サーバ１は、検索された組み合わせの中から、単独で検索された宿泊施設よりもユーザにとって取引上有利な組み合わせを特定する。そして、特定された組み合わせに関する情報が、検索結果として提供される。宿泊施設と地域との組み合わせの方が単独の宿泊施設よりも取引上有利である場合、その組み合わせをユーザに提示する価値がある。ユーザは、組み合わせを選択することにより、その組み合わせよりも不利な宿泊施設を選択しなくてもよいからである。本実施形態において、単独で検索された宿泊施設よりもユーザにとって取引上有利な組み合わせを、「有利組み合わせ」という。
【００４６】
ここで、単独で検索された宿泊施設、すなわち、ユーザにより指定されたキーワードの全てに合致する宿泊施設が複数存在する場合がある。この場合、ユーザにとっての有利さが宿泊施設ごとに異なる。このときに、抽出された組み合わせが有利であるか否かの判定の基準となる宿泊施設を何れかにするかは任意である。例えば、宿泊施設予約サーバ１は、検索された宿泊施設のうち少なくとも１つよりも有利な組み合わせを、有利組み合わせとして特定してもよい。つまり、宿泊施設予約サーバ１は、ユーザにとって取引上最も不利な宿泊施設よりも有利な組み合わせを特定してもよい。ユーザにとって最も不利な宿泊施設であっても、検索結果として情報提供が予定される対象となる。そのため、検索結果として情報提供が予定される宿泊施設よりも有利な組み合わせであれば、ユーザが、組み合わせとユーザにとって最も不利な宿泊施設とを比較して、組み合わせを選択する可能性がある。従って、このような条件を満たす組み合わせをユーザに提示する価値がある。また、宿泊施設予約サーバ１は、検索された全ての宿泊施設よりも有利な組み合わせのみを、有利組み合わせとして特定してもよい。つまり、宿泊施設予約サーバ１は、検索された宿泊施設のうちユーザにとって取引上最も有利な宿泊施設よりも有利な組み合わせを特定してもよい。また、宿泊施設予約サーバ１は、検索された宿泊施設を、ユーザにとっての有利さで順位付けをしてもよい。そして、宿泊施設予約サーバ１は、例えば、１位から予め定められた順位までの宿泊施設の有利さの平均を算出し、その平均よりもユーザにとって有利な組み合わせを、有利組み合わせとして特定してもよい。何れの場合であっても、検索された宿泊施設のうち少なくとも１つよりも有利であることが、有利組み合わせとしての最低の条件である。
【００４７】
図３は、有利判定項目として、ユーザの家からの距離を用いた場合の組み合わせの特定の例を示す図である。単独で検索された宿泊施設の場合、ユーザの家からの距離とは、ユーザの家と宿泊施設との間の距離である。宿泊施設と地域との組み合わせの場合、ユーザの家からの距離とは、宿泊施設または地域のうち一方とユーザの家との間の距離と、宿泊施設と地域との間の距離と、の合計値である。宿泊施設または地域のうち一方とは、ユーザの家と間の距離が短い方である。ユーザの家からの距離が近いほど、ユーザが予約した後の旅行等の際に、移動時間が短かったり移動が楽になったりする。そのため、ユーザの家からの距離が近いほど、ユーザにとって取引上有利である。
【００４８】
図３（ａ）は、単独で検索された各宿泊施設のユーザの家からの距離の一例示す図である。図３（ａ）に示すように、ＸＸＸ旅館、ＹＹＹ旅館、ＺＺＺホテルが、単独で検索されている。それぞれの宿泊施設におけるユーザの家からの距離は、１２０ｋｍ、８０ｋｍ、９０ｋｍである。図３（ｂ）は、検索された各組み合わせのユーザの家からの距離の一例を示す図である。図３（ｂ）に示すように、ＣＣＣ旅館と内房、ＤＤＤホテルと伊豆、ＥＥＥホテルと那須が、それぞれ組み合わせとして検索されている。それぞれの組み合わせにおけるユーザの家からの距離は、７０ｋｍ、１３０ｋｍ、９０ｋｍである。
【００４９】
検索された宿泊施設のうちユーザにとって最も有利な宿泊施設よりも更に有利な組み合わせのみを特定する場合、基準となる距離は、ＹＹＹ旅館の８０ｋｍである。ユーザの家からの距離が８０ｋｍよりも短い組み合わせは、距離が７０ｋｍであるＣＣＣ旅館と内房との組み合わせのみである。従って、この組み合わせが、有利組み合わせとして特定される。
【００５０】
ここで、ＥＥＥホテルと那須との組み合わせにおいて、ＥＥＥホテルとユーザの家との間の距離が６０ｋｍである。従って、ＥＥＥホテル単独であれば、ＹＹＹ旅館よりもユーザにとって有利である。しかしながら、ＥＥＥホテルと那須との間の距離が２０ｋｍであるため、合計距離が、８０ｋｍを超える。そのため、ＥＥＥホテルと那須との組み合わせは、有利組み合わせとしては特定されない。なお、検索された宿泊施設のうちユーザにとって最も不利な宿泊施設よりも有利な組み合わせを特定する場合、基準となる距離は、ＸＸＸ旅館の１２０ｋｍである。この場合、ＣＣＣ旅館と内房、及び、ＥＥＥホテルと那須が、有利組み合わせとして特定される。
【００５１】
なお、宿泊施設予約サーバ１は、有利判定項目として、ユーザの家からの距離以外の情報を用いてもよい。例えば、宿泊施設予約サーバ１は、利用に必要な費用を用いてもよい。この場合、単独で検索された宿泊施設の費用として、宿泊施設の宿泊料金が用いられる。一方、組み合わせの費用として、組み合わせに含まれる宿泊施設の宿泊料金と、組み合わせに含まれる地域内のスポットの利用料金と、の合計値が用いられる。ここで、用いられる宿泊料金は、例えば、ユーザにより指定されたキーワードに合致した宿泊プランにおける宿泊料金である。また、用いられるスポットの利用料金は、例えば、ユーザにより指定されたキーワードに合致したスポットの利用料金である。地域検索条件に含まれる別々のキーワードで別々のスポットに合致した場合には、各スポットの利用料金の合計値が用いられる。
【００５２】
宿泊料金や利用料金に加えて、利用に必要な費用に、交通費が含まれていてもよい。単独で検索された宿泊施設の場合、ユーザの家から宿泊施設までの交通費が含まれる。また、組み合わせの場合、ユーザの家から宿泊施設または地域のうち一方までの交通費と、宿泊施設と地域との間の交通費と、が含まれる。つまり、ユーザが組み合わせに含まれる全ての場所を回るのに必要な交通費が含まれる。
【００５３】
図４は、検索結果ページの表示例を示す図である。単独の宿泊施設よりも有利な組み合わせが検索された場合、例えば、図４に示すように、検索結果ページが表示される。検索結果ページには、宿泊施設情報表示領域１１０と、組み合わせ表示領域１２０とが表示される。宿泊施設情報表示領域１１０は、単独で検索された宿泊施設ごとに表示される。組み合わせ表示領域１２０は、検索された組み合わせごとに表示される。図４に示すように、宿泊施設情報表示領域１１０と組み合わせ表示領域１２０とが混在して表示されるようになっていてもよい。例えば、予め定められて指標に基づいて、宿泊施設情報表示領域１１０及び組み合わせ表示領域１２０の表示順が決定される。指標としては、例えば、リスティングスコアがある。リスティングスコアは、宿泊施設またはその宿泊施設の宿泊施設ページに対して決定された評価を示す値である。リスティングスコアが高いほど、評価が高いことを示す。組み合わせの場合、組み合わせに含まれる宿泊施設のリスティングスコアが用いられる。また、有利判定項目の属性値に基づいて、表示順が決定されてもよい。つまり、ユーザにとって取引上有利である宿泊施設または組み合わせであるほど、対応する宿泊施設情報表示領域１１０または組み合わせ表示領域１２０が上位に表示される。
【００５４】
宿泊施設情報表示領域１１０には、宿泊施設に関する情報が表示される。具体的に、宿泊施設情報表示領域１１０には、例えば、宿泊施設名、宿泊施設の画像、宿泊施設の紹介、宿泊施設へのアクセス方法、宿泊施設の住所、宿泊プランの情報等が表示される。宿泊プランの情報としては、例えば、宿泊プランの名称、宿泊プランの説明の一部、宿泊料金等が表示される。情報が表示される宿泊プランは、例えば、ユーザにより指定されたキーワードに対応する宿泊プランである。図４は、ＸＸＸ旅館に対応する宿泊施設情報表示領域１１０の表示例である。
【００５５】
組み合わせ表示領域１２０には、宿泊施設情報表示領域１２１と、地域情報表示領域１２２とが、表示される。図４は、ＣＣＣ旅館と内房との組み合わせに対応する組み合わせ表示領域１２０の表示例である。
【００５６】
宿泊施設情報表示領域１２１には、１つの組み合わせに含まれる宿泊施設に関する情報が表示される。宿泊施設情報表示領域１２１の表示内容は、宿泊施設情報表示領域１１０の表示内容と基本的に同様である。図４が示す宿泊施設情報表示領域１２１には、ＣＣＣ旅館が、露天風呂及び岩盤浴の設備を有することが表示されている。また、図４が示す宿泊施設情報表示領域１２１には、食事で出される料理に蟹が含まれており且つ飲み物が飲み放題である宿泊プランの情報が表示されている。ユーザが宿泊施設名を選択すると、宿泊施設のトップページが画面に表示される。また、ユーザが宿泊プランの名称を選択すると、宿泊プランの一覧のＷｅｂページが画面に表示される。
【００５７】
地域情報表示領域１２２は、１つの組み合わせに含まれる地域に関する情報が表示される。具体的に、地域情報表示領域１２２には、例えば、地域名、地域の画像、地域の紹介、地域内にあるスポットの情報等が表示される。スポットの情報としては、例えば、スポット名、スポットの説明等が表示される。スポットとしては、例えば、名所、観光スポット、施設等がある。情報が表示されるスポットは、例えば、ユーザにより指定されたキーワードに対応するスポットである。図４が示す地域情報表示領域１２２には、スポットの情報として、ダイビングが可能であり且つ花火大会が開催される海水浴場の情報と、登山が可能な山の情報とが表示されている。ユーザが地域名を選択すると、地域情報ページが画面に表示される。地域情報ページは、１つの地域に関する情報が表示されるＷｅｂページである。また、ユーザがスポットの名称を選択すると、スポット情報ページが画面に表示される。スポット情報ページは、１つのスポットに関する情報が表示されるＷｅｂページである。
【００５８】
このように、検索結果ページには、ユーザにより指定されたキーワードの全てに合致する宿泊施設の情報が表示されるとともに、ユーザにより指定されたキーワードの全てに合致する組み合わせが、検索結果として表示される。なお、検索結果ページには、如何なるキーワードが宿泊施設の検索に用いられ、如何なるキーワードが地域の検索に用いられたかを示す情報が表示されてもよい。
【００５９】
なお、宿泊施設予約サーバ１は、検索後の最初に表示される検索結果ページとして、単独で検索された宿泊施設の情報のみを表示する検索結果ページをユーザ端末３へ送信してもよい。この場合の検索結果ページには、例えば、検索された組み合わせの情報を表示するための切替ボタンが表示される。ユーザが、切替ボタンを選択すると、宿泊施設予約サーバ１は、検索された組み合わせの情報を表示する検索結果ページをユーザ端末３へ送信する。また、宿泊施設予約サーバ１は、検索後の最初に表示される検索結果ページとして、検索された組み合わせの情報のみを表示する検索結果ページをユーザ端末３へ送信してもよい。例えば、宿泊施設予約サーバ１が、単独で検索された全ての宿泊施設よりも有利な組み合わせのみを有利組み合わせとして特定する場合、有利組み合わせよりもユーザにとって不利な宿泊施設の情報は、提供されてもされなくてもよい。この場合、検索結果ページに、単独で検索された宿泊施設の情報を表示するための切替ボタンが表示されるようになっていてもよい。
【００６０】
また、抽出された組み合わせの有利さが、単独で検索された宿泊施設の有利さと同一である場合、その組み合わせの情報を検索結果ページに表示させるか否かは任意である。
【００６１】
ところで、複数のキーワードを、宿泊施設検索条件と地域検索条件とに分割して検索を行っても、ユーザの望む検索結果が得られないこともある。そこで、宿泊施設予約サーバ１は、ユーザの望む検索結果が得られるように、検索処理を行う。
【００６２】
ユーザの望む検索結果を得るための第１の処理として、宿泊施設予約サーバ１は、宿泊施設検索条件を用いて検索された宿泊施設の数が閾値未満であるか否かを判定する。そして、宿泊施設予約サーバ１は、検索された宿泊施設の数が閾値未満である場合、宿泊施設検索条件を検索条件１と検索条件２とに分割する。検索条件１及び２は、それぞれ少なくとも１つ以上のキーワードを含む。検索条件１及び検索条件２は、本発明における孫検索条件の一例である。そして、宿泊施設予約サーバ１は、検索条件１を宿泊施設検索条件とし、検索条件２を地域検索条件に統合する。宿泊施設に対するキーワードの数を減らして、地域に対するキーワードの数を増やす理由は、ユーザの望む検索結果が得られる蓋然性が高くなる場合があるからである。一般的に、１つ地域内には、スポットが複数ある。そのため、検索条件を満たす可能性があるスポットを複数有する地域の方が、１つの宿泊施設よりも、検索条件を満たす蓋然性が高い場合がある。また、検索条件を統合する理由として、検索条件が増加しないことが挙げられる。検索条件が増加すると、検索される組み合わせに含まれる宿泊施設または地域の数が増加する。組み合わせに含まれる宿泊施設と地域との数が少ない方が、ユーザにとって便利である。また、閾値を用いて判定を行う理由は、検索された宿泊施設の数が少なくなると、検索された宿泊施設と地域との中から互いに関連する宿泊施設と地域との組み合わせが抽出される蓋然性が低くなるからである。このときに用いられる閾値を、Ｔ１とする。Ｔ１は、本発明における予め設定された数の一例である。
【００６３】
図２（ｂ）は、宿泊施設検索条件と地域検索条件との変更例を示す図である。宿泊施設予約サーバ１は、宿泊施設検索条件を、キーワードに関連する対象の種類に応じて、検索条件１と検索条件２とに分割する。検索条件１は、例えば、風呂に関連するキーワードを含む。また、検索条件２は、例えば、食事に関連するキーワードを含む。ユーザに提供される対象の種類でキーワードが分類される理由は、例えば、対象の種類ごとに、適した場所があると考えられるからである。あるいは、例えば、同一の種類に属する複数の対象は同一の場所で提供される方が、ユーザにとって便利であると考えられる。
【００６４】
例えば、図２（ｂ）に示すように、「露天風呂  蟹  飲み放題  岩盤浴」は、「露天風呂  岩盤浴」という検索条件１と、「蟹  飲み放題」という検索条件２と、に分割される。検索条件１は、新たな宿泊施設検索条件となる。宿泊施設予約サーバ１は、新たな宿泊施設検索条件に含まれる全てのキーワードに対応する宿泊施設を検索する。一方、検索条件２が地域検索条件に統合される。そして、地域検索条件は、「登山  ダイビング  花火  蟹  飲み放題」となる。宿泊施設予約サーバ１は、新たな地域検索条件に含まれる全てのキーワードに合致する地域を検索する。そして、宿泊施設予約サーバ１は、新たに検索された宿泊施設と地域との中から、互いに関連する宿泊施設と地域との組み合わせを抽出する。
【００６５】
ただし、宿泊施設予約サーバ１は、新たな宿泊施設検索条件を用いて検索された宿泊施設の数が閾値以上であるか否かを判定し、閾値以上である場合にのみ、検索条件２を地域検索条件に含める。この判定を行う理由は、Ｔ１を用いて判定を行う理由と同様である。このときの閾値を、Ｔ２とする。この場合、宿泊施設予約サーバ１は、検索条件２の方を、新たな宿泊施設検索条件とする。そして、宿泊施設予約サーバ１は、この新たな宿泊施設検索条件を用いて検索された宿泊施設の数がＴ２以上である場合、検索条件１の方を、地域検索条件に統合する。このとき、検索された宿泊施設の数がＴ２未満である場合の処理内容は任意である。例えば、宿泊施設予約サーバ１は、該当する宿泊施設がない旨を表示する検索結果ページをユーザ端末３へ送信してもよい。
【００６６】
ユーザの望む検索結果を得るための第２の処理として、宿泊施設予約サーバ１は、地域検索条件を用いて検索された地域の数が閾値未満である場合には、検索対象とする地域を、これまで検索対象としていた地域の面積よりも広い地域に変更する。そして、宿泊施設予約サーバ１は、新たに検索対象となった複数の地域の中から地域検索条件に含まれる全てのキーワードに合致する地域を検索する。地域を変更する理由は、広い地域ほど、スポットを多く含むからである。従って、広い地域ほど、地域検索条件に含まれる全てのキーワードに合致する蓋然性が高くなる。また、閾値を用いて判定を行う理由は、検索された地域の数が少なくなると、検索された宿泊施設と地域との中から互いに関連する宿泊施設と地域との組み合わせが抽出される蓋然性が低くなるからである。このときに用いられる閾値を、Ｔ３とする。
【００６７】
宿泊施設予約サーバ１においては、検索対象とされる地域の集合が、階層別に定義されている。例えば、第１階層の地域の集合は、市区町村からなる集合である。また、第２階層の地域の集合は、複数の市区町村を統合してできる地域の集合である。この場合の各地域は、都道府県よりも狭い。そして、第３階層の地域の集合は、都道府県からなる集合である。階層の番号が小さいほど、下層にある階層である。また、階層の番号が小さいほど、１つの地域の面積が小さくなる傾向にある。なお、階層の数を何個にするかは任意である。また、各階層において如何なる基準で地域の集合を定義するかも任意である。
【００６８】
宿泊施設予約サーバ１は、最初に、第１階層の地域の集合に対して検索を行う。最初に最も狭い地域を検索対象とする理由は、狭い地域ほど、宿泊施設から、その宿泊施設と組み合わせられた地域にあるスポットに行くまでに要する時間が短くなる蓋然性が高くなるからである。このときに検索された地域の数がＴ３未満である場合、宿泊施設予約サーバ１は、第２階層の地域の集合に対して検索を行う。この検索の結果、検索された地域の数がＴ３未満である場合、宿泊施設予約サーバ１は、第３階層の地域の集合に対して検索を行う。こうして、宿泊施設予約サーバ１は、Ｔ３以上の数の地域が検索されるまで、検索対象とする地域を変更しながら検索を繰り返す。そして、宿泊施設予約サーバ１は、Ｔ３以上の数の地域が検索された場合、そのときの検索結果を用いて、宿泊施設と地域との組み合わせを抽出する。なお、最上層の地域の集合に対して検索を行ってもＴ３未満の数の地域しか検索されなかった場合の処理内容は任意である。例えば、宿泊施設予約サーバ１は、該当する宿泊施設がない旨を表示する検索結果ページをユーザ端末３へ送信してもよい。
【００６９】
これまでの説明において、判定に用いられる閾値であるＴ１〜Ｔ３は、例えば、宿泊施設予約サイトの管理者により予め設定される。各閾値に如何なる値を設定するかは管理者の任意である。例えば、各閾値に１が設定されてもよい。また、Ｔ１及びＴ２は、検索された宿泊施設の数の閾値である。そのため、Ｔ１とＴ２とが同一であってもよい。
【００７０】
なお、宿泊施設予約サーバ１は、検索条件としてユーザにより当初指定された複数のキーワードを、３つ以上の検索条件に分割してもよい。この場合、宿泊施設検索条件の数と地域検索条件の数とをそれぞれ何個にするかは任意である。宿泊施設予約サーバ１は、宿泊施設検索条件が複数ある場合、宿泊施設検索条件ごとに宿泊施設を検索する。また、宿泊施設予約サーバ１は、地域検索条件が複数ある場合、地域検索条件ごとに地域を検索する。そして、宿泊施設予約サーバ１は、互いに関連する１つ以上の宿泊施設と１つ以上の地域との組み合わせを抽出する。例えば、宿泊施設検索条件が２つであり、地域検索条件が１つである場合、宿泊施設予約サーバ１は、宿泊施設検索条件の一方により検索された宿泊施設の何れかと、宿泊施設検索条件の他方により検索された宿泊施設の何れかと、地域検索条件により検索された地域の何れかと、の組み合わせの中から、互いに関連する２つの宿泊施設と１つの地域との組み合わせを抽出する。組み合わせの中に複数の宿泊施設が含まれていてもよい理由は、ユーザは、旅行や出張している間に、例えば、１日目はある宿泊施設、２日目は別の宿泊施設、というように、組み合わせに含まれる複数の宿泊施設を利用するとともに、その組み合わせに含まれる地域のそれぞれにあるユーザの要求を満たすスポットへ行くことができればよいからである。また、組み合わせの中に複数の地域が含まれていてもよい理由は、ユーザは、旅行や出張している間に、組み合わせに含まれる宿泊施設を利用するとともに、その組み合わせに含まれる複数の地域のそれぞれにあるユーザの要求を満たすスポットへ行くことができればよいからである。
【００７１】
［１−３．宿泊施設予約サーバの構成］
次に、宿泊施設予約サーバ１の構成について、図５及び図６を用いて説明する。
【００７２】
図５は、本実施形態に係る宿泊施設予約サーバ１の概要構成の一例を示すブロック図である。図５に示すように、宿泊施設予約サーバ１は、通信部１１と、記憶部１２と、入出力インターフェース１３と、システム制御部１４と、を備えている。そして、システム制御部１４と入出力インターフェース１３とは、システムバス１５を介して接続されている。
【００７３】
通信部１１は、ネットワークＮＷに接続して、宿泊施設端末２やユーザ端末３等との通信状態を制御するようになっている。
【００７４】
記憶部１２は、例えば、ハードディスクドライブ等により構成されている。この記憶部１２には、会員情報ＤＢ１２ａ、宿泊施設情報ＤＢ１２ｂ、地域情報ＤＢ１２ｃ、スポット情報ＤＢ１２ｄ、宿泊施設キーワード情報ＤＢ１２ｅ等のデータベースが構築されている。「ＤＢ」は、データベースの略語である。
【００７５】
図６（ａ）は、会員情報ＤＢ１２ａに登録される内容の一例を示す図である。会員情報ＤＢ１２ａには、情報提供システムＳ１に会員登録しているユーザに関する会員情報が登録される。具体的に、会員情報ＤＢ１２ａには、ユーザＩＤ、パスワード、ニックネーム、氏名、生年月日、性別、郵便番号、住所、電話番号、電子メールアドレス等のユーザの属性が、ユーザごとに対応付けて登録される。ユーザＩＤは、ユーザの識別情報である。
【００７６】
図６（ｂ）は、宿泊施設情報ＤＢ１２ｂに登録される内容の一例を示す図である。宿泊施設情報ＤＢ１２ｂには、宿泊施設に関する宿泊施設情報が登録される。具体的に、宿泊施設情報ＤＢ１２ｂには、施設ＩＤ、宿泊施設名、地域ＩＤ、郵便番号、住所、電話番号、ＦＡＸ番号、電子メールアドレス、宿泊施設の画像、宿泊施設詳細情報等の宿泊施設の属性が、宿泊施設ごとに対応付けて登録される。施設ＩＤは、宿泊施設の識別情報である。地域ＩＤは、宿泊施設がある地域の識別情報である。宿泊施設情報に設定される地域ＩＤは、例えば、最下層の地域の地域ＩＤである。宿泊施設詳細情報は、宿泊施設に関する詳細な情報を示す文字情報である。例えば、宿泊施設詳細情報は、宿泊施設の紹介、宿泊施設が有する設備、宿泊施設で提供されるサービス、客室にある設備や備品、宿泊施設へのアクセス方法、温泉に関する情報、客室に関する情報等を含む。また、宿泊施設詳細情報は、宿泊プランの情報を含む。宿泊プランの情報は、宿泊プランの名称、宿泊プランの詳細な説明等を含む。
【００７７】
図６（ｃ）は、地域情報ＤＢ１２ｃに登録される内容の一例を示す図である。地域情報ＤＢ１２ｃには、地域に関する地域情報が登録される。具体的に、地域情報ＤＢ１２ｃには、地域ＩＤ、階層番号、地域名、地域の説明、位置情報及び地域の画像と、スポットリストまたは地域リストの何れか一方とが、地域ごとに対応付けて登録される。地域ＩＤは、地域の識別情報である。階層番号は、地域が位置する階層の番号である。位置情報は、例えば、地域の中心地の経緯度である。スポットリストは、階層番号が１である場合に登録される。スポットリストは、地域内にあるスポットの一覧である。具体的に、スポットリストには、地域内にある各スポットのスポットＩＤが登録されている。スポットＩＤは、スポットの識別情報である。地域リストは、階層番号が２以上である場合に登録される。地域リストは、階層番号が示す階層よりも１つ下の階層にある地域のうち、地域情報により定義される地域内にある地域のリストである。具体的に、地域リストには、地域情報により定義される地域内にある各地域の地域ＩＤが登録されている。第１階層よりも上層にある地域の地域情報には、地域内にあるスポットの一覧が定義されていない。しかしながら、下層にある地域の一覧が定義されている。そのため、下層にある地域の地域情報に基づいて、第１階層よりも上層にある地域についても、地域内にあるスポットを特定することができる。
【００７８】
図６（ｄ）は、スポット情報ＤＢ１２ｄに登録される内容の一例を示す図である。スポット情報ＤＢ１２ｄには、スポットに関するスポット情報が登録される。具体的に、スポット情報ＤＢ１２ｄには、スポットＩＤ、スポット名、住所、電話番号、スポットの画像、スポット詳細情報等のスポットの属性が、スポットごとに対応付けて登録される。スポットＩＤは、スポットの識別情報である。スポット詳細情報は、スポットに関する詳細な情報を示す文字情報である。例えば、スポット詳細情報は、スポットの説明、スポットで提供されるサービス、スポットで購入可能な商品、スポットにある設備、スポットでユーザができること等を含む。
【００７９】
図６（ｅ）は、宿泊施設キーワード情報ＤＢ１２ｅに登録される内容の一例を示す図である。宿泊施設キーワード情報ＤＢ１２ｅには、宿泊施設で提供される対象に関連するキーワードに関する宿泊施設キーワード情報が登録される。具体的に、宿泊施設キーワード情報ＤＢ１２ｅには、キーワード及び提供対象種別等がキーワードごとに対応付けて登録される。キーワードは、宿泊施設で提供される対象に関連するものである。提供対象種別は、キーワードに関連する対象の種類を示す。提供対象種別としては、例えば、食事、風呂、客室等がある。
【００８０】
次に、記憶部１２に記憶されるその他の情報について説明する。記憶部１２には、Ｗｅｂページを表示するためのＨＴＭＬ（HyperText Markup Language）文書、ＸＭＬ（Extensible Markup Language）文書、画像データ、テキストデータ、電子文書等の各種データが記憶されている。また、記憶部１２には、管理者等により設定された各種の設定値が記憶されている。設定値としては、例えば、Ｔ１〜Ｔ３等の閾値がある。
【００８１】
また、記憶部１２には、オペレーティングシステム、ＷＷＷ（World Wide Web）サーバプログラム、ＤＢＭＳ（Database Management System）、宿泊施設予約処理プログラム等の各種プログラムが記憶されている。宿泊施設予約処理プログラムは、宿泊施設や地域の検索、宿泊施設の予約等の処理を実行するためのプログラムである。宿泊施設予約処理プログラムは、本発明における検索プログラムの一例である。なお、各種プログラムは、例えば、他のサーバ装置等からネットワークＮＷを介して取得されるようにしてもよいし、ＤＶＤ（Digital Versatile Disc）等の記録媒体に記録されてドライブ装置を介して読み込まれるようにしてもよい。
【００８２】
入出力インターフェース１３は、通信部１１及び記憶部１２とシステム制御部１４との間のインターフェース処理を行うようになっている。
【００８３】
システム制御部１４は、ＣＰＵ１４ａ、ＲＯＭ（Read Only Memory）１４ｂ、ＲＡＭ（Random Access Memory）１４ｃ等により構成されている。そして、システム制御部１４は、ＣＰＵ１４ａが、各種プログラムを読み出し実行することにより、本発明における分割手段、検索手段、抽出手段、特定手段及び提供手段として機能するようになっている。
【００８４】
なお、宿泊施設予約サーバ１が、複数のサーバ装置で構成されてもよい。例えば、宿泊施設や地域の検索を行うサーバ装置、宿泊施設の予約の処理を行うサーバ装置、ユーザ端末３からのリクエストに応じてＷｅｂページを送信するサーバ装置、及びデータベースを管理するサーバ装置等が、互いにＬＡＮ等で接続されてもよい。
【００８５】
［１−４．情報提供システムの動作］
次に、情報提供システムＳ１の動作について、図７乃至図９を用いて説明する。なお、以下に説明する動作は、有利判定項目として、ユーザの家からの距離を用い、且つ、単独で検索された宿泊施設のうちユーザにとって最も有利な宿泊施設よりも更に有利な組み合わせのみを、有利組み合わせとして特定する場合の動作である。
【００８６】
図７は、本実施形態に係る宿泊施設予約サーバ１のシステム制御部１４の検索処理における処理例を示すフローチャートである。宿泊施設予約サイトにおいて、ユーザは、ユーザ端末３を操作して、宿泊施設を検索するためのキーワードを１つ以上指定する。すると、ユーザ端末３は、検索リクエストを宿泊施設予約サーバ１へ送信する。検索リクエストは、指定されたキーワードを含む。検索処理は、宿泊施設予約サーバ１が、検索リクエストを受信したときに開始される。
【００８７】
図７に示すように、システム制御部１４は、受信した検索リクエストから、指定されたキーワードを全て取得する（ステップＳ１１）。次いで、システム制御部１４は、指定された全てのキーワードに合致する宿泊施設を検索する（ステップＳ１２）。具体的に、システム制御部１４は、宿泊施設情報ＤＢ１２ｂに登録されている宿泊施設情報のうち、宿泊施設名及び宿泊施設詳細情報の少なくとも何れか一方に、指定されたキーワードを含む宿泊施設情報を検索する。キーワードが複数指定されている場合、システム制御部１４は、全てのキーワードのそれぞれを、宿泊施設名及び宿泊施設詳細情報の少なくとも何れか一方に含む宿泊施設情報を検索する。
【００８８】
システム制御部１４は、ステップＳ１２の処理を終えると、指定されたキーワードが複数あるか否かを判定する（ステップＳ１３）。このとき、システム制御部１４は、指定されたキーワードが１つであると判定した場合には（ステップＳ１３：ＮＯ）、検索された宿泊施設の一覧を表示する検索結果ページを、検索リクエストの送信元のユーザ端末３へ送信する（ステップＳ３０）。システム制御部１４は、この処理を終えると、検索処理を終了させる。
【００８９】
一方、システム制御部１４は、指定されたキーワードが複数あると判定した場合には（ステップＳ１３：ＹＥＳ）、指定された複数のキーワードのうち１つを選択する（ステップＳ１４）。次いで、システム制御部１４は、選択したキーワードが、宿泊施設で提供される対象に関連するキーワードであるか否かを判定する（ステップＳ１５）。具体的に、システム制御部１４は、宿泊施設キーワード情報ＤＢ１２ｅから、選択したキーワードと一致するキーワードを検索する。このとき、システム制御部１４は、選択したキーワードと一致するキーワードが宿泊施設キーワード情報ＤＢ１２ｅに登録されている場合には、選択したキーワードは、宿泊施設で提供される対象に関連するキーワードであると判定する（ステップＳ１５：ＹＥＳ）。この場合、システム制御部１４は、選択されたキーワードを、宿泊施設検索条件に含める（ステップＳ１６）。一方、システム制御部１４は、選択したキーワードと一致するキーワードが宿泊施設キーワード情報ＤＢ１２ｅに登録されていない場合には、選択したキーワードは、宿泊施設で提供される対象に関連するキーワードではないと判定する（ステップＳ１５：ＮＯ）。この場合、システム制御部１４は、選択されたキーワードを、地域検索条件に含める（ステップＳ１７）。
【００９０】
システム制御部１４は、ステップＳ１６またはＳ１７の処理を終えると、指定された複数のキーワードの中に、まだ選択していないキーワードがあるか否かを判定する（ステップＳ１８）。このとき、システム制御部１４は、まだ選択していないキーワードがあると判定した場合には（ステップＳ１８：ＹＥＳ）、まだ選択していないキーワードのうち１つを選択する（ステップＳ１９）。次いで、システム制御部１４は、ステップＳ１５に移行する。システム制御部１４は、ステップＳ１５〜Ｓ１９の処理を繰り返すことにより、分割手段として、複数のキーワードを、宿泊施設検索条件と地域検索条件とに分割する。そして、システム制御部１４は、全てのキーワードを選択したと判定した場合には（ステップＳ１８：ＮＯ）、宿泊施設検索条件と地域検索条件のうち、少なくとも何れかの検索条件のキーワードの数が０であるか否かを判定する（ステップＳ２０）。このとき、システム制御部１４は、少なくとも何れかの検索条件のキーワードの数が０であると判定した場合には（ステップＳ２０：ＹＥＳ）、ステップＳ３０に移行する。なお、この場合、システム制御部１４は、ユーザにより指定された複数のキーワードを、改めて分割し直して、ステップＳ２１に移行してもよい。このとき、システム制御部１４は、例えば、ステップＳ１５〜Ｓ１９の処理における分割方法とは異なる分割方法で、分割を行う。
【００９１】
一方、システム制御部１４は、何れの検索条件も、キーワードの数が１以上であると判定した場合には（ステップＳ２０：ＮＯ）、宿泊施設検索処理を実行する（ステップＳ２１）。
【００９２】
図８は、本実施形態に係る宿泊施設予約サーバ１のシステム制御部１４の宿泊施設検索処理における処理例を示すフローチャートである。
【００９３】
図８に示すように、システム制御部１４は、検索手段として、宿泊施設検索条件に含まれる全てのキーワードに合致する宿泊施設を検索する（ステップＳ４１）。このときの検索方法は、検索処理のステップＳ１２における検索方法と基本的に同様である。次いで、システム制御部１４は、検索された宿泊施設の数がＴ１以上であるか否かを判定する（ステップＳ４２）。このとき、システム制御部１４は、検索された宿泊施設の数がＴ１以上であると判定した場合には（ステップＳ４２：ＹＥＳ）、検索処理に対する戻り値として、「該当あり」を設定する（ステップＳ５１）。システム制御部１４は、この処理を終えると、宿泊施設検索処理を終了させる。
【００９４】
一方、システム制御部１４は、検索された宿泊施設の数がＴ１未満であると判定した場合には（ステップＳ４２：ＮＯ）、分割手段として、宿泊施設検索条件を、検索条件１と検索条件２とに分割する（ステップＳ４３）。具体的に、システム制御部１４は、宿泊施設検索条件に含まれる各キーワードに対応する提供対象種別を、宿泊施設キーワード情報ＤＢ１２ｅからそれぞれ取得する。次いで、システム制御部１４は、提供対象種別で、各キーワードを分類する。こうして、システム制御部１４は、提供対象種別が互いに同一であるキーワードで、キーワードのグループを構成する。そして、システム制御部１４は、例えば、何れかのキーワードのグループを、検索条件１とし、残りのキーワードのグループを、検索条件２とする。如何なる提供対象種別のキーワードのグループを検索条件１とし、如何なる提供対象種別のキーワードのグループを検索条件２とするかは、任意である。また、キーワードのグループが３つ以上となった場合、システム制御部１４は、何れか複数のグループを統合して、キーワードのグループを２つにする。また、キーワードのグループが１つのみであった場合、システム制御部１４は、例えば、各キーワードを何れの検索条件に入れるかを、それぞれランダムに決定してもよい。
【００９５】
システム制御部１４は、宿泊施設検索条件の分割を終えると、検索手段として、検索条件１に含まれる全てのキーワードに合致する宿泊施設を検索する（ステップＳ４４）。このときの検索方法は、検索処理のステップＳ１２における検索方法と基本的に同様である。次いで、システム制御部１４は、検索された宿泊施設の数がＴ２以上であるか否かを判定する（ステップＳ４５）。このとき、システム制御部１４は、検索された宿泊施設の数がＴ２以上であると判定した場合には（ステップＳ４５：ＹＥＳ）、検索条件２を、地域検索条件に統合する（ステップＳ４６）。次いで、システム制御部１４は、ステップＳ５１に移行する。
【００９６】
一方、システム制御部１４は、検索された宿泊施設の数がＴ２未満であると判定した場合には（ステップＳ４５：ＮＯ）、検索手段として、検索条件２に含まれる全てのキーワードに合致する宿泊施設を検索する（ステップＳ４７）。このときの検索方法は、検索処理のステップＳ１２における検索方法と基本的に同様である。次いで、システム制御部１４は、検索された宿泊施設の数がＴ２以上であるか否かを判定する（ステップＳ４８）。このとき、システム制御部１４は、検索された宿泊施設の数がＴ２以上であると判定した場合には（ステップＳ４８：ＹＥＳ）、検索条件１を、地域検索条件に統合する（ステップＳ５０）。次いで、システム制御部１４は、ステップＳ５１に移行する。
【００９７】
一方、システム制御部１４は、検索された宿泊施設の数がＴ２未満であると判定した場合には（ステップＳ４８：ＮＯ）、検索処理に対する戻り値として、「該当なし」を設定する（ステップＳ４９）。システム制御部１４は、この処理を終えると、宿泊施設検索処理を終了させる。
【００９８】
なお、システム制御部１４は、ステップＳ４５において、検索条件１を用いて検索された宿泊施設の数がＴ２未満である場合には、検索条件１を検索条件１ａと検索条件１ｂとに更に分割してもよい。そして、システム制御部１４は、検索条件１ａに含まれる全てのキーワードに合致する宿泊施設を検索するとともに、検索条件１ｂに含まれる全てのキーワードに合致する宿泊施設を検索してもよい。如何なる基準で検索条件１を分割するかは任意である。例えば、システム制御部１４は、提供対象種別に応じて分割してもよいし、ランダムに分割してもよい。システム制御部１４が、検索条件１を分割して検索を行った場合、該当宿泊施設集合が複数発生することになる。そこで、システム制御部１４は、組み合わせを抽出するとき、検索条件１ａで検索された該当宿泊施設集合に含まれる何れかの宿泊施設と、検索条件１ｂで検索された該当宿泊施設集合に含まれる何れかの宿泊施設と、地域検索条件で検索された該当地域集合に含まれる何れかの地域と、の組み合わせの中から、互いに関連を有する２つの宿泊施設及び１つの地域の組み合わせを抽出する。
【００９９】
また、システム制御部１４は、検索条件１ａに含まれる全てのキーワードに合致する宿泊施設を検索するとともに、検索条件１ｂを検索条件２に統合してもよい。そして、システム制御部１４は、検索条件１ａを用いて検索された宿泊施設の数がＴ２以上である場合には、検索条件１ｂを含む検索条件２を地域検索条件に統合してもよい。
【０１００】
また、システム制御部１４は、ステップＳ４８において、検索条件２を用いて検索された宿泊施設の数がＴ２未満である場合にも、検索条件２を更に分割してもよい。分割後の処理内容は、検索条件１を分割した場合の処理内容と基本的に同様である。
【０１０１】
システム制御部１４は、宿泊施設検索処理を終えると、図７に示すように、宿泊施設検索処理において、戻り値が「該当なし」に設定されているか否かを判定する（ステップＳ２２）。このとき、システム制御部１４は、戻り値が「該当なし」に設定されていると判定した場合には（ステップＳ２２：ＹＥＳ）、ステップＳ３０に移行する。一方、システム制御部１４は、戻り値が「該当なし」に設定されていないと判定した場合には（ステップＳ２２：ＮＯ）、地域検索処理を実行する（ステップＳ２３）。
【０１０２】
図９は、本実施形態に係る宿泊施設予約サーバ１のシステム制御部１４の地域検索処理における処理例を示すフローチャートである。
【０１０３】
図９に示すように、システム制御部１４は、階層番号Ｎに１を設定する（ステップＳ６１）。次いで、システム制御部１４は、検索手段として、第Ｎ階層の地域の集合から、地域検索条件に含まれる全てのキーワードに合致する地域を検索する（ステップＳ６２）。具体的に、システム制御部１４は、地域情報ＤＢ１２ｃに登録されている地域情報の中から、階層番号がＮである地域情報を１つ選択する。次いで、システム制御部１４は、選択した地域情報がスポットリストを含む場合には、スポットリストに登録されている各スポットＩＤに対応するスポット情報を、スポット情報ＤＢ１２ｄから取得する。このときの階層番号Ｎは１であるので、地域情報はスポットリストを含む。次いで、システム制御部１４は、選択した地域情報に含まれる地域名及び地域説明と、取得した各スポット情報に含まれるスポット名及びスポット詳細情報とから、地域検索条件に含まれる各キーワードを検索する。ここで、システム制御部１４は、地域検索条件に含まれる全てのキーワードが検索された場合には、選択された地域情報に含まれる地域ＩＤを、地域検索条件に含まれる全てのキーワードに合致する地域の地域ＩＤとして取得する。システム制御部１４は、このような処理を、階層番号がＮである全ての地域情報について実行する。
【０１０４】
システム制御部１４は、ステップＳ６２の処理を終えると、検索された地域の数がＴ３以上であるか否かを判定する（ステップＳ６３）。このとき、システム制御部１４は、検索された地域の数がＴ３以上であると判定した場合には（ステップＳ６３：ＹＥＳ）、検索処理に対する戻り値として、「該当あり」を設定する（ステップＳ６４）。システム制御部１４は、この処理を終えると、地域検索処理を終了させる。
【０１０５】
一方、システム制御部１４は、検索された地域の数がＴ３未満であると判定した場合には（ステップＳ６３：ＮＯ）、階層番号Ｎが最上位の階層の番号と一致するか否かを判定する（ステップＳ６５）。このとき、システム制御部１４は、階層番号Ｎが最上位の階層の番号と一致しないと判定した場合には（ステップＳ６５：ＮＯ）、階層番号Ｎに１を加算する（ステップＳ６６）。これにより、システム制御部１４は、検索対象とする地域の広さを、ステップＳ６２において直前に検索が行われたときよりも広くする。次いで、システム制御部１４は、ステップＳ６２に移行する。
【０１０６】
システム制御部１４は、ステップＳ６２〜Ｓ６６の処理を繰り返すことにより、検索された地域の数がＴ３以上となるまで、検索対象とする地域を、徐々に広い地域に変更しながら、地域の検索を繰り返す。ここで、ステップＳ６２においては、階層番号Ｎが２以上である場合、検索の処理対象とする地域情報に、スポットリストが含まれていない。この場合、システム制御部１４は、地域情報に含まれている地域リストに登録されている各地域ＩＤに対応する地域情報を、地域情報ＤＢ１２ｃから取得する。次いで、システム制御部１４は、取得した地域情報にスポットリストが含まれているか否かを判定する。このとき、システム制御部１４は、取得した地域情報にスポットリストが含まれていない場合には、取得した地域情報に含まれる地域リストに登録されている各地域ＩＤに対応する地域情報を更に取得する。システム制御部１４は、スポットリストを含む地域情報を取得するまで、地域情報の取得を繰り返す。そして、システム制御部１４は、取得した地域情報に含まれるスポットリストに基づいて、スポット情報を取得する。システム制御部１４は、取得したスポット情報を用いてキーワードの検索を行う。
【０１０７】
ステップＳ６５において、システム制御部１４は、階層番号Ｎが最上位の階層の番号と一致すると判定した場合には（ステップＳ６５：ＹＥＳ）、戻り値として、「該当なし」を設定する（ステップＳ６７）。これ以上、検索対象とする地域が存在しないからである。システム制御部１４は、この処理を終えると、地域検索処理を終了させる。
【０１０８】
なお、システム制御部１４は、階層番号Ｎが最上位の階層の番号と一致すると判定した場合には、地域検索条件を、地域検索条件１と地域検索条件２とに更に分割してもよい。そして、システム制御部１４は、地域検索条件１に含まれる全てのキーワードに合致する地域を検索するとともに、地域検索条件２に含まれる全てのキーワードに合致する地域を検索してもよい。如何なる基準で地域検索条件を分割するかは任意である。例えば、システム制御部１４は、キーワードに関連する対象の種類に応じて分割してもよい。システム制御部１４が、地域検索条件を分割して検索を行った場合、該当地域集合が複数発生することになる。そこで、システム制御部１４は、組み合わせを抽出するとき、宿泊施設検索条件で検索された該当宿泊施設集合に含まれる何れかの宿泊施設と、地域条件１で検索された該当地域集合に含まれる何れかの地域と、地域施設条件２で検索された該当地域集合に含まれる何れかの地域と、の組み合わせの中から、互いに関連を有する１つの宿泊施設及び２つの地域の組み合わせを抽出する。
【０１０９】
システム制御部１４は、地域検索処理を終えると、図７に示すように、地域検索処理において、戻り値が「該当なし」に設定されているか否かを判定する（ステップＳ２４）。このとき、システム制御部１４は、戻り値が「該当なし」に設定されていると判定した場合には（ステップＳ２４：ＹＥＳ）、ステップＳ３０に移行する。
【０１１０】
一方、システム制御部１４は、戻り値が「該当なし」に設定されていないと判定した場合には（ステップＳ２４：ＮＯ）、抽出手段として、宿泊施設検索処理において検索された宿泊施設の集合である該当宿泊施設集合と、地域検索処理において検索された地域の集合である該当地域集合から、互いに関連する宿泊施設と地域との組み合わせを抽出する（ステップＳ２５）。例えば、システム制御部１４は、検索された宿泊施設がある地域と、検索された地域との位置関係に基づいて、組み合わせを抽出する。宿泊施設がある地域は、宿泊施設情報に含まれる地域ＩＤにより示される。例えば、検索された各宿泊施設について、宿泊施設がある地域が、検索された何れかの地域と同一であるか、または、検索された何れかの地域に含まれるか否かを判定する。つまり、システム制御部１４は、宿泊施設が、何れかの地域内にあるか否かを判定する。そして、システム制御部１４は、宿泊施設が、検索された何れかの地域内にある場合、この宿泊施設と地域とを組み合わせとして選択する。また、宿泊施設がある地域と隣接または近接する地域も、宿泊施設と関連する地域に含める場合、例えば、記憶部１２に、如何なる地域と如何なる地域とが隣接するかを示す情報、または、如何なる地域と如何なる地域とが近接するかを示す情報を登録するデータベースが構築されてもよい。そして、システム制御部１４は、このデータベースに基づいて、宿泊施設が、検索された何れかの地域と隣接しまたは近接する地域にある場合、この宿泊施設と地域とを組み合わせとして選択する。また、システム制御部１４は、距離に基づいて組み合わせを抽出する場合、宿泊施設の住所に基づいて、宿泊施設がある場所の経緯度を取得する。そして、システム制御部１４は、宿泊施設がある場所から地域の中心地までの距離を計算する。そして、システム制御部１４は、計算された距離が、予め設定された距離以下である宿泊施設と地域との組み合わせを抽出する。
【０１１１】
システム制御部１４は、ステップＳ２５の処理を終えると、抽出された組み合わせがＴ４以上であるか否かを判定する（ステップＳ２６）。Ｔ４は、例えば、宿泊施設予約サイトの管理者により設定された閾値である。Ｔ４に如何なる値を設定するかは管理者の任意である。例えば、１が設定されてもよい。システム制御部１４は、抽出された組み合わせがＴ４未満であると判定した場合には（ステップＳ２６：ＮＯ）、ステップＳ３０に移行する。
【０１１２】
なお、システム制御部１４は、抽出された組み合わせがＴ４未満であると判定した場合には、ユーザにより指定された複数のキーワードを、改めて分割し直して、ステップＳ２１に移行してもよい。この場合、システム制御部１４は、宿泊施設検索条件及び地域検索条件のそれぞれに含まれるキーワードの組み合わせが、最初の分割によってできた宿泊施設検索条件及び地域検索条件のそれぞれに含まれるキーワードの組み合わせと異なるように、分割を行う。
【０１１３】
また、Ｔ４に２以上の値が設定されている場合、組み合わせが１つ以上抽出されたのにもかかわらず、ステップＳ３０への移行によって、抽出された組み合わせに対応する組み合わせ表示領域１２０が検索結果ページに表示されない場合がある。そこで、システム制御部１４は、一組以上の組み合わせが抽出された場合には、ステップＳ２７に移行してもよい。
【０１１４】
ステップＳ２６において、システム制御部１４は、抽出された組み合わせがＴ４以上であると判定した場合には（ステップＳ２６：ＹＥＳ）、特定手段として、抽出された組み合わせの中から、単独で検索された宿泊施設よりもユーザにとって取引上有利な組み合わせを特定する（ステップＳ２７）。具体的に、システム制御部１４は、検索リクエストを送信してきたユーザ端末３のユーザの会員情報から住所を取得する。システム制御部１４は、ユーザによる宿泊施設予約サイトへのログイン時に、ユーザにより入力されたユーザＩＤをユーザ端末３から取得する。そのため、システム制御部１４は、ユーザＩＤにより、ユーザの会員情報を、会員情報ＤＢ１２ａから特定することができる。また、システム制御部１４は、検索された各宿泊施設の宿泊施設情報から、住所を取得する。次いで、システム制御部１４は、ユーザの住所及び宿泊施設の住所に基づいて、宿泊施設ごとにユーザの家からの距離を計算する。次いで、システム制御部１４は、計算した距離のうち、最も短い距離を、基準距離として選択する。また、システム制御部１４は、組み合わせに含まれる宿泊施設の宿泊施設情報から住所を取得するとともに、組み合わせに含まれる地域の地域情報から位置情報を取得する。次いで、システム制御部１４は、ユーザの住所、宿泊施設の住所及び地域の位置情報に基づいて、ユーザの家と宿泊施設との間の距離、ユーザの家と地域との間の距離、及び宿泊施設と地域との間の距離を計算する。次いで、システム制御部１４は、ユーザの家と宿泊施設との間の距離と、ユーザの家と地域との間の距離とのうち短い方と、宿泊施設と地域との間の距離と、の合計値を計算し、この合計値を、組み合わせにおけるユーザの家からの距離とする。次いで、システム制御部１４は、組み合わせごとのユーザの家からの距離を、基準距離と比較する。そして、システム制御部１４は、ユーザの家からの距離が基準距離よりも短い組み合わせを、有利組み合わせとして特定する。
【０１１５】
システム制御部１４は、ステップＳ２７の処理を終えると、一組以上の組み合わせが有利組み合わせとして特定されたか否かを判定する（ステップＳ２８）。このとき、システム制御部１４は、組み合わせが１つも特定されなかったと判定した場合には（ステップＳ２８：ＮＯ）、ステップＳ３０に移行する。
【０１１６】
一方、システム制御部１４は、一組以上の組み合わせが特定されたと判定した場合には（ステップＳ２８：ＹＥＳ）、単独で検索された宿泊施設及び特定された有利組み合わせを一覧表示する検索結果ページのＨＴＭＬ文書を、検索リクエストの送信元のユーザ端末３へ送信する（ステップＳ２９）。具体的に、システム制御部１４は、単独で検索された宿泊施設の宿泊施設情報に含まれる宿泊施設名、宿泊施設詳細情報等に基づいて、宿泊施設情報表示領域１１０の表示用のデータを生成する。このとき、システム制御部１４は、何れかのキーワードが宿泊プランに合致した場合には、その宿泊プランの情報が表示されるように、表示用のデータを生成する。また、システム制御部１４は、有利組み合わせに含まれる宿泊施設に対応する宿泊施設情報表示領域１２１の表示用のデータを、宿泊施設情報表示領域１１０の場合と同様に生成する。また、システム制御部１４は、組み合わせに含まれる地域の地域情報に含まれる地域名、地域説明に基づいて、地域情報表示領域１２２の表示用のデータを生成する。このとき、システム制御部１４は、地域検索条件に含まれるキーワードが地域内のスポットに合致した場合には、スポットの情報が表示されるように、表示用のデータを生成する。次いで、システム制御部１４は、宿泊施設情報表示領域１１０の表示用のデータと、宿泊施設情報表示領域１２１の表示用のデータと、地域情報表示領域１２２の表示用のデータとを含むＨＴＭＬ文書を生成する。そして、システム制御部１４は、生成したＨＴＭＬ文書を送信する。こうして、システム制御部１４は、提供手段として、特定された組み合わせの情報をユーザ端末３へ提供する。システム制御部１４は、ステップＳ２９の処理を終えると、検索処理を終了させる。ユーザ端末３は、宿泊施設予約サーバ１から受信したＨＴＭＬ文書に基づいて、検索結果ページを、例えば図４に示すように表示する。
【０１１７】
以上説明したように、本実施形態によれば、宿泊施設予約サーバ１のシステム制御部１４が、検索条件として指定された複数のキーワードを、それぞれ少なくとも１つのキーワードを含む宿泊施設検索条件と地域検索条件とに分割し、宿泊施設検索条件に含まれるキーワードの全てに合致する宿泊施設と、地域検索条件に含まれるキーワードの全てに合致する地域と、をそれぞれ検索し、宿泊施設検索条件により検索された宿泊施設の何れかと、地域検索条件により検索された地域の何れかと、の組み合わせの中から、互いに予め定められた関連を有する宿泊施設と地域との組み合わせを抽出し、抽出された組み合わせの中から検索条件により検索された宿泊施設よりもユーザにとって取引上有利な組み合わせを特定し、特定された組み合わせの情報を提供する。従って、ユーザが検索条件として複数のキーワードを指定した場合であっても、指定された複数のキーワードの全てに合致する宿泊施設よりもユーザにとって取引上有利な宿泊施設と地域との組み合わせの情報を提供することができる。
【０１１８】
また、システム制御部１４が、宿泊施設検索条件により検索された宿泊施設の数がＴ１未満である場合に、宿泊施設検索条件を検索条件１と検索条件２とに分割するとともに、検索条件２を地域検索条件に統合し、検索条件１に含まれるキーワードの全てに合致する宿泊施設と、地域検索条件に含まれるキーワードの全てに合致する地域と、をそれぞれ検索し、検索条件１により検索された宿泊施設の何れかと、地域検索条件により検索された地域の何れかと、の組み合わせの中から、互いに関連を有する宿泊施設と地域との組み合わせを抽出する。従って、抽出される組み合わせに含まれる宿泊施設または地域の数を増やすことなく、ユーザが望む十分な数の検索結果を、より得やすくすることができる。
【０１１９】
また、システム制御部１４が、複数のキーワードのそれぞれごとに、キーワードが宿泊施設により提供される提供対象に関連するキーワードであるか否かを判定し、提供対象に関連すると判定されたキーワードを宿泊施設検索条件に含め、提供対象に関連すると判定されなかったキーワードを地域検索条件に含める。従って、ユーザが望む提供対象を提供する宿泊施設を含む組み合わせを十分な数得ることができる。
【０１２０】
また、システム制御部１４が、宿泊施設検索条件により検索された何れかの宿泊施設の場所が、地域検索条件により検索された何れかの地域に対して予め定められた範囲内にある場合に、その宿泊施設とその地域とを、互いに関連を有する施設と地域の組み合わせとして抽出する。従って、ユーザが同時期に宿泊施設と地域との両方に行きやすい組み合わせを得ることができる。
【０１２１】
また、システム制御部１４が、地域検索条件により検索された地域の数がＴ３未満である場合、検索対象とする地域の広さを、Ｔ３未満の数の地域が検索されたときよりも広くし、広さが変更された地域を検索対象として、地域検索条件に含まれるキーワードの全てに合致する地域を検索し、宿泊施設検索条件により検索された宿泊施設の何れかと、広さが変更された地域を検索対象として地域検索条件により検索された地域の何れかと、の組み合わせの中から、互いに関連を有する宿泊施設と地域との組み合わせを抽出する。従って、検索された地域の数がＴ３よりも少ない場合には、検索対象とされる地域の広さが広くなるので、地域検索条件に含まれるキーワードの全てに合致する地域が検索される蓋然性が高くなる。そのため、ユーザが望む十分な数の検索結果を、より得やすくすることができる。
【０１２２】
［２．第２実施形態］
以下に説明する第２実施形態は、商品を購入するための情報提供システムに対して本発明を適用した場合の実施形態である。
【０１２３】
［２−１．情報提供システムの構成及び機能概要］
先ず、本実施形態に係る情報提供システムＳ２の構成について、図１０を用いて説明する。図１０は、本実施形態に係る情報提供システムＳ２の概要構成の一例を示す図である。図１０において、図１と同様の要素については、同様の符号を付してある。
【０１２４】
図１０に示すように、情報提供システムＳ２は、電子商店街サーバ４と、複数の店舗端末５と、複数のユーザ端末６と、を含んで構成されている。そして、電子商店街サーバ４と各店舗端末５及び各ユーザ端末６とは、ネットワークＮＷを介して相互にデータの送受信が可能になっている。
【０１２５】
電子商店街サーバ４は、商品の購入が可能な電子商店街に関する各種処理を実行するサーバ装置である。電子商店街サーバ４は、本発明における検索装置の一例である。ユーザは、電子商店街を利用することにより、所望の店舗から所望の商品を購入することができる。電子商店街サーバ４は、ユーザ端末６からのリクエストに応じて、例えば、電子商店街のＷｅｂページを送信したり、商品の検索や購入等に関する処理を行ったりする。なお、商品は、本発明における検索対象の一例である。
【０１２６】
店舗端末５は、電子商店街に出店している店舗の従業員等により利用される端末装置である。店舗端末５は、従業員等からの操作に基づいて電子商店街サーバ４等のサーバ装置にアクセスする。これにより、店舗端末５は、サーバ装置からＷｅｂページを受信して表示する。店舗端末５には、ブラウザや電子メールクライアント等のソフトウェアが組み込まれている。従業員は、店舗端末５を利用することにより、例えば、販売する商品の情報を電子商店街に登録したり、商品の注文内容を確認したりする。
【０１２７】
ユーザ端末６は、電子商店街を利用するユーザの端末装置である。なお、ユーザ端末６の構成及び機能は、第１実施形態におけるユーザ端末３の構成及び機能と基本的に同一である。
【０１２８】
ユーザは、電子商店街において購入候補となる商品を探すために、検索条件を指定することができる。例えば、検索条件として、キーワードの指定が可能である。ユーザは、例えば、ユーザが所望する商品の条件を簡潔に表す語を、キーワードとして指定することができる。検索条件が指定されると、電子商店街サーバ４は、検索条件を満たす商品を検索する。具体的に、電子商店街サーバ４は、指定されたキーワードを商品名や商品説明に含む商品を検索する。そして、電子商店街サーバ４は、商品検索結果ページをユーザ端末６へ送信する。
【０１２９】
商品検索結果ページは、検索された商品の一覧が表示されるＷｅｂページである。例えば、商品検索結果ページは、商品名、商品の画像、商品価格、販売元の店舗名等が、商品ごとに表示される。また、商品検索結果ページには、検索された商品の商品ページへのリンクが埋め込まれている。商品検索結果ページにおいて、ユーザは、任意の商品のリンクを選択すると、対応する商品ページがユーザ端末６の画面に表示される。商品ページは、１つの商品に関する詳細な情報が表示されるＷｅｂページである。ユーザは、商品ページにおいて、商品を注文するための操作を行うことにより、商品ページに情報が表示されている商品を購入することができる。
【０１３０】
［２−２．取引上有利な商品の組み合わせの情報の提供］
ユーザは、商品を検索する場合にも、商品に対して要求する条件を複数持っている場合がある。複数の検索条件が指定されると、第１実施形態の場合と同様の理由で、ユーザが望む検索結果をユーザが得ることができない場合がある。
【０１３１】
そこで、電子商店街サーバ４は、検索条件として指定された複数のキーワードを、それぞれ少なくとも１つのキーワードを含む部分検索条件１と部分検索条件２とに分割する。部分検索条件１及び部分検索条件２は、本発明における子検索条件の一例である。次いで、電子商店街サーバ４は、ユーザが指定した複数のキーワードの全てに合致する商品を検索するとともに、部分検索条件ごとに、部分検索条件に含まれる全てのキーワードに合致する商品を検索する。部分検索条件ごとに検索された商品の集合を、「該当商品集合」という。次いで、電子商店街サーバ４は、部分検索条件１を用いて検索された該当商品集合に含まれる商品の何れかと、部分検索条件２を用いて検索された該当商品集合に含まれる商品の何れかと、の組み合わせの中から、互いに関連を有する商品の組み合わせを抽出する。そして、電子商店街サーバ４は、抽出した組み合わせのうち、単独で検索された商品よりもユーザにとって取引上有利である組み合わせを、検索結果としてユーザ端末６によりユーザへ提示させる。なお、単独で検索された商品とは、ユーザが指定した複数のキーワードの全てに合致する商品である。本実施形態において、単独で検索された商品よりもユーザにとって取引上有利である組み合わせを、「有利組み合わせ」という。
【０１３２】
如何なる商品の組み合わせを互いに関連する商品の組み合わせとするかの判断基準の一例を説明する。ユーザの要求を全て満たす理想的な商品が存在すると仮定する。そして、複数の商品を同時にまたは組み合わせて利用することで、複数の商品が、理想的な商品の代用品になるか否かで判断される。ユーザは、このような条件を満たす商品の組み合わせを購入することで、自分の要求を満たすことができる。互いに関連する商品の組み合わせとしては、例えば、メーカーが同一である複数の商品、ジャンルが同一である複数の商品、販売元の店舗が同一である複数の商品、主商品と主商品に対するオプション品との関係にある複数の商品等がある。オプション品としては、例えば、主商品である電動歯ブラシに対して替えブラシ等の消耗品、主商品であるモバイルパソコンに対してモバイルパソコンを収納するケース等のアクセサリー等がある。
【０１３３】
図１１（ａ）は、商品の検索例を示す図である。例えば、ユーザは、パーソナルコンピュータを購入したいと思ったとする。そして、ユーザは、Ｘ社製であり、オフィスソフトウェアがプリインストールされており、且つ、メモリの容量が４Ｇバイトであることを、パーソナルコンピュータに対して望んでいると思っているとする。そこで、ユーザは、例えば、図１１（ａ）に示すように、複数のキーワードとして、「Ｘ社  パーソナルコンピュータ  オフィス  メモリ４Ｇバイト」を指定したとする。
【０１３４】
如何なる基準で複数のキーワードを分割するかは任意である。例えば、Ｍ個のキーワードが指定された場合、電子商店街サーバ４は、Ｍ個のキーワードを、Ｍ−１個のキーワードを含む部分検索条件１と、１個のキーワードを含む部分検索条件２とに分割してもよい。このように分割する理由は、抽出する組み合わせに含まれる商品のうち、少なくとも１つの商品を、ユーザの要求を大部分満たす商品とするためである。この場合、部分検索条件１を用いて検索される商品が、ユーザの要求を大部分満たす商品となる。また、この場合、電子商店街サーバ４は、Ｍ個のキーワードのそれぞれで検索される商品の数を取得し、検索される商品の数が最も少ないキーワードを、部分検索条件２に入れるようにしてもよい。検索される商品の数が最も少ないキーワードが、ユーザが望む検索結果を得ることができない最大の要因となっている蓋然性があるからである。ユーザが望む検索結果を得ることができない要因となっているキーワードを部分検索条件１から外すことによって、部分検索条件１を満たす商品を検索することができる蓋然性を高めることができる。なお、電子商店街サーバ４は、別の方法で複数のキーワードを分割してもよい。
【０１３５】
例えば、検索される商品の数が最も少ないキーワードが「メモリ４Ｇバイト」であるとする。この場合、「Ｘ社  パーソナルコンピュータ  オフィス  メモリ４Ｇバイト」が、「Ｘ社  パーソナルコンピュータ  オフィス」という部分検索条件１と、「メモリ４Ｇバイト」という部分検索条件２と、に分割される。
【０１３６】
そして、「Ｘ社  パーソナルコンピュータ  オフィス」に合致する商品として、商品Ａ−１、Ａ−２及びＡ−３が検索されたとする。商品Ａ−１は、据え置き型のパーソナルコンピュータである。Ａ−２及びＡ−３は、ノートパソコンである。また、商品Ａ−１、Ａ−２及びＡ−３は、Ｘ社製のパーソナルコンピュータであり、オフィスソフトウェアがプリインストールされている蓋然性がある。一方、「メモリ４Ｇバイト」に合致する商品として、商品Ｂ−１、Ｂ−２及びＢ−３が検索されたとする。商品Ｂ−１は、据え置き型のパーソナルコンピュータである。商品Ｂ−２は、据え置き型のパーソナルコンピュータ用の増設メモリである。商品Ｂ−３は、携帯用のメモリカードである。商品Ｂ−１、Ｂ−２及びＢ−３は、メモリの容量が４Ｇバイトである蓋然性がある。
【０１３７】
ここで、商品Ａ−１と商品Ｂ−２とは、主商品とオプション品との関係にある。そこで、商品Ａ−１と商品Ｂ−２との組み合わせが、検索結果として抽出される。商品Ａ−１に対して、商品Ｂ−２を組み込むことによって、ユーザの要求を満たすパーソナルコンピュータができあがるからである。一方、商品Ａ−１と商品Ｂ−１とは、ジャンルが互いに同一である。しかしながら、商品Ａ−１と商品Ｂ−１とを組み合わせることはできない。また、商品Ａ−１と商品Ｂ−１とを同時に利用することができたとしても、ユーザの要求を満たす商品とはならない。そのため、商品Ａ−１と商品Ｂ−１との組み合わせは抽出されない。
【０１３８】
また、商品Ａ−２や商品Ａ−３に対して、商品Ｂ−２を組み込むことはできない。そのため、商品Ａ−２と商品Ｂ−２との組み合わせ、及び商品Ａ−３と商品Ｂ−２と組み合わせは抽出されない。また、商品Ｂ−３を、商品Ａ−１ないしＡ−３に接続することができるかもしれないが、商品Ｂ−３は、パーソナルコンピュータのオプション品ではない。そのため、商品Ｂ−３を含む組み合わせは抽出されない。
【０１３９】
如何なる商品の組み合わせを、互いに関連する商品の組み合わせとするかは、例えば、商品のジャンルに応じて変えてもよい。上述したパーソナルコンピュータの例では、ジャンルが互いに同一である複数の商品は、互いに関連する商品の組み合わせにはならなかった。しかしながら、商品のジャンルによっては、ジャンルが互いに同一である複数の商品は、互いに関連する商品の組み合わせになる場合がある。例えば、ユーザは、牡蠣、蟹及び海老が入った鍋のセットを購入したいとする。そこで、ユーザは、複数のキーワードとして、「鍋セット  牡蠣  蟹  海老」を指定したとする。「鍋セット  牡蠣  蟹  海老」に対応する商品がなかった場合、「鍋セット  牡蠣  蟹  海老」が、例えば、「鍋セット  牡蠣  蟹」と「海老」とに分割される。そして、「鍋セット  牡蠣  蟹」に対応する商品として、牡蠣及び蟹が入った鍋のセットが検索され、「海老」に対応する商品として、食用の海老が検索されたとする。牡蠣及び蟹が入った鍋に海老を入れることで、ユーザが食べたい鍋を作ることができる。鍋セット及び海老の何れも食品である。電子商店街サーバ４が、ジャンルが食品である複数の商品を組み合わせとして抽出することで、ユーザの要求を満たす商品の組み合わせを抽出することができる。
【０１４０】
電子商店街サーバ４は、部分検索条件１を用いて検索された商品の数が閾値未満である場合、部分検索条件１を部分検索条件１ａと部分検索条件１ｂとに更に分割してもよい。次いで、電子商店街サーバ４は、部分検索条件１ａに含まれる全てのキーワードに合致する商品と、部分検索条件１ｂに含まれる全てのキーワードに合致する商品と、検索条件２に含まれる全てのキーワードに合致する商品と、をそれぞれ検索する。そして、電子商店街サーバ４は、部分検索条件１ａを用いて検索された商品の何れかと、部分検索条件１ｂを用いて検索された商品の何れかと、部分検索条件２を用いて検索された商品の何れかと、の組み合わせのうち、互いに関連する商品の組み合わせを抽出してもよい。このときに用いられる閾値を、Ｔ５とする。Ｔ５は、本発明における予め設定された数の一例である。
【０１４１】
図１１（ｂ）は、部分検索条件１の分割例を示す図である。
【０１４２】
例えば、部分検索条件１に含まれる「Ｘ社」、「パーソナルコンピュータ」及び「オフィス」のうち、「オフィス」で検索される商品の数が最も少ないとする。この場合、「Ｘ社  パーソナルコンピュータ  オフィス」が、「Ｘ社  パーソナルコンピュータ」を含む部分検索条件１と、「オフィス」を含む部分検索条件２と、に分割される。例えば、「Ｘ社  パーソナルコンピュータ」に合致する商品として、Ｘ社製のパーソナルコンピュータが検索され、「オフィス」に合致する商品としてオフィスソフトウェアが検索され、「メモリ４Ｇバイト」に合致する商品として、パーソナルコンピュータ用の増設メモリが検索されたとする。ここで、オフィスソフトウェアは、パーソナルコンピュータにインストールすることができるので、オフィスソフトウェアをパーソナルコンピュータのオプション品と考えることができる。また、増設メモリは、パーソナルコンピュータのオプション品である。従って、パーソナルコンピュータ、オフィスソフトウェア及び増設メモリの組み合わせが抽出される。
【０１４３】
なお、電子商店街サーバ４は、検索条件としてユーザにより当初指定された複数のキーワードを、３つ以上の部分検索条件に分割してもよい。この場合も、電子商店街サーバ４は、部分検索条件ごとに、商品を検索する。抽出される組み合わせに含まれる商品の数は、部分検索条件の数と同数になる。また、電子商店街サーバ４は、部分検索条件を更に分割するときにも、３つ以上の部分検索条件に分割してもよい。
【０１４４】
商品の組み合わせが検索された場合、電子商店街サーバ４は、検索された組み合わせの中から、単独で検索された商品よりもユーザにとって取引上有利な組み合わせを特定する。第１実施形態の場合と同様に、単独で検索された商品が複数存在する場合、抽出された組み合わせが有利であるか否かの判定の基準となる商品を何れかにするかは任意である。
【０１４５】
商品の有利判定項目としては、例えば、商品価格、配送方法、送料、ポイント付与率、在庫数、評価値等がある。商品価格が低い商品であるほど、ユーザにとって有利な商品である。配送方法としては、例えば、翌日配送と通常配送とがある。翌日配送は、商品が注文された日の翌日までに必ず配達される配送方法である。通常配送は、商品が注文された日の翌日までに配達されるとは限らない配送方法である。翌日配送の方が通常配送よりもユーザに有利である。また、送料が低いほど、ユーザに有利である。ポイント付与率とは、ユーザが商品を購入した場合に、ユーザに対して付与されるポイントの数の商品価格に対する割合である。このポイントは、ユーザが電子商店街で商品を購入するときに、金銭と同等の価値を有するものとして購入代金に充てることができるものである。ポイント付与率が高いほど、ユーザに有利である。在庫数が多いほど、ユーザに有利である。評価値は、商品に対してユーザから付けられた評価の高さを示す値である。ユーザは、商品に対するレビューを登録することができるとともに、評価値を付けることができる。商品の属性値としての評価値は、各ユーザが付けた評価値を平均した値である。評価値が高いほど、ユーザに有利である。なお、商品価格と送料とを合算して得られる総購入費用も、有利な商品であるか否かを判定可能な属性項目である。総購入費用が低いほど、ユーザに有利である。更に、商品価格と送料との合計値から、ポイント付与率に応じた金額を差し引いた額が、総購入費用とされてもよい。例えば、１ポイントが１円に換算される場合、商品価格にポイント付与率を乗算して得られる金額が、差し引かれる額である。
【０１４６】
組み合わせの属性値は、次の通りに決定される。商品価格は、組み合わせに含まれる全ての商品の商品価格の合計値である。配送方法は、組み合わせに含まれる各商品の配送方法のうち、ユーザにとって最も不利な配送方法である。つまり、全ての商品の配送方法が翌日配送である場合、組み合わせの配送方法は翌日配送になる。一方、１つ以上の商品の配送方法が通常配送である場合、組み合わせの配送方法は通常配送になる。送料は、組み合わせに含まれる全ての商品の送料の合計値である。ただし、複数の商品の販売元の店舗が同一の店舗である場合、その複数の商品の送料は、その複数の商品を一括配送する場合の送料となる。同一店舗が販売する複数の商品が組み合わせに含まれている場合、単純に全ての商品の送料の合計値を計算する場合よりも、送料が安くなる場合がある。ポイント付与率は、組み合わせに含まれる各商品のポイント付与率に応じて得られるポイントの合計値を、組み合わせの商品価格で除算して得られる値である。在庫数は、組み合わせに含まれる各商品の在庫数のうち、最も少ない在庫数である。評価値は、組み合わせに含まれる各商品の評価値の平均値であってもよいし、組み合わせに含まれる各商品の評価値のうち最高値や最低値であってもよい。
【０１４７】
電子商店街サーバ４は、有利判定項目として、複数の属性項目のうち予め定められた属性項目を用いてもよい。また、電子商店街サーバ４は、検索条件としてユーザにより指定されたキーワードに基づいて、有利判定項目を決定してもよい。その理由は、ユーザがキーワードを指定するとき、特定の属性項目における属性値を表す語を含むキーワードを、その特定の属性項目に対する条件として指定する場合があるからである。この場合、ユーザは、その属性項目を重視している蓋然性がある。
【０１４８】
図１２は、有利判定項目の決定する例を示す図である。図１２（ａ）は、単独で検索された各商品の商品価格及び配送方法の一例を示す図である。図１２（ａ）に示すように、商品Ｃ−１、Ｃ−２及びＣ−３が、単独で検索されている。それぞれの商品の商品価格は、９５０００円、１１５０００円、１０００００円である。また、それぞれの商品の配送方法は、全て通常配送である。図１２（ｂ）は、検索された各組み合わせの商品価格及び配送方法の一例を示す図である。図１２（ｂ）に示すように、商品Ａ−１とＢ−２、商品Ａ−４とＢ−４、商品Ａ−５とＢ−５が、それぞれ組み合わせとして検索されている。それぞれの組み合わせの商品価格は、９００００円、１２００００円、１０５０００円である。商品Ａ−１とＢ−２、及び、商品Ａ−５とＢ−５の配送方法は、通常配送である。また、商品Ａ−４とＢ−４の配送方法は、翌日配送である。
【０１４９】
例えば、「ＸＸＸＸ円以下」というキーワードが含まれていたとする。「ＸＸＸＸ円以下」の「ＸＸＸＸ円」は、金額を表す。なお、金額で表される属性項目としては、商品価格と送料とがある。しかしながら、ユーザが送料の条件を指定する場合、ユーザは、例えば、「送料無料」というようなキーワードを指定するものであり、金額を直接指定することはまれである。そのため、商品価格が、有利判定項目として決定される。単独で検索された商品のうちユーザにとって最も有利な商品よりも更に有利な組み合わせのみを特定する場合、商品価格が商品Ｃ−１の９５０００円よりも低い商品Ａ−１とＢ−２が特定される。
【０１５０】
また例えば、ユーザにより指定された複数のキーワードの中に、「翌日配送」というキーワードが含まれていたとする。「翌日配送」は、配送方法を表す。そのため、配送方法が、有利判定項目として決定される。この場合、配送方法が商品Ｃ−１〜Ｃ−３の何れよりも有利である商品Ａ−４とＢ−４が、有利組み合わせとして特定される。
【０１５１】
図１３は、商品検索結果ページの表示例を示す図である。単独の商品よりも有利な組み合わせが検索された場合、例えば、図１３に示すように、商品検索結果ページが表示される。商品検索結果ページには、商品情報表示領域２１０と、組み合わせ表示領域２２０とが表示される。商品表示領域２１０は、単独で検索された商品ごとに表示される。組み合わせ表示領域２２０は、検索された組み合わせごとに表示される。図１３に示すように、商品情報表示領域２１０と組み合わせ表示領域２２０とが混在して表示されるようになっていてもよい。例えば、予め定められて指標に基づいて、商品情報表示領域２１０及び組み合わせ表示領域２２０の表示順が決定される。指標としては、例えば、リスティングスコアがある。リスティングスコアは、商品またはその商品の商品ページに対して決定された評価を示す値である。リスティングスコアが高いほど、評価が高いことを示す。組み合わせの場合、組み合わせに含まれる各商品のリスティングスコアの平均値が、組み合わせのリスティングスコアとして用いられてもよい。また、有利判定項目の属性値に基づいて、表示順が決定されてもよい。
【０１５２】
商品表示領域２１０には、商品に関する情報が表示される。具体的に、商品情報表示領域２１０には、例えば、商品名、商品の画像、商品価格、販売元の店舗名等が表示される。図１３は、商品Ｃ−１、Ｃ−２及びＣ−３のそれぞれに対応する商品表示領域２１０の表示例である。
【０１５３】
組み合わせ表示領域２２０には、複数の商品表示領域２２１が表示される。図１３は、商品Ａ−１とＢ−２との組み合わせに対応する組み合わせ表示領域２２０の表示例である。商品表示領域２２１には、組み合わせに含まれる商品に関する情報が表示される。商品表示領域２２１は、商品ごとに表示される。商品表示領域２２１の表示内容は、商品表示領域２１０の表示内容と基本的に同様である。
【０１５４】
なお、第１実施形態の場合と同様に、電子商店街サーバ４は、検索後の最初に表示される商品検索結果ページとして、単独で検索された商品の情報のみを表示する検索結果ページをユーザ端末３へ送信してもよい。そして、電子商店街サーバ４は、ユーザの操作に基づいて、検索された組み合わせの情報を表示する商品検索結果ページをユーザ端末３へ送信してもい。また、電子商店街サーバ４は、検索後の最初に表示される検索結果ページとして、検索された組み合わせの情報のみを表示する検索結果ページをユーザ端末３へ送信してもよい。
【０１５５】
［２−３．電子商店街サーバの構成］
次に、電子商店街サーバ４の構成について、図１４及び図１５を用いて説明する。
【０１５６】
図１４は、本実施形態に係る電子商店街サーバ４の概要構成の一例を示すブロック図である。図１４に示すように、電子商店街サーバ４は、通信部４１と、記憶部４２と、入出力インターフェース４３と、システム制御部４４と、を備えている。そして、システム制御部４４と入出力インターフェース４３とは、システムバス４５を介して接続されている。
【０１５７】
通信部４１は、ネットワークＮＷに接続して、店舗端末５やユーザ端末６等との通信状態を制御するようになっている。
【０１５８】
記憶部４２は、例えば、ハードディスクドライブ等により構成されている。この記憶部４２には、会員情報ＤＢ４２ａ、ジャンル情報ＤＢ４２ｂ、店舗情報ＤＢ４２ｃ、商品情報ＤＢ４２ｄ、関連商品情報ＤＢ４２ｅ等のデータベースが構築されている。
【０１５９】
図１５（ａ）は、会員情報ＤＢ４２ａに登録される内容の一例を示す図である。会員情報ＤＢ４２ａには、情報提供システムＳ２に会員登録しているユーザに関する会員情報が登録される。会員情報ＤＢ４２ａには、第１実施形態における会員情報ＤＢ１２ａに登録される内容に加えて、保有ポイント数が登録される。保有ポイント数は、ユーザが保有しているポイントの数である。
【０１６０】
図１５（ｂ）は、ジャンル情報ＤＢ４２ｂに登録される内容の一例を示す図である。ジャンル情報ＤＢ４２ｂには、商品のジャンルに関するジャンル情報が登録されている。具体的に、ジャンル情報ＤＢ４２ｂには、ジャンルＩＤ、ジャンル名、ジャンルのレベル、親ジャンルＩＤ、子ジャンルＩＤリスト等のジャンルの属性が、ジャンルごとに対応付けて登録される。ジャンル情報は、例えば、電子商店街の管理者等により設定される。
【０１６１】
商品のジャンルは、木構造で階層的に定義されている。具体的に、木構造の各ノードが、ジャンルに相当する。ノードの深さが、そのノードに相当するジャンルのレベル（階層）に相当する。ノードの深さは、根に位置するノード（以下、「根ノード」という）からの距離である。レベルの値が大きいほど、レベルとしての深さが深く、レベルの値が小さいほど、レベルとしての深さが浅い。根ノードが有する子ノードに相当するジャンルがレベル１のジャンルである。レベル１のジャンルが最上位のジャンルである。レベル１の各ジャンルに対しては、子ノードに相当するジャンルが、レベル２のジャンルとして定義されている。ここで、あるジャンルＣ１の子ノードに相当するジャンルＣ２を、ジャンルＣ１の「子ジャンル」という。また、このときのジャンルＣ１を、ジャンルＣ２の「親ジャンル」という。子ジャンルは、親ジャンルを更に複数に区分したときに、同じような商品が属する範囲である。従って、子ジャンルは親ジャンルに属する。
【０１６２】
ジャンルＩＤは、ジャンル情報によって定義されるジャンルの識別情報である。親ジャンルＩＤは、ジャンル情報によって定義されるジャンルの親ジャンルのジャンルＩＤである。子ジャンルＩＤリストは、ジャンル情報によって定義されるジャンルの子ジャンルのジャンルＩＤのリストである。子ジャンルＩＤリストは、ジャンル情報によって定義されるジャンルが子ジャンルを有する場合に設定される。
【０１６３】
図１５（ｃ）は、店舗情報ＤＢ４２ｃに登録される内容の一例を示す図である。店舗情報ＤＢ４２ｃには、電子商店街に出店している店舗に関する店舗情報が登録される。具体的に、店舗情報ＤＢ４２ｃには、店舗ＩＤ、店舗名、郵便番号、住所、電話番号、電子メールアドレス、店舗送料情報等の店舗の属性が、店舗ごとに対応付けて登録される。店舗ＩＤは、店舗の識別情報である。店舗送料情報は、店舗が定めた送料規定を示す情報である。基本的に、送料規定は、商品ごとに定められている。しかしながら、同一店舗が複数の商品を一括配送する場合には、個別の商品の送料規定では対応することができない。そのため、店舗全体における送料規定が定められている。店舗送料情報には、例えば、商品の送付先の都道府県及び配送される商品のサイズごとに、送料が設定されている。
【０１６４】
図１５（ｄ）は、商品情報ＤＢ４２ｄに登録される内容の一例を示す図である。商品情報ＤＢ４２ｄには、電子商店街で販売されている商品に関する商品情報が登録される。具体的に、商品情報ＤＢ４２ｄには、商品ＩＤ、店舗ＩＤ、商品コード、ジャンルＩＤ、商品名、商品画像のＵＲＬ（Uniform Resource Locator）、商品説明、サイズ、商品価格、配送方法、商品送料情報、ポイント付与率、在庫数、評価値等の商品の属性が、店舗が販売する商品ごとに対応付けて登録される。
【０１６５】
商品ＩＤは、店舗が、販売する商品を管理するための商品の識別情報である。店舗ＩＤは、商品の販売元の店舗を示す。商品コードは、商品を識別するコード番号である。同一の商品に対しては同一の商品コードが付与される。商品コードとしては、例えば、ＪＡＮ（Japanese Article Number Code）コードがある。商品ＩＤは、基本的に商品ページと一対一で対応する。従って、商品コードが同一の商品であっても、商品情報が異なる複数の商品に対しては、互いに異なる商品ＩＤが付与される。ジャンルＩＤは、商品が属するジャンルのジャンルＩＤである。基本的には、最下位のレベルに定義されているジャンル（木構造における葉ノードに相当するジャンル）のジャンルＩＤが設定されている。つまり、各商品は、最も細分化されたジャンルでジャンル分けされている。商品名は、店舗が付けた商品の名称である。そのため、この商品名は、商品の正式な名称とは異なる場合がある。サイズは、商品の縦、横及び奥行きのそれぞれの長さを示す。商品送料情報は、個別の商品の送料規定を示す情報である。商品送料情報には、例えば、商品の送付先の都道府県ごとに送料が設定されている。
【０１６６】
図１５（ｅ）は、関連商品情報ＤＢ４２ｅに登録される内容の一例を示す図である。関連商品情報ＤＢ４２ｅには、主商品とオプション品との関係にある複数の商品に関する関連商品情報が登録される。具体的に、関連商品情報ＤＢ４２ｅには、主商品の商品コード及びオプション品の商品コードが、主商品とオプション品との組み合わせごとに対応付けて登録される。
【０１６７】
また、記憶部４２には、ＨＴＭＬ文書、ＸＭＬ文書、画像データ、テキストデータ、電子文書等の各種データ、及び、管理者等により設定された各種の設定値が記憶されている。
【０１６８】
また、記憶部４２には、オペレーティングシステム、ＷＷＷサーバプログラム、ＤＢＭＳ、電子商取引管理プログラム等の各種プログラムが記憶されている。電子商取引管理プログラムは、商品の検索、商品の注文等の処理を実行するためのプログラムである。電子商取引管理プログラムは、本発明における検索プログラムの一例である。なお、各種プログラムは、例えば、他のサーバ装置等からネットワークＮＷを介して取得されるようにしてもよいし、ＤＶＤ等の記録媒体に記録されてドライブ装置を介して読み込まれるようにしてもよい。
【０１６９】
入出力インターフェース４３は、通信部４１及び記憶部４２とシステム制御部４４との間のインターフェース処理を行うようになっている。
【０１７０】
システム制御部４４は、ＣＰＵ１４ａ、ＲＯＭ（Read Only Memory）４４ｂ、ＲＡＭ（Random Access Memory）４４ｃ等により構成されている。そして、システム制御部４４は、ＣＰＵ４４ａが、各種プログラムを読み出し実行することにより、本発明における分割手段、検索手段、抽出手段、特定手段及び選択手段として機能するようになっている。なお、電子商店街サーバ４が、複数のサーバ装置で構成されてもよい。
【０１７１】
［２−４．情報提供システムの動作］
次に、情報提供システムＳ２の動作について、図１６を用いて説明する。なお、以下に説明する動作は、単独で検索された商品のうちユーザにとって最も有利な商品よりも更に有利な組み合わせのみを、有利組み合わせとして特定する場合の動作である。
【０１７２】
図１６は、本実施形態に係る電子商店街サーバ４のシステム制御部４４の検索処理における処理例を示すフローチャートである。電子商店街において、ユーザは、ユーザ端末６を操作してキーワードを１つ以上指定する。すると、ユーザ端末６は、検索リクエストを電子商店街サーバ４へ送信する。検索リクエストは、指定されたキーワードを含む。検索処理は、電子商店街サーバ４が、検索リクエストを受信したときに開始される。
【０１７３】
図１６に示すように、システム制御部４４は、受信した検索リクエストから、指定されたキーワードを全て取得する（ステップＳ８１）。次いで、システム制御部４４は、指定された全てのキーワードに対応する商品を検索する（ステップＳ８２）。具体的に、システム制御部４４は、商品情報ＤＢ４２ｄに登録されている商品情報のうち、商品名及び商品説明の少なくとも何れか一方に、指定されたキーワードを含む商品情報を検索する。キーワードが複数指定されている場合、システム制御部４４は、全てのキーワードのそれぞれを、商品名及び商品説明の少なくとも何れか一方に含む商品情報を検索する。
【０１７４】
システム制御部４４は、ステップＳ８２の処理を終えると、指定されたキーワードが複数あるか否かを判定する（ステップＳ８３）。このとき、システム制御部４４は、指定されたキーワードが１つであると判定した場合には（ステップＳ８３：ＮＯ）、検索された商品の一覧を表示する商品検索結果ページを、検索リクエストの送信元のユーザ端末６へ送信する（ステップＳ１０３）。システム制御部４４は、この処理を終えると、検索処理を終了させる。
【０１７５】
一方、システム制御部４４は、指定されたキーワードが複数あると判定した場合には（ステップＳ８３：ＹＥＳ）、分割手段として、指定された複数のキーワードを、部分検索条件１と部分検索条件２とに分割する（ステップＳ８４）。具体的に、システム制御部４４は、指定された複数のキーワードのそれぞれで検索される商品の数を取得する。このとき、システム制御部４４は、実際に商品の検索を行ってもよい。また、システム制御部４４は、定期的に様々なキーワードで商品の検索を行い、検索された商品の数をキーワードに対応付けて記憶部４２に記憶させておいてもよい。そして、システム制御部４４は、記憶部４２から検索される商品の数を取得してもよい。システム制御部４４は、検索された商品の数が最も少ないキーワードの１つを部分検索条件２に含め、残りのキーワードを部分検索条件１に含める。
【０１７６】
システム制御部４４は、ステップＳ８４の処理を終えると、検索手段として、部分検索条件１に含まれる全てのキーワードに合致する商品を検索する（ステップＳ８５）。この場合の検索方法は、ステップＳ８２における検索方法と基本的に同様である。次いで、システム制御部４４は、検索された商品の数がＴ５以上であるか否かを判定する（ステップＳ８６）。このとき、システム制御部４４は、検索された商品の数がＴ５未満であると判定した場合には（ステップＳ８６：ＮＯ）、部分検索条件１を更に分割可能であるか否かを判定する（ステップＳ８７）。例えば、部分検索条件１に含まれるキーワードの数が予め設定された数になるまで、分割可能であると定められていてもよい。また例えば、分割可能な最大の回数が予め設定されており、その回数になるまで分割可能であると定められていてもよい。システム制御部４４は、更に分割可能であると判定した場合には（ステップＳ８７：ＹＥＳ）、分割手段として、部分検索条件１を部分検索条件１ａと部分検索条件１ｂとに分割する（ステップＳ８８）。このとき、システム制御部４４は、部分検索条件１に含まれるキーワードのうち、検索される商品の数が最も少ないキーワードを１つ部分検索条件１ｂに含め、残りのキーワードを部分検索条件１ａに含める。システム制御部４４は、部分検索条件１を分割すると、部分検索条件１ａを最新の部分検索条件１とする（ステップＳ８９）。次いで、システム制御部４４は、ステップＳ８５に移行して、最新の部分検索条件１に含まれる全てのキーワードに対応する商品を検索する。
【０１７７】
システム制御部４４は、ステップＳ８５〜Ｓ８９の処理を繰り返すことにより、Ｔ５以上の数の商品が検索されるか、または、分割が不可能になるまで、部分検索条件１を用いた検索及び部分検索条件１の分割を繰り返す。ステップＳ８７において、システム制御部４４は、部分検索条件１を更に分割可能ではないと判定した場合には（ステップＳ８７：ＮＯ）、ステップＳ１０３に移行する。なお、この場合、システム制御部４４は、複数のキーワードを改めて検索し直して、ステップＳ８５に移行してもよい。この場合、システム制御部４４は、ステップＳ８４における分割方法とは異なる方法で複数のキーワードを分割する。例えば、システム制御部４４は、複数のキーワードを、２つのキーワードを含む部分検索条件２と、残りのキーワードを含む部分検索条件１とに分割してもよい。
【０１７８】
ステップＳ８６において、システム制御部４４は、検索された商品の数がＴ５以上であると判定した場合には（ステップＳ８６：ＹＥＳ）、検索手段として、部分検索条件２に含まれる全てのキーワードに合致する商品を検索する（ステップＳ９０）。この場合の検索方法は、ステップＳ８２における検索方法と基本的に同様である。次いで、システム制御部４４は、部分検索条件１ｂがあるか否かを判定する（ステップＳ９１）。このとき、システム制御部４４は、部分検索条件１ｂがあると判定した場合には（ステップＳ９１：ＹＥＳ）、検索手段として、部分検索条件１ｂごとに、部分検索条件１ｂに含まれる全てのキーワードに対応する商品を検索する（ステップＳ９２）。この場合の検索方法は、ステップＳ８２における検索方法と基本的に同様である。
【０１７９】
システム制御部４４は、部分検索条件１ｂがないと判定した場合（ステップＳ９１：ＮＯ）、または、ステップＳ９２の処理を終えた場合には、抽出手段として、部分検索条件１を用いて検索された該当商品集合に含まれる何れかの商品と、部分検索条件２を用いて検索された該当商品集合に含まれる何れかの商品と、の組み合わせの中から、互いに関連する商品の組み合わせを抽出する（ステップＳ９３）。ここで、システム制御部４４は、部分検索条件１ｂを用いて検索を行った場合には、部分検索条件１を用いて検索された該当商品集合に含まれる何れかの商品と、部分検索条件２を用いて検索された該当商品集合に含まれる何れかの商品と、部分検索条件１ｂを用いて検索された該当商品集合に含まれる何れかの商品と、の組み合わせの中から、互いに関連する商品の組み合わせを抽出する。具体的に、システム制御部４４は、例えば、ジャンルが互いに同一である複数の商品を抽出する場合、各商品の商品情報から、ジャンルＩＤを取得する。そして、システム制御部４４は、該当商品集合間で、ジャンルＩＤが互いに一致する複数の商品を特定してもよい。この場合、最下位のレベルにおいて、ジャンルが同一であるか否かが判定される。システム制御部４４は、最下位のレベルよりも上位のレベルにおけるジャンルが互いに同一である複数の商品を抽出してもよい。下位のレベルでジャンル同士が同一であるか否かが判定されると、同一のジャンルに属する商品の範囲が狭くなる場合があるからである。システム制御部４４は、ジャンル情報ＤＢ４２ｂに登録されているジャンル情報に基づいて、各商品について、最下位のレベルよりも上位のレベルにおけるジャンルのジャンルＩＤを取得することができる。また、例えば、販売元の店舗が互いに同一である複数の商品を抽出する場合、システム制御部４４は、各商品の商品情報から、店舗ＩＤを取得する。そして、システム制御部４４は、該当商品集合間で、店舗ＩＤが互いに一致する複数の商品を特定する。また、例えば、主商品とオプション品との関係にある複数の商品を抽出する場合、システム制御部４４は、各商品の商品情報から、商品コードを取得する。そして、システム制御部４４は、関連商品情報ＤＢ４２ｅにおいて、該当商品集合間で、互いの商品コードが対応付けて登録されている複数の商品を特定する。
【０１８０】
システム制御部４４は、ステップＳ９３の処理を終えると、一組以上の組み合わせが抽出されたか否かを判定する（ステップＳ９４）。このとき、システム制御部４４は、組み合わせが１つも抽出されなかったと判定した場合には（ステップＳ９４：ＮＯ）、ステップＳ１０３に移行する。
【０１８１】
一方、システム制御部４４は、一組以上の組み合わせが抽出されたと判定した場合には（ステップＳ９４：ＹＥＳ）、指定された複数のキーワードのうち１つを選択する（ステップＳ９５）。次いで、システム制御部４４は、選択されたキーワードが、何れかの属性項目の属性値を表す語を含むか否かを判定する（ステップＳ９６）。例えば、システム制御部４４は、キーワードが、１文字以上の数字に続けて「円」の文字を含む場合、商品価格を表す語を含むと判定する。あるいは、この場合、システム制御部４４は、総購入費用を表す語を含むと判定してもよい。また、システム制御部４４は、キーワードが、「翌日配送」等といった語を含む場合、配送方法を表す語を含むと判定する。また、システム制御部４４は、キーワードが、「送料無料」等といった語を含む場合、送料を表す語を含むと判定する。また、システム制御部４４は、キーワードが、１文字以上の数字に続けて「パーセント」や「％」の文字を含む場合、ポイント付与率を表す語を含むと判定する。また、システム制御部４４は、キーワードが、「在庫あり」等といった語や、１文字以上の数字に続けて「個」の文字を含む場合、在庫数を表す語を含むと判定する。また、システム制御部４４は、キーワードが、「評価」等といった文字を含む場合、評価値を表す語を含むと判定する。
【０１８２】
システム制御部４４は、何れかの属性項目の属性値を表す語を含むと判定した場合には（ステップＳ９６：ＹＥＳ）、選択手段として、キーワードに属性値を表す語が含まれている属性項目を、有利判定項目として選択する（ステップＳ９７）。システム制御部４４は、ステップＳ９７の処理を終えた場合、または、ステップＳ９６において何れかの属性項目の属性値を表す語も含まないと判定した場合には（ステップＳ９６：ＮＯ）、指定された複数のキーワードの中にまだ選択していないキーワードがあるか否かを判定する（ステップＳ９８）。このとき、システム制御部４４は、まだ選択していないキーワードがあると判定した場合には（ステップＳ９８：ＹＥＳ）、また選択していないキーワードのうち１つを選択する（ステップＳ９９）。次いで、システム制御部４４は、ステップＳ９６に移行する。
【０１８３】
ステップＳ９８において、システム制御部４４は、全てのキーワードを選択したと判定した場合には（ステップＳ９８：ＮＯ）、特定手段として、抽出された組み合わせの中から、有利組み合わせを特定する（ステップＳ１００）。
【０１８４】
具体的に、システム制御部４４は、検索された各商品の商品情報及び抽出された各組み合わせに含まれる商品の商品情報から、有利判定項目として選択された属性項目の属性値を取得する。次いで、システム制御部４４は、単独で検索された商品の属性値のうちユーザにとって取引上最も有利な属性値を基準属性値として選択する。次いで、システム制御部４４は、有利判定項目において、各組み合わせの属性値を決定する。組み合わせの属性値の決定方法は、既に説明した通りである。ここで、有利判定項目が送料である場合、システム制御部４４は、組み合わせの送料として、組み合わせに含まれる全ての商品の送料の合計値を算出する。このとき、システム制御部４４は、検索リクエストを送信してきたユーザ端末６のユーザの住所から、送付先の都道府県を特定する。そして、システム制御部４４は、送付先の都道府県と、各商品の商品送料情報とに基づいて、各商品の送料を算出する。また、システム制御部４４は、各商品の商品情報に含まれる店舗ＩＤに基づいて、組み合わせの中に同一店舗が販売元となっている複数の商品が含まれていると判定した場合には、その複数の商品それぞれの商品情報からサイズを取得するとともに、販売元の店舗の店舗情報から、店舗送料情報を取得する。次いで、システム制御部４４は、各商品のサイズに基づいて、複数の商品を一括配送する場合の梱包サイズを計算する。そして、システム制御部４４は、計算した梱包サイズ、ユーザの住所及び店舗送料情報に基づいて、一括配送する場合の送料を算出する。システム制御部４４は、送料の合計値を算出するとき、同一店舗が販売元となっている複数の商品については、個別の送料の代わりに、一括配送する場合の送料を用いる。有利判定項目が総購入費用である場合、システム制御部４４は、組み合わせについて計算された商品価格と、組み合わせについて計算された送料との合計値を算出する。システム制御部４４は、各組み合わせの属性値を決定すると、各組み合わせの属性値を基準属性値と比較する。そして、システム制御部４４は、基準属性値よりもユーザにとって取引上有利な属性値が決定された組み合わせを、有利組み合わせとして特定する。
【０１８５】
なお、有利判定項目が複数選択された場合、システム制御部４４は、例えば、全ての有利判定項目について、基準属性値よりもユーザにとって取引上有利な属性値が決定された組み合わせのみを特定してもよい。または、システム制御部４４は、一部の有利判定項目について、基準属性値よりもユーザにとって取引上有利な属性値が決定された組み合わせを特定してもよい。また、有利判定項目が１つも選択されなかった場合、システム制御部４４は、例えば、予め定められた属性項目について、基準属性値よりもユーザにとって取引上有利な属性値が決定された組み合わせを特定してもよい。
【０１８６】
システム制御部４４は、ステップＳ１００の処理を終えると、一組以上の組み合わせが有利組み合わせとして特定されたか否かを判定する（ステップＳ１０１）。このとき、システム制御部４４は、組み合わせが１つも特定されなかったと判定した場合には（ステップＳ１０１：ＮＯ）、ステップＳ１０３に移行する。
【０１８７】
一方、システム制御部４４は、一組以上の組み合わせが特定されたと判定した場合には（ステップＳ１０１：ＹＥＳ）、単独で検索された商品及び特定された有利組み合わせを一覧表示する商品検索結果ページのＨＴＭＬ文書を、検索リクエストの送信元のユーザ端末６へ送信する（ステップＳ１０２）。具体的に、システム制御部４４は、単独で検索された各商品の商品情報に含まれる商品名、商品画像のＵＲＬ、商品価格、商品ＩＤ等に基づいて、商品情報表示領域２１０の表示用の情報を生成する。また、システム制御部４４は、有利組み合わせに含まれる各商品についても、同様に商品情報表示領域２２１用の情報を生成する。次いで、システム制御部４４は、商品情報表示領域２１０の表示用のデータと、商品情報表示領域２２１の表示用のデータとを含むＨＴＭＬ文書を生成する。そして、システム制御部４４は、生成したＨＴＭＬ文書を送信する。こうして、システム制御部４４は、提供手段として、特定された組み合わせの情報をユーザ端末６へ提供する。システム制御部４４は、この処理を終えると、検索処理を終了させる。ユーザ端末６は、電子商店街サーバ４から受信したＨＴＭＬ文書に基づいて、商品検索結果ページを、例えば図１３に示すように表示する。
【０１８８】
なお、システム制御部４４は、ステップＳ８９において、部分検索条件１ａを最新の部分検索条件１とするとともに、部分検索条件１ｂを、ステップＳ８４の分割により生成された部分検索条件２に統合してもよい。
【０１８９】
以上説明したように、本実施形態によれば、電子商店街サーバ４のシステム制御部４４が、検索条件として指定された複数のキーワードを、それぞれ少なくとも１つのキーワードを含む部分検索条件１及び２に分割し、部分検索条件ごとに部分検索条件に含まれるキーワードの全てに合致する商品と、部分検索条件に含まれるキーワードの全てに合致する商品と、をそれぞれ検索し、部分検索条件１により検索された商品の何れかと、部分検索条件２により検索された商品の何れかと、の組み合わせの中から、互いに予め定められた関連を有する商品の組み合わせを抽出する抽出し、抽出された組み合わせの中から検索条件により検索された商品よりもユーザにとって取引上有利な組み合わせを特定し、特定された組み合わせの情報を提供する。従って、ユーザが検索条件として複数のキーワードを指定した場合であっても、指定された複数のキーワードの全てに合致する商品よりもユーザにとって取引上有利な商品の組み合わせの情報を提供することができる。
【０１９０】
また、システム制御部４４が、部分検索条件１により検索された商品の数がＴ５未満である場合に、部分検索条件１を部分検索条件１ａ及び１ｂに分割し、部分検索条件１ａと部分検索条件１ｂとのそれぞれごとに、部分検索条件に含まれるキーワードの全てに合致する商品を検索し、部分検索条件１ａにより検索された商品の何れかと、部分検索条件１ｂにより検索された商品の何れかと、部分検索条件２により検索された商品の何れかと、の組み合わせの中から、互いに関連を有する商品の組み合わせを抽出する。従って、部分検索条件１ａ及び１ｂのそれぞれは、部分検索条件１よりもキーワードの数が少ないので、部分検索条件１ａ及び１ｂを用いて検索を行った方が、部分検索条件１を用いて検索を行うよりも、商品が検索される蓋然性が高い。そのため、ユーザが望む十分な数の検索結果を、より得やすくすることができる。
【０１９１】
また、システム制御部４４が、検索条件として指定された複数のキーワードのうち検索される商品の数が最も少ない１つのキーワードを部分検索条件２に含め、部分検索条件２に含まれないキーワードを部分検索条件１に含める。従って、部分検索条件１を、指定された検索条件にできるかぎり近づけることができるとともに、部分検索条件１により商品を検索することができる蓋然性を高めることができる。
【０１９２】
なお、上記各実施形態においては、検索対象として、宿泊施設または商品を検索する場合に本発明を適用していた。しかしながら、本発明を、例えば、宿泊施設以外の施設、場所、サービス、Ｗｅｂページ、画像、動画、音声、地図、ニュース、ブログ等の検索に適用してもよい。
【０１９３】
また、上記各実施形態においては、本発明における検索装置が、クライアントサーバシステムにおけるサーバ装置に適用されていた。つまり、端末装置が、ユーザにより指定されたキーワードをサーバ装置に送信し、サーバ装置が、受信したキーワードを用いて検索を行っていた。しかしながら、本発明が、スタンドアローンに適用されてもよい。つまり、本発明における検索装置が、ユーザによるキーワードの指定を直接受け付け、受け付けたキーワードを用いて検索を行い、検索結果を表示するなどして有利組み合わせの情報をユーザに直接提供してもよい。
【符号の説明】
【０１９４】
１  宿泊施設予約サーバ
２  宿泊施設端末
３  ユーザ端末
１１  通信部
１２  記憶部
１２ａ  会員情報ＤＢ
１２ｂ  宿泊施設情報ＤＢ
１２ｃ  地域情報ＤＢ
１２ｄ  スポット情報ＤＢ
１２ｅ  宿泊施設キーワード情報ＤＢ
１３  入出力インターフェース
１４  システム制御部
１４ａ  ＣＰＵ
１４ｂ  ＲＯＭ
１４ｃ  ＲＡＭ
１５  システムバス
ＮＷ  ネットワーク
Ｓ１  情報提供システム
４  電子商店街サーバ
５  店舗端末
６  ユーザ端末
４１  通信部
４２  記憶部
４２ａ  会員情報ＤＢ
４２ｂ  ジャンル情報ＤＢ
４２ｃ  店舗情報ＤＢ
４２ｄ  商品情報ＤＢ
４２ｅ  関連商品情報ＤＢ
４３  入出力インターフェース
４４  システム制御部
４４ａ  ＣＰＵ
４４ｂ  ＲＯＭ
４４ｃ  ＲＡＭ
４５  システムバス
Ｓ２  情報提供システム
【図１】
0005340376.tif 000002
【図２】
0005340376.tif 000003
【図３】
0005340376.tif 000004
【図４】
0005340376.tif 000005
【図５】
0005340376.tif 000006
【図６】
0005340376.tif 000007
【図７】
0005340376.tif 000008
【図８】
0005340376.tif 000009
【図９】
0005340376.tif 000010
【図１０】
0005340376.tif 000011
【図１１】
0005340376.tif 000012
【図１２】
0005340376.tif 000013
【図１３】
0005340376.tif 000014
【図１４】
0005340376.tif 000015
【図１５】
0005340376.tif 000016
【図１６】
0005340376.tif 000017