以下、図面を参照して本発明の実施形態について詳細に説明する。なお、以下に説明する実施の形態は、情報処理システムに対して本発明を適用した場合の実施形態である。
[1.第1実施形態]
[1−1.情報処理システムの構成及び機能概要]
先ず、本実施形態に係る情報処理システムSの構成について、図1を用いて説明する。図1は、本実施形態に係る情報処理システムSの概要構成の一例を示す図である。
図1に示すように、情報処理システムSは、電子商店街サーバ1と、複数の店舗端末2と、複数のユーザ端末3と、を含んで構成されている。そして、電子商店街サーバ1と各店舗端末2及び各ユーザ端末3とは、ネットワークNWを介して、例えば、通信プロトコルにTCP/IP等を用いて相互にデータの送受信が可能になっている。なお、ネットワークNWは、例えば、インターネット、専用通信回線(例えば、CATV(Community Antenna Television)回線)、移動体通信網(基地局等を含む)、及びゲートウェイ等により構築されている。
電子商店街サーバ1は、商品の購入が可能な電子商店街に関する各種処理を実行するサーバ装置である。電子商店街サーバ1は、本発明における情報処理装置の一例である。ユーザは、電子商店街を利用することにより、所望の店舗から所望の商品を購入することができる。電子商店街サーバ1は、ユーザ端末3からのリクエストに応じて、例えば、電子商店街のウェブページを送信したり、商品の検索や購入等に関する処理を行ったりする。商品は、本発明における検索対象の一例である。
店舗端末2は、電子商店街に出店している店舗の従業員等により利用される端末装置である。店舗端末2は、従業員等からの操作に基づいて電子商店街サーバ1等のサーバ装置にアクセスする。これにより、店舗端末2は、サーバ装置からウェブページを受信して表示する。店舗端末2には、ブラウザや電子メールクライアント等のソフトウェアが組み込まれている。従業員は、店舗端末2を利用することにより、例えば、販売する商品の情報を電子商店街に登録したり、商品の注文内容を確認したりする。
ユーザ端末3は、電子商店街を利用するユーザの端末装置である。ユーザ端末3は、ユーザからの操作に基づいて電子商店街サーバ1にアクセスすることにより、電子商店街サーバ1からウェブページを受信して表示する。ユーザ端末3には、ブラウザや電子メールクライアント等のソフトウェアが組み込まれている。ユーザ端末3としては、例えば、パーソナルコンピュータ、PDA(Personal Digital Assistant)、スマートフォン等の携帯情報端末、携帯電話機等が用いられる。
[1−2.属性値の提示]
次に、ユーザにより入力されたキーワードに基づく属性値の提示について、図2乃至図6を用いて説明する。
電子商店街で販売されている各商品は、商品を販売する店舗によりジャンル分けされている。商品のジャンルは、例えば、予め定められた基準で商品を分類した場合の商品の区分である。ジャンルは、カテゴリーと呼ばれることもある。例えば、商品の種類等で商品が分類されている。ジャンルの名前であるジャンル名は、例えば、普通名詞である。また、商品のジャンルは木構造で階層的に定義されている。木構造において、或るジャンルの子に相当するジャンルを、「子ジャンル」という。或るジャンルの子孫に相当するジャンルを、「子孫ジャンル」という。或るジャンルの親に相当するジャンルを、「親ジャンル」という。例えば、最上位のジャンルとして、「食品」、「水・ソフトドリンク」、「ワイン」、「日本酒・焼酎」等のジャンルがある。また、「日本酒・焼酎」の子ジャンルとして、例えば、「焼酎」、「日本酒」、「梅酒」等がある。商品のジャンルは、本発明における検索対象区分の一例である。
商品の区分としては、ジャンルの他に、ブランド、トピックがある。ブランドは、商品の出所(例えば、製造者や販売者等)を示す。ブランド名は、基本的には固有名詞である。トピックは、例えば、商品のテーマや商品が使用される出来事等を示す。例えば、トピック名として、「母の日特集」、「送料無料」等がある。トピックは、例えば、ジャンルごとに定義されていてもよい。
また、各商品は、属性を有する。属性は、属性名と属性値とで定義されている。属性名は、属性の名前である。属性名は、属性の項目または種類を示す。商品の属性は、属性名に応じた属性値を有する。例えば、全ての商品に共通の属性として、商品名や価格等がある。商品名の属性値は、商品の名称等を表す文字列である。価格の属性名は、金額を表す数値である。
商品の属性の中には、ジャンルに応じた属性が存在する場合がある。電子商店街サーバ1は、ジャンルに応じた属性の属性名と属性値との組み合わせを記憶している。図2は、ジャンル名、属性名及び属性値の一例を示す図である。図2に示すように、ジャンル名として、例えば、「日本酒」、「ミネラルウォーター」、「ハンドバッグ」、パソコン・周辺機器の「ルータ」、電動ドリルの「ルータ」等がある。「日本酒」と「ミネラルウォーター」の属性名として、例えば、「産地」、「内容量」等がある。このように、異なるジャンルであっても、同一の属性項目が定義されている場合がある。「産地」の属性値として、例えば、「中国」、「中部」、「関東」等がある。「日本酒」の「内容量」の属性値として、例えば、「500」、「750」、「1000」等がある。「ミネラルウォーター」の「内容量」の属性値として、例えば、「350」、「500」、「1000」等がある。このように、同一の属性項目ではあっても、ジャンルに応じて属性値が異なる場合がある。その理由は、ジャンルによって、商品が有する属性値が異なる場合があるからである。ハンドバッグの属性名として、例えば、「ブランド」、「色」等がある。また、電動ドリルのルータの属性名として、例えば、「回転数」等がある。また、パソコン・周辺機器の「ルータ」の属性名として、例えば、「転送速度」等がある。
電子商店街サーバ1は、ユーザが検索条件として複数のキーワードを入力中であるとき、入力中の複数のキーワードに相応するジャンル名、属性名及び属性値の組み合わせを、ユーザ端末3によりユーザへ提示させる。これにより、電子商店街サーバ1は、例えば、ファセットナビゲーションあるいはファセット検索の機能を提供する。この場合、属性項目はファセットであり、属性名はファセットを示す。また、属性値はファセット値である。なお、キーワードは、本発明における検索語の一例である。
図3は、本実施形態に係る情報処理システムSの処理概要の一例を示すフローチャートである。図3に示すように、レシピサーバ1は、入力中の2以上のキーワードのうち1番目のキーワードに相応するジャンル名を検索する(ステップS1)。キーワードに相応するジャンル名は、例えば、キーワードと一致するジャンル名、及び、一部がキーワードと一致するジャンル名の少なくとも何れか一方であってもよい。また、キーワードに相応するジャンル名は、例えば、キーワードに前方一致するジャンル名であってもよいし、キーワードに後方一致するジャンル名であってもよい。なお、1番目のキーワードは、本発明における第1の検索語の一例である。
次いで、電子商店街サーバ1は、1番目のキーワードで検索されたジャンル名に対応する属性値の中から、2番目のキーワードに相応する属性値を検索する(ステップS2)。キーワードに相応する属性値は、例えば、キーワードと一致する属性値、及び、一部がキーワードと一致する属性値の少なくとも何れか一方であってもよい。また、キーワードに相応する属性値は、例えば、キーワードに前方一致する属性値であってもよいし、キーワードに後方一致する属性値であってもよい。また、キーワードとは表記法が異なる属性値であって、キーワードと意味が一致する属性値も、キーワードに相応する属性値に含まれてもよい。例えば、漢字の「赤」、平仮名の「あか」、片仮名の「レッド」、英語の「red」、カラーコードの「ff0000」は、互いに意味が一致する。なお、2番目のキーワードは、本発明における第2の検索語の一例である。
次いで、電子商店街サーバ1の制御により、ユーザ端末3は、検索されたジャンル名、検索された属性値に対応する属性名及び検索された属性値の組み合わせを、検索条件の候補としてユーザに提示する(ステップS3)。
提示された1つ以上の組み合わせの中から何れかの組み合わせをユーザが選択したことをユーザ端末3が検出すると(ステップS4)、電子商店街サーバ1は、選択された組み合わせに応じた商品の検索を行う(ステップS5)。具体的に、電子商店街サーバ1は、選択された組み合わせに含まれるジャンル名が示すジャンルの商品の中から、選択された組み合わせに含まれる属性名が示す属性の属性値が、選択された組み合わせに含まれる属性値に合致する商品を検索する。
次に具体例を示す。図4は、電子商店街のトップページの画面表示例を示す図である。トップページは、電子商店街において最上位に位置するウェブページである。図4に示すように、トップページは、検索条件設定領域100を含む。検索条件設定領域100は、検索条件を指定するためのウィジェット等が表示される領域である。具体的に、検索条件設定領域100は、1つのキーワード入力欄110、ジャンル選択メニュー120及び検索ボタン130等を含む。キーワード入力欄110は、キーワードを入力するための領域である。各キーワードの区切りとして空白を入力することにより、ユーザは複数のキーワードを入力することができる。ジャンル選択メニュー120は、検索条件として指定するジャンルを選択するためのプルダウンメニューである。検索ボタン130が選択されると、電子商店街サーバ1は、商品名や商品説明等のテキスト情報が、キーワード入力欄110に入力されたキーワードを含む商品を検索する。ジャンル選択メニュー120によりジャンルが選択されていた場合、電子商店街サーバ1は、選択されたジャンルに含まれる商品の中から、入力されたキーワードで商品を検索する。なお、ユーザがキーワードを入力中である状態とは、例えば、ユーザがキーワード入力欄110にキーワードの入力を開始してから、ユーザが、検索ボタン130の選択、及び、後述する提案領域200からの検索条件の候補の選択の何れも行っていない状態をいう。
図5(a)は、ジャンル名の提示例を示す図である。また、図5(b)は、ジャンル名、属性名及び属性値の組み合わせの提示例を示す図である。また、図5(c)は、検索結果ページの表示例を示す図である。キーワード入力欄110に入力中の1語以上のキーワードのうち1番目のキーワードに相応するジャンル名が存在する場合、トップページには、図5(a)に示すように、提案領域200が表示される。提案領域200は、ジャンル名、或いは、ジャンル名、属性名及び属性値の組み合わせが、検索条件の候補として表示される領域である。キーワードが1語のみ入力されている場合、提案領域200には、1番目に相応するジャンル名が表示される。例えば、「日本酒」が入力されたとする。すると、提案領域200には、「日本酒」、「日本酒ベース」、「日本酒・焼酎」等のジャンル名が表示される。なお、各ジャンル名の下には、そのジャンル名が示すジャンルの親ジャンルのジャンル名も表示される。このときに、提案領域200からユーザが何れかのジャンル名を選択すると、電子商店街サーバ1は、選択されたジャンル名が示すジャンルに含まれる商品を検索する。
キーワード入力欄110に入力された1番目のキーワードに相応するジャンル名が存在しない場合であって、1番目のキーワードに相応するブランド名及びトピック名の少なくとも何れかが存在する場合、提案領域200には、1番目のキーワードに相応するブランド名またはトピック名が表示される。例えば、キーワードが「AB」である場合、「ABC」というブランド名が表示され、キーワードが「母の」である場合、「母の日特集」というトピック名が表示される。このときに、提案領域200からユーザがブランド名を選択すると、選択されたブランド名が示すブランドのブランドページがユーザ端末3の画面に表示される。ブランドページは、特定のブランドの情報が表示されるウェブページである。また、ブランドページは、特定のブランドの商品の中からユーザが所望する商品を検索するための検索条件を指定するためのウェブページである。提案領域200からユーザがトピック名を選択すると、選択されたトピック名が示すトピックのトピックページがユーザ端末3の画面に表示される。トピックページは、特定のトピックの情報が表示されるウェブページである。また、トピックページは、特定のトピックに関連する商品を検索するための検索条件を指定するためのウェブページである。ブランドページやトピックページでユーザが検索条件を指定するためのリンク等を選択した場合、電子商店街サーバ1は、例えば、指定された検索条件を示すキーワードで商品を検索してもよい。また、電子商店街サーバ1は、例えば、指定された検索条件に応じた属性項目及び属性値で商品を検索してもよい。また、ブランドやトピックに関連するジャンルが存在する場合、電子商店街サーバ1は、例えば、指定された検索条件に対応するジャンルで商品を検索してもよい。このように、ユーザが1番目のキーワードを入力することに基づいて、ブランドの商品やトピックに関連する商品の検索が容易となる。
トップページにおいてユーザがキーワードの入力を続けることにより、キーワード入力欄110に2番目のキーワードが入力されたとする。1番目のキーワードに相応するジャンル名に対応する属性値の中に2番目のキーワードに相応する属性値が存在する場合、提案領域200には、ジャンル名、属性名及び属性値の組み合わせが表示される。例えば、キーワード入力欄110に、更に、「 中」が入力されたとする。従って、キーワード入力欄110には、「日本酒 中」が入力された状態となる。すると、図5(b)に示すように、提案領域200には、「日本酒」のジャンル名が表示されるとともに、「日本酒」、「産地」及び「中国」の組み合わせと、「日本酒」、「産地」及び「中部」の組み合わせとが表示される。「ミネラルウォーター」も「産地」という属性名はあるが、「ミネラルウォーター」が1番目のキーワードに相応しない。従って、「ミネラルウォーター」についての組み合わせは表示されない。また、図5(b)は、「日本酒ベース」や「日本酒・焼酎」については表示されていないが、これらのジャンルにおいて、「中」を含む属性値が存在する場合、「日本酒ベース」や「日本酒・焼酎」についても組み合わせが表示される。
ユーザは、1番目のキーワードに相応するジャンル名が示すジャンルの商品について、如何なる属性名の属性があるかを知ることができ、また、属性に応じて如何なる属性値があるかを知ることができる。また、2つのキーワードの入力という簡単な操作で、ユーザは、属性名及び属性値の組み合わせを知ることができる。
ここで、ユーザが、提案領域200から「日本酒」、「産地」及び「中部」の組み合わせを選択したとする。すると、電子商店街サーバ1が商品の検索を行い、その結果、ユーザ端末3の画面には検索結果ページが表示される。検索結果ページは、商品の検索結果が表示されるウェブページである。図5(c)に示すように、検索結果ページは、検索条件設定領域100、検索結果表示領域300等を含む。検索条件設定領域100において、ユーザは、例えば、検索された商品の中から絞り込みを行うための検索条件を指定することができる。検索結果表示領域300には、検索された商品の一覧が表示される。例えば、検索された商品の商品名、画像、価格、店舗名等が表示される。検索結果表示領域300からユーザが何れかの商品を選択すると、選択された商品の商品ページがユーザ端末3の画面に表示される。商品ページは、特定の商品の詳細な情報が表示されるウェブページである。商品ページにおいて、ユーザは、商品を購入する操作を行うことができる。
図5(c)が示す検索結果表示領域300には、「日本酒」のジャンルに含まれる商品のうち、「産地」が「中部」である商品の一覧が表示される。仮に商品名や商品説明等のテキスト情報に「中部」という語(或いは、「産地」と「中部」の両方)が含まれている商品であっても、「産地」の属性値が「中部」ではない商品は検索されない。そのため、ユーザが所望する属性を有する商品を確実に検索することができるとともに、ユーザが所望する属性を有する商品以外の商品が検索されることを防止することができる。
図5は、同一ジャンル名の同一属性名において属性値が互いに異なる組み合わせが表示される例である。図6(a)及び図6(b)は、ジャンル名、属性名及び属性値の組み合わせの別の提示例を示す図である。図2に示すように、「ハンドバッグ」の「ブランド」の属性値として、例えば、「ABC」、「DEF」、「REDGGGG」等がある。また、「ハンドバッグ」の「色」の属性値として、例えば、「赤」、「白」、「青」、「黒」等がある。キーワード入力欄110に、ユーザが、例えば、「ハンドバッグ red」と入力したとする。すると、図6(a)に示すように、提案領域200には、「ハンドバッグ」のジャンル名が表示されるとともに、「ハンドバッグ」、「色」及び「赤」の組み合わせと、「ハンドバッグ」、「ブランド」及び「REDGGGG」の組み合わせとが表示される。このように、同一ジャンル名において属性名が互いに異なる組み合わせが表示される場合もある。
また、図2に示すように、電動ドリルの「ルータ」の「回転数」として、例えば、「400」、「500」、「600」等があり、パソコン・周辺機器の「ルータ」の「転送速度」として、例えば、「100」、「500」、「1000」等がある。キーワード入力欄110に、ユーザが、例えば、「ルータ 500」と入力したとする。すると、図6(b)に示すように、提案領域200には、電動ドリルの「ルータ」のジャンル名及びパソコン・周辺機器の「ルータ」のジャンル名が表示されるとともに、電動ドリルの「ルータ」、「回転数」及び「500」の組み合わせと、パソコン・周辺機器の「ルータ」、「転送速度」及び「500」の組み合わせとが表示される。このように、互いに異なるジャンル名の組み合わせが表示される場合もある。
なお、キーワード入力欄110に3語以上のキーワードが入力された場合、電子商店街サーバ1が3番目以降のキーワードをどのように扱うかは、電子商店街の運営者の任意である。例えば、1番目に相応するジャンル名に対応する属性値の中に、3番目以降のキーワードに相応する属性値がある場合、電子商店街サーバ1は、提案領域200に属性名と属性値との組が追加で表示されるように制御してもよい。この場合、1つの組み合わせに、属性名と属性値との組が複数含まれる。例えば、ユーザが「日本酒 中部 5」というキーワードを入力した場合、提案領域200に、「日本酒」、「産地」と「中部」との組、及び「内容量」と「500」との組から構成される組み合わせが表示される。ユーザがこの組み合わせを選択した場合、電子商店街サーバ1は、「日本酒」のジャンルに含まれる商品のうち、「産地」が「中部」であり、且つ、「内容量」が「500」である商品を検索する。
また、電子商店街サーバ1が3番目以降のキーワードを、キーワード検索に用いてもよい。例えば、ユーザが「日本酒 中部 吟醸」というキーワードを入力した後、提案領域200からユーザが「日本酒」、「産地」及び「中部」の組み合わせを選択した場合、電子商店街サーバ1は、「日本酒」のジャンルに含まれる商品のうち、「産地」が「中部」であり、且つ、商品名や商品説明が「吟醸」を含む商品を検索する。
また、電子商店街サーバ1は、提案領域200に属性名と属性値との組み合わせが表示される一方で、ジャンル名が表示されないように制御してもよい。また、電子商店街サーバ1は、提案領域200にジャンル名と属性値との組み合わせが表示される一方で、属性名が表示されないように制御してもよい。例えば、「ルータ」及び「500Mbps」の組み合わせが表示されてもよい。これらの場合においても、ユーザにより組み合わせが選択された場合の電子商店街サーバ1による検索方法は、上述した方法と同じである。
また、電子商店街サーバ1は、例えば、2番目のキーワードに相応するジャンル名を検索し、検索されたジャンル名に対応する属性値の中から、1番目のキーワードに相応する属性値を検索してもよい。また、商品の区分を如何なる基準で分けるかは運営者の任意である。その結果、区分が、ジャンル、カテゴリー等、如何なる名前で呼ばれるかは運営者の任意である。また、商品名や価格等の全ての商品に共通する属性の属性名及び属性値も提案領域200に表示されるようにするか否かは運営者の任意である。
また、トップページにおいて、ユーザがジャンル選択メニュー120によりジャンルを選択して検索ボタン130を選択した場合、電子商店街サーバ1は、選択されたジャンルに含まれる商品の中から、入力されたキーワードで商品を検索する。また、トップページには、ジャンルの一覧も表示される。また、検索結果ページにも、ジャンルの一覧が表示されてもよい。ユーザが、ジャンルの一覧から所望のジャンルを選択すると、電子商店街サーバ1は、選択されたジャンルに含まれる商品を検索する。これらの場合に表示される検索結果ページにおいて、ユーザがキーワード入力欄110にキーワードを入力して、検索ボタン130を選択すると、電子商店街サーバ1は、先に選択されたジャンルは現在の検索条件として既に選択されているジャンルであるとみなす。従って、電子商店街サーバ1は、既に選択されているジャンルに含まれる商品の中から、入力されたキーワードで商品を検索する。このように、ジャンルが既に選択されている状態の検索結果ページにおいて、キーワード入力欄110にユーザがキーワードを入力中であるとする。この場合、電子商店街サーバ1は、入力中のキーワードの数が1語であるか2語以上であるかにかかわらず、既に選択されているジャンルのジャンル名に対応する属性値の中から、例えば、1番目のキーワードに相応する属性値を検索してもよい。そして、電子商店街サーバ1は、検索した属性値を、検索条件の候補としてユーザ端末3により提示させてもよい。例えば、ユーザが、トップページのジャンルの一覧から、「日本酒・焼酎」を選択することにより、「日本酒・焼酎」に含まれる商品が検索されて、検索結果ページが表示される。次に、ユーザが、検索結果ページのジャンルの一覧から「日本酒」を選択することにより、「日本酒」に含まれる商品が検索されて、検索結果ページが表示される。次いで、ユーザが、検索結果ページのキーワード入力欄110に「中」と入力する。このとき、ジャンルとして「日本酒」が既に選択されているので、電子商店街サーバ1は、「日本酒」に対応する属性値として、「中国」及び「中部」を取得する。そして、提案領域200には、例えば、「産地 中国」及び「産地 中部」が表示される。このように、ユーザが1語のキーワードを入力することにより、ユーザがトップページにおいて2語以上のキーワードを入力した場合と同様の効果を奏することができる。
[1−3.電子商店街サーバの構成]
次に、電子商店街サーバ1の構成について、図7及び図8を用いて説明する。
図7は、本実施形態に係る電子商店街サーバ1の概要構成の一例を示すブロック図である。図7に示すように、電子商店街サーバ1は、通信部11と、記憶部12と、入出力インターフェース13と、システム制御部14と、を備えている。そして、システム制御部14と入出力インターフェース13とは、システムバス15を介して接続されている。
通信部11は、ネットワークNWに接続して、店舗端末2やユーザ端末3等との通信状態を制御するようになっている。
記憶部12は、例えば、ハードディスクドライブ等により構成されている。記憶部12は、本発明における記憶手段の一例である。この記憶部12には、会員情報DB12a、ジャンル情報DB12b、トピック情報DB12c、商品情報DB12d等のデータベースが構築されている。「DB」は、データベースの略語である。
図8(a)は、会員情報DB12aに登録される内容の一例を示す図である。会員情報DB12aには、情報処理システムSに会員登録しているユーザに関する会員情報が登録される。具体的に、会員情報DB12aには、ユーザID、パスワード、ニックネーム、氏名、生年月日、性別、郵便番号、住所、電話番号、電子メールアドレス等のユーザの属性が、ユーザごとに対応付けて登録される。
図8(b)は、ジャンル情報DB12bに登録される内容の一例を示す図である。ジャンル情報DB12bには、商品のジャンルに関するジャンル情報が登録されている。具体的に、ジャンル情報DB12bには、ジャンルID、ジャンル名、ジャンルのレベル、親ジャンルID、子ジャンルIDリスト、及び1つ以上の属性情報等のジャンルの属性が、ジャンルごとに対応付けて登録される。ジャンル情報は、例えば、電子商店街の運営者により設定される。
ジャンルIDは、ジャンル情報によって定義されるジャンルの識別情報である。ジャンルのレベルは、ジャンルの階層の深さを示す。例えば、最上位のジャンルのレベルは、1である。階層が深くなるほどレベルの値が大きくなる。親ジャンルIDは、ジャンルIDが示すジャンルの親ジャンルのジャンルIDである。子ジャンルIDリストは、ジャンルIDが示すジャンルの子ジャンルのジャンルIDのリストである。子ジャンルIDリストは、ジャンルIDが示すジャンルが子ジャンルを有する場合に設定される。
図8(c)は、属性情報に設定される内容の一例を示す情報である。属性情報は、ジャンルIDが示すジャンルに含まれる商品が有する属性の情報である。図8(c)に示すように、属性情報には、属性ID、属性名、及び1つ以上の属性値が属性項目ごとに対応付けて設定される。属性IDは、属性項目の識別情報である。属性情報には、ジャンルIDが示すジャンルの商品が、属性名により示される属性項目において有する可能性がある属性値が登録される。属性情報に含まれる属性値については、例えば、運営者が入力してもよいし、電子商店街サーバ1が自動的に登録してもよい。例えば、システム制御部14は、商品情報DB12dに登録された商品情報に含まれる属性値を属性情報中に追加してもよい。
図8(d)は、トピック情報DB12cに登録される内容の一例を示す図である。トピック情報DB12cには、トピックに関するトピック情報が登録される。具体的に、トピック情報DB12cには、トピックID、トピック名等がトピックごとに対応付けて登録される。トピックIDは、トピックの識別情報である。
図8(e)は、商品情報DB12dに登録される内容の一例を示す図である。商品情報DB12dには、電子商店街で販売されている商品に関する商品情報が登録される。商品情報は、店舗により登録される情報である。具体的に、商品情報DB12dには、店舗ID、商品ID、商品コード、ジャンルID、商品名、商品画像のURL、商品説明、商品価格、及びジャンルに応じた1つ以上の属性値等が、店舗が販売する商品ごとに対応付けて登録される。店舗IDは、商品の販売元の店舗の識別情報である。商品IDは、店舗が、販売する商品を管理するための商品の識別情報である。商品コードは、商品を識別するコード番号である。複数の店舗で同一の商品が販売される場合、同一の商品コードがそれぞれの商品に対して付与される。商品コードとしては、例えば、JAN(Japanese Article Number Code)コードがある。ジャンルIDは、商品が属するジャンルを示す。商品情報に設定されるジャンルIDは、基本的に、階層が最も深いジャンルのジャンルIDである。つまり、最も細分化されたジャンルのジャンルIDが設定される。商品名は、店舗が付けた商品の名称である。
ジャンルに応じた属性値は、ジャンル情報DB12bにおいて、ジャンルIDに対応するジャンル情報に設定される属性情報に対応して登録される。例えば、「日本酒」の1番目の属性情報が「産地」に関する属性情報であり、「日本酒」の2番目の属性情報が「内容量」に関する属性情報である場合、ジャンルに応じた属性値として、商品情報に設定される1番目の属性値は「産地」の属性値であり、2番目の属性値は「内容量」の属性値である。商品情報の属性値については、例えば、店舗が入力してもよいし、電子商店街サーバ1が自動的に登録してもよい。例えば、システム制御部14は、登録された商品情報の商品名や商品説明等を解析することにより、商品名や商品説明等から属性値を取得して登録してもよい。
次に、記憶部12に記憶されるその他の情報について説明する。記憶部12には、ウェブページを表示するためのHTML(HyperText Markup Language)文書、XML(Extensible Markup Language)文書、画像データ、テキストデータ、電子文書等の各種データが記憶されている。また、記憶部12には、各種の設定値が記憶されている。
また、記憶部12には、オペレーティングシステム、WWW(World Wide Web)サーバプログラム、DBMS(Database Management System)、電子商取引管理プログラム等の各種プログラムが記憶されている。電子商取引管理プログラムは、電子商取引に関する各種の処理を実行するためのプログラムである。電子商取引管理プログラムは、本発明における情報処理プログラムの一例である。なお、各種プログラムは、例えば、他のサーバ装置等からネットワークNWを介して取得されるようにしてもよいし、DVD(Digital Versatile Disc)等の記録媒体に記録されてドライブ装置を介して読み込まれるようにしてもよい。
入出力インターフェース13は、通信部11及び記憶部12とシステム制御部14との間のインターフェース処理を行うようになっている。
図9は、本実施形態に係る電子商店街サーバ1の機能ブロックの一例を示す図である。システム制御部14は、CPU14a、ROM(Read Only Memory)14b、RAM(Random Access Memory)14c等により構成されている。そして、システム制御部14は、CPU14aが、各種プログラムを読み出し実行することにより、図9に示すように、ジャンル検索部141、属性値検索部142、検索条件候補提供部143、商品検索部144及びブランド名・トピック名検索部145として機能するようになっている。ジャンル検索部141は、本発明における区分特定手段の一例である。属性値検索部142は、本発明における属性値取得手段の一例である。検索条件候補提供部143は、本発明における提示制御手段及び数取得手段の一例である。商品検索部144は、本発明における対象検索手段の一例である。
ジャンル検索部141は、キーワード入力欄110にユーザが入力中のキーワードが2以上ある場合、入力中の検索語のうち1番目のキーワードに相応するジャンル名を、ジャンル情報DB12bから検索する。これにより、ジャンル検索部141は、1番目のキーワードに相応するジャンルを特定する。属性値検索部142は、ジャンル検索部141により検索されたジャンル名に関連付けられた属性値の中で、キーワード入力欄110に入力中の検索語のうち2番目のキーワードに相応する属性値を、ジャンル情報DB12bから取得する。検索条件候補提供部143は、属性値検索部142により取得された属性値を、検索条件の候補としてユーザ端末3により提案領域200に表示させる。検索条件候補提供部143は、このときの属性値の表示の優先度も決定する。商品検索部144は、ユーザにより指定された検索条件に基づいて商品を検索する。検索条件の指定は、提案領域200から何れかの属性値を選択することを含む。ブランド名・トピック名検索部145は、キーワード入力欄110にユーザが入力中の1番目のキーワードに相応するブランド名やトピック名を検索する。
なお、電子商店街サーバ1が、複数のサーバ装置で構成されてもよい。例えば、電子商店街において商品の検索や注文等の処理を行うサーバ装置、属性名及び属性値に組み合わせの提示の制御を行うサーバ装置、ユーザ端末3からのリクエストに応じてウェブページを送信するサーバ装置、及びデータベースを管理するサーバ装置等が、互いにLAN等で接続されてもよい。
[1−4.情報処理システムの動作]
次に、情報処理システムSの動作について、図10及び図11を用いて説明する。
図10(a)は、本実施形態に係る電子商店街サーバ1のシステム制御部14の属性提案処理における処理例を示すフローチャートである。例えば、トップページのキーワード入力欄110にユーザが文字を入力するごとに、ユーザ端末3は、その時点でキーワード入力欄110に入力されている文字列を電子商店街サーバ1へ送信する。属性提案処理は、電子商店街サーバ1が文字列を受信するごとに実行される。
図10(a)に示すように、ジャンル検索部141は、受信した文字列からキーワードを特定する。そして、ジャンル検索部141は、1番目のキーワードに相応するジャンル名を検索する(ステップS11)。例えば、ジャンル検索部141は、ジャンル情報DB12bに登録されているジャンル名の中から、1番目のキーワードを含むジャンル名を検索する。次いで、ジャンル検索部141は、ジャンル名が検索されたか否かを判定する(ステップS12)。このとき、ジャンル検索部141は、ジャンル名が検索されたと判定した場合には(ステップS12:YES)、ステップS13に移行する。一方、ジャンル検索部141は、ジャンル名が検索されなかったと判定した場合には(ステップS12:NO)、ステップS17に移行する。
ステップS13において、検索条件候補提供部143は、検索されたジャンル名及びジャンル名に対応するジャンルIDを提案リストに登録する。提案リストは、提案領域200に表示される情報の一覧である。次いで、属性値検索部142は、受信された文字列に基づいて、2語以上のキーワードが入力されているか否かを判定する(ステップS14)。このとき、属性値検索部142は、2語以上のキーワードが入力されていると判定した場合には(ステップS14:YES)、ステップS15に移行する。一方、属性値検索部142は、1語のキーワードのみが入力されていると判定した場合には(ステップS14:NO)、ステップS16に移行する。
ステップS15において、属性値検索部142は、属性検索処理を実行する。図10(b)は、本実施形態に係る電子商店街サーバ1のシステム制御部14の属性検索処理における処理例を示すフローチャートである。図10(b)に示すように、属性値検索部142は、検索されたジャンル名に対応する属性値の中から、2番目のキーワードに相応する属性値を検索する(ステップS31)。具体的に、属性値検索部142は、検索されたジャンル名を含むジャンル情報から属性情報を取得する。次いで、属性値検索部142は、例えば、取得した属性情報に含まれる属性値の中から、2番目のキーワードを含む属性値を検索する。このとき、属性値検索部142は、取得した属性情報に応じて、例えば、2番目のキーワードと意味が一致する語であって、2番目のキーワードとは表記が異なる語を取得する。そして、属性値検索部142は、2番目のキーワードまたは表記法が異なる語の何れかを含む属性値を検索する。
次いで、属性値検索部142は、検索された属性値に対応する属性名を属性情報から取得する(ステップS32)。次いで、検索条件候補提供部143は、検索された属性値ごとに、属性値に対応するジャンル名、ジャンル名に対応するジャンルID、属性名、属性名に対応する属性ID及び属性値の組み合わせを提案リストに登録する(ステップS33)。検索条件候補提供部143は、この処理を終えると、属性検索処理を終了させる。
属性検索処理を終えると、検索条件候補提供部143は、図10(a)に示すように、提案リストを、文字列の送信元のユーザ端末3へ送信する(ステップS16)。検索条件候補提供部143は、この処理を終えると、属性提案処理を終了させる。
ステップS17において、ブランド名・トピック名検索部145は、1番目のキーワードに相応するブランド名を検索する。具体的に、ブランド名・トピック名検索部145は、ジャンル情報DB12bから、属性名が「ブランド」である属性情報を検索する。次いで、ブランド名・トピック名検索部145は、検索された属性情報に含まれる属性値の中から、例えば、1番目のキーワードを含む属性値を検索する。次いで、ブランド名・トピック名検索部145は、ブランド名が検索されたか否かを判定する(ステップS18)。このとき、ブランド名・トピック名検索部145は、ブランド名が検索されたと判定した場合には(ステップS18:YES)、ステップS19に移行する。一方、ブランド名・トピック名検索部145は、ブランド名が検索されなかったと判定した場合には(ステップS18:NO)、ステップS20に移行する。
ステップS19において、検索条件候補提供部143は、検索されたブランド名及びブランド名に対応する属性IDを提案リストに登録する。次いで、検索条件候補提供部143は、ステップS16に移行する。
ステップS20において、ブランド名・トピック名検索部145は、1番目のキーワードに相応するトピック名を検索する。具体的に、ブランド名・トピック名検索部145は、トピック情報DB12cから、1番目のキーワードを含むトピック名を検索する。次いで、ブランド名・トピック名検索部145は、トピック名が検索されたか否かを判定する(ステップS21)。このとき、ブランド名・トピック名検索部145は、トピック名が検索されたと判定した場合には(ステップS21:YES)、ステップS22に移行する。一方、ブランド名・トピック名検索部145は、トピック名が検索されなかったと判定した場合には(ステップS21:NO)、属性提案処理を終了させる。
ステップS22において、検索条件候補提供部143は、検索されたトピック名及びトピック名に対応するトピックIDを提案リストに登録する。次いで、検索条件候補提供部143は、ステップS16に移行する。
電子商店街サーバ1から提案リストを受信したユーザ端末3は、提案リストに基づいて、提案領域200を表示する。提案リストにジャンル名が登録されている場合、ユーザ端末3は、提案領域200にジャンル名を表示する。提案リストにジャンル名、属性名及び属性値の組み合わせが登録されている場合、ユーザ端末3は、提案領域200に組み合わせを表示する。これにより、ユーザ端末3の画面には、例えば、図5(a)、図5(b)、図6(a)または図6(b)に示すような内容が表示される。こうして、システム制御部14は、属性名及び属性値の組み合わせをユーザ端末3により提示させるように制御する。また、提案リストにブランド名またはトピック名が登録されている場合、ユーザ端末3は、提案領域200にブランド名またはトピック名を表示する。
図11は、本実施形態に係る電子商店街サーバ1のシステム制御部14の商品検索処理における処理例を示すフローチャートである。例えば、トップページにおいて、ユーザが検索ボタン130を選択した場合、ユーザ端末3は、検索リクエストを電子商店街サーバ1へ送信する。この場合の検索リクエストは、キーワード入力欄110に入力されたキーワードが設定される。また、ジャンル選択メニュー120によりジャンルが選択されている場合、検索リクエストは、入力されたキーワード及び選択されたジャンルのジャンルIDを含む。提案領域200からユーザが選択を行った場合にも、ユーザ端末3は検索リクエストを送信する。ユーザがジャンル名を選択した場合、検索リクエストは、選択されたジャンル名に対応するジャンルIDを含む。ユーザがジャンル名、属性名及び属性値の組み合わせを選択した場合、検索リクエストは、選択されたジャンル名に対応するジャンルID、選択された属性名に対応する属性ID、及び選択された属性値を含む。ユーザがブランド名を選択した場合、検索リクエストは、選択されたブランド名を含む。ユーザがトピック名を選択した場合、検索リクエストは、選択されたトピック名に対応するトピックIDを含む。商品検索処理は、電子商店街サーバ1がユーザ端末3から検索リクエストを受信したときに開始される。
図11に示すように、商品検索部144は、検索リクエストがジャンルの指定を含むか否かを判定する(ステップS41)。検索リクエストにジャンルIDが設定されている場合、検索リクエストは、ジャンルの指定を含む。商品検索部144は、検索リクエストがジャンルの指定を含むと判定した場合には(ステップS41:YES)、ステップS42に移行する。一方、商品検索部144は、検索リクエストがジャンルの指定を含まないと判定した場合には(ステップS41:NO)、ステップS48に移行する。
ステップS42において、商品検索部144は、商品情報DB12dから、検索リクエストに設定されたジャンルIDが示すジャンルに含まれる商品の商品情報を検索する。ジャンルIDが示すジャンルの子孫ジャンルに含まれる商品も、ジャンルIDが示すジャンに含まれる商品である。商品検索部144は、ジャンル情報DB12b及び商品情報に含まれるジャンルIDに基づいて、ジャンルIDが示すジャンルの商品の商品情報、及び、ジャンルIDが示すジャンルの子孫ジャンルの商品の商品情報を検索することができる。
次いで、商品検索部144は、検索リクエストが属性の指定を含むか否かを判定する(ステップS43)。検索リクエストに属性IDが設定されている場合、検索リクエストは、属性の指定を含む。商品検索部144は、検索リクエストが属性の指定を含むと判定した場合には(ステップS43:YES)、ステップS44に移行する。一方、商品検索部144は、検索リクエストが属性の指定を含まないと判定した場合には(ステップS43:NO)、ステップS45に移行する。
ステップS44において、商品検索部144は、検索された商品情報の中から、検索リクエトに設定された属性IDが示す属性項目の属性値が、検索リクエトに設定された属性値と合致する商品情報を検索する。次いで、商品検索部144は、ステップS47に移行する。
ステップS45において、商品検索部144は、検索リクエストがキーワードを含むか否かを判定する。このとき、商品検索部144は、検索リクエストがキーワードを含むと判定した場合には(ステップS45:YES)、ステップS46に移行する。一方、商品検索部144は、検索リクエストがキーワードを含まないと判定した場合には(ステップS45:NO)、ステップS47に移行する。
ステップS46において、商品検索部144は、検索された商品情報の中から、商品名や商品説明等が、検索リクエストに設定されたキーワードを含む商品情報を検索する。次いで、商品検索部144は、ステップS47に移行する。
ステップS47において、商品検索部144は、検索された商品情報に基づいて、検索結果ページを生成する。そして、商品検索部144は、生成した検索結果ページを、検索リクエストの送信元のユーザ端末3へ送信する。商品検索部144は、この処理を終えると、商品検索処理を終了させる。
ステップS48において、商品検索部144は、検索リクエストがブランドの指定を含むか否かを判定する。検索リクエストに、ブランド名が設定されている場合、検索リクエストは、ブランドの指定を含む。商品検索部144は、検索リクエストがブランドの指定を含むと判定した場合には(ステップS48:YES)、ステップS49に移行する。一方、商品検索部144は、検索リクエストがブランドの指定を含まないと判定した場合には(ステップS48:NO)、ステップS50に移行する。
ステップS49において、商品検索部144は、検索リクエストに設定されたブランド名に対応するブランドページを、検索リクエストの送信元のユーザ端末3へ送信する。商品検索部144は、この処理を終えると、商品検索処理を終了させる。
ステップS50において、商品検索部144は、検索リクエストがトピックの指定を含むか否かを判定する。検索リクエストにトピックIDが設定されている場合、検索リクエストは、トピックの指定を含む。商品検索部144は、検索リクエストがトピックの指定を含むと判定した場合には(ステップS50:YES)、ステップS51に移行する。一方、商品検索部144は、検索リクエストがトピックの指定を含まないと判定した場合には(ステップS50:NO)、ステップS52に移行する。
ステップS51において、商品検索部144は、検索リクエストに設定されたトピックIDに対応するトピックページを、検索リクエストの送信元のユーザ端末3へ送信する。商品検索部144は、この処理を終えると、商品検索処理を終了させる。
ステップS52において、商品検索部144は、商品情報DB12dから、商品名や商品説明等が、検索リクエストに設定されたキーワードを含む商品情報を検索する。次いで、商品検索部144は、ステップS47に移行する。
以上説明したように、本実施形態によれば、システム制御部14が、ユーザが入力中のキーワードが2以上ある場合、商品の複数のジャンルから、入力中のキーワードのうち1番目のキーワードに相応するジャンルを特定し、ジャンルに対応する属性の属性名及び属性値を関連付けて記憶する記憶部12から、特定されたジャンルに関連付けられた属性値の中で、1番目のキーワードと異なる2番目のキーワードに相応する属性値を取得し、取得された属性値を検索条件として提示させる。従って、入力中のキーワードに商品の属性値に相応するキーワードが含まれる場合、その属性値を検索条件の候補として提示することができる。
また、システム制御部14が、属性値とその属性値に関連付けられた属性名との組み合わせを検索条件として提示させる。従って、ユーザは、如何なる属性の属性値が検索条件の候補であるかを容易に認識することができる。
また、システム制御部14が、キーワードを構成する文字をユーザが入力するごとに、そのときの入力中のキーワードのうち1番目のキーワードに相応するジャンルを特定し、特定されたジャンルに関連付けられた属性値の中で、そのときの入力中のキーワードのうち2番目のキーワードに相応する属性値を取得し、取得された属性値を提示させる。従って、そのときの入力中のキーワードに応じて取得された属性値が検索条件として提示される。そのため、ユーザからの文字の入力にリアルタイムに対応した属性値を提示することができる。
また、システム制御部14が、提示された1つ以上の属性値の中から何れかの属性値がユーザにより選択された場合、特定されたジャンルに含まれる商品の中から、選択された属性値に関連付けられた属性名が示す属性の属性値が、選択された属性値と合致する商品を検索する。従って、ユーザは、ジャンル及び属性値を検索条件として容易に指定することができる。また、ユーザが所望する属性値を有する商品以外の商品が検索されることを防止することができる。
[2.第2実施形態]
次に、第2実施形態について、図12及び図13を用いて説明する。第2実施形態においては、電子商店街サーバ1が、検索条件の候補としての属性値をユーザ端末3により提示させるとき、1番目のキーワードに相応するジャンルと2番目のキーワードとの関連性に基づいて、属性値の提示の優先度を決定する。例えば、図6(b)に示すように、提案領域200にジャンル名が互いに異なる組み合わせが表示される場合がある。この場合に、電子商店街サーバ1は、ユーザにより入力される2番目のキーワードとの関連性が高いジャンル名を含む組み合わせの表示の優先順位が高くなるように制御する。優先順位は、優先度の一例である。なお、第1実施形態と同様の点についての説明は省略する。
図12(a)は、ジャンル情報DB12bに登録される内容の一例を示す図である。本実施形態に係るジャンル情報DB12bには、ジャンルID、ジャンル名、関連語、ジャンルのレベル、親ジャンルID、子ジャンルIDリスト、及び1つ以上の属性情報が登録される。関連語は、ジャンルIDが示すジャンルに関連する語である。例えば、関連語は、属性値に付加される語である。属性値に付加される関連語として、例えば、単位を示す語がある。
図12(b)は、関連語の登録例を示す図である。図12(c)は、ジャンル名、属性名及び属性値の組み合わせの提示例を示す図である。図12(b)に示すように、電動ドリルの「ルータ」の関連語として、例えば、「回転/分」が登録されている。一方、パソコン・周辺機器の「ルータ」の関連語として、例えば、「Mbps」が登録されている。
この場合において、例えば、キーワード入力欄110にユーザが「ルータ 500mbps」と入力する。「500mbps」という語は、パソコン・周辺機器の「ルータ」では使われる蓋然性があるが、電動ドリルの「ルータ」では使われる蓋然性が低い。従って、「500mbps」とパソコン・周辺機器の「ルータ」との関連性は、「500mbps」と電動ドリルの「ルータ」との関連性よりも高い。そのため、図12(c)に示すように、提案領域200には、パソコン・周辺機器の「ルータ」、「転送速度」及び「500」の組み合わせの方が、電動ドリルの「ルータ」、「回転数」及び「500」の組み合わせよりも上に表示される。つまり、パソコン・周辺機器の「ルータ」、「転送速度」及び「500」の組み合わせの表示の優先順位の方が、電動ドリルの「ルータ」、「回転数」及び「500」の組み合わせの表示の優先順位より高くなる。
一方、例えば、キーワード入力欄110にユーザが「ルータ 500回転」と入力すると、提案領域200には、電動ドリルの「ルータ」、「回転数」及び「500」の組み合わせの方が、パソコン・周辺機器の「ルータ」、「転送速度」及び「500」の組み合わせよりも上に表示される。
なお、パソコン・周辺機器の「ルータ」の親ジャンルは「パソコン・周辺機器」であり、電動ドリルの「ルータ」の親ジャンルは、「電動ドリル」である。運営者は、パソコン・周辺機器の「ルータ」の関連語として「Mbps」を登録する代わりに、「パソコン・周辺機器」の関連語として「Mbps」を登録してもよい。また、運営者は、電動ドリルの「ルータ」の関連語として「回転数」を登録する変わりに、「電動ドリル」の関連語として「回転数」を登録してもよい。
また、電子商店街サーバ1は、組み合わせの表示の優先順位を決定する代わりに、組み合わせを表示するか否かを決定してもよい。具体的に、電子商店街サーバ1は、2番目のキーワードとの関連性があるジャンル名を含む組み合わせの提示の優先度は高いと決定し、2番目のキーワードとの関連性がないジャンル名を含む組み合わせの提示の優先度は低いと決定する。そして、電子商店街サーバ1は、優先度は高いと決定された組み合わせのみが提示されるように制御する。例えば、図12(b)の例において、キーワード入力欄110にユーザが「ルータ 500mbps」と入力する。すると、パソコン・周辺機器の「ルータ」、「転送速度」及び「500」の組み合わせは表示される一方で、電動ドリルの「ルータ」、「回転数」及び「500」の組み合わせは表示されない。
図13は、本実施形態に係る電子商店街サーバ1のシステム制御部14の属性検索処理における処理例を示すフローチャートである。図13において、図10(b)と同様の処理については同様の符号が付されている。
図13に示すように、検索条件候補提供部143は、ユーザにより入力された2番目のキーワードが数字と数字以外の文字とを含むか否かを判定する(ステップS61)。ここで、数字以外の文字を、「非数字」という。2番目のキーワードが数字及び非数字の何れか一方を含まないと検索条件候補提供部143が判定した場合には(ステップS61:NO)、属性値検索部142及び検索条件候補提供部143は、ステップS31〜S33を実行して、属性検索処理を終了させる。一方、検索条件候補提供部143は、2番目のキーワードが数字と非数字とを含むと判定した場合には(ステップS61:YES)、ステップS62に移行する。
ステップS62において、属性値検索部142は、検索されたジャンル名に対応する属性値の中から、2番目のキーワードに含まれる数字を含む属性値を検索する。具体的に、属性値検索部142は、検索されたジャンル名を含むジャンル情報から属性情報を取得する。次いで、属性値検索部142は、検索された属性値に対応する属性名を属性情報から取得する(ステップS63)。
次いで、検索条件候補提供部143は、検索されたジャンル名に対応する関連語の中から、2番目のキーワードに含まれる非数字を含む関連語を検索する(ステップS64)。次いで、検索条件候補提供部143は、検索された属性値ごとに、属性値に対応するジャンル名、ジャンル名に対応するジャンルID、属性名、属性名に対応する属性ID及び属性値の組み合わせを提案リストに登録する。このとき、検索条件候補提供部143は、関連語が検索されたジャンル名を含む組み合わせが、関連語が検索されなかったジャンル名を含む組み合わせよりも表示の優先順位が高くなるように、登録を行う(ステップS65)。提案リスト内での順番が前であるほど、表示の優先順位が高い。検索条件候補提供部143は、この処理を終えると、属性検索処理を終了させる。
提案リストを受信したユーザ端末3は、提案リスト内の順番に従って、提案領域200にジャンル名、属性名及び属性値の組み合わせを表示させる。
以上説明したように、本実施形態によれば、システム制御部14が、1番目のキーワードに相応するジャンルと、2番目のキーワードと、の関連性に基づいて、属性値の提示の優先度を決定する。具体的に、システム制御部14は、1番目のキーワードに相応するジャンルとして検索されたジャンルにおいて使われる単位を示す語を2番目のキーワードが含む組み合わせの優先度を、検索されたジャンルにおいて使われる単位を示す語を2番目のキーワードが含まない組み合わせの優先度よりも高くする。従って、ユーザが所望するジャンルに対応する属性値をユーザが容易に見付けることができる。
[3.第3実施形態]
次に、第3実施形態について、図14及び図15を用いて説明する。第3実施形態においては、電子商店街サーバ1が、検索条件の候補として属性値をユーザ端末3により提示させるとき、属性名及び属性値の組み合わせにより示される属性を有する商品の数に基づいて、属性値の提示の優先度を決定する。具体的に、電子商店街サーバ1は、組み合わせに含まれるジャンル名が示すジャンルに含まれる商品のうち、組み合わせに含まれる属性名に対応する属性値が、組み合わせに含まれる属性値である商品の数が多い組み合わせほど、表示の優先順位が高くなるように制御する。なお、第1実施形態と同様の点についての説明は省略する。
図14(a)は、商品数の一例を示す図である。図14(b)は、ジャンル名、属性名及び属性値の組み合わせの提示例を示す図である。例えば、図14(a)に示すように、電子商店街で販売されている商品のうち、「日本酒」のジャンルに含まれ、且つ、「産地」が「中国」である商品が100個存在するとする。また、「日本酒」のジャンルに含まれ、且つ、「産地」が「中部」である商品が200個存在するとする。この場合において、例えば、キーワード入力欄110にユーザが「日本酒 中」と入力する。すると、図14(b)に示すように、提案領域200には、「日本酒」、「産地」及び「中部」の組み合わせの方が、「日本酒」、「産地」及び「中国」の組み合わせよりも上に表示される。
なお、図14の例は、同一ジャンル名の同一属性名において属性値が互いに異なる場合の例であるが、同一ジャンル名で属性値が互いに異なる場合や、ジャンル名が互いに異なる場合についても同様である。
図15は、本実施形態に係る電子商店街サーバ1のシステム制御部14の属性検索処理における処理例を示すフローチャートである。図15において、図10(b)と同様の処理については同様の符号が付されている。
図15に示すように、属性値検索部142及び検索条件候補提供部143は、は、ステップS31〜S33を実行する。次いで、商品検索部144は、提案リストに登録された組み合わせごとに、ジャンル名が示すジャンルに含まれる商品のうち、組み合わせに含まれる属性名に対応する属性値が、組み合わせに含まれる属性値である商品を検索する(ステップS71)。具体的に、商品検索部144は、商品情報DB12dから、組み合わせに含まれるジャンルIDが示すジャンルに含まれる商品の商品情報を検索する。次いで、商品検索部144は、検索された商品情報の中から、組み合わせに含まれる属性IDが示す属性項目の属性値が、組み合わせに含まれる属性値と合致する商品情報を検索する。
次いで、検索条件候補提供部143は、組み合わせごとに、検索された商品の数を取得する(ステップS72)。具体的に、検索条件候補提供部143は、検索された商品情報の数をカウントする。次いで、検索条件候補提供部143は、提案リストに登録された組み合わせを、取得された商品の数が多い順に並べ替える(ステップS73)。検索条件候補提供部143は、この処理を終えると、属性検索処理を終了させる。
以上説明したように、本実施形態によれば、システム制御部14が、1番目のキーワードに相応するジャンルに含まれる商品のうち、2番目のキーワードに相応する属性値に対応する属性名が示す属性の属性値が、2番目のキーワードに相応する属性値と合致する商品の数を取得し、取得された数に基づいて、属性値の提示の優先度を決定する。従って、ユーザが所望する蓋然性がある属性値をユーザが容易に見付けることができる。その理由は、商品の数が多い属性値であるほど、その属性値を有する商品に対する需要が大きい蓋然性があるからである。
[4.第4実施形態]
次に、第4実施形態について、図16及び図17を用いて説明する。第4実施形態においては、電子商店街サーバ1が、検索条件として属性値をユーザ端末3により提示させるとき、2番目のキーワードと、2番目のキーワードに相応する属性値に対応する属性名が示す属性項目との関連性に基づいて、属性値の提示の優先度を決定する。具体的に、電子商店街サーバ1は、ユーザにより入力される2番目のキーワードとの関連性が高い属性項目を示す属性名を含む組み合わせの表示の優先順位が高くなるように制御する。なお、第1実施形態と同様の点についての説明は省略する。
図16(a)は、属性情報に設定される内容の一例を示す図である。本実施形態に係るジャンル情報DB12bに登録される属性情報には、属性ID、属性名、関連語、及び1つ以上の属性値が設定される。関連語は、属性名が示す属性項目に関連する語である。例えば、関連語は、属性値に付加される語である。属性値に付加される関連語として、例えば、単位を示す語がある。関連語は、例えば、属性値が数値である属性項目について登録される。
図16(b)は、関連語の登録例を示す図である。図16(c)は、ジャンル名、属性名及び属性値の組み合わせの提示例を示す図である。図16(b)に示すように、「液晶テレビ」というジャンルの属性名として、例えば、「消費電力」及び「画面サイズ」があるとする。「消費電力」の関連語として、例えば、「W」が登録されている。「画面サイズ」の関連語として、例えば、「インチ」が登録されている。
この場合において、例えば、キーワード入力欄110にユーザが「液晶テレビ 32イ」と入力する。「32イ」は、画面サイズを示す「32インチ」の一部である。一方、「32イ」は、消費電力に関連する語ではないと考えられる。そのため、図16(c)に示すように、提案領域200には、「液晶テレビ」、「画面サイズ」及び「32」の組み合わせが、「液晶テレビ」、「消費電力」及び「32」の組み合わせよりも上に表示される。なお、電子商店街サーバ1は、組み合わせの表示の優先順位を決定する代わりに、組み合わせを表示するか否かを決定してもよい。
なお、図16の例は、ジャンル名が互いに同一である場合の例であるが、ジャンル名が互いに異なる場合についても同様である。例えば、第2実施形態の図12の例において、電動ドリルの「ルータ」の「回転数」の関連語として、「回転数/分」が登録され、パソコン・周辺機器の「ルータ」の「転送速度」の関連語として、「Mbps」が登録されているとする。この場合において、キーワード入力欄110にユーザが「ルータ 500mbps」と入力すると、図12(c)に示すような順序で組み合わせが表示される。
図17は、本実施形態に係る電子商店街サーバ1のシステム制御部14の属性検索処理における処理例を示すフローチャートである。図17において、図13と同様の処理については同様の符号が付されている。
図17に示すように、検索条件候補提供部143は、ユーザにより入力された2番目のキーワードが数字と非数字とを含むか否かを判定する(ステップS61)。このとき、検索条件候補提供部143が2番目のキーワードが数字及び非数字のうち何れかを含まないと判定した場合には(ステップS61:NO)、属性値検索部142及び検索条件候補提供部143は、ステップS31〜S33を実行して、属性検索処理を終了させる。一方、検索条件候補提供部143は、2番目のキーワードが数字と非数字とを含むと判定した場合には(ステップS61:YES)、ステップS62を実行する。
属性値検索部142がステップS62の処理を終えると、検索条件候補提供部143は、検索された属性値に対応する属性名及び関連語を属性情報から取得する(ステップS81)。次いで、検索条件候補提供部143は、取得した関連語の中から、2番目のキーワードに含まれる非数字を含む関連語を検索する(ステップS82)。次いで、検索条件候補提供部143は、検索された属性値ごとに、属性値に対応するジャンル名、ジャンル名に対応するジャンルID、属性名、属性名に対応する属性ID及び属性値の組み合わせを提案リストに登録する。このとき、検索条件候補提供部143は、関連語が検索された属性名を含む組み合わせが、関連語が検索されなかった属性名を含む組み合わせよりも表示の優先順位が高くなるように、登録を行う(ステップS83)。検索条件候補提供部143は、この処理を終えると、属性検索処理を終了させる。
以上説明したように、本実施形態によれば、システム制御部14が、1番目のキーワードに相応する属性値に関連付けられた属性名が示す属性と、2番目のキーワードと、の関連性に基づいて、属性値の提示の優先度を決定する。具体的に、システム制御部14は、2番目のキーワードに相応する属性値に関連付けられた属性名が示す属性項目の単位を示す語を2番目のキーワードが含む属性値の優先度を、2番目のキーワードに相応する属性値に関連付けられた属性名が示す属性項目の単位を示す語を2番目のキーワードが含まない属性値の優先度よりも高くする。従って、ユーザが所望する属性値をユーザが容易に見付けることができる。
なお、電子商店街サーバ1は、第2実施形態〜第4実施形態のうち2つ以上の実施形態を組み合わせて、ジャンル名、属性名及び属性値の組み合わせの提示の優先度を決定してもよい。
[5.第5実施形態]
次に、第5実施形態について、図18乃至図20を用いて説明する。第5実施形態においては、電子商店街サーバ1が、ユーザが検索条件として1番目のキーワード、すなわち、1つのキーワードを入力中であるとき、入力中の1番目のキーワードに相応する属性名及び属性値の組み合わせを、ユーザ端末3によりユーザへ提示させる。具体的に、電子商店街サーバ1は、全てのジャンルの属性名に対応する属性値を検索範囲として、1番目のキーワードに相応する属性値を検索する。そして、電子商店街サーバ1は、検索された属性値に対応する属性名及び検索された属性値の組み合わせを、検索条件の候補として、ユーザ端末3によりユーザへ提示させる。
図18は、属性名及び属性値の組み合わせの提示例を示す図である。図18に示すように、キーワード入力欄110に、「中」が入力されたとする。すると、提案領域200には、「産地」及び「中国」の組み合わせと、「産地」及び「中部」の組み合わせとが表示される。何れの組み合わせも、「日本酒」及び「ミネラルウォーター」に対応する組み合わせである。なお、電子商店街サーバ1は、提案領域200に属性値のみが表示され、属性名が表示されないように制御してもよい。
提示された1つ以上の組み合わせの中から何れかの組み合わせをユーザが選択すると、電子商店街サーバ1は、選択された組み合わせに含まれる属性名が示す属性を有するジャンルの商品の中から、その属性名が示す属性の属性値が、選択された組み合わせに含まれる属性値に合致する商品を検索する。例えば、図18において、ユーザが、提案領域200から「産地」及び「中部」の組み合わせを選択したとする。すると、電子商店街サーバ1は、「産地」の属性を有する「日本酒」及び「ミネラルウォーター」のジャンルのそれぞれの商品の中から、「産地」が「中部」である商品を検索する。
図19は、本実施形態に係る電子商店街サーバ1のシステム制御部14の属性提案処理における処理例を示すフローチャートである。図19において、図10(a)と同様の処理については同様の符号が付されている。図19に示すように、ステップS12において、ジャンル検索部141は、ジャンル名が検索されなかったと判定した場合には(ステップS12:NO)、ステップS91に移行する。ステップS91において、属性値検索部142は、全てのジャンルの属性値の中から、1番目のキーワードに相応する属性値を検索する。具体的に、属性値検索部142は、ジャンル情報DB12bに登録されている全ての属性情報から、1番目のキーワードを含む属性値を検索する。このとき、属性値検索部142は、1番目のキーワードと意味が一致する属性値であって、1番目のキーワードとは表記が異なる属性値も検索してもよい。
次いで、属性値検索部142は、属性値が検索されたか否かを判定する(ステップS92)。このとき、属性値検索部142は、属性値が検索されたと判定した場合には(ステップS92:YES)、ステップS93に移行する。一方、属性値検索部142は、属性値が検索されなかったと判定した場合には(ステップS92:NO)、ステップS17に移行する。
ステップS93において、属性値検索部142は、検索された属性値に対応する属性名を属性情報から取得する。次いで、検索条件候補提供部143は、検索された属性値ごとに、属性値に対応する属性名、属性名に対応する属性ID及び属性値の組み合わせを提案リストに登録する(ステップS94)。このとき、検索条件候補提供部143は、同一の属性名及び属性値の組み合わせが二重に登録されないようにする。なお、本実施形態においては、異なるジャンル間で同一の属性名がある場合、その属性名に対応する属性IDは、ジャンル間で同一であるものとする。ステップS94の処理が終わると、検索条件候補提供部143は、提案リストをユーザ端末3へ送信する(ステップS16)。提案リストを受信したユーザ端末3は、提案リストに基づいて、例えば図18に示すように、提案領域200を表示するとともに、提案領域200に組み合わせを表示する。
図20は、本実施形態に係る電子商店街サーバ1のシステム制御部14の商品検索処理における処理例を示すフローチャートである。図20において、図11と同様の処理については同様の符号が付されている。トップページにおいて、提案領域200からユーザが属性名及び属性値の組み合わせを選択した場合も、ユーザ端末3は検索リクエストを送信する。この場合、検索リクエストは、選択された属性名に対応する属性ID及び選択された属性値を含む。
図20に示すように、ステップS41において、商品検索部144は、検索リクエストがジャンルの指定を含まないと判定した場合には(ステップS41:NO)、ステップS101に移行する。ステップS101において、商品検索部144は、検索リクエストが属性の指定を含むか否かを判定する。このとき、商品検索部144は、検索リクエストが属性の指定を含むと判定した場合には(ステップS101:YES)、ステップS102に移行する。一方、商品検索部144は、検索リクエストが属性の指定を含まないと判定した場合には(ステップS101:NO)、ステップS48に移行する。
ステップS102において、商品検索部144は、指定された属性を有する商品のジャンルを検索する。具体的に、商品検索部144は、ジャンル情報DB12bから、検索リクエストに設定された属性IDと、検索リクエストに設定された属性値とを含む属性情報を検索する。そして、商品検索部144は、検索された属性情報を含むジャンル情報から、ジャンルIDを取得する。次いで、商品検索部144は、商品情報DB12dから、取得されたジャンルIDが示すジャンルに含まれる商品の商品情報を検索する(ステップS103)。このときの検索方法は、ステップS42と同様である。次いで、商品検索部144は、検索された商品情報の中から、検索リクエストに設定された属性IDが示す属性項目の属性値が、検索リクエストに設定された属性値と合致する商品情報を検索する(ステップS104)。次いで、商品検索部144は、検索された商品情報に基づいて、検索結果ページの生成及び送信を実行する(ステップS47)。
以上説明したように、本実施形態によれば、システム制御部14が、ジャンルに対応する属性の属性名及び属性値を関連付けて記憶する記憶部12から、入力中のキーワードに相応する属性値を取得し、取得された属性値を検索条件として提示させる。従って、入力中のキーワードが商品の属性値に相応するキーワードである場合、その属性値を検索条件の候補として提示することができる。
[6.第6実施形態]
次に、第6実施形態について、図21及び図22を用いて説明する。第6実施形態においては、ユーザが予めジャンルを選択している状態で1番目のキーワードを入力中であるとき、電子商店街サーバ1が、選択されているジャンルに関連するキーワードのうち、入力中のキーワードに相応するキーワードをユーザ端末3によりユーザへ提示させる。また、電子商店街サーバ1が、選択されているジャンルに関連付けられた属性値の中で、1番目のキーワードに相応する属性名及び属性値の組み合わせを、ユーザ端末3によりユーザへ提示させる。
図21は、キーワードと、属性名及び属性値の組み合わせとの提示例を示す図である。図21に示すように、ジャンル選択メニュー120を操作することにより、ユーザが日本酒を選択しているとする。また、例えば、ユーザが検索条件として日本酒のジャンルを指定して、電子商店街サーバ1が日本酒のジャンルに属する商品を検索してもよい。この場合、ユーザ端末3の画面には、検索条件設定領域100を含む検索結果ページが表示される。このときのジャンル選択メニュー120は、日本酒が選択されている状態である。日本酒のジャンルが選択されている状態で、キーワード入力欄110に、「中」が入力されたとする。すると、提案領域200には、キーワード「中納言」及び「中尊寺」が表示されるとともに、「産地」及び「中国」の組み合わせと、「産地」及び「中部」の組み合わせとが表示される。「中納言」及び「中尊寺」は、例えば、日本酒の銘柄の名前である。「産地」及び「中国」の組み合わせと、「産地」及び「中部」の組み合わせは、日本酒のジャンルに対応する組み合わせである。例えば、ジャンルとしてハンドバックが選択されていた場合、これらの組み合わせは表示されない。
提示された1つ以上のキーワードの中から何れかのキーワードをユーザが選択すると、電子商店街サーバ1は、選択されているジャンルに属する商品の中から、選択されたキーワードでキーワード検索を行う。提示された1つ以上の組み合わせの中から何れかの組み合わせをユーザが選択すると、電子商店街サーバ1は、選択されているジャンルに属する商品の中から、選択された組み合わせに含まれる属性名が示す属性の属性値が、選択された組み合わせに含まれる属性値に合致する商品を検索する。
ジャンルに関連するキーワードを提示するため、例えば、記憶部12には、クエリログDB、キーワードDBが構築される。クエリログDBは、クエリログが登録される。電子商店街サーバ1は、検索リクエストを受信するたびにクエリログを登録する。クエリログは、例えば、検索リクエストの受信日時、検索リクエストに含まれる検索条件の情報等を含む。検索条件の情報として、キーワード、ジャンルID、属性ID、属性値等がある。キーワードDBには、ジャンルに関連するキーワードが登録される。具体的に、キーワードDBには、ジャンルIDとキーワードとの組み合わせが複数登録される。例えば、電子商店街サーバ1は、ジャンルIDとキーワードとの組み合わせのうち、ユーザが検索条件として指定する頻度が高い組み合わせを登録する。電子商店街サーバ1は、クエリログDBを参照することにより、指定される頻度が高い組み合わせを抽出することができる。例えば、電子商店街サーバ1は、所定回数以上指定された組み合わせを登録してもよい。
本実施形態において、システム制御部14は、更にキーワード検索部として機能する。キーワード検索部は、選択されているジャンルに関連するキーワードのうち、入力中のキーワードに相応するキーワードを検索する。図22は、本実施形態に係る電子商店街サーバ1のシステム制御部14の属性提案処理における処理例を示すフローチャートである。図22において、図10(a)と同様の処理については同様の符号が付されている。例えば、トップページのキーワード入力欄110にユーザが文字を入力するごとに、ユーザ端末3は、その時点でキーワード入力欄110に入力されている文字列を電子商店街サーバ1へ送信する。このとき、ジャンルが選択されている場合、ユーザ端末3は、選択されているジャンルのジャンルIDと、入力されている文字列とを送信する。
図22に示すように、ステップS12において、ジャンル検索部141は、ジャンル名が検索されなかったと判定した場合には(ステップS12:NO)、ステップS111に移行する。ステップS111において、キーワード検索部は、ユーザ端末3からジャンルIDを受信したか否かを判定する。このとき、キーワード検索部は、ジャンルIDを受信していないと判定した場合には(ステップS111:NO)、ステップS91に進む。一方、キーワード検索部は、ジャンルIDを受信したと判定した場合には(ステップS111:YES)、ステップS112に進む。
ステップS112において、キーワード検索部は、受信したジャンルIDに関連するキーワードのうち、1番目のキーワードに相応するキーワードを検索する。具体的に、キーワード検索部は、受信したジャンルIDが示すジャンルの子孫ジャンルのジャンルIDを、ジャンル情報DB12bから取得する。そして、キーワード検索部は、受信したジャンルIDに対応するキーワード、及び、子孫ジャンルのジャンルIDに対応するキーワードを、キーワードDBから検索する。次いで、キーワード検索部は、検索されたキーワードの中から、1番目のキーワードに相応するキーワードを検索する。一番目のキーワードに相応するジャンル名は、例えば、一番目のキーワードと一致するキーワード、及び、一部が一番目のキーワードと一致するキーワードの少なくとも何れか一方であってもよい。また、一番目のキーワードに相応するジャンル名は、例えば、一番目のキーワードに前方一致するキーワードであってもよいし、一番目のキーワードに後方一致するキーワードであってもよい。次いで、キーワード検索部は、検索したキーワードを提案リストに登録する(ステップS113)。
次いで、属性値検索部142は、受信したジャンルIDが示すジャンルの属性値の中から、1番目のキーワードに相応する属性値を検索する。具体的に、属性値検索部142は、ジャンル情報DB12bから、受信したジャンルIDを含む属性情報、及び、子孫ジャンルのジャンルIDを含む属性情報を検索する。次いで、属性値検索部142は、検索された属性情報から、1番目のキーワードを含む属性値を検索する。次いで、属性値検索部142は、ステップS92に進む。
商品検索処理は、図20と同様である。提案領域200からユーザがキーワードを選択した場合、ユーザ端末3は検索リクエストを送信する。この場合、検索リクエストは、選択されているジャンルのジャンルID及び選択されたキーワードを含む。この場合、ステップS46において、商品検索部144は、検索リクエストに設定されたジャンルIDが示すジャンルに属する商品情報の中から、商品名や商品説明等が、検索リクエストに設定されたキーワードを含む商品情報を検索する。提案領域200からユーザが属性名及び属性値の組み合わせを選択した場合、ユーザ端末3は検索リクエストを送信する。この場合、検索リクエストは、選択されているジャンルのジャンルID、選択された属性名に対応する属性ID及び選択された属性値を含む。この場合、ステップS44において、商品検索部144は、検索リクエストに設定されたジャンルIDが示すジャンルに属する商品情報の中から、検索リクエトに設定された属性IDが示す属性項目の属性値が、検索リクエトに設定された属性値と合致する商品情報を検索する。
以上説明したように、本実施形態によれば、システム制御部14が、ジャンルとキーワードとを関連付けて記憶する記憶部12から、ユーザに指定されたジャンルに関連するキーワードのうち、入力中のキーワードに相応する属性値を取得し、取得されたキーワードを検索条件として提示させる。従って、キーワードの入力の手間を省くことができる。
なお、上記各実施形態においては、複数の店舗から商品が販売される電子商店街に本発明が適用されていた。しかしながら、単一の販売元から商品が販売される電子商取引のウェブサイトに本発明が適用されてもよい。
また、上記各実施形態においては、本発明の検索対象が商品に適用されていた。しかしながら、本発明の検索対象が、例えば、サービス、ウェブページ、画像、動画、音声、地図、ニュース、ブログの記事等に適用されてもよい。