(57)【特許請求の範囲】
【請求項１】
キーワードと該キーワードに関連する関連データとを対応付けて検索可能に記憶する複数のデータベースに含まれるデータと、１又は複数の文字列を含む入力データとを取得するデータ取得部と、
前記データ取得部によって取得された入力データに含まれる１又は複数の文字列から、所定の規則に従って、１又は複数のキーワードを抽出するキーワード抽出部と、
前記キーワード抽出部により抽出された前記１又は複数のキーワードを前記データベースを用いて検索し、該キーワードに対応付けられた関連データを特定するデータ特定部と、
前記データ特定部によって特定された関連データを前記入力データに対応するデータとして出力するデータ出力部と
を備え、
前記データ取得部は、外部端末から送信される前記入力データと、当該外部端末のユーザの属性であって当該外部端末にあらかじめ記憶された当該外部端末のユーザの性別、年齢、職業又は趣味を表す付加データとを取得し、
前記複数のデータベースの各々は、他のデータベースと相対的に定められる順位であって前記属性に応じて異なるあらかじめ割り当てられた順位を有し、
前記データ特定部は、前記データ取得部により取得された付加データに応じて定められる前記順位がより高い前記データベースを優先して前記関連データを特定する
データ検索装置。
【請求項２】
前記文字列は、他の文字列と相対的に定められる順位を有し、
前記キーワード抽出部は、前記順位がより高い文字列を前記キーワードとして抽出する  ことを特徴とする請求項１に記載のデータ検索装置。
【請求項３】
前記順位が前記文字列の表示態様又は入力項目に応じて定められる
ことを特徴とする請求項２に記載のデータ検索装置。
【請求項４】
前記特定部は、前記データベース及び前記キーワードの前記順位を組み合わせて用いて前記関連データを特定する
ことを特徴とする請求項２又は３に記載のデータ検索装置。
【請求項５】
データ検索装置が、
キーワードと該キーワードに関連する関連データとを対応付けて検索可能に記憶する複数のデータベースに含まれるデータと、１又は複数の文字列を含む入力データとを取得する第１のステップと、
前記取得した入力データに含まれる１又は複数の文字列から、所定の規則に従って、１又は複数のキーワードを抽出する第２のステップと、
前記抽出した前記１又は複数のキーワードを前記データベースを用いて検索し、該キーワードに対応付けられた関連データを特定する第３のステップと、
前記特定した関連データを前記入力データに対応するデータとして出力する第４のステップとを実行し、
前記第１のステップにおいて、外部端末から送信される前記入力データと、当該外部端末のユーザの属性であって当該外部端末にあらかじめ記憶された当該外部端末のユーザの性別、年齢、職業又は趣味を表す付加データとを取得し、
前記複数のデータベースの各々は、他のデータベースと相対的に定められる順位であって前記属性に応じて異なるあらかじめ割り当てられた順位を有し、
前記第３のステップにおいて、前記取得された付加データに応じて定められる前記順位がより高い前記データベースを優先して前記関連データを特定する
ことを特徴とするデータ検索方法。
【請求項６】
コンピュータに、
キーワードと該キーワードに関連する関連データとを対応付けて検索可能に記憶する複数のデータベースに含まれるデータと、１又は複数の文字列を含む入力データとを取得する第１のステップと、
前記取得された入力データに含まれる１又は複数の文字列から、所定の規則に従って、１又は複数のキーワードを抽出する第２のステップと、
前記抽出された前記１又は複数のキーワードを前記データベースを用いて検索し、該キーワードに対応付けられた関連データを特定する第３のステップと、
前記特定された関連データを前記入力データに対応するデータとして出力する第４のステップと
を実行させるためのプログラムであって、
前記第１のステップにおいて、外部端末から送信される前記入力データと、当該外部端末のユーザの属性であって当該外部端末にあらかじめ記憶された当該外部端末のユーザの性別、年齢、職業又は趣味を表す付加データとを取得し、
前記複数のデータベースの各々は、他のデータベースと相対的に定められる順位であって前記属性に応じて異なるあらかじめ割り当てられた順位を有し、
前記第３のステップにおいて、前記取得された付加データに応じて定められる前記順位がより高い前記データベースを優先して前記関連データを特定する
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データの検索に関する。
【背景技術】
【０００２】
特許文献１には、ユーザ（利用者）が駅名板を携帯端末で撮影すると、駅情報提供サーバに撮影結果に応じた問合せ情報が送信され、駅情報提供サーバから当該駅に関する駅関連情報が送信される技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−１３０６９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載された技術は、検索の対象が「駅」というあらかじめ決められたものに関連する情報であるため、ユーザが求めている検索結果を返すことが比較的容易である。しかし、検索の対象が多岐に渡り、又は特に限定されない場合には、ユーザが求めていない的外れな検索結果になってしまうことが往々にしてある。
そこで、本発明の目的は、ユーザから送信される情報に基づいて重み付けのある検索を行い、そのユーザが求めている可能性が高い情報を提供できるようにすることにある。
【課題を解決するための手段】
【０００５】
本発明の一態様に係るデータ検索装置は、キーワードと該キーワードに関連する関連データとを対応付けて検索可能に記憶する複数のデータベースに含まれるデータと、１又は複数の文字列を含む入力データとを取得するデータ取得部と、前記データ取得部によって取得された入力データに含まれる１又は複数の文字列から、所定の規則に従って、１又は複数のキーワードを抽出するキーワード抽出部と、前記キーワード抽出部により抽出された前記１又は複数のキーワードを前記データベースを用いて検索し、該キーワードに対応付けられた関連データを特定するデータ特定部と、前記データ特定部によって特定された関連データを前記入力データに対応するデータとして出力するデータ出力部とを備え、前記データ取得部は、外部端末から送信される前記入力データと、当該外部端末のユーザの属性であって当該外部端末にあらかじめ記憶された当該外部端末のユーザの性別、年齢、職業又は趣味を表す付加データとを取得し、前記複数のデータベースの各々は、他のデータベースと相対的に定められる順位であって前記属性に応じて異なるあらかじめ割り当てられた順位を有し、前記データ特定部は、前記データ取得部により取得された付加データに応じて定められる前記順位がより高い前記データベースを優先して前記関連データを特定する構成を有する。
【０００６】
好ましい態様において、前記文字列は、他の文字列と相対的に定められる順位を有し、前記キーワード抽出部は、前記順位がより高い文字列を前記キーワードとして抽出する。
さらに好ましくは、前記順位が前記文字列の表示態様又は入力項目に応じて定められる。
【０００８】
さらに別の好ましい態様において、前記特定部は、前記データベース及び前記キーワードの前記順位を組み合わせて用いて前記関連データを特定する。
【００１０】
本発明の他の態様に係るデータ検索方法は、データ検索装置が、キーワードと該キーワードに関連する関連データとを対応付けて検索可能に記憶する複数のデータベースに含まれるデータと、１又は複数の文字列を含む入力データとを取得する第１のステップと、前記取得した入力データに含まれる１又は複数の文字列から、所定の規則に従って、１又は複数のキーワードを抽出する第２のステップと、前記抽出した前記１又は複数のキーワードを前記データベースを用いて検索し、該キーワードに対応付けられた関連データを特定する第３のステップと、前記特定した関連データを前記入力データに対応するデータとして出力する第４のステップとを実行し、前記第１のステップにおいて、外部端末から送信される前記入力データと、当該外部端末のユーザの属性であって当該外部端末にあらかじめ記憶された当該外部端末のユーザの性別、年齢、職業又は趣味を表す付加データとを取得し、前記複数のデータベースの各々は、他のデータベースと相対的に定められる順位であって前記属性に応じて異なるあらかじめ割り当てられた順位を有し、前記第３のステップにおいて、前記取得された付加データに応じて定められる前記順位がより高い前記データベースを優先して前記関連データを特定することを特徴とするものである。
【００１１】
本発明の他の態様に係るプログラムは、コンピュータに、キーワードと該キーワードに関連する関連データとを対応付けて検索可能に記憶する複数のデータベースに含まれるデータと、１又は複数の文字列を含む入力データとを取得する第１のステップと、前記取得された入力データに含まれる１又は複数の文字列から、所定の規則に従って、１又は複数のキーワードを抽出する第２のステップと、前記抽出された前記１又は複数のキーワードを前記データベースを用いて検索し、該キーワードに対応付けられた関連データを特定する第３のステップと、前記特定された関連データを前記入力データに対応するデータとして出力する第４のステップとを実行させるためのプログラムであって、前記第１のステップにおいて、外部端末から送信される前記入力データと、当該外部端末のユーザの属性であって当該外部端末にあらかじめ記憶された当該外部端末のユーザの性別、年齢、職業又は趣味を表す付加データとを取得し、前記複数のデータベースの各々は、他のデータベースと相対的に定められる順位であって前記属性に応じて異なるあらかじめ割り当てられた順位を有し、前記第３のステップにおいて、前記取得された付加データに応じて定められる前記順位がより高い前記データベースを優先して前記関連データを特定する特徴とするものである。
【発明の効果】
【００１２】
本発明によれば、ユーザから送信される情報に基づいて重み付けのある検索を行い、そのユーザが求めている可能性が高い情報を提供することが可能である。
【図面の簡単な説明】
【００１３】
【図１】データ検索システムの構成を示すブロック図
【図２】通信端末の構成を示すブロック図
【図３】第２サーバの構成を示すブロック図
【図４】第１サーバの制御部の機能的構成を示す機能ブロック図
【図５】第２サーバの制御部の機能的構成を示す機能ブロック図
【図６】メモデータの形式を例示する図
【図７】第２サーバが実行する処理を示すフローチャート
【図８】通信端末に送信された関連データの表示例を示す図
【図９】順位が性別によって異なるデータベースを例示する図
【発明を実施するための形態】
【００１４】
［実施形態］
図１は、本発明の一実施形態であるデータ検索システムの構成を示すブロック図である。本実施形態のデータ検索システム１０は、図１に示すように、第１サーバ１００と、第２サーバ２００と、通信端末３００とを備え、第１サーバ１００と通信端末３００とがネットワークＮＷ１を介して通信を行う構成である。この例において、第２サーバ２００は、本発明に係るデータ検索装置に相当する機能を有する。また、通信端末３００は、本発明に係る外部端末に相当する機能を有する。
【００１５】
データ検索システム１０において、第１サーバ１００及び第２サーバ２００は、データ検索サービスの提供者によって使用される。一方、通信端末３００は、このデータ検索サービスの提供を受ける者によって使用される。以下においては、通信端末３００を使用する者のことを「ユーザ」という。通信端末３００（及びそのユーザ）は、図示を省略するものの、データ検索システム１０に複数存在し得る。
【００１６】
通信端末３００は、本実施形態においては、無線通信端末である。この場合、ネットワークＮＷ１は、移動通信網を少なくとも含む。ここでいう移動通信網は、無線ＬＡＮ（Local Area Network）であってもよい。通信端末３００は、例えば、携帯電話機やスマートフォンである。ただし、本発明に係る外部端末は、データ通信が可能なものであれば、無線通信端末に限定されず、インターネットに接続されたパーソナルコンピュータ等であってもよい。
【００１７】
図２は、通信端末３００の構成を示すブロック図である。通信端末３００は、図２に示すように、制御部３１０と、記憶部３２０と、通信部３３０と、表示部３４０と、操作部３５０と、撮像部３６０と、測位部３７０とを備える。制御部３１０は、ＣＰＵ（Central Processing Unit）等の演算処理装置と主記憶装置に相当するメモリとを備え、プログラムを実行することによって通信端末３００の各部の動作を制御する。記憶部３２０は、フラッシュメモリ等の補助記憶装置に相当する記憶手段を備え、制御部３１０が用いるデータを記憶する。記憶部３２０が記憶するデータは、ユーザの操作によって生成されるメモデータを含む。通信部３３０は、ネットワークＮＷ１と通信を行うためのインタフェースを備え、メモデータ及び関連データを含むデータを送信及び受信する。表示部３４０は、液晶ディスプレイ等の表示媒体やその駆動手段を備え、所定の表示面に画像を表示する。操作部３５０は、キーパッド等の入力手段を備え、ユーザの操作を受け付けてその操作の内容を制御部３１０に通知する。撮像部３６０は、被写体を撮像して画像データを生成する。この画像データは、メモデータの一部として記憶部３２０に記憶され得る。測位部３７０は、通信端末３００の位置を測定し、測定した位置を表す位置情報を生成する。測位部３７０による測位方式は、例えば、ＧＰＳ（Global Positioning System）を用いる方式であるが、他の方式（例えば、通信端末３００が通信を行っている移動通信網の基地局の位置に基づいて当該端末の位置を推定する方式）であってもよい。
【００１８】
第１サーバ１００は、通信端末３００からデータを一時的に預かって保存する機能を有するサーバ装置である。また、第１サーバ１００は、この保存の期間を利用して、保存中のデータに関連する付加的なデータを第２サーバ２００に検索させる機能を有する。
本実施形態においては、第１サーバ１００が保存するデータのことを「メモデータ」という。メモデータは、通信端末３００のユーザが入力した文字や画像のデータである。メモデータは、本発明に係る入力データの一例に相当するものである。
【００１９】
第２サーバ２００は、メモデータに付加されるデータを検索し、これを第１サーバ１００に送信する機能を有するサーバ装置である。第２サーバ２００は、１又は複数のデータベースを用いて、メモデータに関連するデータを検索する。
本実施形態においては、第２サーバ２００が検索及び送信するデータのことを「関連データ」という。関連データは、例えば、ＨＴＭＬ（HyperText Markup Language）又はこれに類するマークアップ言語によって記述されたデータであるが、文字、画像、リンク（ハイパーリンク）、音声など、ユーザが利用可能な情報を含むものであれば、いかなるデータであってもよい。
【００２０】
図３は、第２サーバ２００の構成を示すブロック図である。第２サーバ２００は、図３に示すように、制御部２１０と、記憶部２２０と、通信部２３０とを備える。制御部２１０は、ＣＰＵ等の演算処理装置と主記憶装置に相当するメモリとを備え、プログラムを実行することによって第２サーバ２００の各部の動作を制御する。記憶部２２０は、ハードディスク等の記憶手段を備え、制御部２１０が用いるデータを記憶する。通信部２３０は、第１サーバ１００と通信を行うためのインタフェースを備え、メモデータ及び関連データを含むデータを送信及び受信する。
【００２１】
なお、第１サーバ１００の全体構成の概要は、第２サーバ２００と共通するため、その図示を省略する。ただし、説明の便宜上、第１サーバ１００の制御部、記憶部及び通信部を、それぞれ「制御部１１０」、「記憶部１２０」、「通信部１３０」と表記する。第１サーバ１００は、記憶部１２０に記憶されるデータの内容が第２サーバ２００と異なり、また、ネットワークＮＷ１に接続されている点においても第２サーバ２００と異なる。
【００２２】
図４は、第１サーバ１００の制御部１１０の機能的構成を示す機能ブロック図である。制御部１１０は、プログラムを実行することによって、図４に示すデータ取得部１１１、データ保存部１１２及びデータ出力部１１３に相当する機能を実現する。データ取得部１１１は、通信端末３００から送信されたメモデータを取得し、第２サーバ２００から送信された関連データを取得する。データ保存部１１２は、データ取得部１１１により取得されたメモデータ及び関連データを記憶部１２０に記憶する。データ保存部１１２による記憶は、データ検索サービスの機能だけでなく、メモデータのバックアップの機能も兼ねている。本実施形態においては、これらの機能を兼備したデータ記憶のことを、特に「保存」というものとする。データ出力部１１３は、データ取得部１１１により取得され、又はデータ保存部１１２に保存されたメモデータ及び関連データを出力する。
【００２３】
図５は、第２サーバ２００の制御部２１０の機能的構成を示す機能ブロック図である。制御部２１０は、プログラムを実行することによって、図５に示すデータ取得部２１１、キーワード抽出部２１２、データ特定部２１３及びデータ出力部２１４に相当する機能を実現する。データ取得部２１１は、第１サーバ１００から送信されたメモデータと、複数のデータベースＤＢ１、ＤＢ２、…、ＤＢｎに含まれるデータとを取得する。キーワード抽出部２１２は、メモデータに含まれる文字列に所定の規則に従って順位付けを行い、検索に用いる１又は複数のキーワードを抽出する。データ特定部２１３は、キーワード抽出部２１２により抽出されたキーワードを検索条件に用いて検索を実行し、検索条件に該当する関連データを特定する。データ特定部２１３は、関連データの特定に際し、上述したデータベースＤＢ１、ＤＢ２、…、ＤＢｎを用いる。ここにおいて、ｎの値は、２以上の任意の整数である。データベースＤＢ１〜ＤＢｎは、キーワードと関連データを対応付けたデータの集合である。データベースＤＢ１〜ＤＢｎは、記憶部２２０に記憶されていてもよいが、第２サーバ２００の外部にあってもよい。また、第２サーバ２００は、自装置の内外にあるデータベースを組み合わせて用いてもよい。データ出力部２１４は、データ特定部２１３により特定された関連データを、メモデータに対応するデータとして出力する。
【００２４】
なお、データベースＤＢ１〜ＤＢｎが第２サーバ２００の外部、すなわち外部装置にある場合、データ特定部２１３は、キーワードを検索クエリとして外部装置に送信し、外部装置から関連データを取得することで関連データを特定することが可能である。すなわち、この場合データ取得部２１１は、データベースＤＢ１〜ＤＢｎに含まれるデータのすべてを読み出して取得する必要はなく、検索するキーワードに応じた関連データを取得すれば十分である。
【００２５】
データベースＤＢ１〜ＤＢｎは、いくつかの観点によって分類されており、それぞれ、所定の観点に沿ってまとめられたキーワードを含んで構成されている。ここでいう観点は、例えば、キーワードの品詞（普通名詞、固有名詞など）や、キーワードの意味又は内容である。例えば、データベースＤＢ１〜ＤＢｎは、地名や公共施設名を選択的に集めたデータベース、映画に関するキーワードを選択的に集めたデータベース、レストランに関するキーワードを選択的に集めたデータベースなどを含み得る。さらに、データベースＤＢ１〜ＤＢｎは、より詳細に、映画作品のジャンルによっても分類されていたり、イタリア料理店用や中華料理店用のデータベースに分類されていたりしてもよい。
【００２６】
なお、データベースＤＢ１〜ＤＢｎは、同一のキーワードが複数のデータベースに含まれることを妨げないものである。例えば、「パスタ」というキーワードは、普通名詞のデータベースとレストランのデータベースの両方に含まれ得る。あるいは、著名な（又は上映中の）映画作品のタイトルであると同時に普通名詞でもあるキーワードがあった場合、当該キーワードは、普通名詞のデータベースと映画のデータベースの両方に含まれ得る。
【００２７】
また、データベースＤＢ１〜ＤＢｎは、あらかじめ割り当てられた順位を有する。なお、本実施形態における順位は、その値が小さいほど、優位であり、優先される値であるとする。ただし、本発明に係る順位自体は、例えば一般的なゲーム等の得点のように、その値が大きいほど優位な値であってもよい。これは、データベースの順位と文字列の順位の双方にいえることである。
【００２８】
データベースの順位は、他のデータベースとの相対的な比較によって定められる。データベースの順位は、要するに、検索においていずれのデータベースをより優先（又は重み付け）するのかを示す指標である。例えば、固有名詞を集めたデータベースは、普通名詞を集めたデータベースよりも順位が高く（小さい値に）設定されると好ましい場合がある。なお、いずれのデータベースを優先するかは、データ検索サービスの提供者によって適当に決められればよいが、その順位が固定されている必要はなく、地域や季節などに応じて変動してもよい。また、データベースの順位は、そのときの世間の流行などに応じて変わってもよい。例えば、サーチエンジン、ブログ等の所定のＷｅｂサイトで頻出している言葉をキーワードに含むデータベースや、流行語が含まれているデータベースは、データ検索サービスの提供者によりその順位が一時的に上げられてもよい。
【００２９】
データ検索システム１０の構成は、以上のとおりである。この構成のもと、ユーザは、通信端末３００を用いてメモデータを作成する。ユーザにより作成されるメモデータは、ユーザが通信端末３００を使用中に思い付いたことや、ユーザのスケジュールなどが記述されるデータである。ユーザは、通信端末３００の操作部３５０を用いて文字を入力するほか、撮像部３６０により被写体（映画作品のポスター、店舗の看板、商品のパッケージ、電車の時刻表など）を撮像し、これを画像としてメモしておくことも可能である。
【００３０】
通信端末３００は、ユーザによってメモデータが作成されると、これを記憶部３２０に記憶する。また、通信端末３００は、適当なタイミングで、メモデータを第１サーバ１００に送信し、メモデータのバックアップを行う。メモデータをバックアップするタイミングは、ユーザがバックアップを要求したタイミングであってもよいし、ユーザの操作とは無関係に定期的に繰り返されるタイミングであってもよい。
【００３１】
第１サーバ１００及び第２サーバ２００は、メモデータが保存されていることを利用して、保存されているメモデータに関連データを付加する動作を協働して行う。第１サーバ１００は、通信端末３００から受信したメモデータを第２サーバ２００に送信し、第２サーバ２００は、これに応答する形で、メモデータに関連する関連データを第１サーバ１００に送信する。第２サーバ２００は、送信する関連データがどのメモデータに対応するかが特定可能であれば、第１サーバ１００に関連データのみを送信すれば足り、メモデータを送信する必要はない。例えば、メモデータの各々に一意的なＩＤが割り振られている場合であれば、第２サーバ２００は、関連データとそのＩＤを第１サーバ１００に送信すれば十分である。
【００３２】
第２サーバ２００により関連データが検索及び送信されたら、第１サーバ１００は、この関連データを保存し、適当なタイミングで通信端末３００に送信する。第１サーバ１００は、通信端末３００のユーザにより要求されたタイミングで関連データを送信してもよいが、ユーザの要求によらずに、関連データを受信した直後にこれを送信するようにしてもよい。
【００３３】
なお、メモデータは、そのすべてについて関連データの検索が行われなくてもよい。例えば、検索に資する有意な文字列が抽出できないようなメモデータは、検索の対象から除外される。かかるメモデータは、第１サーバ１００から第２サーバ２００に送信されなくてもよいし、さらには、通信端末３００から第１サーバ１００に送信されなくてもよい。
また、第１サーバ１００は、このようにして検索の対象から除外されたメモデータに含まれる文字列を記憶し、かかる文字列が所定の回数以上抽出された場合には、これを新語であると認識してもよい。かかる新語は、第１サーバ１００からデータ検索サービスの提供者に通知され、いずれかのデータベースに新たに加入されてもよい。
【００３４】
図６は、メモデータの形式を例示する図である。この例において、メモデータは、「タイトル」、「詳細」及び「画像」の３種類の入力項目を有する。ここにおいて、「タイトル」は、ユーザにより入力される当該メモデータの表題や見出しに相当する文字列が挿入される入力項目である。この文字列は、フォントサイズ、色、書体などが変更可能であってもよい。また、「画像」は、撮像部３６０により生成された画像データが添付される入力項目である。なお、メモデータは、画像データの添付がなくてもよい。また、「詳細」は、第２サーバ２００により画像データから抽出される文字列が挿入される入力項目である。ゆえに、「詳細」の入力項目は、第１サーバ１００からメモデータが返送されるまでは、文字列が挿入されていない状態（空白の状態）となっている。ただし、「詳細」の入力項目は、ユーザによる入力を妨げるものではなく、必要に応じて、ユーザ自身が任意の文字列などを入力可能なものである。
【００３５】
図７は、関連データを検索する際に第２サーバ２００が実行する処理を示すフローチャートである。図７に示すように、第２サーバ２００の制御部２１０は、まず最初に、通信部２３０を介してメモデータを取得する（ステップＳ１）。制御部２１０は、メモデータを取得すると、メモデータに画像データが含まれているか否かを判断する（ステップＳ２）。
【００３６】
メモデータが画像データを含む場合、制御部２１０は、画像データが表す画像を解析し、その画像に含まれている文字を認識する（ステップＳ３）。ステップＳ３の処理は、周知のＯＣＲ（Optical Character Recognition）技術を用いて行われる。このとき、制御部２１０は、認識した文字が外国語であれば、必要に応じて翻訳を行ってもよい。なお、制御部２１０は、認識した文字のサイズや色に相違がある場合には、その相違を文字と対応付けて記憶してもよく、また、文字の表示位置を文字と対応付けて記憶してもよい。
一方、メモデータが画像データを含まない場合、制御部２１０は、ステップＳ３の処理をスキップする。
【００３７】
次に、制御部２１０は、メモデータから文字列を抽出する（ステップＳ４）。ここにおいて、制御部２１０は、ユーザにより入力された文字（図６の「タイトル」）とステップＳ３において認識した文字とを対象に周知の形態素解析を実行し、文字を形態素（品詞等）毎のまとまりとして認識する。そして、制御部２１０は、文中の連続する形態素を適当に組み合わせた文字列を抽出する。なお、ここでいう文字列は、文字コードによって表現できるもののすべてを含み得るものであって、いわゆる文字だけでなく、数字や記号を含み得る。
【００３８】
このように文字列を抽出したら、制御部２１０は、抽出した文字列のそれぞれに順位を付与する（ステップＳ５）。文字列の順位は、他の文字列との相対的な比較によって定められる。ここでいう他の文字列は、検索に用いようとしている１つのメモデータに含まれる文字列のみに限定されてもよいが、メモデータに含まれるか否かを問わず、想定し得るさまざまな文字列を含むものであってもよい。文字列の順位は、要するに、検索においていずれの文字列をより優先するのかを示す指標である。
【００３９】
制御部２１０は、メモデータから抽出した文字列に含まれる文字がサイズ、色、書体、表示位置等の表示態様に関する情報を含む場合、表示態様の情報を順位付けに反映させることが可能である。例えば、メモデータ中の他の文字よりもサイズが大きい文字は、当該メモデータにおいてより重要な意味を有するものである可能性が高いといえる。あるいは、メモデータ中の特定の文字列に下線が付されていたり、他の文字列と異なる色が用いられていたりした場合には、その文字列が文中において強調されている可能性が高いといえる。よって、制御部２１０は、このような文字列が抽出されている場合には、当該文字列の順位を他の文字列よりも高くする。
【００４０】
また、制御部２１０は、サーチエンジン等の外部の情報源と連動して文字列の順位付けを行ってもよい。例えば、あるサーチエンジンにおいて多く検索された文字列は、そのとき巷で流行していたり注目されていたりするものを示している可能性が高いといえる。よって、制御部２１０は、このような文字列が抽出されている場合には、当該文字列の順位を他の文字列よりも高くしてもよい。
【００４１】
さらに、制御部２１０は、メモデータから抽出した文字列がいずれの入力項目に属するかによって順位付けを行ってもよい。図６の例の場合、制御部２１０は、「タイトル」に記述された文字列の順位を高くしてもよいし、画像から認識された文字列の順位を高くしてもよい。
【００４２】
なお、制御部２１０は、複数の観点による順位付けを組み合わせ、総合的な順位を算出してもよい。例えば、制御部２１０は、以上に例示した複数の方法によって順位付けを複数回行った後、それぞれの文字列に割り当てられた複数の方法毎の順位を所定の演算（加算、乗算等）によって組み合わせ、この演算によって算出された値を順位として用いることも可能である。
【００４３】
文字列の順位付けが終了したら、制御部２１０は、複数の文字列から１又は複数のキーワードを抽出する（ステップＳ６）。このとき、制御部２１０は、文字列に付与された順位を参照し、順位がより高い１又は複数の文字列をキーワードとして抽出する。そして、制御部２１０は、このようにしてメモデータから抽出したキーワードを複数のデータベースで検索し、当該キーワードに関連付けられた関連データを特定する（ステップＳ７）。制御部２１０は、関連データを特定できた場合、その関連データが記憶されていたデータベースの順位をあわせて特定する。
【００４４】
なお、ステップＳ７において、制御部２１０は、いわゆる「表記のゆれ」を考慮してもよい。ここにおいて、表記のゆれとは、同一の意味の言葉について異なる表記（ある言葉の同義語や略語など）が用いられることをいう。すなわち、制御部２１０は、メモデータから抽出したキーワードとデータベースのキーワードと比較するときに、これらが完全に一致する場合に限らず、一方が他方の同義語や類義語に相当する場合であっても一致するとみなしてもよい。
【００４５】
ここで、制御部２１０は、ステップＳ７において特定した関連データが複数あるか判断し（ステップＳ８）、この判断結果に応じてその後の動作を異ならせる。制御部２１０は、ステップＳ７において特定した関連データが単数である場合には、その関連データを出力し、通信部２３０を介して第１サーバ１００あてに送信させる（ステップＳ１１）。一方、制御部２１０は、ステップＳ７において特定した関連データが複数ある場合には、当該関連データが記憶されていたデータベースの順位と当該関連データに関連付けられたキーワードの順位とを組み合わせた総合的な順位を算出し（ステップＳ９）、この総合的な順位がより高い所定数の関連データのみを出力する（ステップＳ１０）。ここでいう組み合わせは、簡単な例でいえば、データベースについての順位とキーワードについての順位とを加算し、又は乗算するものである。あるいは、これらの順位の組み合わせは、それぞれの順位に対して互いに異なる所定の係数を乗じて重み付けを行い、重み付け後の値を加算又は乗算等するものであってもよい。なお、制御部２１０は、メモデータに含まれる画像データからキーワードを抽出した場合には、画像に含まれていたキーワードのデータを関連データとあわせて出力する。
【００４６】
図８は、通信端末３００に送信された関連データの表示例を示す図である。図８において、メモデータの「タイトル」の入力項目には、“映画  ＡＢＣシアター  １９時待ち合わせ”という文字列が入力されている。ここにおいて、「ＡＢＣシアター」は、映画館の名称であるとする。また、画像データは、ある映画作品のポスターに相当するものであり、作品のタイトルである“ＸＹＺ”という文字列と“２月２７日ロードショー”という文字列とが含まれているものとする。
【００４７】
この例において、メモデータの「詳細」の入力項目には、画像データから認識された文字列が追加される。また、関連データの検索においては、映画館の名称「ＡＢＣシアター」と作品のタイトル「ＸＹＺ」が、他の「映画」、「１９時」、「待ち合わせ」、「２月」、「２７日」、「ロードショー」といった文字列よりも優先される。その結果、関連データとして得られる情報は、「ＡＢＣシアター」と「ＸＹＺ」に関連する情報となる。通信端末３００は、これらの情報を参照するためのリンクＬ１及びＬ２を表示部３４０に表示させる。リンクＬ１及びＬ２を選択した結果得られる情報は、例えば、「ＡＢＣシアター」や「ＸＹＺ」の公式Ｗｅｂサイトや、所定のサーチエンジンによって「ＡＢＣシアター」や「ＸＹＺ」を検索した検索結果のＷｅｂページである。なお、リンクＬ１及びＬ２の表示順序は、上述したステップＳ９において算出される総合的な順位に従う。また、通信端末３００は、この順位に応じて、それぞれの関連データの表示サイズや表示する情報量を変えてもよい。例えば、通信端末３００は、順位が高い関連データほど大きな文字で表示する、といったように、表示態様を順位に応じて異ならせてもよい。また、リンクＬ１及びＬ２に関する説明は、情報の内容に応じて変化してもよい。例えば、図８の例においては、リンクＬ１及びＬ２に関する説明がいずれも「（キーワード）の関連情報があります」という文字列であったが、リンクＬ１が「ＡＢＣシアター」周辺の地図へのリンクであれば、「ＡＢＣシアター周辺の地図を参照できます」という説明になってもよいし、リンクＬ２が「ＸＹＺ」の上映スケジュールへのリンクであれば、「ＸＹＺの上映スケジュールを参照できます」という説明になっていてもよい。
【００４８】
以上のとおり、本実施形態のデータ検索システム１０によれば、ユーザが明示的に検索を要求しなくても、メモデータがバックアップされることを利用して関連データを検索し、これをメモデータに付加することが可能である。また、データ検索システム１０によれば、画像データに含まれる文字列を検索に用いるとともに、文字列の認識結果をメモデータに反映させることも可能である。
【００４９】
さらに、データ検索システム１０によれば、文字列若しくはデータベースに設定された順位又はこれらの順位の組み合わせによって検索に重み付けを与えることが可能である。これにより、メモデータに含まれる文字列のうちのより特徴的な文字列を優先した検索や、メモデータに含まれる文字列とより関連性が高いデータベースを優先した検索が行われやすくなるため、ユーザが求めている情報を提供できる可能性を高めることが期待できる。
【００５０】
［変形例］
上述した実施形態は、本発明の実施の一例にすぎない。本発明は、上述した実施形態に対して以下の変形を適用した態様で実施することも可能である。なお、以下に示す変形例は、必要に応じて、各々を適当に組み合わせて実施されてもよいものである。
【００５１】
（変形例１）
通信端末３００は、メモデータを第１サーバ１００に送信する場合に、メモデータに付随する付加的なデータをあわせて送信してもよい。ここでいう付加的なデータは、当該データの送信時期（年月日、時刻など）、通信端末３００の位置及び通信端末３００に係る属性の少なくともいずれかを表すものである。かかるデータは、本発明に係る付加データの一例に相当するものである。通信端末３００の位置は、測位部３７０が生成する位置情報によって表すことが可能である。また、通信端末３００に係る属性とは、通信端末３００自体の属性のみならず、通信端末３００のユーザの属性（性別、年齢、職業、趣味など）をも含むものである。後者の場合、通信端末３００は、ユーザの属性をあらかじめ記憶している。
【００５２】
このような付加的なデータを通信端末３００が送信する場合、第２サーバ２００は、この付加的なデータを取得し、その内容に応じて決まる文字列又はデータベースの順位に従って関連データを特定する。例えば、第２サーバ２００は、情報を地域別に集めたデータベースや、年代や性別によって優先する順位が異なるデータベースを用いて関連データを検索する。また、第２サーバ２００は、位置情報により示される位置や送信時期と密接に関連する文字列がメモデータに含まれていた場合に、当該文字列の順位を高くしてもよい。例えば、メモデータの送信時期が夏である場合に、メモデータに夏に関連する文字列（「夏休み」、「海水浴」など）が含まれていたら、第２サーバ２００は、このような文字列の順位が高くなるように文字列の順位付けを行う。
【００５３】
図９は、順位が性別によって異なるデータベースを例示する図である。図９の例において、データベースＤＢ１は、男性にとっての順位は高いが、女性にとっての順位は低いデータベースである。一方、データベースＤＢ２は、女性にとっての順位は高いが、男性にとっての順位は低いデータベースである。つまり、この例において、データベースＤＢ１は、どちらかというと男性向きの情報を集めたデータベースであり、データベースＤＢ２は、どちらかというと女性向きの情報を集めたデータベースである。この場合、メモデータを送信した通信端末３００のユーザが女性であれば、第２サーバ２００は、そのメモデータの検索に際してデータベースＤＢ２を優先的に用いる。
【００５４】
（変形例２）
上述したデータ検索システム１０は、第１サーバ１００と第２サーバ２００という異なるサーバ装置を備える構成である。しかし、本発明に係るサーバ装置は、第１サーバ１００及び第２サーバ２００に相当する機能を単一の装置内に備えてもよいものである。また、上述した実施形態において第２サーバ２００に備わっていた機能は、第１サーバ１００の機能に置き換えられてもよい。例えば、画像に含まれている文字を認識する機能（ステップＳ２〜Ｓ４）や、文字列に順位付けを行う機能（ステップＳ５）は、メモデータが第２サーバ２００に送信される前に、第１サーバ１００においてあらかじめ実行されていてもよい機能である。これらの機能は、換言すれば、本発明に係るデータ検索装置に必須の機能ではないものであるといえる。なお、ステップＳ２〜Ｓ５の処理は、第１サーバ１００又は第２サーバ２００ではなく、通信端末３００において実行されてもよい。
【００５５】
（変形例３）
本発明は、文字列とデータベースの双方に順位が付与されている必要はなく、少なくともいずれかに順位が付与されていれば実施可能である。本発明は、文字列又はデータベースのいずれかが順位を有しない場合にあっては、順位を有しないものについては、複数用いられる必要はない。例えば、本発明は、順位付けされた複数のデータベースを検索に用いる場合には、メモデータから抽出される文字列（キーワード）が１つのみであってもよい。同様に、本発明は、順位付けされた複数のキーワードを検索に用いる場合には、データベースが１つのみであってもよい。
【００５６】
また、本発明において、データベースを複数用いる場合、その複数のデータベースは、論理的に区別されていれば足り、物理的に別異の構成である必要はない。したがって、これらのデータベースは、それぞれが相異なる記憶手段に記憶されている必要はなく、それぞれが独立したデータの集合体として同一の記憶手段に記憶されていてもよい。
【００５７】
さらに、文字列やデータベースの順位は、異なるものに同じ順位が割り当てられてもよいものである。例えば、メモデータから抽出された文字列が３つあった場合、それぞれの文字列の順位は、特定の１つの文字列が高く、それ以外の２つの文字列の順位が同じ値であってもよい。
【００５８】
（変形例４）
本発明は、必ずしもメモデータのバックアップを利用して実施される必要はない。すなわち、本発明は、一般的なデータ検索の場合と同様に、外部端末のユーザが検索を要求し、その要求に応じて関連データを検索するものであってもよい。
【００５９】
（変形例５）
本発明は、データ検索装置やこれを含むサーバ装置又はデータ検索システムのみならず、これらを実現するための方法や、コンピュータに図５に示した機能を実現させるためのプログラムとしても把握されるものである。かかるプログラムは、これを記憶させた光ディスク等の記録媒体の形態で提供されたり、インターネット等のネットワークを介して、コンピュータにダウンロードさせ、これをインストールして利用可能にするなどの形態でも提供されたりすることができるものである。
【符号の説明】
【００６０】
１０…データ検索システム、１００…第１サーバ、２００…第２サーバ、３００…通信端末、２１０…制御部、２１１…データ取得部、２１２…キーワード抽出部、２１３…データ特定部、２１４…データ出力部、２２０…記憶部、２３０…通信部
【図１】
0005444115.tif 000002
【図２】
0005444115.tif 000003
【図３】
0005444115.tif 000004
【図４】
0005444115.tif 000005
【図５】
0005444115.tif 000006
【図６】
0005444115.tif 000007
【図７】
0005444115.tif 000008
【図８】
0005444115.tif 000009
【図９】
0005444115.tif 000010