(57)【要約】【課題】複数のウェブサービスから取得した情報を集約するに当たり、プログラムの開発コストとプログラムの改修コストとを安くするとともに、システムダウン期間を短くすることを目的とする。【解決手段】レスポンス集約装置１は、複数のウェブサービス４から受信したサンプルレスポンスに含まれる各項目の項目値のうち、サンプルレスポンス間で同一の値となる項目値を特定し、サンプルレスポンスが同一の対象に関するコンテンツを示す場合、特定した項目値の項目をマージキーとする。レスポンス集約装置１は、複数のウェブサービス４から送信された実レスポンスをマージキーとした項目をキーとして集約する。【選択図】図１
2014229076.tif 000002
【特許請求の範囲】
【請求項１】
複数のウェブサービスから受信したサンプルレスポンスを入力するレスポンス入力部と、
前記レスポンス入力部が入力したサンプルレスポンスに含まれる各項目の項目値を取得する項目値取得部と、
前記項目値取得部が取得した項目値のうち、前記複数のウェブサービスから受信したサンプルレスポンス間で同一の値となる項目値を特定する同一項目値特定部と、
前記複数のウェブサービスから受信したサンプルレスポンスが同一の対象に関するコンテンツを示す場合、前記同一項目値特定部が特定した項目値の項目をマージキー候補リストに登録するリスト作成部と、
利用者端末から送信されたリクエストに対して前記複数のウェブサービスから送信された実レスポンスを受信するレスポンス受信部と、
前記リスト作成部が作成したマージキー候補リストに登録された項目をキーとして、前記レスポンス受信部が前記複数のウェブサービスから受信した実レスポンスを集約するレスポンス集約部と、
前記レスポンス集約部が集約した実レスポンスを前記利用者端末へ送信するレスポンス送信部と
を備えることを特徴とするレスポンス集約装置。
【請求項２】
前記リスト作成部は、前記複数のウェブサービスから受信したサンプルレスポンスが異なる対象に関するコンテンツを示す場合、前記同一項目値特定部が特定した項目値の項目をマージキー候補リストから除外する
ことを特徴とする請求項１に記載のレスポンス集約装置。
【請求項３】
前記レスポンス集約装置は、さらに、
前記実レスポンスの形式を変換するための変換定義を生成するためのテンプレートとして、マージキー用変換テンプレートと非マージキー用変換テンプレートとを記憶するテンプレート記憶部と、
前記各項目について、前記マージキー候補リストに登録された項目の場合には、前記テンプレート記憶部が記憶したマージキー用変換テンプレートを用いて、その項目についての変換定義を生成し、前記マージキー候補リストに登録されていない項目の場合には、前記テンプレート記憶部が記憶した非マージキー用変換テンプレートを用いて、その項目についての変換定義を生成する変換定義生成部と
を備え、
前記レスポンス集約部は、前記変換定義生成部が生成した変換定義に基づき、前記複数のウェブサービスから受信した実レスポンスを変換することにより、前記複数のウェブサービスから受信した実レスポンスを集約する
ことを特徴とする請求項１又は２に記載のレスポンス集約装置。
【請求項４】
前記レスポンス集約装置は、さらに、
ウェブサービスと、前記サンプルレスポンスに含まれる各項目に付けられた項目名と毎に、取得名を管理する項目管理部と、
前記項目管理部が管理する取得名によって指定された項目の情報を、前記レスポンス集約部が集約した実レスポンスから抽出するデータ抽出部と
を備え、
前記レスポンス送信部は、前記データ抽出部が抽出した情報を前記利用者端末へ送信する
ことを特徴とする請求項３に記載のレスポンス集約装置。
【請求項５】
入力装置が、複数のウェブサービスから受信したサンプルレスポンスを入力するレスポンス入力工程と、
処理装置が、前記レスポンス入力工程で入力したサンプルレスポンスに含まれる各項目の項目値を取得する項目値取得工程と、
処理装置が、前記項目値取得工程で取得した項目値のうち、前記複数のウェブサービスから受信したサンプルレスポンス間で同一の値となる項目値を特定する同一項目値特定工程と、
処理装置が、前記複数のウェブサービスから受信したサンプルレスポンスが同一の対象に関するコンテンツを示す場合、前記同一項目値特定工程で特定した項目値の項目をマージキー候補リストに登録するリスト作成工程と、
通信装置が、利用者端末から送信されたリクエストに対して前記複数のウェブサービスから送信された実レスポンスを受信するレスポンス受信工程と、
処理装置が、前記リスト作成工程で作成したマージキー候補リストに登録された項目をキーとして、前記レスポンス受信工程で前記複数のウェブサービスから受信した実レスポンスを集約するレスポンス集約工程と、
通信装置が、前記レスポンス集約工程で集約した実レスポンスを前記利用者端末へ送信するレスポンス送信工程と
を備えることを特徴とするレスポンス集約方法。
【請求項６】
複数のウェブサービスから受信したサンプルレスポンスを入力するレスポンス入力処理と、
前記レスポンス入力処理で入力したサンプルレスポンスに含まれる各項目の項目値を取得する項目値取得処理と、
前記項目値取得処理で取得した項目値のうち、前記複数のウェブサービスから受信したサンプルレスポンス間で同一の値となる項目値を特定する同一項目値特定処理と、
前記複数のウェブサービスから受信したサンプルレスポンスが同一の対象に関するコンテンツを示す場合、前記同一項目値特定処理で特定した項目値の項目をマージキー候補リストに登録するリスト作成処理と、
利用者端末から送信されたリクエストに対して前記複数のウェブサービスから送信された実レスポンスを受信するレスポンス受信処理と、
前記リスト作成処理で作成したマージキー候補リストに登録された項目をキーとして、前記レスポンス受信処理で前記複数のウェブサービスから受信した実レスポンスを集約するレスポンス集約処理と、
前記レスポンス集約処理で集約した実レスポンスを前記利用者端末へ送信するレスポンス送信処理と
をコンピュータに実行させることを特徴とするレスポンス集約プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、複数のウェブサービスから取得した情報を集約する技術に関する。
【背景技術】
【０００２】
ぐるなび（登録商標）、ホットペッパー（登録商標）、食べログ（登録商標）といったウェブサービスが普及し、コンシューマ向けのアプリケーションプログラム（以下、アプリ）等から、これらのウェブサービスが活用されている。ここで、複数のウェブサービスを相互に利用することで、あるウェブサービスによって保持していない情報を他のウェブサービスによって補完すること等が可能であり、より信頼性の高い情報を提供できるようになる。
【０００３】
複数のウェブサービスから取得した情報を集約するプログラムを作成するにあたっては、次の（１）〜（３）の点を想定する必要がある。
（１）ウェブサービスから取得できる情報の形式は、それぞれのウェブサービスで異なる。（２）使用するウェブサービスを第三者が運営している場合、突然Ｉ／Ｆ（インターフェース）が変わることがある。（３）有益な情報を提供する新たなサービスが出現することがある。
これらのことから、複数のウェブサービスから取得した情報を集約するためには、ウェブサービス毎の情報の形式を意識してプログラムを開発する必要があり、プログラムの開発コストが大きくなる。また、Ｉ／Ｆ変更が発生する度に集約するためのプログラムの改修が必要となり、プログラムの改修コストが大きくなり、システムダウン期間が長くなる。そのため、利用者に影響を与えずに、ウェブサービスを簡易に追加変更できる仕組みが必要である。
【０００４】
特許文献１には、ネットワーク装置におけるデータ形式の標準化について記載されている。
ネットワーク装置は、内部の情報をＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）形式で保持している。保持している内部の情報はウェブサービスとして外部から取得できるようになっている。ネットワーク装置の管理者は各ネットワーク装置の情報を横並びで見たいことがあるが、ネットワーク装置毎のウェブサービスで得られる内部の情報を表すＸＭＬ形式は異なるため、データ形式を標準化して取得する必要がある。
この課題に対し、特許文献では、ＸＳＬＴ（ＸＭＬ  Ｓｔｙｌｅｓｈｅｅｔ  Ｌａｎｇｕａｇｅ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎｓ）ファイルを用いて、ネットワーク装置の情報を標準的なＸＭＬ形式に変換して取得することが記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−２６０３２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１では、ネットワーク装置の情報を標準的なＸＭＬ形式に変換するためのＸＳＬＴファイルを自動で生成することについては言及されていない。特許文献１では、ネットワーク装置毎のＸＳＬＴファイルは手動で生成される。また、特許文献１では、ネットワーク装置の内部情報であるＸＭＬ形式のＩ／Ｆ変更が発生した際は、ＸＭＬ形式の仕様変更後の内部構造を理解して、ＸＳＬＴファイルを再度手動で生成する必要がある。
そのため、特許文献１に記載された技術を利用したとしても、ウェブサービス毎の情報の形式を意識してプログラムを開発する必要があり、プログラムの開発コストが大きい。また、Ｉ／Ｆ変更が発生する度に集約するためのプログラムの改修が必要となり、プログラムの改修コストが大きく、システムダウン期間が長い。
この発明は、複数のウェブサービスから取得した情報を集約するに当たり、プログラムの開発コストとプログラムの改修コストとを安くするとともに、システムダウン期間を短くすることを目的とする。
【課題を解決するための手段】
【０００７】
この発明に係るレスポンス集約装置は、
複数のウェブサービスから受信したサンプルレスポンスを入力するレスポンス入力部と、
前記レスポンス入力部が入力したサンプルレスポンスに含まれる各項目の項目値を取得する項目値取得部と、
前記項目値取得部が取得した項目値のうち、前記複数のウェブサービスから受信したサンプルレスポンス間で同一の値となる項目値を特定する同一項目値特定部と、
前記複数のウェブサービスから受信したサンプルレスポンスが同一の対象に関するコンテンツを示す場合、前記同一項目値特定部が特定した項目値の項目をマージキー候補リストに登録するリスト作成部と、
利用者端末から送信されたリクエストに対して前記複数のウェブサービスから送信された実レスポンスを受信するレスポンス受信部と、
前記リスト作成部が作成したマージキー候補リストに登録された項目をキーとして、前記レスポンス受信部が前記複数のウェブサービスから受信した実レスポンスを集約するレスポンス集約部と、
前記レスポンス集約部が集約した実レスポンスを前記利用者端末へ送信するレスポンス送信部と
を備えることを特徴とする。
【発明の効果】
【０００８】
この発明に係るレスポンス集約装置では、サンプルレスポンスからマージキーを抽出し、抽出したマージキーに基づき各ウェブサービスから受信した実レスポンスを集約する。これにより、ウェブサービス毎の情報の形式を意識することなく、自動的にマージキーを抽出できるため、プログラムの開発コストとプログラムの改修コストとを安くできるとともに、システムダウン期間を短くすることができる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１に係るレスポンス集約装置１の構成図。
【図２】実施の形態１に係る事前準備処理の処理を示すフローチャート。
【図３】実施の形態１に係るレスポンス集約処理の処理を示すフローチャート。
【図４】実施の形態１に係るマージキー抽出部４１の構成図。
【図５】実施の形態１に係るリスト記憶部４１５が記憶するマージキー候補リストを示す図。
【図６】実施の形態１に係るマージキー抽出部４１の処理を示すフローチャート。
【図７】実施の形態１に係る項目管理部４２の構成図。
【図８】実施の形態１に係る別名定義記憶部４２３が記憶する別名定義表を示す図。
【図９】実施の形態１に係る履歴記憶部４２４が記憶する履歴表を示す図。
【図１０】実施の形態１に係る項目管理部４２の処理を示すフローチャート。
【図１１】実施の形態１に係る変換定義部４３の構成図。
【図１２】実施の形態１に係るテンプレート記憶部４３２が記憶するテンプレートを示す図。
【図１３】実施の形態１に係る変換定義部４３の処理を示すフローチャート。
【図１４】実施の形態１に係る利用者側送受信部１０の処理を示すフローチャート。
【図１５】実施の形態１に係るリクエスト変換部２０の構成図。
【図１６】実施の形態１に係る変換情報記憶部２１が記憶する変換情報を示す図。
【図１７】実施の形態１に係るリクエスト変換部２０の処理を示すフローチャート。
【図１８】実施の形態１に係るウェブサービス側送受信部３０の処理を示すフローチャート。
【図１９】実施の形態１に係るレスポンス集約部４４の処理を示すフローチャート。
【図２０】実施の形態１に係るデータ抽出部４５の構成図。
【図２１】実施の形態１に係る抽出情報記憶部４５２が記憶する抽出表を示す図。
【図２２】実施の形態１に係るデータ抽出部４５の処理を示すフローチャート。
【図２３】アプリケーション２が複数存在する場合におけるレスポンス集約装置１の構成図。
【図２４】実施の形態１に示したレスポンス集約装置１のハードウェア構成の例を示す図。
【発明を実施するための形態】
【００１０】
実施の形態１．
図１は、実施の形態１に係るレスポンス集約装置１の構成図である。
レスポンス集約装置１は、アプリケーション２を介して複数の利用者３（携帯電話等の利用者端末）と接続されるとともに、複数のウェブサービス４と接続されている。レスポンス集約装置１は、利用者側送受信部１０（レスポンス送信部）、リクエスト変換部２０、ウェブサービス側送受信部３０（レスポンス受信部）、レスポンス変換部４０を備える。
レスポンス変換部４０は、マージキー抽出部４１、項目管理部４２、変換定義部４３、レスポンス集約部４４、データ抽出部４５を備える。
【００１１】
レスポンス集約装置１の処理は、事前準備処理と、レスポンス集約処理との２つに分けられる。
【００１２】
図２は、実施の形態１に係る事前準備処理を示すフローチャートである。
マージキー抽出部４１は、管理者等が事前に取得した複数のレスポンスであって、レスポンス集約装置１によって集約したい各ウェブサービス４から取得したレスポンス（以下、サンプルレスポンス）を入力する（Ｓ１１）。マージキー抽出部４１は、入力されたサンプルレスポンスから各ウェブサービスを集約するためのマージキーとする項目を抽出する（Ｓ１２）。項目管理部４２は、マージキーとなるマージキー項目と、マージキーとならない非マージキー項目とを管理する（Ｓ１３）。
変換定義部４３は、レスポンスに含まれる各項目について、マージキー項目か非マージキー項目かに応じて、標準形式へ変換するための変換定義を生成する（Ｓ１４）。標準形式へ変換するための変換定義としては、ＸＳＬＴファイル等が考えられる。
【００１３】
図３は、実施の形態１に係るレスポンス集約処理を示すフローチャートである。
利用者側送受信部１０は、アプリケーション２から利用者３が送信したリクエストを受信する（Ｓ２１）。リクエスト変換部２０は、利用者側送受信部１０が受信したリクエストを変換して、ウェブサービス４毎のリクエストを生成する（Ｓ２２）。ウェブサービス側送受信部３０は、リクエスト変換部２０が生成した各リクエストを対応するウェブサービス４へ送信する（Ｓ２３）。
ウェブサービス側送受信部３０は、送信したリクエストに対するレスポンス（以下、実レスポンス）を各ウェブサービス４から受信する（Ｓ２４）。レスポンス集約部４４は、ウェブサービス側送受信部３０が各ウェブサービス４から受信した実レスポンスを、事前準備処理で生成された変換定義に従い標準形式に変換することにより集約する（Ｓ２５）。データ抽出部４５は、集約された実レスポンスから必要な情報を抽出する（Ｓ２６）。そして、利用者側送受信部１０は、データ抽出部４５が抽出した情報をアプリケーション２を介して利用者３へ送信する（Ｓ２７）。
【００１４】
図４は、実施の形態１に係るマージキー抽出部４１の構成図である。
マージキー抽出部４１は、レスポンス入力部４１１、項目値取得部４１２、同一項目値特定部４１３、リスト作成部４１４、リスト記憶部４１５を備える。
【００１５】
図５は、実施の形態１に係るリスト記憶部４１５が記憶するマージキー候補リストを示す図である。
マージキー候補リストは、候補項目名が含まれる。候補項目名は、各ウェブサービス４の実レスポンスを集約する際のマージキーの候補となる項目の名称である。
【００１６】
図６は、実施の形態１に係るマージキー抽出部４１の処理を示すフローチャートである。
なお、管理者等は、事前に、レスポンス集約装置１によって集約したい各ウェブサービス４へリクエストを送信して、各ウェブサービス４から複数の対象に対するサンプルレスポンスを取得しておく。ここで、対象とは、例えば、ぐるなび（登録商標）等であれば、飲食店のことである。同一の対象とは同一の飲食店を意味し、異なる対象とは異なる飲食店を意味する。
以下の説明では、２つのウェブサービス４から得られた同一の対象に対する２つのサンプルレスポンスの組を正解ペアと呼び、２つのウェブサービス４から得られた異なる対象に対する２つのサンプルレスポンスの組を不正解ペア１と呼び、１つのウェブサービス４から得られた異なる２つの対象に対する２つのサンプルレスポンスの組を不正解ペア２と呼ぶ。
マージキー抽出部４１は、図６に示す処理を、複数の正解ペア、複数の不正解ペア１、複数の不正解ペア２について実行する。
【００１７】
まず、レスポンス入力部４１１は、管理者等の指定に従い、正解ペア又は不正解ペア１又は不正解ペア２に含まれる２つのサンプルレスポンスを入力する（Ｓ１０１）。
次に、項目値取得部４１２は、変数ｉを０に初期化し、（Ｓ１０２）、一方のサンプルレスポンスであるレスポンス１のｉ番目の項目の項目値を取得する（Ｓ１０３）。続いて、項目値取得部４１２は、変数ｊを０に初期化し、（Ｓ１０４）、他方のサンプルレスポンスであるレスポンス２のｊ番目の項目の項目値を取得する（Ｓ１０５）。
なお、例えば、サンプルレスポンスがＸＭＬで記載されている場合には、項目とはＸＭＬのタグのことであり、項目値とはＸＭＬのタグの値のことである。例えば、ＸＭＬのタグが飲食店の名称を定義したタグであれば、項目値は飲食店の名称になる。
【００１８】
次に、同一項目値特定部４１３は、Ｓ１０３で取得された項目値と、Ｓ１０５で取得された項目値とが同一であるか否かを判定する（Ｓ１０６）。
リスト作成部４１４は、Ｓ１０６で項目値が同一であると判定された場合、Ｓ１０１で入力されたのが正解ペアであるか否かを判定する（Ｓ１０７）。リスト作成部４１４は、Ｓ１０１で入力されたのが正解ペアであると判定した場合には、マージキー候補リストに、その項目の項目名を登録する（Ｓ１０８）。一方、リスト作成部４１４は、Ｓ１０１で入力されたのが不正解ペア１又は不正解ペア２であると判定した場合には、マージキー候補リストから、その項目の項目名を除外する（Ｓ１０９）。
なお、例えば、サンプルレスポンスがＸＭＬで記載されている場合には、項目の項目名とはＸＭＬのタグの名称のことである。
【００１９】
次に、項目値取得部４１２は、変数ｊをインクリメントして（Ｓ１１０）、変数ｊがレスポンス２の項目数未満であれば、処理をＳ１０５に処理を戻す（Ｓ１１１）。続いて、項目値取得部４１２は、変数ｉをインクリメントして（Ｓ１１２）、変数ｉがレスポンス１の項目数未満であれば、処理をＳ１０３に処理を戻す（Ｓ１１３）。
【００２０】
図７は、実施の形態１に係る項目管理部４２の構成図である。
項目管理部４２は、項目登録部４２１、履歴登録部４２２、別名定義記憶部４２３、履歴記憶部４２４を備える。
【００２１】
図８は、実施の形態１に係る別名定義記憶部４２３が記憶する別名定義表を示す図である。
別名定義表には、ウェブサービス名、項目名、取得名、キー情報が含まれる。ウェブサービス名は、ウェブサービス４を識別するための名称である。項目名は、リクエストに含まれる項目の名称である。取得名は、ウェブサービス４及び項目毎に割り当てられた別名である。キー情報は、その項目がマージキーであるか否かを示す情報である。
【００２２】
図９は、実施の形態１に係る履歴記憶部４２４が記憶する履歴表を示す図である。
履歴表には、取得名、旧項目名、更新日時が含まれる。取得名は、上述した通りである。旧項目名は、更新前の項目名である。更新日時は、項目名が更新された日時である。
【００２３】
図１０は、実施の形態１に係る項目管理部４２の処理を示すフローチャートである。
項目登録部４２１は、図６のＳ１０３及びＳ１０５で項目値が取得された項目の項目名を別名定義表に登録する（Ｓ２０１）。この際、項目登録部４２１は、どのウェブサービス４から取得した項目であるか分かるように、項目名とともにウェブサービス名も登録する。
【００２４】
次に、履歴登録部４２２は、前回取得したときと、項目名が更新されているか否かを判定する（Ｓ２０２）。例えば、履歴登録部４２２は、項目の位置や項目値によって、取得した項目と、前回取得した項目との対応関係を特定し、対応する項目の項目名が異なれば更新されていると判定する。なお、項目の位置とは、店舗名の次に電話番号がきて、電話番号の次に住所がくるという項目の並び順である。
履歴登録部４２２は、更新されていると判定した場合、前回取得した項目の項目名を、その取得名とともに履歴表に登録し、別名定義表からこの項目のレコードを削除する（Ｓ２０３）。この際、履歴登録部４２２は、履歴表の更新日時に、登録した日時を登録する。
【００２５】
項目登録部４２１は、Ｓ２０１で項目名がマージキー候補リストに登録されている場合には、別名定義表のキー情報に、マージキーであることを示す１を登録し、マージキー候補リストに登録されていない場合には、マージキーでないことを示す０を登録する（Ｓ２０４）。
また、項目登録部４２１は、Ｓ２０１で登録した項目名に取得名を割り振り、登録する（Ｓ２０５）。なお、項目登録部４２１は、Ｓ２０２で更新されていると判定された場合、前回取得した項目の取得名を割り振る。つまり、項目名が更新された場合であっても、同じ項目には同じ取得名が割り振られる。
【００２６】
図１１は、実施の形態１に係る変換定義部４３の構成図である。
変換定義部４３は、変換定義生成部４３１、テンプレート記憶部４３２を備える。
【００２７】
図１２は、実施の形態１に係るテンプレート記憶部４３２が記憶するテンプレートを示す図である。
テンプレートは、例えば、ＸＳＬＴファイルの雛型であり、項目値等を入力することにより、ＸＳＬＴファイルを作成することができる。
テンプレートには、マージキー用変換テンプレートと、非マージキー用変換テンプレートとがある。マージキー用変換テンプレートは、マージキーとなる項目のＸＳＬＴファイルを生成するためのテンプレートであり、非マージキー用変換テンプレートは、マージキーとならない項目のＸＳＬＴファイルを生成するためのテンプレートである。
【００２８】
図１３は、実施の形態１に係る変換定義部４３の処理を示すフローチャートである。
変換定義生成部４３１は、変数ｉを０に初期化し（Ｓ３０１）、別名定義記憶部４２３が記憶する別名定義表から、ｉ番目の項目を取得する（Ｓ３０２）。
変換定義生成部４３１は、別名定義表のキー情報に基づき、取得した項目がマージキーであるか否かを判定する（Ｓ３０３）。変換定義生成部４３１は、マージキーであると判定した場合には、マージキー用変換テンプレートを用いて、取得した項目用の変換定義を生成する（Ｓ３０４）。一方、変換定義生成部４３１は、マージキーでないと判定した場合には、非マージキー用変換テンプレートを用いて、取得した項目用の変換定義を生成する（Ｓ３０５）。
変換定義生成部４３１は、変数ｉをインクリメントして（Ｓ３０６）、変数ｉが別名定義表の項目数未満であれば、処理をＳ３０２に処理を戻す（Ｓ３０７）。
【００２９】
図１４は、実施の形態１に係る利用者側送受信部１０の処理を示すフローチャートである。
利用者側送受信部１０は、メッセージを受信すると、受信したメッセージが利用者から送信されたリクエストであるか、データ抽出部４５から送信された実レスポンスであるかを判定する（Ｓ４０１）。
利用者側送受信部１０は、リクエストであると判定した場合には、リクエストを解釈し（Ｓ４０２）、パラメータを取得してリクエスト変換部２０へ送信する（Ｓ４０３）。
一方、利用者側送受信部１０は、実レスポンスであると判定した場合には、実レスポンスを解釈し（Ｓ４０４）、利用者へ送信する最終的な実レスポンスに成形して、利用者へ送信する（Ｓ４０５）。
【００３０】
図１５は、実施の形態１に係るリクエスト変換部２０の構成図である。
リクエスト変換部２０は、変換情報記憶部２１、変換処理部２２を備える。
【００３１】
変換情報記憶部２１は、リクエストを変換するために必要な変換情報を記憶する記憶装置である。
図１６は、実施の形態１に係る変換情報記憶部２１が記憶する変換情報を示す図である。
変換情報には、ウェブサービス名、リクエストＵＲＬ、ウェブサービス利用キーが含まれる。ウェブサービス名は、リクエストの送信先となるウェブサービス４の識別情報である。リクエストＵＲＬは、リクエストの送信先のＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）である。ウェブサービス利用キーは、ウェブサービス４を利用するための認証キーである。
【００３２】
図１７は、実施の形態１に係るリクエスト変換部２０の処理を示すフローチャートである。
変換処理部２２は、利用者側送受信部１０が送信したリクエストを受信する（Ｓ５０１）。すると、変換処理部２２は、変換情報に含まれる各ウェブサービス４についてのリクエストＵＲＬとウェブサービス利用キーとを用いて、取得したリクエストをウェブサービス４毎のリクエストに変換する（Ｓ５０２）。
【００３３】
なお、ウェブサービス４によっては、認証キーが利用者毎に定められている。この場合には、変換情報記憶部２１は、ウェブサービス名及び利用者毎に、認証キーを記憶する。そして、変換処理部２２は、Ｓ５０２でリクエストの送信元の利用者についての認証キーを用いて、取得したリクエストをウェブサービス４毎のリクエストに変換する。
【００３４】
図１８は、実施の形態１に係るウェブサービス側送受信部３０の処理を示すフローチャートである。
ウェブサービス側送受信部３０は、メッセージを受信すると、受信したメッセージがリクエスト変換部２０から送信されたリクエストであるか、ウェブサービス４から送信された実レスポンスであるかを判定する（Ｓ６０１）。
ウェブサービス側送受信部３０は、リクエストであると判定した場合には、リクエストを対応するウェブサービス４へ送信する（Ｓ６０２）。
一方、ウェブサービス側送受信部３０は、実レスポンスであると判定した場合には、実レスポンスをレスポンス集約部４４へ送信する（Ｓ６０３）。
【００３５】
図１９は、実施の形態１に係るレスポンス集約部４４の処理を示すフローチャートである。
レスポンス集約部４４は、ウェブサービス側送受信部３０が送信した各ウェブサービス４から送信された実レスポンスを受信する（Ｓ７０１）。
すると、レスポンス集約部４４は、変数ｉ，ｊを０に初期化し（Ｓ７０２）、受信したｉ番目の実レスポンスからｊ番目の項目を取得する（Ｓ７０３）。そして、レスポンス集約部４４は、取得した項目に対応する変換定義を用いて、取得した項目を標準形式に変換する（Ｓ７０４）。
レスポンス集約部４４は、変数ｊをインクリメントして（Ｓ７０５）、変数ｊがｉ番目の実レスポンスの項目数未満であれば、処理をＳ７０３に戻す（Ｓ７０６）。続いて、変数ｉをインクリメントして（Ｓ７０７）、変数ｉがウェブサービス４の数未満である場合には、処理をＳ７０３に戻す（Ｓ７０８）。
そして、各項目を標準形式に変換した実レスポンスをデータ抽出部４５へ送信する（Ｓ７０９）。
【００３６】
図２０は、実施の形態１に係るデータ抽出部４５の構成図である。
データ抽出部４５は、抽出処理部４５１、抽出情報記憶部４５２を備える。
【００３７】
図２１は、実施の形態１に係る抽出情報記憶部４５２が記憶する抽出表を示す図である。
抽出表には、抽出名が含まれる。抽出名は、抽出すべき項目を取得名で示したものである。
【００３８】
図２２は、実施の形態１に係るデータ抽出部４５の処理を示すフローチャートである。
抽出処理部４５１は、レスポンス集約部４４から、標準形式に変換された実レスポンスを受信する（Ｓ８０１）。抽出処理部４５１は、受信した実レスポンスから、抽出表に含まれる抽出名で指定された項目の情報を抽出する（Ｓ８０２）。抽出処理部４５１は、抽出した項目の情報を利用者側送受信部１０へ送信する（Ｓ８０３）。
【００３９】
以上のように、実施の形態１に係るレスポンス集約装置１では、マージキー抽出部４１に複数の正解ペア、不正解ペア１、不正解ペア２を与えることにより、ウェブサービス４からのレスポンスを集約するために用いるマージキーを絞り込み、抽出することが可能である。
そのため、各ウェブサービス４から得られるレスポンスの構造を理解して、人手でマージキーを抽出することなく、マージキーを抽出することができる。したがって、プログラム開発の手間が減り、プログラムの開発コストを安くすることができる。
また、ウェブサービス４のＩ／Ｆが変更された場合にも、人手で新たなマージキーを抽出することなく、新たなマージキーを抽出することが可能である。したがって、ウェブサービス４のＩ／Ｆが変更された場合におけるプログラム改修の手間が減り、プログラムの改修コストを安くできるとともに、システムダウン期間を短くすることができる。
【００４０】
また、実施の形態１に係るレスポンス集約装置１では、データ抽出部４５は、各実レスポンスで用いられる項目名ではなく、別途割り振った取得名（抽出名）を用いて、情報を抽出する。そのため、ウェブサービス４で実レスポンスの形式を変更した場合であっても、単なる項目名の変更等であればプログラムを改修する必要がない。したがって、プログラム改修の手間が減り、プログラムの改修コストを安くできるとともに、システムダウン期間を短くすることができる。
【００４１】
また、実施の形態１に係るレスポンス集約装置１では、変換定義生成部４３１は、テンプレートに従い、標準形式へ変換するための変換定義を生成する。そのため、項目毎に変換定義を手動で生成する必要がなく、プログラムの開発コストやプログラム改修コストを安くできるとともに、システムダウン期間を短くすることができる。
【００４２】
なお、上記説明では、利用者とレスポンス集約装置１とを仲介するアプリケーション２は１つであった。しかし、図２３に示すように、アプリケーション２が複数存在する場合であっても、同様の効果を得ることができる。
【００４３】
図２４は、実施の形態１に示したレスポンス集約装置１のハードウェア構成の例を示す図である。
レスポンス集約装置１はコンピュータであり、レスポンス集約装置１の各要素をプログラムで実現することができる。
レスポンス集約装置１のハードウェア構成としては、バスに、演算装置９０１、外部記憶装置９０２、主記憶装置９０３、通信装置９０４、入出力装置９０５が接続されている。
【００４４】
演算装置９０１は、プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等である。外部記憶装置９０２は、例えばＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やフラッシュメモリ、ハードディスク装置等である。主記憶装置９０３は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等である。通信装置９０４は、ネットワークカード等である。入出力装置９０５は、例えばマウス、キーボード、ディスプレイ装置等である。
【００４５】
プログラムは、通常は外部記憶装置９０２に記憶されており、主記憶装置９０３にロードされた状態で、順次演算装置９０１に読み込まれ、実行される。
プログラムは、利用者側送受信部１０、リクエスト変換部２０、変換処理部２２、ウェブサービス側送受信部３０、レスポンス変換部４０、マージキー抽出部４１、レスポンス入力部４１１、項目値取得部４１２、同一項目値特定部４１３、リスト作成部４１４、項目管理部４２、項目登録部４２１、履歴登録部４２２、変換定義部４３、変換定義生成部４３１、レスポンス集約部４４、データ抽出部４５、抽出処理部４５１として説明している機能を実現するプログラムである。
更に、外部記憶装置９０２にはオペレーティングシステム（ＯＳ）も記憶されており、ＯＳの少なくとも一部が主記憶装置９０３にロードされ、演算装置９０１はＯＳを実行しながら、上記プログラムを実行する。
また、実施の形態１〜４の説明において、「〜の判定」、「〜の受信」、「〜の送信」、「〜の生成」等として説明している処理の結果を示す情報やデータや信号値や変数値が主記憶装置９０３にファイルとして記憶されている。
【００４６】
なお、図２４の構成は、あくまでレスポンス集約装置１のハードウェア構成の一例を示すものであり、レスポンス集約装置１のハードウェア構成は図２４に記載の構成に限らず、他の構成であってもよい。
【符号の説明】
【００４７】
１  レスポンス集約装置、２  アプリケーション、１０  利用者側送受信部、２０  リクエスト変換部、２１  変換情報記憶部、２２  変換処理部、３０  ウェブサービス側送受信部、４０  レスポンス変換部、４１  マージキー抽出部、４１１  レスポンス入力部、４１２  項目値取得部、４１３  同一項目値特定部、４１４  リスト作成部、４１５  リスト記憶部、４２  項目管理部、４２１  項目登録部、４２２  履歴登録部、４２３  別名定義記憶部、４２４  履歴記憶部、４３  変換定義部、４３１  変換定義生成部、４３２  テンプレート記憶部、４４  レスポンス集約部、４５  データ抽出部、４５１  抽出処理部、４５２  抽出情報記憶部。
【図１】
2014229076.tif 000003
【図２】
2014229076.tif 000004
【図３】
2014229076.tif 000005
【図４】
2014229076.tif 000006
【図５】
2014229076.tif 000007
【図６】
2014229076.tif 000008
【図７】
2014229076.tif 000009
【図８】
2014229076.tif 000010
【図９】
2014229076.tif 000011
【図１０】
2014229076.tif 000012
【図１１】
2014229076.tif 000013
【図１２】
2014229076.tif 000014
【図１３】
2014229076.tif 000015
【図１４】
2014229076.tif 000016
【図１５】
2014229076.tif 000017
【図１６】
2014229076.tif 000018
【図１７】
2014229076.tif 000019
【図１８】
2014229076.tif 000020
【図１９】
2014229076.tif 000021
【図２０】
2014229076.tif 000022
【図２１】
2014229076.tif 000023
【図２２】
2014229076.tif 000024
【図２３】
2014229076.tif 000025
【図２４】
2014229076.tif 000026