JP2009037501A - Information retrieval apparatus, information retrieval method and program - Google Patents
Information retrieval apparatus, information retrieval method and program Download PDFInfo
- Publication number
- JP2009037501A JP2009037501A JP2007202448A JP2007202448A JP2009037501A JP 2009037501 A JP2009037501 A JP 2009037501A JP 2007202448 A JP2007202448 A JP 2007202448A JP 2007202448 A JP2007202448 A JP 2007202448A JP 2009037501 A JP2009037501 A JP 2009037501A
- Authority
- JP
- Japan
- Prior art keywords
- search
- information
- service
- user
- request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
Description
本発明は、インターネットのWEB上の複数の情報検索サービスを利用するのに好適な情報検索装置、情報検索方法およびプログラムに関する。 The present invention relates to an information search apparatus, an information search method, and a program suitable for using a plurality of information search services on the Internet WEB.
近年、インターネットのWEB上には、多くのコンテンツプロバイダにより様々な情報検索サービスが提供されている。その情報検索により提供される情報には、類似するものも多く存在する。一般のユーザがそれらの複数の情報検索サービスを利用しようとする場合には、ユーザは、それぞれの情報検索サービスを提供するサイトにそれぞれ別個にアクセスし、それぞれ必要な検索パラメータや検索条件を入力し情報検索を行う必要がある。このような操作は、一般のユーザにとって煩わしく感じられる。 In recent years, various information search services have been provided by many content providers on the Internet WEB. There are many similar information provided by the information search. When a general user wants to use these multiple information search services, the user accesses each site that provides each information search service separately, and inputs necessary search parameters and search conditions. Information retrieval needs to be performed. Such an operation feels troublesome for general users.
そこで、その操作を簡単化するために、単一のユーザインタフェースにより複数の情報検索サービスの利用を可能にした情報検索サービスがある。例えば、あるWEBサイトでは、複数のコンテンツプロバイダが提供する既存の複数の情報検索サービスを利用して、電話番号からレストランや飲食店などの店舗情報を検索するサービスを提供している。また、他のWEBサイトでは、WEB上に公開された複数のブログ検索エンジンを利用して、複数のブログサイトのブログを一気に検索するサービスを提供している。 Therefore, in order to simplify the operation, there is an information search service that enables use of a plurality of information search services through a single user interface. For example, a certain WEB site uses a plurality of existing information search services provided by a plurality of content providers to provide a service for searching store information such as restaurants and restaurants from a telephone number. In addition, other WEB sites provide a service for searching blogs of a plurality of blog sites at once using a plurality of blog search engines published on the WEB.
このような情報検索サービスでは、既存の情報検索サービスによって提供されるAPI(Application Program Interface)をマッシュアップすることにより、それら複数の既存の情報検索サービスの横断的な利用を可能にしている。なお、これらの情報検索サービスは、いずれも目的志向の情報検索サービスであり、定型の情報検索条件を指定し、定型の検索結果を得るものである。 In such an information search service, an API (Application Program Interface) provided by the existing information search service is mashed up, thereby making it possible to use the plurality of existing information search services. Note that these information search services are all purpose-oriented information search services, which specify a fixed information search condition and obtain a fixed search result.
また、特許文献1には、単一のユーザインタフェースにより複数のデータベースの横断的な検索を一般的に実現する方法の例が開示されている。特許文献1によれば、その情報検索装置は、検索対象のデータベースのスキーマ情報やアクセス情報などの情報資源を一元管理しておき、検索要求を受け付けたときには、その検索要求によって指定された項目に基づき検索対象のデータベースを特定し、その特定されたデータベースの検索を実施する。
ところで、複数の情報検索サービスのAPIをマッシュアップする従来の情報検索サービスにおいては、そのマッシュアップ機能は、それぞれのAPIに適合させたプログラムの構造やロジックによって実現されている。従って、そのプログラムの実行性能の最適化や高性能化は、実現し易いものといえるが、一方で、プログラムの構造やロジック、さらには、設定すべき検索項目や検索条件の種類や数などは、そのとき既知のAPIに依存しがちになる。 By the way, in the conventional information search service that mashes up APIs of a plurality of information search services, the mashup function is realized by the structure and logic of a program adapted to each API. Therefore, it can be said that optimizing and improving the execution performance of the program is easy to achieve, but on the other hand, the structure and logic of the program, as well as the type and number of search items and search conditions to be set, etc. At that time, it tends to depend on a known API.
従って、APIをマッシュアップする従来の情報検索サービスにおいて、新たな情報検索サービスのAPIを追加したり、検索項目や検索条件を拡充したりしようとする場合には、そのプログラムの構造やロジックを大幅に変更しなければならないので、その変更を実施するには、多大の工数とコストが必要となる。 Therefore, in the conventional information search service that mashes up the API, when trying to add a new information search service API or expand search items and search conditions, the structure and logic of the program will be greatly increased. Therefore, it takes a lot of man-hours and costs to implement the change.
一方、特許文献1に開示されている複数のデータベースを横断的に検索するシステムにおいては、検索すべき新たなデータベースを追加しても、自らのプログラムを変更する必要はないが、代りに、そのデータベースに依存するスキーマ情報やアクセス情報を詳細に設定しておく必要がある。しかしながら、その情報の設定は、データベースについて高度な知識を有する専門家やデータベースの管理者にしかできない。
On the other hand, in a system for searching a plurality of databases disclosed in
また、その検索処理においては、検索要求の検索内容や検索条件で指定されたデータ項目に対する列名を検索して、その全組み合わせから、検索可能な関連でつながったすべてのテーブルに対して、そのすべての列名を含む組み合わせを抽出する。そのため、データ項目の指定数や登録データベース数が多くなると、組み合わせの爆発が生じ、処理性能が著しく劣化するという問題があった。 Also, in the search process, column names for the data items specified in the search contents and search conditions of the search request are searched, and for all tables connected in a searchable relation from all the combinations, the search is performed. Extract combinations that include all column names. For this reason, when the number of specified data items and the number of registered databases increase, there is a problem that explosion of combinations occurs and processing performance is significantly deteriorated.
以上のように、複数のデータベースを横断的に検索する従来技術には、新たなデータベースや新たな情報検索サービスのAPIを追加するなどの変更に対し、その処理プログラムの変更なくしては対応できないなど、処理プログラムに柔軟性がないという問題があった。また、その柔軟性を確保しようとすると、データベースのスキーマ情報の設定などデータベースの専門家や管理者にしかできない作業が必要となり、さらには、検索処理の性能が劣化するという問題があった。 As described above, the conventional technique for searching across a plurality of databases cannot cope with changes such as adding a new database or a new information search service API without changing the processing program. There was a problem that the processing program was not flexible. Further, in order to ensure the flexibility, there is a problem that operations that can only be performed by database specialists and managers such as setting of schema information of the database are required, and further, the performance of search processing is deteriorated.
本発明は、以上の従来技術に鑑み、新たな情報検索サービスのAPIの追加、変更などに対する柔軟性を有し、かつ、データベースの専門家でなくてもその追加、変更などを容易に行うことが可能な情報検索装置、情報検索方法およびプログラムを提供することにある。 In view of the above prior art, the present invention has flexibility to add or change APIs of new information retrieval services, and can easily add or change even if it is not a database expert. It is an object of the present invention to provide an information search apparatus, an information search method, and a program.
請求項1に記載の発明は、情報検索サービスをそれぞれ提供する複数の情報提供サーバ装置と、ユーザが利用するユーザ端末と、に通信ネットワークを介して接続された情報検索装置であって、(1)前記情報検索サービスごとに、その情報検索サービスを利用するために必要なインタフェース情報をあらかじめ記憶しておくインタフェース情報記憶手段と、(2)前記通信ネットワークを介して前記ユーザ端末から送信されるユーザ検索要求を受信するユーザ検索要求受信手段と、(3)前記受信したユーザ検索要求に含まれる検索項目と検索条件とキーワードとに基づき、前記インタフェース情報記憶手段に記憶されている前記インタフェース情報を参照して、前記ユーザ検索要求に適合する情報検索サービスを特定する検索サービス特定手段と、(4)前記特定した情報検索サービスの前記インタフェース情報に基づき、前記特定した情報検索サービスの利用を求める検索サービス要求を生成する検索サービス要求生成手段と、(5)前記生成した検索サービス要求を、前記特定した情報検索サービスを提供する前記情報提供サーバ装置へ送信する検索サービス要求送信手段と、(6)前記送信した検索サービス要求に応答して前記情報提供サーバ装置から返送される検索結果を受信する検索結果受信手段と、(7)前記受信した検索結果から、前記ユーザ検索要求に含まれる検索項目に対応するユーザ検索結果を抽出するユーザ検索結果抽出手段と、(8)前記抽出したユーザ検索結果を前記ユーザ端末へ送信するユーザ検索結果送信手段と、を備えたことを特徴とする。
The invention according to
請求項3に記載の発明は、情報検索サービスをそれぞれ提供する複数の情報提供サーバ装置と、ユーザが利用するユーザ端末と、に通信ネットワークを介して接続され、処理部と記憶部とを備えた情報検索装置における情報検索方法であって、前記処理部が、(1)前記情報検索サービスごとに、その情報検索サービスを利用するために必要なインタフェース情報を前記記憶部にあらかじめ記憶するインタフェース情報記憶ステップと、(2)前記通信ネットワークを介して前記ユーザ端末から送信されるユーザ検索要求を受信するユーザ検索要求ステップと、(3)前記受信したユーザ検索要求に含まれる検索項目と検索条件とキーワードとに基づき、前記記憶部に記憶されている前記インタフェース情報を参照して、前記ユーザ検索要求に適合する情報検索サービスを特定する検索サービス特定ステップと、(4)前記特定した情報検索サービスの前記インタフェース情報に基づき、前記特定した情報検索サービスの利用を求める検索サービス要求を生成する検索サービス要求生成ステップと、(5)前記生成した検索サービス要求を、前記特定した情報検索サービスを提供する前記情報提供サーバ装置へ送信する検索サービス要求送信ステップと、(6)前記送信した検索サービス要求に応答して前記情報提供サーバ装置から返送される検索結果を受信する検索結果受信ステップと、(7)前記受信した検索結果から、前記ユーザ検索要求に含まれる検索項目に対応するユーザ検索結果を抽出するユーザ検索結果抽出ステップと、(8)前記抽出したユーザ検索結果を前記ユーザ端末へ送信するユーザ検索結果送信ステップと、を実行することを特徴とする。 According to a third aspect of the present invention, a plurality of information providing server devices each providing an information search service and a user terminal used by a user are connected via a communication network, and include a processing unit and a storage unit. An information search method in an information search apparatus, wherein the processing unit stores (1) interface information necessary for using the information search service for each information search service in the storage unit in advance. (2) a user search request step for receiving a user search request transmitted from the user terminal via the communication network; (3) a search item, a search condition, and a keyword included in the received user search request. And the user search request with reference to the interface information stored in the storage unit. A search service specifying step for specifying a suitable information search service; and (4) search service request generation for generating a search service request for requesting use of the specified information search service based on the interface information of the specified information search service. (5) a search service request transmission step for transmitting the generated search service request to the information providing server device that provides the specified information search service; and (6) responding to the transmitted search service request. A search result receiving step for receiving a search result returned from the information providing server device; and (7) a user for extracting a user search result corresponding to a search item included in the user search request from the received search result. A search result extracting step; and (8) extracting the user search result extracted from the user. And executes the user search result transmission step of transmitting to The terminal.
請求項5に記載の発明は、請求項3に記載の情報検索方法を、コンピュータに実行させるためのプログラムである。
The invention according to claim 5 is a program for causing a computer to execute the information search method according to
請求項1、請求項3または請求項5の発明によれば、その発明に係る情報検索装置は、WEB上に公開されている情報検索サービスを利用するために必要なインタフェース情報をあらかじめインタフェース情報記憶手段に記憶しておき、ユーザ端末からユーザ検索要求を受信したとき、検索サービス特定手段により、そのインタフェース情報を参照して、その情報検索サービスがユーザ検索要求に含まれている検索項目、検索条件およびキーワードを提供することが可能か否かを判断することにより、検索対象の情報検索サービスを特定する。
According to the invention of
従って、新たな情報検索サービスを追加するような場合、情報検索装置のプログラムを変更する必要はなく、その情報検索サービスのインタフェース情報をあらかじめインタフェース情報記憶手段に追加しておくだけでよい。つまり、本発明に係る情報検索装置におけるプログラムは、柔軟性を有しているといえる。 Therefore, when adding a new information search service, it is not necessary to change the program of the information search apparatus, and it is only necessary to add the interface information of the information search service to the interface information storage means in advance. That is, it can be said that the program in the information search apparatus according to the present invention has flexibility.
また、インタフェース情報記憶手段に記憶するインタフェース情報は、情報検索サービスのAPIに係る情報しか含んでいないので、そのインタフェース情報の追加、変更などに際しては、データベースに係る知識が必要とされることはない。従って、データベースの高度な知識を持っていない者でもインタフェース情報の追加、変更などを行うことができる。 Further, since the interface information stored in the interface information storage means includes only information related to the API of the information search service, knowledge about the database is not required when adding or changing the interface information. . Therefore, even those who do not have advanced database knowledge can add or change interface information.
請求項2に記載の発明は、請求項1に記載の情報検索装置であって、前記インタフェース情報記憶手段は、前記情報検索サービスのそれぞれに対応付けて、その情報検索サービスが提供する検索項目の名称、その情報検索サービスが必要とする検索条件の名称、ならびに、前記検索項目の名称および前記検索条件の名称のそれぞれに対応する同義語を、前記インタフェース情報の一部として記憶することを特徴とする。
The invention according to
請求項4に記載の発明は、請求項3に記載の情報検索方法であって、前記処理部が、前記インタフェース情報記憶ステップにおいて、前記情報検索サービスのそれぞれに対応付けて、その情報検索サービスが提供する検索項目の名称、その情報検索サービスが必要とする検索条件の名称、ならびに、前記検索項目の名称および前記検索条件の名称のそれぞれに対応する同義語を、前記インタフェース情報の一部として前記記憶部に記憶することを特徴とする。
The invention according to claim 4 is the information search method according to
請求項5に記載の発明は、請求項4に記載の情報検索方法を、コンピュータに実行させるためのプログラムである。 The invention according to claim 5 is a program for causing a computer to execute the information search method according to claim 4.
請求項2、請求項4および請求項5の発明によれば、前記インタフェース情報は、情報検索サービスが提供する検索項目の名称や検索条件の名称に対応する同義語を有しているので、ユーザが入力する検索項目の名称や検索条件の名称に対しても柔軟性を有しているといえる。
According to the invention of
本発明の情報検索装置、情報検索方法およびプログラムにおいては、新たな情報検索サービスのAPIの追加、変更などに対する柔軟性を確保することができ、かつ、データベースの専門家でなくてもその追加、変更などを容易に行うことができるようになる。 In the information search apparatus, the information search method and the program of the present invention, it is possible to ensure flexibility with respect to addition and change of API of a new information search service, and the addition is possible even if it is not a database expert. Changes can be made easily.
以下、本発明の実施形態について図面を用いて詳しく説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
図1は、本発明の実施形態に係る情報検索装置、および、その情報検索装置を適用したシステムの全体構成の例を示した図である。図1に示すように、本実施形態に係る情報検索装置1は、インターネットなどの通信ネットワーク4に接続され、さらに、その通信ネットワーク4には、情報提供サーバ装置2およびユーザ端末3が接続されている。
FIG. 1 is a diagram illustrating an example of an overall configuration of an information search apparatus according to an embodiment of the present invention and a system to which the information search apparatus is applied. As shown in FIG. 1, an
ここで、ユーザ端末3は、通常のパーソナルコンピュータなどで構成され、Webブラウザなどのプログラムを有している。なお、図1では、ユーザ端末3は、1つしか示していないが、通常は、通信ネットワーク4には、ユーザ端末3が多数接続される。
Here, the
また、情報提供サーバ装置2は、コンテンツプロバイダなどが所有するコンピュータであり、通信ネットワーク4を介して、様々な情報をユーザ端末3などに提供する。本実施形態では、情報提供サーバ装置2は、特に、情報検索サービスプログラム201を備えるものとし、その情報検索サービスプログラム201を実行することにより、ユーザ端末3などに対し、所定の情報検索サービスを提供する。
The information providing
このようなコンテンツプロバイダ、つまり、情報提供サーバ装置2による情報検索サービスの提供は、現実のインターネットの世界では数多く行われている。すなわち、通信ネットワーク4には、各種の情報検索サービスを提供する情報提供サーバ装置2が多数接続されている。そして、一般のユーザは、ユーザ端末3のWebブラウザなどを介して、その情報検索サービスを、適宜、個々に選択して利用することができる。
Such content providers, that is, the information providing
また、情報提供サーバ装置2が備える情報検索サービスプログラム201については、多くの場合、そのAPIが公開されている。その場合には、他の情報提供サーバ装置2などのプログラムから、その情報検索サービスプログラム201を実行させ、その検索結果を受け取ることができる。
In many cases, the API of the information
次に、情報検索装置1の構成の説明をする前に、図2を参照して、情報検索装置1による情報検索手順の概要について説明しておく。ここで、図2は、情報検索装置1による情報検索の手順の例を示した図である。
Next, before describing the configuration of the
図2に示すように、情報検索装置1は、ユーザ端末3から送信される検索要求を受信すると(ステップS1)、その受信した検索要求に基づき、適宜、情報検索サービスを選択し、選択した情報検索サービスを提供する情報提供サーバ装置2に対して、情報検索サービスの実行を求める検索サービス要求を送信する(ステップS2)。なお、ユーザ端末3からは、通常、単一の検索要求しか送信されないが、情報検索装置1は、その検索要求に適合する情報検索サービスが複数存在した場合には、その複数の情報検索サービスをそれぞれ提供する複数の情報提供サーバ装置2に対し、それぞれ個別に検索サービス要求を送信する。
As shown in FIG. 2, upon receiving a search request transmitted from the user terminal 3 (step S1), the
次に、情報検索装置1は、前記の検索サービス要求に応答する形で、情報提供サーバ装置2から返送される検索結果を受信し(ステップS3)、その検索結果の中から、ユーザの検索要求に含まれる検索項目の情報を抽出して、ユーザに対する検索結果とし、そのユーザに対する検索結果をユーザ端末3へ送信する(ステップS4)。
Next, the
以上のように、情報検索装置1自らは、情報検索機能を備えていないが、通信ネットワーク4を介して、情報提供サーバ装置2の情報検索サービスを利用することによって、ユーザ端末3によって求められる情報検索を遂行する。このような情報検索の方式は、しばしば、マッシュアップ方式と呼ばれる。
As described above, the
このようなマッシュアップ方式による情報検索サービスの提供は、ユーザに多くのメリットもたらす。例えば、ユーザは、ユーザ端末3から単一の検索要求を情報検索装置1に送信するだけで、複数の情報検索サービスによって得られる検索結果を一度に取得することができる。つまり、ユーザは、手間を掛けずにより多くの検索結果を得ることができるのである。
Provision of an information search service using such a mashup method brings many advantages to the user. For example, the user can acquire search results obtained by a plurality of information search services at a time only by transmitting a single search request from the
続いて、再び図1を参照して、以上のようなマッシュアップ方式の情報検索を実現するための情報検索装置1の構成について説明する。ここで、情報検索装置1は、図1に示すように、処理部10、記憶部20、入出力IF(Interface)部30、通信IF部40などを含んで構成される。
Next, referring to FIG. 1 again, the configuration of the
処理部10は、いわゆるCPU(Central Processing Unit)などを含んで構成され、そのCPUが所定のプログラムを実行することにより、検索サービスIFリソース情報管理部11、ユーザアクセス制御部12、検索要求解析部13、検索対象絞込部14、検索対象特定部15、検索結果抽出部16、検索サービスアクセス部17などの機能ブロックが実現される。
The
また、記憶部20は、RAM(Random Access Memory)やハードディスク装置などを含んで構成され、前記CPUが実行するプログラムを格納するほか、そのCPUが前記所定のプログラムを実行する際に必要な情報を、適宜、記憶する。なお、本実施形態では、記憶部20に記憶する情報のうち最も重要なものは、後記する検索サービスIFリソース情報であるが、記憶部20のうち、その検索サービスIFリソース情報を記憶した部分を、検索サービスIFリソース情報記憶部21と呼ぶ。
The
また、入出力IF部30は、表示装置やキーボードからなる管理者端末50などに接続され、接続された表示装置やキーボードなどのインタフェースを制御する。また、通信IF部40は、いわゆるネットワークインタフェースカード(NIC)などからなり、通信ネットワーク4に接続され、その通信ネットワーク4とのインタフェースを制御する。
The input / output IF
図1において、検索サービスIFリソース情報記憶部21は、通信ネットワーク4に接続された情報提供サーバ装置2によって提供されている情報検索サービスのうち、情報検索装置1自身が検索対象とする情報検索サービスについて、その情報検索サービスを利用する上で必要なインタフェース情報(以下、検索サービスIFリソース情報という)を記憶する。
In FIG. 1, the search service IF resource
検索サービスIFリソース情報管理部11は、検索サービスIFリソース情報記憶部21が記憶する検索サービスIFリソース情報を管理する。すなわち、新たな情報検索サービスを検索対象に登録する場合には、検索サービスIFリソース情報管理部11は、管理者端末50から入力される情報に基づき、その情報検索サービスに対する検索サービスIFリソース情報を生成し、検索サービスIFリソース情報記憶部21に登録する。また、既登録の情報検索サービスを削除したり、その登録内容を変更したりする場合には、検索サービスIFリソース情報管理部11は、管理者端末50から入力される情報に基づき、検索サービスIFリソース情報記憶部21に登録されている検索サービスIFリソース情報を、適宜、削除または変更する。
The search service IF resource information management unit 11 manages search service IF resource information stored in the search service IF resource
なお、検索サービスIFリソース情報は、検索対象の情報検索サービスのAPIに基づく情報であるので、情報提供サーバ装置2において新たな情報検索サービスのAPIが提供されたり、あるいは、提供されていたAPIが削除または変更されたりした場合には、情報検索装置1の管理者は、必要に応じて、管理者端末50から、検索サービスIFリソース情報を登録、削除または変更する情報を入力する。
Since the search service IF resource information is information based on the API of the information search service to be searched, an API of a new information search service is provided in the information providing
ユーザアクセス制御部12は、ユーザ端末3から送信されるユーザからの検索要求(以下、ユーザ検索要求という)を記憶部20の一時記憶領域に格納する。また、ユーザアクセス制御部12は、情報提供サーバ装置2から取得され、検索結果抽出部16によって抽出されて、記憶部20の一時記憶領域に格納されているユーザへの検索結果(以下、ユーザ検索結果という)をユーザ端末3へ送信する。
The user
検索要求解析部13は、ユーザアクセス制御部12によって受信され、記憶部20の一時記憶領域に格納されているユーザ検索要求の構文を解析し、検索項目、検索条件およびキーワードなど情報検索に必要な情報を抽出する。ここで、検索項目は、1個以上のデータ項目から構成され、検索条件は、1個以上のデータ項目およびその条件値の組から構成され、キーワードは、0個以上の任意の文字列から構成されるものとする。
The search
検索対象絞込部14は、ユーザ検索要求において1つ以上のキーワードが指定されていた場合に、検索サービスIFリソース情報記憶部21に登録されている情報検索サービスの検索サービスIFリソース情報について、その検索サービスIFテーブル211(後記にて説明)のサービス概要のフィールドを全文検索し、そのサービス概要のフィールドに前記キーワードが含まれない場合には、その情報検索サービスを検索対象から除外する。すなわち、検索対象絞込部14は、検索サービスIFリソース情報記憶部21を参照し、そのサービス概要のフィールドに前記キーワードが含まれている場合には、情報検索装置1の検索対象の情報検索サービスとし、前記キーワードが含まれていない場合には、情報検索装置1の検索対象の情報検索サービスから除外する。
When one or more keywords are specified in the user search request, the search
検索対象特定部15は、ユーザ検索要求にキーワードが指定されていない場合には、検索サービスIFリソース情報記憶部21にそのインタフェース情報が登録されている全部の情報検索サービス、または、ユーザ検索要求にキーワードが指定されている場合には、検索対象絞込部14により絞り込まれた情報検索サービスのそれぞれについて、その情報検索サービスがユーザ検索要求により指定される検索項目の情報を提供することが可能か否かを判定し、提供が可能と判定された情報検索サービスについて、その情報検索サービスを検索対象として特定する。なお、その特定処理の詳細については、後記する。
When no keyword is specified in the user search request, the search
検索サービスアクセス部17は、検索対象特定部15によって特定された情報検索サービスについて、その情報検索サービスを提供している情報提供サーバ装置2に対して、その情報検索サービスを利用するための検索サービス要求を生成し、生成した検索サービス要求を情報提供サーバ装置2に送信する。また、検索サービスアクセス部17は、送信した検索サービス要求に応じて情報提供サーバ装置2から返送される検索結果を受信し、受信した検索結果を記憶部20の一時記憶領域に格納する。
The search service access unit 17 uses the information search service with respect to the information providing
検索結果抽出部16は、情報提供サーバ装置2から返送され、一時記憶領域に格納されている検索結果から、ユーザ検索要求で指定された検索項目の情報を抽出し、抽出した情報をユーザ検索結果として記憶部20の一時記憶領域に格納する。
The search
なお、以上の情報検索装置1の構成の説明において、検索サービスIFリソース情報記憶部21は、請求項でいうインタフェース情報記憶手段に相当する。また、ユーザアクセス制御部12は、請求項でいうユーザ検索要求受信手段およびユーザ検索結果送信手段に相当する。また、検索対象絞込部14および検索対象特定部15は、請求項でいう検索サービス特定手段に相当する。また、検索結果抽出部16は、請求項でいうユーザ検索結果抽出手段に相当する。また、検索サービスアクセス部17は、請求項でいう検索サービス要求生成手段、検索サービス要求送信手段および検索結果受信手段に相当する。
In the description of the configuration of the
続いて、検索サービスIFリソース情報記憶部21に記憶される検索サービスIFリソース情報の詳細について説明する。検索サービスIFリソース情報は、図1に示すように、検索サービスIFテーブル211、リクエストパラメータテーブル212、リクエストパラメータ同義語テーブル213、レスポンスフィールドテーブル214、レスポンスフィールド同義語テーブル215などを含んで構成される。
Next, details of the search service IF resource information stored in the search service IF resource
図3は、検索サービスIFテーブル211の構成の例を示した図である。検索サービスIFテーブル211は、自らの情報検索装置1が検索対象とする情報検索サービスについて、その情報検索サービスを識別する情報やインタフェース情報などを記憶するテーブルである。従って、検索サービスIFテーブル211は、図3に示すように、検索サービスID、検索サービス名、サービス概要、リクエストURL(Uniform Resource Locator)およびプロトコルのフィールドを含んで構成される。
FIG. 3 is a diagram showing an example of the configuration of the search service IF table 211. The search service IF table 211 is a table that stores information for identifying the information search service, interface information, and the like for the information search service to be searched by the
ここで、検索サービスIDのフィールドには、情報提供サーバ装置2から提供される情報検索サービスの識別情報が、検索サービス名のフィールドには、その情報検索サービスの名称が、サービス概要のフィールドには、その情報検索サービスが提供する検索内容の概要が、リクエストURLのフィールドには、情報提供サーバ装置2およびその情報検索サービスの所在アドレスを示す情報が、プロトコルのフィールドには、そのリクエストURLから検索結果を取得する方法を指示する情報が、それぞれ格納される。
Here, in the search service ID field, identification information of the information search service provided from the information providing
なお、図3に示した情報検索サービスは、架空のものであり、従って、それらの検索サービス名やリクエストURLも実在するものではない。 Note that the information search service shown in FIG. 3 is fictitious, and therefore the search service name and request URL do not actually exist.
図4は、リクエストパラメータテーブル212の構成の例を示した図である。リクエストパラメータテーブル212は、検索サービスアクセス部17で検索サービス要求を生成する際に必要なリクエストパラメータに関する情報を記憶するテーブルである。従って、リクエストパラメータテーブル212は、図4に示すように、検索サービスID、パラメータID、パラメータ名および必要度のフィールドを含んで構成される。なお、本実施形態の場合、リクエストパラメータは、検索条件の名称に対応する。 FIG. 4 is a diagram showing an example of the configuration of the request parameter table 212. The request parameter table 212 is a table that stores information related to request parameters required when the search service access unit 17 generates a search service request. Therefore, as shown in FIG. 4, the request parameter table 212 includes search service ID, parameter ID, parameter name, and necessity fields. In this embodiment, the request parameter corresponds to the name of the search condition.
ここで、検索サービスIDのフィールドには、情報検索サービスの識別情報が、パラメータIDのフィールドには、リクエストパラメータの識別情報が、パラメータ名のフィールドには、リクエストパラメータのAPI上での名称(つまり、検索条件の名称で、ここでは英語表記されている)が、必要度のフィールドには、そのパラメータの設定の必要度を示す情報(例えば、「必須」または「オプション」)が、それぞれ格納される。 Here, the search service ID field contains the information search service identification information, the parameter ID field contains the request parameter identification information, and the parameter name field contains the name of the request parameter on the API (that is, The name of the search condition, which is written in English here), the information indicating the necessity of setting the parameter (for example, “required” or “optional”) is stored in the necessity field, respectively. The
図5は、リクエストパラメータ同義語テーブル213の構成の例を示した図である。リクエストパラメータ同義語テーブル213は、リクエストパラメータ(英語表記された検索条件の名称)の同義語を記憶するテーブルである。従って、リクエストパラメータ同義語テーブル213は、図5に示すように、パラメータIDおよび同義語のフィールドを含んで構成される。 FIG. 5 is a diagram showing an example of the configuration of the request parameter synonym table 213. The request parameter synonym table 213 stores synonyms of request parameters (names of search conditions written in English). Therefore, the request parameter synonym table 213 includes a parameter ID field and a synonym field as shown in FIG.
ここで、パラメータIDのフィールドには、リクエストパラメータの識別情報が、同義語のフィールドには、そのパラメータIDのフィールドで指定されるパラメータ名(英語表記された検索条件の名称)に対応する同義語が、それぞれ格納される。 Here, the parameter ID field contains request parameter identification information, and the synonym field contains a synonym corresponding to the parameter name (name of the search condition written in English) specified in the parameter ID field. Are stored respectively.
図6は、レスポンスフィールドテーブル214の構成の例を示した図である。レスポンスフィールドテーブル214は、検索サービスアクセス部17により受信される検索結果を構成するレスポンスフィールドに関する情報を記憶するテーブルである。従って、レスポンスフィールドテーブル214は、図6に示すように、検索サービスID、フィールドID、フィールド名およびXPathのフィールドを含んで構成される。なお、本実施形態の場合、レスポンスフィールドは、検索項目の名称に対応する。 FIG. 6 is a diagram showing an example of the configuration of the response field table 214. The response field table 214 is a table that stores information on response fields that constitute search results received by the search service access unit 17. Therefore, the response field table 214 includes a search service ID, a field ID, a field name, and an XPath field, as shown in FIG. In the present embodiment, the response field corresponds to the name of the search item.
ここで、検索サービスIDのフィールドには、当該情報検索サービスの識別情報が、フィールドIDのフィールドには、レスポンスフィールドの識別情報が、フィールド名のフィールドには、レスポンスフィールドのAPI上での名称(つまり、検索項目の名称で、ここでは英語表記されている)が、XPathのフィールドには、検索結果の情報において当該フィールド名で指定される情報が所在するXPathが、それぞれ格納される。なお、本実施形態では、検索結果の情報は、XML(Extensible Markup Language)で記述された情報を想定している。 Here, the search service ID field contains identification information of the information search service, the field ID field contains response field identification information, and the field name field contains the name of the response field on the API ( In other words, the XPath field stores the XPath where the information specified by the field name is stored in the search result information. In the present embodiment, the search result information is assumed to be information described in XML (Extensible Markup Language).
図7は、レスポンスフィールド同義語テーブル215の構成の例を示した図である。レスポンスフィールド同義語テーブル215は、レスポンスフィールド(英語表記された検索項目の名称)の同義語を記憶するテーブルである。レスポンスフィールド同義語テーブル215は、図7に示すように、フィールドIDおよび同義語のフィールドを含んで構成される。 FIG. 7 is a diagram showing an example of the configuration of the response field synonym table 215. The response field synonym table 215 is a table that stores synonyms of the response field (name of search item written in English). As shown in FIG. 7, the response field synonym table 215 includes field IDs and synonym fields.
ここで、フィールドIDのフィールドには、レスポンスフィールドの識別情報が、同義語のフィールドには、そのフィールドIDのフィールドで指定されるフィールド名(英語表記された検索条件の名称)に対応する同義語が、それぞれ格納される。 Here, the field ID field has the response field identification information, and the synonym field has the synonym corresponding to the field name (name of the search condition written in English) specified in the field ID field. Are stored respectively.
続いて、図8および図9を参照して、情報検索装置1における情報検索処理のフローについて説明する。ここで、図8は、情報検索装置1における情報検索処理フローの例を示した図、図9は、図8の情報検索処理の中の検索対象の特定処理の詳細な処理フローの例を示した図である。
Next, the flow of information search processing in the
図8に示すように、処理部10は、まず、検索サービスIFリソース情報管理部11の処理として、管理者端末50から、適宜、入力される情報を受け付けて、検索サービスIFリソース情報を、新たに生成し、あるいは、削除または変更する。すなわち、処理部10は、そのとき検索対象とする情報検索サービスについてのインタフェース情報、つまり、検索サービスIFリソース情報を検索サービスIFリソース情報記憶部21に登録する(ステップS01)。
As illustrated in FIG. 8, the
次に、処理部10は、ユーザアクセス制御部12の処理として、ユーザ端末3から送信されるユーザ検索要求を受信し(ステップS02)、受信したユーザ検索要求を記憶部20の一時記憶領域に格納する。次に、処理部10は、検索要求解析部13の処理として、記憶部20の一時記憶領域に格納されているユーザ検索要求の構文を解析し(ステップS03)、検索項目、検索条件およびキーワードなど情報検索に必要な情報を抽出する。
Next, the
次に、処理部10は、検索対象絞込部14の処理として、ユーザ検索要求においてキーワードが指定されているか否かを判定する(ステップS04)。そして、キーワードが指定されていた場合には(ステップS04でYes)、処理部10は、検索サービスIFリソース情報を参照し、その検索サービスIFテーブル211のサービス概要のフィールドに前記指定されたキーワードが含まれているか否かを判定し、そのキーワードが含まれていない場合には、その情報検索サービスを検索対象から除外し、検索対象の情報検索サービスを絞り込む(ステップS05)。また、キーワードが指定されていなかった場合には(ステップS04でNo)、処理部10は、ステップS05の処理をスキップする。
Next, the
次に、処理部10は、検索対象特定部15の処理として、検索サービスIFリソース情報記憶部21に登録されているすべての情報検索サービス、または、ステップS05で絞り込まれた後の情報検索サービスについて、その検索サービスIFリソース情報を参照して、その情報検索サービスがユーザ検索要求により指定される検索項目の情報を提供することが可能か否かを判定し、提供が可能と判定された情報検索サービスについて、その情報検索サービスを検索対象として特定する(ステップS06)。なお、この処理の詳細については、図9を用いて説明する。
Next, the
次に、処理部10は、検索サービスアクセス部17の処理として、ステップS06の処理で検索対象に特定された情報検索サービスについて、その情報検索サービスを利用するための検索サービス要求を生成し(ステップS07)、その情報検索サービスを提供している情報提供サーバ装置2へ、前記生成した検索サービス要求を送信する(ステップS08)。さらに、処理部10は、送信した検索サービス要求に応じて情報提供サーバ装置2から返送される検索結果を受信し(ステップS09)、受信した検索結果を記憶部20の一時記憶領域に格納する。
Next, as the processing of the search service access unit 17, the
なお、ここで、検索対象の情報検索サービスが複数ある場合には、その数だけの検索サービス要求を情報提供サーバ装置2へ送信するとともに、その複数の情報検索サービスを提供する情報提供サーバ装置2から返送される結果を、適宜、受信する。
Here, when there are a plurality of information search services to be searched, as many search service requests as that number are transmitted to the information providing
次に、処理部10は、検索結果抽出部16の処理として、前記受信し、記憶部20の一時記憶領域に格納に格納されている検索結果から、ユーザ検索要求で指定された検索項目の情報を抽出し(ステップS10)、抽出した情報をユーザ検索結果として記憶部20の一時記憶領域に格納する。次に、処理部10は、ユーザアクセス制御部12の処理として、記憶部20の一時記憶領域に格納されているユーザ検索結果をユーザ端末3へ送信する(ステップS11)。
Next, as the processing of the search
続いて、図9を参照して、ステップS06(検索対象の特定処理)の詳細について説明する。この検索対象の特定処理では、検索サービスIFリソース情報記憶部21に登録されている情報検索サービスについて、ユーザ検索要求に含まれる検索項目および検索条件がそのAPIに含まれているか否かを判定し、そのすべてが含まれている場合に、検索対象とし、そうでない場合、検索対象から除外する。
Next, with reference to FIG. 9, details of step S <b> 06 (search target specifying process) will be described. In the search target specifying process, for the information search service registered in the search service IF resource
処理部10は、レスポンスフィールド同義語テーブル215を参照して、ユーザ検索要求に含まれる検索項目の名称がその同義語フィールドに存在する場合には、その検索項目の名称に対応するフィールドIDを取得する(ステップS21)。次に、処理部10は、レスポンスフィールドテーブル214を参照して、ステップS21で取得したフィールドIDを有するレコード(つまり、フィールド名とXPathを含むレコード)を取得する(ステップS22)。
The
次に、ステップS21およびステップS22の処理結果に基づき、処理部10は、ユーザ検索要求に含まれるすべての検索項目の名称に対して、フィールド名とXPathとを含むレコードを取得できなかった情報検索サービスについては、その情報検索サービスを検索対象から除外する(ステップS23)。
Next, based on the processing results of step S21 and step S22, the
次に、処理部10は、リクエストパラメータ同義語テーブル213を参照して、ユーザ検索要求に含まれる検索条件の名称がその同義語フィールドに存在する場合には、その検索条件の名称に対応するパラメータIDを取得する(ステップS24)。次に、処理部10は、リクエストパラメータテーブル212を参照して、ステップS24で取得したパラメータIDを有するレコード(つまり、パラメータ名と必要度を含むレコード)を取得する(ステップS25)。
Next, the
次に、ステップS24およびステップS25の処理結果に基づき、処理部10は、ユーザ検索要求に含まれるすべての検索条件の名称に対し、パラメータ名と必要度とを含むレコードを取得できなかった情報検索サービスについては、その情報検索サービスを検索対象から除外する(ステップS26)。
Next, based on the processing results of step S24 and step S25, the
次に、処理部10は、リクエストパラメータテーブル212を参照して、その必要度が「必須」のパラメータ名が、ステップS26までに取得したすべての検索条件の名称に対するレコードのパラメータ名に含まれていない情報検索サービスについては、その情報検索サービスを検索対象から除外する(ステップS27)。すなわち、情報検索サービスが「必須」とする検索条件がユーザ検索要求によって提供されていない場合、その情報検索サービスは、情報検索を実行することができないので、処理部10は、その情報検索サービスを検索対象から除外する。
Next, with reference to the request parameter table 212, the
そして、処理部10は、以上の処理によって除外されなかった情報検索サービスを、検索対象の情報検索サービスであると特定する。
And the
続いて、図3〜図7に示した検索サービスしIFリソース情報に基づき、ユーザ端末3から検索要求が入力されたとき行われる情報検索処理を、図8および図9の処理フローに沿って、さらに、図10〜図16を参照して、具体的に説明する。
Subsequently, based on the search service shown in FIGS. 3 to 7 and IF resource information, the information search process performed when a search request is input from the
図10は、ユーザ端末3から入力されるユーザ検索要求の例を示した図であり、(a)は、キーワードがない場合の検索要求の例、(b)は、キーワードがある場合のユーザ検索要求の例である。すなわち、(a)では、「最寄り駅」が「横浜駅」であることを条件に、「店名」、「住所」、「電話番号」、「評判」を検索する。また(b)では、キーワードとして「飲食店」が設定されているので、「最寄り駅」が「横浜駅」である「飲食店」を条件に、「店名」、「住所」、「電話番号」、「評判」を検索する。
FIG. 10 is a diagram illustrating an example of a user search request input from the
以下、(A)ユーザ端末3からのユーザ検索要求にキーワードがある場合と、(B)キーワードがない場合とに分けて説明する。
Hereinafter, (A) a case where a keyword is included in a user search request from the
(A)ユーザ検索要求にキーワードがある場合
情報検索装置1の処理部10は、情報検索を行うにあたって、まず、図3〜図7に示すような検索サービスIFリソース情報を登録しておく(図8のステップS01)。ここでは、図3の検索サービスIFテーブル211に示すように、「ぐるめ案内」、「コンビニ検索」、「書店サーチ」という3つの情報検索サービスが登録されている。
(A) When there is a keyword in the user search request The
次に、処理部10は、ユーザ端末から、図10(a)のようなユーザ検索要求を受信し(図8のステップS02)、その検索要求の構文を解析する(図8のステップS03)。その解析の結果、処理部10は、検索項目が「店名」、「住所」、「電話番号」、「評判」という4つのデータ項目(以下、検索項目の名称という)で構成され、検索条件が「最寄り駅」というデータ項目(以下、検索条件の名称という)および「横浜駅」という条件値の1組の条件で構成されていることを認識する。
Next, the
次に、処理部10は、キーワードが指定されていないので、検索対象の絞込みは行わない(図8のステップS04でNo)。
Next, since no keyword is specified, the
次に、処理部10は、レスポンスフィールド同義語テーブル215(図7参照)から、ユーザ検索要求の検索項目の名称に対応するフィールドIDを取得し(図9のステップS21)、さらに、レスポンスフィールドテーブル214(図6参照)から、その取得したフィールドIDを有するレコードを取得する(図9のステップS22)。
Next, the
ちなみに、処理部10は、「店名」により、レスポンスフィールド同義語テーブル215(図7)を参照して、フィールドID「1001」、「2001」、「3001」を取得する。さらに、これらのフィールドIDにより、レスポンスフィールドテーブル214(図6)を参照して、図11(a)に示す3つのレコードを取得する。
Incidentally, the
同様にして、処理部10は、「住所」から、図11(b)に示す3つのレコードを取得し、「電話番号」から、図11(c)に示す3つのレコードを取得し、「評判」から、図11(d)に示す2つのレコードを取得する。
Similarly, the
以上により、検索サービスIDが「1」と「2」の情報検索サービスについては、ユーザ検索要求に含まれるすべての検索項目の名称に対してフィールド名とXPathとを含むレコードが取得されているので、検索対象に含める。また、検索サービスIDが「3」の情報検索サービスについては、ユーザ検索要求に含まれるすべての検索項目の名称のうち「評判」に対するフィールド名とXPathとを含むレコードが取得されていないので、検索対象から除外する(図9のステップS23)。 As described above, for information search services with search service IDs “1” and “2”, records including field names and XPaths are acquired for the names of all search items included in the user search request. Include in search target. For the information search service with the search service ID “3”, a record including the field name and “XPath” for “reputation” is not acquired from the names of all search items included in the user search request. It excludes from object (step S23 of FIG. 9).
次に、処理部10は、リクエストパラメータ同義語テーブル213(図5参照)から、ユーザ検索要求の検索条件の名称に対応するパラメータIDを取得し(図9のステップS24)、さらに、リクエストパラメータテーブル212(図4参照)から、その取得したパラメータIDを有するレコードを取得する(図9のステップS25)。
Next, the
ちなみに、「最寄り駅」により、リクエストパラメータ同義語テーブル213(図5)を参照して、パラメータID「102」、「202」、「302」を取得する。さらに、これらのパラメータIDにより、リクエストパラメータテーブル212(図4)を参照して、図11(e)に示す3つのレコードを取得する。 Incidentally, by referring to the request parameter synonym table 213 (FIG. 5), parameter IDs “102”, “202”, and “302” are acquired by “nearest station”. Furthermore, with these parameter IDs, the request parameter table 212 (FIG. 4) is referred to, and three records shown in FIG. 11 (e) are acquired.
この場合には、いずれの情報検索サービスについても、ユーザ検索要求に含まれる検索条件の名称に対してパラメータ名と必要度とを含むレコードが取得されているので、除外される情報検索サービスはない(図9のステップS26)。 In this case, for any information search service, there is no information search service to be excluded because the record including the parameter name and the necessity level is acquired for the name of the search condition included in the user search request. (Step S26 in FIG. 9).
ここまでの処理では、検索サービスIDが「1」と「2」の情報検索サービスが検索対象として残っている。そこで、処理部10は、リクエストパラメータテーブル212(図4)を参照し、検索サービスIDが「1」の情報検索サービスについて、必要度が「必須」のパラメータ名として「station」を取得する。このとき、パラメータ名「station」は、ユーザ検索要求に含まれるすべての検索項目に対応するパラメータ名として含まれている(図11(e)参照)。従って、処理部10は、検索サービスIDが「1」の情報検索サービスを検索対象から除外しない。また、処理部10は、リクエストパラメータテーブル212(図4)を参照すると、検索サービスIDが「2」の情報検索サービスについては、必要度が「必須」のパラメータ名が存在しないことを知る。従って、処理部10は、検索サービスIDが「2」の情報検索サービスも検索対象から除外しない(図9のステップS27)。
In the processing so far, the information search services having the search service IDs “1” and “2” remain as search targets. Therefore, the
以上により、処理部10は、検索サービスIDが「1」と「2」の情報検索サービスを検索対象の情報検索サービスであると特定する(図8のステップS06)。
As described above, the
次に、処理部10は、特定した情報提供サービスを利用するための検索サービス要求を生成する(ステップS07)。そのために、処理部10は、まず、検索サービスIFテーブル211を参照して、リクエストURLとプロトコルとを取得する。そして、処理部10は、ユーザ検索条件の条件値「横浜駅」を含めて、次のような検索サービス要求を生成する。
Next, the
検索サービスIDが「1」の情報検索サービス(「ぐるめ案内」)に対して:
http://www.gourumet.jp/Search?station=横浜駅
検索サービスIDが「2」の情報検索サービス(「コンビニ検索」)に対して:
http://www.conbeni.jp/Search?station=横浜駅
なお、日本語文字コード「横浜駅」は、「%B2%A3%C9%CD%B1%D8」とURLエンコードされる。
For an information search service with a search service ID “1” (“Gourmet Guidance”):
http://www.gourumet.jp/Search?station=For the information search service ("convenience store search") whose search service ID is "2": Yokohama Station:
http://www.conbeni.jp/Search?station=Yokohama Station The Japanese character code “Yokohama Station” is URL-encoded as “% B2% A3% C9% CD% B1% D8”.
次に、処理部10は、以上の生成した検索サービス要求を情報提供サーバ装置2へ送信し(図8のステップS08)、その後、情報提供サーバ装置2から返送される検索結果を受信する(図8のステップS09)。図12および図13は、情報提供サーバ装置2から返送される検索結果の例を示した図であり、図12は、検索サービスIDが「1」の情報検索サービス(「ぐるめ案内」)の検索結果の例、図13は、検索サービスIDが「2」の情報検索サービス(「コンビニ検索」)の検索結果の例である。ここでは、検索結果は、XMLで記述されている。
Next, the
次に、処理部10は、受信した検索結果から、XPathを用いて検索項目の情報を抽出する(図8のステップS10)。図14は、検索結果から検索項目の情報を抽出した例を示した図であり、(a)は、図12の検索結果から抽出した検索項目の情報、(b)は、図13の検索結果から抽出した検索項目の情報である。
Next, the
次に、処理部10は、図14に示した検索項目の情報を、ユーザ検索結果としてユーザ端末3へ送信する(図8のステップS11)。以上により、ユーザは、ユーザ検索要求に対するユーザ検索結果を得る。
Next, the
(B)ユーザ検索要求にキーワードがある場合
この場合も、処理部10は、まず、情報検索を行うにあたって、図3〜図7に示すような検索サービスIFリソース情報を登録しておく(図8のステップS01)。
(B) In the case where there is a keyword in the user search request In this case as well, the
次に、処理部10は、ユーザ端末から、図10(b)のようなユーザ検索要求を受信し(図8のステップS02)、その検索要求の構文を解析する(図8のステップS03)。その解析の結果、処理部10は、検索項目が「店名」、「住所」、「電話番号」、「評判」という4つのデータ項目(以下、検索項目の名称という)で構成され、検索条件が「最寄り駅」というデータ項目(以下、検索条件の名称という)および「横浜駅」という条件値の1組の条件で構成され、キーワードが「飲食店」であることを認識する。
Next, the
次に、処理部10は、キーワードがあるので(図8のステップS04でYes)、キーワードにより検索対象を絞り込む(図8のステップS05)。すなわち、キーワードの値「飲食店」により検索サービスIFテーブル211(図3参照)のサービス概要のフィールドを全文検索して、検索対象を「飲食店」がヒットする情報検索サービスに絞り込む。この例では、検索対象は、検索サービスIDが「1」の「ぐるめ案内」のみに絞り込まれる。
Next, since there is a keyword (Yes in step S04 in FIG. 8), the
次に、処理部10は、絞り込まれた情報検索サービスに対し、レスポンスフィールド同義語テーブル215(図7参照)から、ユーザ検索要求の検索項目の名称に対応するフィールドIDを取得し(図9のステップS21)、さらに、レスポンスフィールドテーブル214(図6参照)から、その取得したフィールドIDを有するレコードを取得する(図9のステップS22)。
Next, the
ちなみに、処理部10は、「店名」により、レスポンスフィールド同義語テーブル215(図7)を参照して、フィールドID「1001」、「2001」、「3001」を取得する。このとき、検索対象は、検索サービスIDが「1」の情報検索サービスだけであるので、レスポンスフィールドテーブル214(図6)を参照して、検索サービスIDが「1」のフィールドID「1001」により、図15(a)に示す1つのレコードを取得する。
Incidentally, the
同様にして、処理部10は、「住所」から、図15(b)に示す1つのレコードを取得し、「電話番号」から、図15(c)に示す1つのレコードを取得し、「評判」から、図15(d)に示す1つのレコードを取得する。
Similarly, the
この場合、検索サービスIDが「1」の情報検索サービスについては、検索要求に含まれるすべての検索項目の名称に対してフィールド名とXPathとを含むレコードが取得されているので、検索対象に含める。従って、検索対象から除外する情報検索サービスはない(図9のステップS23)。 In this case, for the information search service with the search service ID “1”, records including field names and XPaths are acquired for the names of all search items included in the search request. . Therefore, there is no information search service to be excluded from search targets (step S23 in FIG. 9).
次に、処理部10は、リクエストパラメータ同義語テーブル213(図5参照)から、ユーザ検索要求の検索条件の名称に対応するパラメータIDを取得し(図9のステップS24)、さらに、リクエストパラメータテーブル212(図4参照)から、その取得したパラメータIDを有するレコードを取得する(図9のステップS25)。
Next, the
ちなみに、処理部10は、「最寄り駅」により、リクエストパラメータ同義語テーブル213(図5)を参照して、パラメータID「102」、「202」、「302」を取得する。このとき、検索対象は、検索サービスIDが「1」の情報検索サービスだけであるので、リクエストパラメータテーブル212(図4)を参照して、検索サービスIDが「1」のパラメータID「102」により、図15(e)に示す1つのレコードを取得する。
Incidentally, the
この場合、検索サービスIDが「1」の情報検索サービスについては、ユーザ検索要求に含まれる検索条件の名称に対してパラメータ名と必要度とを含むレコードが取得されているので、除外される情報検索サービスはない。 In this case, for the information search service with the search service ID “1”, since the record including the parameter name and the necessity level is acquired for the name of the search condition included in the user search request, the information to be excluded There is no search service.
次に、処理部10は、リクエストパラメータテーブル212(図4)を参照し、検索サービスIDが「1」の情報検索サービスについて、必要度が「必須」のパラメータ名として「station」を取得する。このとき、パラメータ名「station」は、ユーザ検索要求に含まれるすべての検索項目に対応するパラメータ名として含まれている(図11(e)参照)。従って、処理部10は、検索サービスIDが「1」の情報検索サービスを検索対象から除外しない。(図9のステップS27)。
Next, the
以上により、処理部10は、検索サービスIDが「1」の情報検索サービスを検索対象の情報検索サービスであると特定する(図9のステップS26)。
As described above, the
次に、処理部10は、特定した情報提供サービスを利用するための検索サービス要求を生成する(図8のステップS07)。そのために、処理部10は、まず、検索サービスIFテーブル211を参照して、リクエストURLとプロトコルとを取得する。そして、処理部10は、ユーザ検索条件の条件値「横浜駅」を含めて、次のような検索サービス要求を生成する。
Next, the
検索サービスIDが「1」の情報検索サービス(「ぐるめ案内」)に対して:
http://www.gourumet.jp/Search?station=横浜駅
なお、日本語文字コード「横浜駅」は、「%B2%A3%C9%CD%B1%D8」とURLエンコードされる。
For an information search service with a search service ID “1” (“Gourmet Guidance”):
http://www.gourumet.jp/Search?station=Yokohama Station The Japanese character code “Yokohama Station” is URL-encoded as “% B2% A3% C9% CD% B1% D8”.
次に、処理部10は、以上の生成した検索サービス要求を情報提供サーバ装置2へ送信し(図8のステップS08)、その後、情報提供サーバ装置2から返送される検索結果を受信する(図8のステップS09)。この場合、検索対象の情報検索サービスは、「ぐるめ案内」だけであるので、その検索結果は、図12に示したものとなる。
Next, the
次に、処理部10は、受信した検索結果から、XPathを用いて検索項目の情報を抽出する(図8のステップS10)。図16は、検索結果から検索項目の情報を抽出した例を示した図である。
Next, the
次に、処理部10は、図16に示した検索項目の情報を、ユーザ検索結果としてユーザ端末3へ送信する(図8のステップS11)。以上により、ユーザは、ユーザ検索要求に対するユーザ検索結果を得る。
Next, the
以上、本実施形態によれば、情報検索装置1は、WEB上に公開された複数の情報検索サービスのAPIに係る情報を、検索サービスIFリソース情報記憶部21に登録しておくことにより、ユーザ端末3からのユーザ検索要求に適合するような情報検索サービスを、適宜、選択して、その選択した情報検索サービスに対し、所定の情報検索サービスを要求し、その結果得られる検索結果をまとめてユーザ検索結果として、ユーザ端末3へ送信する。従って、ユーザは、単一のユーザ検索要求を情報検索装置1に送信するだけで、複数の情報検索サービスによる検索結果を受け取ることができる。
As described above, according to the present embodiment, the
なお、本実施形態において、情報検索装置1の管理者は、WEB上に公開されている情報検索サービスについてのAPIに係る情報を検索サービスIFリソース情報記憶部21に登録する必要があるが、その登録には、データベースについて高度な知識は必要でなく、XMLについて初歩の知識があればよい。また、新たな情報検索サービスのAPIを登録する場合にも、情報検索装置1における処理フローを変更する必要はない。すなわち、情報検索装置1の情報検索プログラムでは、新たな情報検索サービスのAPIの追加に対する柔軟性が確保されていることになる。
In this embodiment, the administrator of the
また、検索サービスIFリソース情報記憶部21のリクエストパラメータ同義語テーブル213およびレスポンスフィールド同義語テーブル315には、それぞれ、検索条件の名称の同義語および検索項目の名称の同義語をいくつも設定することができる。従って、ユーザがユーザ端末3でユーザ検索要求を設定するとき、検索条件の名称、検索項目の名称およびその設定数を、情報検索サービスで定められた名称や数に合わせる必要はない。
Also, in the request parameter synonym table 213 and the response field synonym table 315 of the search service IF resource
本実施形態では、情報検索装置1がユーザ検索要求に含まれる検索条件の名称、検索項目の名称およびその設定数に適合する情報検索サービスを特定し、その特定した情報検索サービスによる検索結果をユーザ端末3へ送信する。そのため、ユーザは、検索条件の名称や検索項目の名称やその設定数などにこだわらずにユーザ端末3からユーザ検索要求を送信することができる。
In the present embodiment, the
1 情報検索装置
2 情報提供サーバ装置
3 ユーザ端末
4 通信ネットワーク
10 処理部
11 検索サービスIFリソース情報管理部
12 ユーザアクセス制御部
13 検索要求解析部
14 検索対象絞込部
15 検索対象特定部
16 検索結果抽出部
17 検索サービスアクセス部
20 記憶部
21 検索サービスIFリソース情報記憶部
30 入出力IF部
40 通信IF部
50 管理者端末
201 情報検索サービスプログラム
211 検索サービスIFテーブル
212 リクエストパラメータテーブル
213 リクエストパラメータ同義語テーブル
214 レスポンスフィールドテーブル
215 レスポンスフィールド同義語テーブル
DESCRIPTION OF
Claims (5)
前記情報検索サービスごとに、その情報検索サービスを利用するために必要なインタフェース情報をあらかじめ記憶しておくインタフェース情報記憶手段と、
前記通信ネットワークを介して前記ユーザ端末から送信されるユーザ検索要求を受信するユーザ検索要求受信手段と、
前記受信したユーザ検索要求に含まれる検索項目と検索条件とキーワードとに基づき、前記インタフェース情報記憶手段に記憶されている前記インタフェース情報を参照して、前記ユーザ検索要求に適合する情報検索サービスを特定する検索サービス特定手段と、
前記特定した情報検索サービスの前記インタフェース情報に基づき、前記特定した情報検索サービスの利用を求める検索サービス要求を生成する検索サービス要求生成手段と、
前記生成した検索サービス要求を、前記特定した情報検索サービスを提供する前記情報提供サーバ装置へ送信する検索サービス要求送信手段と、
前記送信した検索サービス要求に応答して前記情報提供サーバ装置から返送される検索結果を受信する検索結果受信手段と、
前記受信した検索結果から、前記ユーザ検索要求に含まれる検索項目に対応するユーザ検索結果を抽出するユーザ検索結果抽出手段と、
前記抽出したユーザ検索結果を前記ユーザ端末へ送信するユーザ検索結果送信手段と、
を備えたこと
を特徴とする情報検索装置。 An information search device connected to a plurality of information providing server devices each providing an information search service and a user terminal used by a user via a communication network,
Interface information storage means for storing in advance interface information necessary for using the information search service for each of the information search services;
User search request receiving means for receiving a user search request transmitted from the user terminal via the communication network;
Based on the search item, search condition, and keyword included in the received user search request, the interface information stored in the interface information storage means is referenced to identify an information search service that matches the user search request. A search service identification means to
Search service request generating means for generating a search service request for requesting use of the specified information search service based on the interface information of the specified information search service;
Search service request transmission means for transmitting the generated search service request to the information providing server device that provides the specified information search service;
Search result receiving means for receiving a search result returned from the information providing server device in response to the transmitted search service request;
User search result extraction means for extracting a user search result corresponding to a search item included in the user search request from the received search result;
User search result transmission means for transmitting the extracted user search result to the user terminal;
An information retrieval device comprising:
前記情報検索サービスのそれぞれに対応付けて、その情報検索サービスが提供する検索項目の名称、その情報検索サービスが必要とする検索条件の名称、ならびに、前記検索項目の名称および前記検索条件の名称のそれぞれに対応する同義語を、前記インタフェース情報の一部として記憶すること
を特徴とする請求項1に記載の情報検索装置。 The interface information storage means includes
Corresponding to each of the information search services, the name of the search item provided by the information search service, the name of the search condition required by the information search service, the name of the search item and the name of the search condition The synonym corresponding to each is memorize | stored as a part of said interface information. The information search device of Claim 1 characterized by the above-mentioned.
前記処理部が、
前記情報検索サービスごとに、その情報検索サービスを利用するために必要なインタフェース情報をあらかじめ前記記憶部に記憶するインタフェース情報記憶ステップと、
前記通信ネットワークを介して前記ユーザ端末から送信されるユーザ検索要求を受信するユーザ検索要求ステップと、
前記受信したユーザ検索要求に含まれる検索項目と検索条件とキーワードとに基づき、前記記憶部に記憶されている前記インタフェース情報を参照して、前記ユーザ検索要求に適合する情報検索サービスを特定する検索サービス特定ステップと、
前記特定した情報検索サービスの前記インタフェース情報に基づき、前記特定した情報検索サービスの利用を求める検索サービス要求を生成する検索サービス要求生成ステップと、
前記生成した検索サービス要求を、前記特定した情報検索サービスを提供する前記情報提供サーバ装置へ送信する検索サービス要求送信ステップと、
前記送信した検索サービス要求に応答して前記情報提供サーバ装置から返送される検索結果を受信する検索結果受信ステップと、
前記受信した検索結果から、前記ユーザ検索要求に含まれる検索項目に対応するユーザ検索結果を抽出するユーザ検索結果抽出ステップと、
前記抽出したユーザ検索結果を前記ユーザ端末へ送信するユーザ検索結果送信ステップと、
を実行すること
を特徴とする情報検索方法。 An information search method in an information search apparatus that is connected to a plurality of information providing server apparatuses that respectively provide an information search service and a user terminal that is used by a user via a communication network and includes a processing unit and a storage unit. And
The processing unit is
An interface information storage step for storing in advance in the storage unit interface information necessary for using the information search service for each of the information search services;
A user search request step for receiving a user search request transmitted from the user terminal via the communication network;
A search for identifying an information search service that matches the user search request with reference to the interface information stored in the storage unit based on a search item, a search condition, and a keyword included in the received user search request Service identification steps;
A search service request generating step for generating a search service request for requesting use of the specified information search service based on the interface information of the specified information search service;
A search service request transmission step of transmitting the generated search service request to the information providing server device that provides the specified information search service;
A search result receiving step of receiving a search result returned from the information providing server device in response to the transmitted search service request;
A user search result extraction step for extracting a user search result corresponding to a search item included in the user search request from the received search result;
A user search result transmission step of transmitting the extracted user search result to the user terminal;
An information retrieval method characterized by executing
前記インタフェース情報記憶ステップでは、
前記情報検索サービスのそれぞれに対応付けて、その情報検索サービスが提供する検索項目の名称、その情報検索サービスが必要とする検索条件の名称、ならびに、前記検索項目の名称および前記検索条件の名称のそれぞれに対応する同義語を、前記インタフェース情報の一部として前記記憶部に記憶すること
を特徴とする請求項3に記載の情報検索方法。 The processor is
In the interface information storing step,
Corresponding to each of the information search services, the name of the search item provided by the information search service, the name of the search condition required by the information search service, the name of the search item and the name of the search condition The synonym corresponding to each is memorize | stored in the said memory | storage part as a part of said interface information. The information search method of Claim 3 characterized by the above-mentioned.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007202448A JP2009037501A (en) | 2007-08-03 | 2007-08-03 | Information retrieval apparatus, information retrieval method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007202448A JP2009037501A (en) | 2007-08-03 | 2007-08-03 | Information retrieval apparatus, information retrieval method and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009037501A true JP2009037501A (en) | 2009-02-19 |
Family
ID=40439331
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007202448A Pending JP2009037501A (en) | 2007-08-03 | 2007-08-03 | Information retrieval apparatus, information retrieval method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009037501A (en) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101924821A (en) * | 2010-04-26 | 2010-12-22 | 深圳市同洲电子股份有限公司 | Mobile communication terminal as well as method and system for starting application program by same |
CN101963975A (en) * | 2010-09-14 | 2011-02-02 | 深圳桑菲消费通信有限公司 | System and method for quickly searching application program of mobile terminal |
JP2011059902A (en) * | 2009-09-08 | 2011-03-24 | Yahoo Japan Corp | Apparatus, method and program for evaluating character string |
JP2014032591A (en) * | 2012-08-06 | 2014-02-20 | Nec Personal Computers Ltd | Information processing device, and control method therefor |
JP2016170778A (en) * | 2015-03-10 | 2016-09-23 | 技研商事インターナショナル株式会社 | Market area analysis system |
US10073927B2 (en) | 2010-11-16 | 2018-09-11 | Microsoft Technology Licensing, Llc | Registration for system level search user interface |
US10346479B2 (en) | 2010-11-16 | 2019-07-09 | Microsoft Technology Licensing, Llc | Facilitating interaction with system level search user interface |
US10346478B2 (en) | 2010-11-16 | 2019-07-09 | Microsoft Technology Licensing, Llc | Extensible search term suggestion engine |
WO2019208211A1 (en) * | 2018-04-27 | 2019-10-31 | 日本電気株式会社 | Server device |
WO2022019159A1 (en) * | 2020-07-20 | 2022-01-27 | ソニーグループ株式会社 | Information processing device, information processing method, information search device, and information search method |
-
2007
- 2007-08-03 JP JP2007202448A patent/JP2009037501A/en active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011059902A (en) * | 2009-09-08 | 2011-03-24 | Yahoo Japan Corp | Apparatus, method and program for evaluating character string |
CN101924821A (en) * | 2010-04-26 | 2010-12-22 | 深圳市同洲电子股份有限公司 | Mobile communication terminal as well as method and system for starting application program by same |
CN101963975A (en) * | 2010-09-14 | 2011-02-02 | 深圳桑菲消费通信有限公司 | System and method for quickly searching application program of mobile terminal |
US10073927B2 (en) | 2010-11-16 | 2018-09-11 | Microsoft Technology Licensing, Llc | Registration for system level search user interface |
US10346479B2 (en) | 2010-11-16 | 2019-07-09 | Microsoft Technology Licensing, Llc | Facilitating interaction with system level search user interface |
US10346478B2 (en) | 2010-11-16 | 2019-07-09 | Microsoft Technology Licensing, Llc | Extensible search term suggestion engine |
JP2014032591A (en) * | 2012-08-06 | 2014-02-20 | Nec Personal Computers Ltd | Information processing device, and control method therefor |
JP2016170778A (en) * | 2015-03-10 | 2016-09-23 | 技研商事インターナショナル株式会社 | Market area analysis system |
WO2019208211A1 (en) * | 2018-04-27 | 2019-10-31 | 日本電気株式会社 | Server device |
JPWO2019208211A1 (en) * | 2018-04-27 | 2021-04-30 | 日本電気株式会社 | Server device |
WO2022019159A1 (en) * | 2020-07-20 | 2022-01-27 | ソニーグループ株式会社 | Information processing device, information processing method, information search device, and information search method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2009037501A (en) | Information retrieval apparatus, information retrieval method and program | |
CN101262477B (en) | System and method for detecting multiple IP address | |
US20020078045A1 (en) | System, method, and program for ranking search results using user category weighting | |
US20080104042A1 (en) | Personalized Search Using Macros | |
US20100257466A1 (en) | Method and system for generating a mini-software application corresponding to a web site | |
JP2007233856A (en) | Information processor, information processing system and method, and computer program | |
JP5084858B2 (en) | Summary creation device, summary creation method and program | |
CN105550206B (en) | The edition control method and device of structured query sentence | |
JP2008071259A (en) | Bookmark tag setting device | |
JP2007072596A (en) | Information sharing system and information sharing method | |
US7895337B2 (en) | Systems and methods of generating a content aware interface | |
RU2693193C1 (en) | Automated extraction of information | |
EP3238105B1 (en) | Application partial deep link to a corresponding resource | |
US9529922B1 (en) | Computer implemented systems and methods for dynamic and heuristically-generated search returns of particular relevance | |
JP2010146332A (en) | Information processing apparatus, system, method and program for providing information and recording medium | |
CN101231655A (en) | Method and system for processing search engine results | |
WO2016011699A1 (en) | Method and device for use in configuring navigation page of browser | |
JP5138576B2 (en) | Search navigation apparatus and method using faceted query | |
JP2006236221A (en) | Management server for web page retrieval | |
JP5997738B2 (en) | Information providing system, information providing server, information providing method and program | |
US20110208718A1 (en) | Method and system for adding anchor identifiers to search results | |
US10061859B2 (en) | Computer implemented systems and methods for dynamic and heuristically-generated search returns of particular relevance | |
US20130226900A1 (en) | Method and system for non-ephemeral search | |
US20080021875A1 (en) | Method and apparatus for performing a tone-based search | |
JP2002215675A (en) | Information retrieval system |