(57)【特許請求の範囲】
【請求項１】
各自宛の要求を受けてその要求に応じたサービス情報を出力することにより各所定のサービスを提供する複数のサービス源それぞれにアクセスして該サービス情報、および該要求を表す要求情報を授受するサービス源アクセス部と、
ユーザの操作に応じた要求を表す要求情報を、宛先のサービス源を特定して出力するクライアントであって、前記サービス源が出力したサービス情報を最終的に受け取って該サービス情報の内容を該ユーザに提示するクライアントからアクセスされて該要求情報および該サービス情報を授受するクライアントアクセス受付部と、
前記サービス源アクセス部と前記クライアントアクセス受付部との間に介在して前記要求情報および前記サービス情報を仲介する仲介部と、
あるサービス源に係る要求情報およびサービス情報を前記仲介部が仲介する際に、それらの要求情報およびサービス情報のうち少なくとも何れか一方から所定アルゴリズムによって所望の転用情報を抽出し、さらに、そのサービス源とは異なる他のサービス源に係る要求情報およびサービス情報を前記仲介部が仲介する際に、その転用情報の少なくとも一部分を、それらの要求情報およびサービス情報のうち少なくとも何れか一方に組み込む情報転用部とを備えたことを特徴とするサービス連携システム。
【請求項２】
自分宛の要求を受けてその要求に応じたサービス情報を出力することにより所定のサービスを提供するサービス源にアクセスして該サービス情報、および該要求を表す要求情報を授受する個サービス源アクセス部と、
ユーザの操作に応じた要求を表す要求情報を出力するクライアントであって、前記サービス源が出力したサービス情報を最終的に受け取って該サービス情報の内容を該ユーザに提示するクライアントからアクセスされて該要求情報および該サービス情報を授受するクライアントアクセス受付部と、
前記個サービス源アクセス部と前記クライアントアクセス受付部との間に介在して前記要求情報および前記サービス情報を仲介する仲介部と、
前記個サービス源アクセス部がアクセスするサービス源とは異なる他のサービス源および前記クライアントの双方に係る要求情報およびサービス情報のうち少なくとも何れか一方から所定アルゴリズムで抽出されてなる転用情報を取得し、前記仲介部が前記要求情報および前記サービス情報を仲介する際に、その転用情報の少なくとも一部分を、それらの要求情報およびサービス情報のうち少なくとも何れか一方に組み込む情報組込部とを有するものであることを特徴とする情報転用装置。
【請求項３】
各自宛の要求を受けてその要求に応じたサービス情報を出力すること
により各所定のサービスを提供する複数のサービス源それぞれにアクセスして該サービス情報、および該要求を表す要求情報を授受するサービス源アクセス部と、
ユーザの操作に応じた要求を表す要求情報を出力するクライアントであって、前記サービス源が出力したサービス情報を最終的に受け取って該サービス情報の内容を該ユーザに提示するクライアントからアクセスされて該要求情報および該サービス情報を授受するクライアントアクセス受付部と、
前記サービス源アクセス部と前記クライアントアクセス受付部との間に介在して前記要求情報および前記サービス情報を仲介する仲介部とを備え、
前記複数のサービス源それぞれが、サービスを提供するに当たり、前記要求情報を出力したクライアントを操作しているユーザが、そのサービスを受ける資格を有するユーザであることを、自分用の認証情報を受け取って認証するものであって、
前記クライアントアクセス受付部にアクセスしてきたクライアントを操作しているユーザを認証する、前記複数のサービス源それぞれ用の認証情報を必要に応じて取得する認証情報取得部と、
前記複数のサービス源のうちの何れかのサービス源用の認証情報が前記クライアントから出力されてそのサービス源によって、そのクライアントを操作しているユーザが認証された場合に、前記複数のサービス源のうちの別のサービス源に対して前記仲介部経由で、その別のサービス源用の、前記認証情報取得部で取得された認証情報を提供する認証情報提供部とを備えたことを特徴とするサービス連携システム。
【請求項４】
各自宛の要求を受けてその要求に応じたサービス情報を出力することにより各所定のサービスを提供する複数のサービス源それぞれにアクセスして該サービス情報、および該要求を表す要求情報を授受するサービス源アクセス部と、
ユーザの操作に応じた要求を表す要求情報を出力するクライアントであって、前記サービス源が出力したサービス情報を最終的に受け取って該サービス情報の内容を該ユーザに提示するクライアントからアクセスされて該要求情報および該サービス情報を授受するクライアントアクセス受付部と、
前記サービス源アクセス部と前記クライアントアクセス受付部との間に介在して前記要求情報および前記サービス情報を仲介する仲介部と、
前記複数のサービス源のうちの何れかのサービス源によるサービスの提供が終了した場合に、前記サービス源アクセス部に、所定の順番でそのサービス源の次のサービス源へアクセスさせて、アクセスされたサービス源にサービスの提供を開始させるサービス切替部とを備えたことを特徴とするサービス連携システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、インターネット等で提供される複数のサービスを連携させるサービス連携システム、およびそのサービス連携システムを構成する情報転用装置に関する。
【０００２】
【従来の技術】
計算機の計算速度の向上とネットワークインフラの整備にともない、インターネット等に代表される広域ネットワークで互いに接続された複数の高速計算機によって様々なサービスが提供されている。
【０００３】
インターネット等で提供されるサービスとしては、例えば検索サービスのような、一つのアプリケーションで提供可能な比較的小規模なサービスもあれば、複数の異なるアプリケーションがネットワーク上で連携する事によって提供される大規模なサービスも登場している。また、１つの計算機が１種類のサービスを提供する場合もあれば、１つの計算機に組み込まれた複数のアプリケーションプログラムそれぞれがそれぞれのサービスを提供する場合もある。以下では、１つのサービスを提供するもののことを、計算機であるかプログラムであるかを区別せずにサービス源と称する。
【０００４】
このようなサービスを利用する利用者即ちユーザは、Ｗｅｂブラウザと呼ばれるＧＵＩ（Ｇｒａｆｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）ツールを、自分が操作する、クライアントと称されるコンピュータに組み込み、そのＧＵＩツールを用いてサービスを利用する事が一般的になってきており、Ｗｅｂブラウザを通じて利用されるサービスはＷｅｂベースサービスと称されている。
【０００５】
ユーザは、ネットワーク上で提供される種々のサービスの中から、自らの要求に適したサービスを見つけだし、そのサービスが提供されるサービス源のアドレス（ＵＲＬ）を指定することによりＷｅｂブラウザを通じてそのサービスにアクセスする事が可能である。
【０００６】
【発明が解決しようとする課題】
しかし、インターネット等が普及して、インターネット等の上で提供されるサービスが増加するにつれて、サービスの提供者および利用者の双方にとって以下のような問題が発生している。
【０００７】
新しいサービスを作る場合、そのサービスを提供するアプリケーションを一から全て作る事は理論的に可能であるが、既存のサービスを組み合せて連携させる事ができれば既存のサービスを利用して新たなサービスを作ることが可能となり、新しいサービスを少ない工数で作る事ができる。また、インターネットの現状を考えれば、既に相当数のサービスが提供されているため、それらのサービスを組み合わせて連携させる事によって新しいサービスを作り出す事に対するニーズが今後急激に増加すると考えられる。
【０００８】
既存のサービス同士を連携させるためのもっとも単純な方法としては、それら連携すべきサービスを提供するアプリケーションプログラムに、連携のためのプログラムコードを追加する方法が考えられる。しかし、このような方法では連携する相手が増える毎にコードの追加が必要となる。従って、インターネットのように、新しいサービスが次々に追加される一方で既存のサービスが次々に消滅する環境では、このような方法は非効率的である。
【０００９】
また、各サービスはサービス提供者によって独自に開発されたアプリケーションによって提供されている場合も多く、このような場合にはアプリケーションプログラムにサービス間連携のためのプログラムコードを追加するという事自体が非常に困難である。
【００１０】
そこで、既存のサービスには変更を加える事なくサービス間連携を可能とする技術が求められている。
【００１１】
本発明は、上記事情に鑑み、既存のサービスに変更を加える事なく複数のサービス間を連携させるサービス連携システム、およびそのようなサービス連携システムを構築することができるデータ転用装置を提供することを目的とする。
【００１２】
【課題を解決するための手段】
上記目的を達成する本発明の第１のサービス連携システムは、各自宛の要求を受けてその要求に応じたサービス情報を出力することにより各所定のサービスを提供する複数のサービス源それぞれにアクセスしてそのサービス情報、およびその要求を表す要求情報を授受するサービス源アクセス部と、
ユーザの操作に応じた要求を表す要求情報を出力するクライアントであって、サービス源が出力したサービス情報を最終的に受け取ってサービス情報の内容をユーザに提示するクライアントからアクセスされてその要求情報およびそのサービス情報を授受するクライアントアクセス受付部と、
サービス源アクセス部とクライアントアクセス受付部との間に介在して要求情報およびサービス情報を仲介する仲介部と、
あるサービス源に係る要求情報およびサービス情報を仲介部が仲介する際に、それらの要求情報およびサービス情報のうち少なくとも何れか一方から所定アルゴリズムによって所望の転用情報を抽出し、そのサービス源とは異なる他のサービス源に係る要求情報およびサービス情報を仲介部が仲介する際に、その転用情報の少なくとも一部分を、それらの要求情報およびサービス情報のうち少なくとも何れか一方に組み込む情報転用部とを備えたことを特徴とする。
【００１３】
また、上記目的を達成する本発明の情報転用装置は、自分宛の要求を受けてその要求に応じたサービス情報を出力することにより所定のサービスを提供するサービス源にアクセスしてそのサービス情報、およびその要求を表す要求情報を授受する個サービス源アクセス部と、
上記第１のサービス連携システムのクライアントアクセス受付部と同様なクライアントアクセス受付部と、
個サービス源アクセス部とクライアントアクセス受付部との間に介在して要求情報およびサービス情報を仲介する仲介部と、
個サービス源アクセス部がアクセスするサービス源とは異なる他のサービス源および上記クライアントの双方に係る要求情報およびサービス情報のうち少なくとも何れか一方から所定アルゴリズムで抽出されてなる転用情報を取得し、仲介部が要求情報およびサービス情報を仲介する際に、その転用情報の少なくとも一部分を、それらの要求情報およびサービス情報のうち少なくとも何れか一方に組み込むする情報組込部とを有するものであることを特徴とする。
【００１４】
本発明の情報転用装置が用いられることにより、本発明の第１のサービス連携システムの一実施形態が構築される。本発明の情報転用装置は、全構成部分が１つのハードウェア上で実現されたものである必要はなく、互いに通信ネットワークなどで接続された別々のハードウェア上で各構成部分が実現されたものであってもよい。また、後述する第２および第３のサービス連携システムも含めて、本発明のサービス連携システムは、各構成部分が別々のハードウェア上で実現されたものである必要はなく、すべての構成部分が１つのハードウェア上で実現されたものであってもよい。
【００１５】
本発明の第１のサービス連携システムによれば、サービス情報や要求情報から所望の転用情報が抽出されて、他のサービス情報や要求情報に組み込まれるので、サービス源が提供するサービス自体にはいっさい変更を加えることなく複数のサービス間を連携させることができる。
【００１６】
上記目的を達成する本発明の第２のサービス連携システムは、上記第１のサービス連携システムのサービス源アクセス部、クライアントアクセス受付部、および仲介部それぞれと同様なサービス源アクセス部、クライアントアクセス受付部、および仲介部を備え、さらに
上記複数のサービス源それぞれが、サービスを提供するに当たり、要求情報を出力したクライアントを操作しているユーザが、そのサービスを受ける資格を有するユーザであることを、自分用の認証情報を受け取って認証するものであって、
クライアントアクセス受付部にアクセスしてきたクライアントを操作しているユーザを認証する、上記複数のサービス源それぞれ用の認証情報を必要に応じて取得する認証情報取得部と、
上記複数のサービス源のうちの何れかのサービス源用の認証情報がクライアントから出力されてそのサービス源によって、そのクライアントを操作しているユーザが認証された場合に、上記複数のサービス源のうちの別のサービス源に対して仲介部経由で、その別のサービス源用の、認証情報取得部で取得された認証情報を提供する認証情報提供部とを備えたことを特徴とする。
【００１７】
プライバシイやセキュリティの保持が必要なサービスをユーザが利用するためには、通常は、サービスを利用する際に認証作業が求められる。複数の独立したサービスを利用する場合には、利用者名やパスワードなどといった認証情報も独立であるためサービス毎に認証作業として認証情報を入力する必要がある。しかし、複数のサービスを連携させて一つのサービスを実現する場合には、個々のサービスに対する個別の認証作業をいちいち行なう事は非常に繁雑である。
【００１８】
本発明の第２のサービス連携システムによれば、クライアントを操作するユーザが、あるサービス源で認証されると、そのサービス源が提供するサービスと連携するサービスを提供する別のサービス源には、そのユーザを認証する認証情報が自動的に提供されるため、個別の認証作業が統合される。この結果、複数のサービス間で認証作業が連携されることとなる。
【００１９】
上記目的を達成する本発明の第３のサービス連携システムは、上記第１のサービス連携システムのサービス源アクセス部、クライアントアクセス受付部、および仲介部それぞれと同様なサービス源アクセス部、クライアントアクセス受付部、および仲介部を備え、さらに
上記複数のサービス源のうちの何れかのサービス源によるサービスの提供が終了した場合に、サービス源アクセス部に、所定の順番でそのサービス源の次のサービス源へアクセスさせて、アクセスされたサービス源にサービスの提供を開始させるサービス切替部を備えたことを特徴とする。
【００２０】
複数のサービスが組み合わされて、一つのサービスとして連携するためには、それら複数のサービスが所定の順番で開始することが必要な場合がある。
【００２１】
本発明の第３のサービス連携システムによれば、サービス切替部によって、複数のサービス源がサービスの提供を所定の順番で開始させられるため、それら複数のサービス源それぞれによって提供される複数のサービスが連携されることとなる。
【００２２】
【発明の実施の形態】
以下、本発明の実施形態について説明する。
【００２３】
図１は、本発明のサービス連携システムの一実施形態を示す図である。
【００２４】
本実施形態では、本発明のサービス連携システムを実現する一手法として、サービスラッピングと称される技術が採用されている。サービスがラッピングされることによって、元のサービス自体には変更が加えられる事なく新しい機能がサービスに付加される。各サービスはサービス毎に様々なインタフェースを持っている訳であるが、各サービスがラッピングされる事によって、各サービスは、統一的なインタフェースを持ったコンポーネントに加工される。
【００２５】
この図には、一例として３つのサービス源１１，１２，１３と１つのクライアント２１が示されており、この図に示すサービス連携システム３０は、３つのサービス源１１，１２，１３それぞれに対応づけられた３つのサービスラッピング装置３１，３２，３３を備えている。これらのサービスラッピング装置３１，３２，３３それぞれが、本発明の情報転用装置の一例である。上述したように、本発明の情報転用装置は各構成部分が別々のハードウェア上で実現されたものであっても良いが、ここでは３つのサービスラッピング装置３１，３２，３３それぞれが、各１台のコンピュータで実現されているものとして説明する。
【００２６】
３つのサービス源１１，１２，１３それぞれは、自分宛の要求を表す要求情報を受け付けて、その要求情報が表す要求の内容に応じたサービス情報を返すことにより各所定のサービスを提供するものである。また、クライアント２１は、ユーザの操作に応じた要求情報を出力し、サービス情報を受け取ってユーザに提示するものである。
【００２７】
インターネット上では既に数多くの多種多様なサービスが提供されており、現在もその数は増え続けている。このようなサービスの多くは、Ｗｅｂブラウザを用いて利用可能なＷｅｂベースサービスであり、一般に以下のような特徴を持つ。第１の特徴は、Ｗｅｂベースサービスを提供するサービス源が、ＨＴＴＰプロトコルによる要求情報を受け付けるということである。第２の特徴は、サービス情報としてのＨＴＭＬ文章に従う画面表示によってサービスが提供されるということである。以下では、３つのサービス源１１，１２，１３によって提供されるサービスがＷｅｂベースサービスであるものとして説明する。
【００２８】
３つのサービスラッピング装置３１，３２，３３それぞれは、対応するサービス源１１，１２，１３およびクライアント２１に、通信ネットワークを介して接続されている。また、３つのサービスラッピング装置３１，３２，３３の相互間も通信ネットワークを介して接続されている。
【００２９】
クライアント２１から出力された要求情報は、クライアント２１によってアクセスされたサービスラッピング装置を経由して所望のサービス源に到達し、そのサービス源から返されたサービス情報は、サービスラッピング装置を経由してクライアント２１に到達する。この結果、クライアント２１上のＷｅｂブラウザを用いてサービス源１１，１２，１３ヘアクセスするユーザにとっては、Ｗｅｂベースサービスは、サービスラッピング装置３１，３２，３３によってラッピングされたサービス（ＷｒａｐｐｅｄＳｅｒｖｉｃｅ）として見える。つまり、サービスラッピング装置３１，３２，３３は、Ｗｅｂベースサービスのプロキシとしての機能を有する。
【００３０】
３つのサービスラッピング装置３１，３２，３３それぞれは、本発明にいう個サービス源アクセス部の一例であるアクセス部３１１，３２１，３３１と、本発明にいう仲介部の一例および本発明にいう情報組み込み部の一例とを兼ねたラッパー部３１２，３２２，３３２と、本発明にいうクライアントアクセス受付部の一例であるアクセス受付部３１３，３２３，３３３を備えている。また、３つのアクセス部３１１，３２１，３３１によって、本発明にいうサービス源アクセス部の一例が構成されており、３つのラッパー部３１２，３２２，３３２によって、本発明にいう情報転用部の一例が構成されている。
【００３１】
これら３つのサービスラッピング装置３１，３２，３３は、統一的なインタフェースを持ったコンポーネントとして構成されており、後述するように自由に組み合わせることができる。このため、サービス自身を変更する事なくサービス間での柔軟な連携が可能であり、複数のサービスを連携させることによって複合的な新サービスを作り出すことができる。
【００３２】
本実施形態のサービス連携システム３０では、さらに、ラッピングされたサービスの連携を制御するために、ロジックと呼ぶ仕組みが導入されている。このロジック３４は、３つのサービスラッピング装置３１，３２，３３それぞれと、通信ネットワークを介して接続されている。後で詳述するように、ロジック３４は、複数のサービスが連携する順序をスクリプトに基づいて制御する順序制御部３４１と、クライアント２１のユーザを認証するために必要な認証情報を取得して各サービス源１１，１２，１３に提供する認証情報提供部３４２とを備えている。順序制御部３４１は、本発明にいうサービス切替部の一例であり、認証情報提供部３４２は、本発明にいう認証情報取得部の一例および認証情報提供部の一例とを兼ねている。
【００３３】
このようなロジック３４により、後述するようにサービス連携のフローが制御される事によって、ユーザは、複数のサービスを一つの大きなサービスであるかのように利用する事が可能となる。また、ロジック３４が利用者の個人情報を管理するデータベースなどと連携する事によって、サービスを利用する際にはそのサービスを提供するサービス源に対して必要な認証情報を提供して、認証作業を自動的に行なうことができる。
【００３４】
以下、各構成部分の役割について詳述する。
【００３５】
アクセス部３１１，３２１，３３１は、ユーザからの要求に応じて、対応するサービス源１１，１２，１３ヘのアクセスを行ない、ユーザの要求を表す要求情報と、サービス源１１，１２，１３が返してきたサービス情報を授受する。このアクセス部３１１，３２１，３３１によってサービス源１１，１２，１３のインターフェースの相違が吸収されて、サービス間の連携が可能となる。
【００３６】
アクセス受付部３１３，３２３，３３３は、クライアント２１に対するインタフェースを、対応するサービス源１１，１２，１３に代わって提供するためにＨＴＴＰプロトコルを用いたアクセスを受け付ける。アクセス受付部がＨＴＴＰプロトコルを受付ける事によって、ユーザは、サービスラッピング装置３１，３２，３３によってラッピングされたＷｅｂベースサービスと同様のアクセス方法でサービスラッピング装置３１，３２，３３にアクセスすることが可能となる。
【００３７】
ラッパー部３１２，３２２，３３２の役割としては、先ず、サービスラッピング装置３１，３２，３３のプロキシ機能を実現する役割がある。
【００３８】
Ｗｅｂベースサービスを提供するサービス源１１，１２，１３と、そのＷｅｂベースサービスをラッピングするサービスラッピング装置３１，３２，３３とは互いに異なるＵＲＬを持つ事になるため、サービスラッピング装置３１，３２，３３がサービスのプロキシとして機能するためには、ＨＴＭＬ文章中に埋め込まれているＵＲＬを変更する必要がある。例えばＨＴＭＬ文章では、ＦＯＲＭという命令を用いてクライアントからサービス源ヘと情報を送る事が可能である。ユーザからクライアントに入力された情報は、ＦＯＲＭ命令において指定されるＵＲＬを持つサービス源に対して送られる。ＦＯＲＭを用いた場合、情報は宛先に指定されたサービス源ヘ直接送られるため、ＨＴＭＬ文章を書き換えて宛先をサービスラッピング装置３１，３２，３３に指定しておくことでサービスのプロキシとして機能する事ができる。このような書き換えが必要な他の命令としては、属性としてＡＣＴＩＯＮ／ＳＲＣ／ＨＲＥＦなどを有する命令が存在する。
【００３９】
本実施形態では、これらの命令において指定されるＵＲＬがラッパー部３１２，３２２，３３２で書き換えられる。このように、Ｗｅｂベースサービスが生成するＨＴＭＬ文章が、サービスラッピング装置３１，３２，３３のラッパー部３１２，３２２，３３２で書き換えられる事により、ユーザがＷｅｂブラウザを用いてサービスに対してどのような入力を行なおうともサービスラッピング装置３１，３２，３３はサービスのプロキシとして機能する事ができる。また、このようなＨＴＭＬ文章の書き換えはサービスラッピング装置３１，３２，３３内のラッパー部３１２，３２２，３３２において行なわれるため、ユーザはプロキシの介在などを意識する事はない。
【００４０】
また、ラッパー部３１２，３２２，３３２の別の役割としては、サービス間で情報転用を行う役割がある。
【００４１】
ラッパー部３１２，３２２，３３２は、各サービスに係る要求情報やサービス情報に含まれている所望の情報をラッパー部３１２，３２２，３３２同士で交換する事によってサービス間の連携を実現する。これによって、例えば、あるサービスで入力した内容と同様の内容を別のサービスで利用するなどといった場合には入力作業が不要となり、あるサービスで既に入力された内容であれば、別のサービスの画面を、その内容が入力済みの状態で表示させる事が可能となる。
【００４２】
ラッパー部３１２，３２２，３３２では、サービス間連携のための統一的な情報転用インタフェースを提供する事によって、ラッピングしているＷｅｂベースサービスを、容易に連携可能なコンポーネントに改良している
既に延べたように、サービスラッピング装置３１，３２，３３はアクセス部によってラッピングされるサービスのプロキシとして機能するため、ユーザとＷｅｂサービスとのインタラクションは全てサービスラッピング装置３１，３２，３３を介して行なわれる。従って、ラッパー部３１２，３２２，３３２では、ユーザがサービスに対して与える情報やサービスから受け取る情報を得る事が可能である。
【００４３】
ラッパー部３１２，３２２，３３２では、ユーザがサービスに対して授受する情報の中から他のサービスに転用すべき所望の情報を抽出し、その情報を他のラッパー部３１２，３２２，３３２へ送る。その一方で、他のラッパー部３１２，３２２，３３２から情報を受けたラッパー部３１２，３２２，３３２は、受けた情報が必要な情報か否かを選別し、必要な情報であれば受理する。他のラッパー部３１２，３２２，３３２から送られてきて受理した情報は、ラッパー部３１２，３２２，３３２の中に保持されており、ユーザがサービスに対して授受する情報に必要に応じて組み込まれることによりサービス間の連携が行われる。
【００４４】
本発明にいう情報転用部は、要求情報およびサービス情報のいずれから転用情報を抽出するものであってもよく、また、抽出した転用情報を、要求情報およびサービス情報のいずれに組み込むものであってもよい。また、本実施形態のラッパー部３１２，３２２，３３２は、管理者などによる設定次第で、要求情報およびサービス情報のいずれからでも転用情報を抽出し、要求情報およびサービス情報のいずれに対しても転用情報を組み込むことができる。
【００４５】
ここでは、サービス間連携の簡単な一例として、あるサービスにおいて既に入力された情報を他のサービスで再入力することを省くために、あるサービスに係る要求情報から所望の転用情報を抽出して他のサービスに係るサービス情報に組み込む連携について説明する。
【００４６】
クライアント２１からの要求情報は、ＨＴＴＰプロトコルによって、変数名と値とのペアが記載されたリストの形式で表されてラッパー部３１２，３２２，３３２に届く。ラッパー部３１２，３２２，３３２には、要求情報から抽出される転送情報を定義する記述として、所定種類の変数が並んだ出力パターンが用意されている。そして、出力パターンをテンプレートとみなして、出力パターン中の変数に対して要求情報の中の該当する値が代入される出力バインディングが行われる。出力バインディングが成功して、出力パターンの変数に値が代入されることにより転用情報が作成されることとなる。ラッパー部３１２，３２２，３３２は、バインディングによって作成した転用情報を他のサービスのラッパー部３１２，３２２，３３２へと送信する。
【００４７】
各ラッパー部３１２，３２２，３３２には、他のラッパー部３１２，３２２，３３２から入手するべき所望の情報を定義する記述として、所定種類の変数が並んだ入力パターンが用意されている。そして、ラッパー部３１２，３２２，３３２が他のラッパー部３１２，３２２，３３２から転用情報を受信すると、受信した転用情報と入力パターンとの間でパターンマッチが行われる。パターンマッチが成功した場合には、その転用情報が受理されて、受信した転用情報の中から必要な情報部分が取り出される。一方、サービス源１１，１２，１３からのサービス情報も、ＨＴＴＰプロトコルによって、変数名と値とのペアが記載されたリストの形式で表されてラッパー部３１２，３２２，３３２に届く。その後、サービス情報をテンプレートとみなして、サービス情報中の所定の変数に対して、パターンマッチによって取り出された情報部分の中の該当する値が代入される入力バインディングが行われる。
【００４８】
このように、出力バインディングと、パターンマッチと、入力バインディングが行われることにより、必要な情報が１つのサービスから他のサービスに転用されて、それらのサービス間での連携が行われる。また、出力パターンおよび入力パターン内の変数は各サービスに依存した変数名で記述する必要があるが、それらの変数名は他のサービスから隠蔽する事ができる。つまり、各ラッパー部３１２，３２２，３３２間で送受信される転送情報自体は、個々のサービスの変数名とは独立した変数種類と代入値で構成されている。これによって、ラッパー部３１２，３２２，３３２に与える入出力パターンを適切に記述しさえすれば、各サービス源１１，１２，１３によって提供されるサービスは、様々なサービスと連携することができることとなる。
【００４９】
上記のようなサービスラッピング装置３１，３２，３３を用いてサービスの柔軟な組み合わせを作る際には、組み合わせられたサービスが所定の順番で順次にサービスを開始することが求められる場合もある。本実施形態では、そのように所定の順番でサービスを開始するために、一例として、上述したロジック３４の順序制御部３４１が採用されている。
【００５０】
また、サービスの柔軟な組み合わせが可能となると、サービス提供者が新しいサービスを提供するだけではなく、ユーザ自身が自ら必要とするサービスを作り出す事も望まれる場合がある。既存のサービスをある順序で組合せる事により一連のサービスのシーケンスを作る事ができれば、新しくサービスを提供するアプリケーションを作る事なく例えば事務手続きなどのような定型業務を簡単に実現できるからである。そこで、本実施形態では、クライアント２１に、サービスの開始順序を表す所定形式のスクリプトをユーザの操作に応じて作成する機能も組み込まれているものとする。そして順序制御部３４１は、クライアント２１で作成されたスクリプトを取得して、そのスクリプトに従ってサービスを開始させるものとする。
【００５１】
ロジック３４の順序制御部３４１が取得するスクリプトの一例を以下に示す。
【００５２】
１  サービスＡ  ｈｔｔｐ：／／ａａａ：８８８８／ｓｅｒｖｉｃｅＡ
２  サービスＢ  ｈｔｔｐ：／／ｂｂｂ：８０８０／ｓｅｒｖｉｃｅＢ
３  サービスＣ  ｈｔｔｐ：／／ｃｃｃ：８０／ｓｅｒｖｉｃｅＣ
このスクリプトは、サービスＡ、サービスＢ、そしてサービスＣという順序でサービスが開始されることを表しており、各サービスが提供されているサービス源のＵＲＬが記載されている。ロジック３４の順序制御部３４１は、このようなスクリプトを取得して記憶しておく。また、ここでは、何れかのサービス源１１，１２，１３によるサービスの提供が終了すると、ラッパー部３１２，３２２，３３２を介して順序制御部３４１に、サービスが終了した旨が連絡される。そして、順序制御部３４１は、ラッパー部３１２，３２２，３３２を介してアクセス部３１１，３２１，３３１に、スクリプトが表す順番で次のサービス源１１，１２，１３に対してアクセスさせ、アクセスされたサービス源１１，１２，１３によるサービスの提供を開始させる。
【００５３】
上述したスクリプトは、ある決まったユーザに固有のものではなくて汎用的なものであるため、別のユーザがこのスクリプトを再利用する事が可能である。つまり、誰かが既存のサービスを利用してサービスを連携させるスクリプトを作成すれば、他のユーザはそのスクリプトを再利用して同様の連携サービスを利用する事が可能である。また、このスクリプトは、単なるテキスト文として作成することができるため新しいスクリプトを作成したり既存のスクリプトを拡張したりする事が容易である。
【００５４】
各サービス源１１，１２，１３によって提供されるサービスでは、そのサービスを利用する際に、ユーザ名やパスワードなどといった認証情報に基づいた認証が求められる場合がある。このような認証情報は、一般に、サービス源１１，１２，１３毎に異なる認証情報が用いられており、単に転用することはできない。そこで、本実施形態では、ロジック３４の認証情報提供部３４２が、各サービスラッピング装置３１，３２，３３のラッパー部３１２，３２２，３３２と協力することにより、後述するように自動的な認証作業が行われる。
【００５５】
ここでは、クライアント２１上に、各サービス源１１，１２，１３用の認証情報が格納されているものとする。
【００５６】
先ず最初に、ユーザがクライアント２１を介して何れかのサービス源１１，１２，１３に向けて認証情報を送り、認証情報を受け取ったサービス源によってユーザが認証される。そして、認証が行われたという通知が、サービス源１１，１２，１３からクライアント２１に、サービスラッピング装置３１，３２，３３を介して送られる。サービスラッピング装置３１，３２，３３のラッパー部３１２，３２２，３３２では、その認証が行われたという通知を仲介すると、ロジック３４の認証情報提供部３４２に、認証が行われた旨を連絡する。連絡を受けた認証情報提供部３４２は、クライアント２１上に格納されている認証情報を取得して、その認証情報に対応するサービス源１１，１２，１３に提供する。これにより認証情報提供部３４２は、例えば、サービスのアクセスにＣｏｏｋｉｅが必要な場合には、利用者名とパスワードを元に必要なＣｏｏｋｉｅを取得し、アクセスの際にそのＣｏｏｋｉｅを、ラッパー部３１２，３２２，３３２を介して要求情報に付加する。この結果、ユーザは、サービス連携システム３０に一度ログインするだけで、このサービス連携システム３０が連携させる全てのＷｅｂベースサービスを、認証作業を繰り返す事なく利用する事ができる。
【００５７】
以下、具体的なサービスが組み合わされて連携された複合サービスの具体例を説明する。
【００５８】
ここでは、サービス連携システム３０によって、ユーザ認証専用のサービスが他のサービスと連携されているものとし、まず最初にユーザは、サービス連携システム３０に対して認証作業を行なう。認証が成功した場合には、以後の認証作業は不要である。ロジック３４はユーザのクライアント２１に対して、現在提供している複合サービスの一覧を提示し、ユーザはクライアント２１を介して複合サービスを選択する。ここでは、『国内出張前処理』サービスという複合サービスが選択されたものとする。
【００５９】
『国内出張前処理』サービスは、出張予定スケジュールを登録する予定入力サービスと、出張予定に合わせて、ホテルと飛行機を予約するホテル／飛行機予約サービスと、出張のために必要な事務手続きを行なう出張前申請サービスという３つのＷｅｂベースサービスによって構成されている。サービス提供の順番は、予定入力サービス、ホテル／飛行機予約サービス、そして出張前申請サービスという順番である。
【００６０】
ユーザが『国内出張前処理』サービスを選択すると、アクセス部が、最初のサービスである予定入力サービスにアクセスする。この予定入力サービスでは、出張名目・出張期間・出張先などの情報を入力するための入力フォームが表示されて、これらの情報の入力が求められる。このような情報は、『国内出張前処理』サービスを構成している３つのＷｅｂベースサービス全てにおいて必要な情報であり、各サービス毎に何度も同じ内容を入力する事は無駄である。そこで、サービス連携システム３０では、これら３つのサービスが連携される事により「一度入力した内容と同じ内容は、別のサービスに移っても入力済み状態で画面上に表示する」事を実現している。
【００６１】
予定入力サービスでユーザが入力フォームなどによって入力した情報はラッパー部３１２，３２２，３３２で仲介される。そして、ラッパー部３１２，３２２，３３２は、これら仲介した情報の中から出力パターンとのバインディングによって、ホテル／飛行機予約サービスや出張前申請サービスが必要とする転用情報を取り出し、他のラッパー部３１２，３２２，３３２に送信する。
【００６２】
ホテル／飛行機予約サービスと出張前申請サービスのラッパー部３１２，３２２，３３２は、予定入力サービスのラッパー部３１２，３２２，３３２より送られた転用情報を受信すると、入力パターンとのパターンマッチによって、出張名目や出張期間などといった情報部分を取り出して保持する。
【００６３】
予定入力サービスが終了すると、順序制御部３４１によって、ホテル／飛行機予約サービスの提供が開始され、このサービスでも、出張名目・出張期間・出張先などの情報を入力するための入力フォームが表示されるが、ホテル／飛行機予約サービスに対応するラッパー部は、保持している出張名目などを入力フォームのＨＴＭＬ文章にバインディングして、その出張名目などで入力内容が初期化された表示画面を表すＨＴＭＬ文章を生成する。これによって、ユーザは、既に入力した内容が入力済みの状態で次のサービスにアクセスする事が可能となる。
【００６４】
このように、本発明のデータ転用装置の一例であるサービスラッピング装置を用いる事によって、本来は独立なサービスである複数のＷｅｂベースサービスを統一的なインタフェースを持つコンポーネントとする事が可能である。更にそれらコンポーネントをロジックを用いて連携させる事によって、より大きなサービスを作り出す事が可能である。また各サービスは入出力パターンを記述するだけでサービス連携が可能となるため、連携のためにＷｅｂベースサービスに手を加える必要はない。現在インターネット上では数多くのＷｅｂベースサービスが利用可能であり、また商用のＷｅｂベースサービスも数多く存在する。サービスラッピング装置を用いる事により、それら既存のサービスには手を加える事なく入出力パターンやサービス連携記述（スクリプト）によって連携させる事が可能となる。サービスを統一的なインタフェースを持つコンポーネントとしそれらを組合せる事によって、既存のサービスを利用して少ない手間で複雑なサービスを作り出す事が可能である。
【００６５】
（付記１）  各自宛の要求を受けてその要求に応じたサービス情報を出力することにより各所定のサービスを提供する複数のサービス源それぞれにアクセスして該サービス情報、および該要求を表す要求情報を授受するサービス源アクセス部と、
ユーザの操作に応じた要求を表す要求情報を出力するクライアントであって、前記サービス源が出力したサービス情報を最終的に受け取って該サービス情報の内容を該ユーザに提示するクライアントからアクセスされて該要求情報および該サービス情報を授受するクライアントアクセス受付部と、
前記サービス源アクセス部と前記クライアントアクセス受付部との間に介在して前記要求情報および前記サービス情報を仲介する仲介部と、
あるサービス源に係る要求情報およびサービス情報を前記仲介部が仲介する際に、それらの要求情報およびサービス情報のうち少なくとも何れか一方から所定アルゴリズムによって所望の転用情報を抽出し、そのサービス源とは異なる他のサービス源に係る要求情報およびサービス情報を前記仲介部が仲介する際に、その転用情報の少なくとも一部分を、それらの要求情報およびサービス情報のうち少なくとも何れか一方に組み込む情報転用部とを備えたことを特徴とするサービス連携システム。
（付記２）  自分宛の要求を受けてその要求に応じたサービス情報を出力することにより所定のサービスを提供するサービス源にアクセスして該サービス情報、および該要求を表す要求情報を授受する個サービス源アクセス部と、
ユーザの操作に応じた要求を表す要求情報を出力するクライアントであって、前記サービス源が出力したサービス情報を最終的に受け取って該サービス情報の内容を該ユーザに提示するクライアントからアクセスされて該要求情報および該サービス情報を授受するクライアントアクセス受付部と、
前記個サービス源アクセス部と前記クライアントアクセス受付部との間に介在して前記要求情報および前記サービス情報を仲介する仲介部と、
前記個サービス源アクセス部がアクセスするサービス源とは異なる他のサービス源および前記クライアントの双方に係る要求情報およびサービス情報のうち少なくとも何れか一方から所定アルゴリズムで抽出されてなる転用情報を取得し、前記仲介部が前記要求情報および前記サービス情報を仲介する際に、その転用情報の少なくとも一部分を、それらの要求情報およびサービス情報のうち少なくとも何れか一方に組み込むする情報組込部とを有するものであることを特徴とする情報転用装置。
（付記３）  前記仲介部が前記要求情報および前記サービス情報を仲介する際に、それらの要求情報およびサービス情報のうち少なくとも何れか一方から所定アルゴリズムによって所望の転用情報を抽出する抽出部を備えたことを特徴とする付記２記載の情報転用装置。
【００６６】
（付記４）  各自宛の要求を受けてその要求に応じたサービス情報を出力することにより各所定のサービスを提供する複数のサービス源それぞれにアクセスして該サービス情報、および該要求を表す要求情報を授受するサービス源アクセス部と、
ユーザの操作に応じた要求を表す要求情報を出力するクライアントであって、前記サービス源が出力したサービス情報を最終的に受け取って該サービス情報の内容を該ユーザに提示するクライアントからアクセスされて該要求情報および該サービス情報を授受するクライアントアクセス受付部と、
前記サービス源アクセス部と前記クライアントアクセス受付部との間に介在して前記要求情報および前記サービス情報を仲介する仲介部とを備え、
前記複数のサービス源それぞれが、サービスを提供するに当たり、前記要求情報を出力したクライアントを操作しているユーザが、そのサービスを受ける資格を有するユーザであることを、自分用の認証情報を受け取って認証するものであって、
前記クライアントアクセス受付部にアクセスしてきたクライアントを操作しているユーザを認証する、前記複数のサービス源それぞれ用の認証情報を必要に応じて取得する認証情報取得部と、
前記複数のサービス源のうちの何れかのサービス源用の認証情報が前記クライアントから出力されてそのサービス源によって、そのクライアントを操作しているユーザが認証された場合に、前記複数のサービス源のうちの別のサービス源に対して前記仲介部経由で、その別のサービス源用の、前記認証情報取得部で取得された認証情報を提供する認証情報提供部とを備えたことを特徴とするサービス連携システム。
（付記５）  各自宛の要求を受けてその要求に応じたサービス情報を出力することにより各所定のサービスを提供する複数のサービス源それぞれにアクセスして該サービス情報、および該要求を表す要求情報を授受するサービス源アクセス部と、
ユーザの操作に応じた要求を表す要求情報を出力するクライアントであって、前記サービス源が出力したサービス情報を最終的に受け取って該サービス情報の内容を該ユーザに提示するクライアントからアクセスされて該要求情報および該サービス情報を授受するクライアントアクセス受付部と、
前記サービス源アクセス部と前記クライアントアクセス受付部との間に介在して前記要求情報および前記サービス情報を仲介する仲介部と、
前記複数のサービス源のうちの何れかのサービス源によるサービスの提供が終了した場合に、前記サービス源アクセス部に、所定の順番でそのサービス源の次のサービス源へアクセスさせて、アクセスされたサービス源にサービスの提供を開始させるサービス切替部とを備えたことを特徴とするサービス連携システム。
【００６７】
（付記６）  前記クライアントが、ユーザの操作に応じて、サービス源にサービスの提供を開始させる順番を指定するものであり、
前記サービス切替部が、前記クライアントによって指定された順番でサービス源にサービスの提供を開始させるものであることを特徴とする付記５記載のサービス連携システム。
【００６８】
【発明の効果】
以上説明したように、本発明のサービス連携システムによれば、既存のサービスに変更を加える事なく複数のサービス間を連携させることができる。
【００６９】
また、本発明のデータ転用装置によれば、そのようなサービス連携システムを構築することができる。
【図面の簡単な説明】
【図１】本発明のサービス連携システムの一実施形態を示す図である。
【符号の説明】
１１，１２，１３    サービス源
２１    クライアント
３０    サービス連携システム
３１，３２，３３    サービスラッピング装置（情報転用装置）
３４    ロジック
３１１，３２１，３３１    アクセス部
３１２，３２２，３３２    ラッパー部（仲介部、情報組込部）
３１３，３２３，３３３    アクセス受付部
３４１    順序制御部
３４２    認証情報提供部
【図１】
0004319331.tif 000002