(57)【要約】【課題】  サーバの連携に要する提供者側の負担を軽減することが可能なデータ中継プログラムを提供する。【解決手段】  第１の連携手段１ｂは、出力データ１１ａを第１のサーバ固有属性名１１ｂに関連付けてデータ記憶手段１ｄに格納すると共に、第１の動作ファイル１２を通信情報１１に付加してクライアントに送信する。第２の連携手段１ｃは、通信情報１３に第２のサーバ固有属性名１３ａで属性が指定された入力データが要求されているとき、第２の動作ファイル１４を通信情報１３に付加してクライアントに送信し、連携要求Ｓ１を受けると、属性管理テーブルＴ１の共有属性名を介して第１のサーバ固有属性名１１ｂに対応する第２のサーバ固有属性名１３ａを取得し、取得した第２のサーバ固有属性名１３ａの入力データに、データ記憶手段１ｄで第１のサーバ固有属性名１１ｂに対応付けられた出力データ１１ａを設定する。【選択図】  図１
2005250781.tif 000002
【特許請求の範囲】
【請求項１】
クライアントと複数のサーバとの間で受け渡される通信情報を中継するデータ中継プログラムにおいて、
コンピュータを、
前記通信情報に含まれ、前記サーバ同士で連携されるデータの属性を示す共有属性名に関連付けて、前記共有属性名と同じ属性を示す名称として前記サーバそれぞれで定義されたサーバ固有属性名が登録された属性管理テーブルを記憶する記憶手段と、
前記通信情報に第１のサーバ固有属性名で属性が指定された出力データが含まれているとき、前記出力データを前記第１のサーバ固有属性名に関連付けてデータ記憶手段に格納すると共に、前記第１のサーバ固有属性名を他のプロセスに渡す処理が記述された第１の動作ファイルを前記通信情報に付加して前記クライアントに送信する第１の連携手段と、
前記通信情報に第２のサーバ固有属性名で属性が指定された入力データが要求されているとき、前記第１の動作ファイルを実行するプロセスから前記第１のサーバ固有属性名を受け取ると、前記第１のサーバ固有属性名を指定した連携要求を出力する処理が記述された第２の動作ファイルを前記通信情報に付加して前記クライアントに送信し、前記第１の動作ファイル及び前記第２の動作ファイルの前記クライアントでの実行によってなされる前記連携要求を受けて、前記共有属性名を介して前記第１のサーバ固有属性名に対応する前記第２のサーバ固有属性名を取得し、取得した前記第２のサーバ固有属性名の前記入力データに前記データ記憶手段において前記第１のサーバ固有属性名に対応付けられた前記出力データを設定する第２の連携手段と、
として機能させることを特徴とするデータ中継プログラム。
【請求項２】
前記第１の連携手段は、前記連携要求に応じて前記第２の連携手段から出力される処理要求によって前記データ記憶手段に前記出力データに対応付けられた前記第１のサーバ固有属性名を取得し、前記属性管理テーブルを参照して取得した前記第１のサーバ固有属性名に対応付けられている前記共有属性名を取得し、取得した前記共有属性名と前記出力データとを対応付けて前記第２の連携手段に渡し、前記第２の連携手段は、前記属性管理テーブルを参照して渡された前記共有属性名に対応付けられている前記第２のサーバ固有属性名を取得することを特徴とする請求項１記載のデータ中継プログラム。
【請求項３】
前記属性管理テーブルでは各々の前記サーバ毎に定義された前記サーバ固有属性名と前記共有属性名との対応付けが前記サーバを識別するための識別情報によってまとめて管理されており、前記識別情報によって前記通信情報に含まれる前記サーバ固有属性名と前記共有属性名との対応付けがなされることを特徴とする請求項１記載のデータ中継プログラム。
【請求項４】
クライアントと複数のサーバとの間で受け渡される通信情報を中継するデータ中継プログラムにおいて、
コンピュータを、
前記通信情報に含まれ、前記サーバ同士で連携されるデータの属性を示す共有属性名に関連付けて、前記共有属性名と同じ属性を示す名称として前記サーバそれぞれで定義されたサーバ固有属性名が登録された属性管理テーブルを記憶する記憶手段と、
前記通信情報に前記サーバ固有属性名で属性が指定された出力データが含まれているとき、前記属性管理テーブルを参照して前記出力データの前記サーバ固有属性名と対応付けられている前記共有属性名を取得し、取得した前記共有属性名と前記出力データとを対応付けてデータ記憶手段に格納する第１の連携手段と、
前記通信情報において前記サーバ固有属性名で属性が指定された入力データが要求されているとき、前記属性管理テーブルを参照して前記入力データの前記サーバ固有属性名に対応付けられている前記共有属性名を取得し、前記データ記憶手段において取得した前記共有属性名に対応付けて登録されている前記出力データを前記入力データとして設定する第２の連携手段と、
として機能させることを特徴とするデータ中継プログラム。
【請求項５】
前記データ記憶手段において前記第２の連携手段が取得した前記共有属性名に対応付けられた前記出力データが複数存在する場合、前記第２の連携手段は前記入力データに対して複数の前記出力データを設定することを特徴とする請求項４記載のデータ中継プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ中継プログラムに関し、特に、クライアントと複数のサーバとの間で受け渡される通信情報を中継するデータ中継プログラムに関する。
【背景技術】
【０００２】
現在、ＷＷＷ（World Wide Web）サーバ同士を連携させる際の方式としては、一般に、連携元及び連携先の各ＷＷＷサーバが出力するデータに対して、連携用のプログラムをそれぞれ付加する方式が用いられている。
【０００３】
図３７は、従来のＷＷＷサーバの連携例を示す図である。
この図は、ＷＷＷサーバ同士をドラッグ＆ドロップによって連携させる例を示している。図に示すインターネット９０１には、クライアント９１０及びＷＷＷサーバ９２０，９３０を始めとして、数多くのネットワーク機器が接続されている。ＷＷＷサーバ９２０，９３０上では、ＷｅｂアプリケーションＡ及びＷｅｂアプリケーションＢがそれぞれ動作しており、インターネット９０１を通じて各ＷＷＷサーバ９２０，９３０に接続するクライアント９１０には、上記各ＷｅｂアプリケーションＡ，Ｂによるサービスが提供される。
【０００４】
このような構成で、クライアント９１０から各ＷＷＷサーバ９２０，９３０に画面表示のリクエストが送信されると、各サーバはこれに応答し、ＨＴＭＬ（Hyper Text Markup Language）などで記述されたページデータ９５０，９６０を返す。そして、クライアント９１０の画面９１１には、各ページデータ９５０，９６０に対応する画面９１２，９１３が表示される。
【０００５】
ここで、上記の各ページデータ９５０，９６０には、ドラッグ用の連携プログラム９５１及びドロップ用の連携プログラム９６１がそれぞれ付加されている。ドラッグ用の連携プログラム９５１が実行されると、画面９１２には、画面９１３へのドラッグ＆ドロップが可能であることを示すアイコン９１２ａが表示される。ここで、ユーザの操作入力によって、アイコン９１２ａが画面９１３側にドラッグされた後、画面９１３の所定の場所にドロップされたものとする。このような操作入力がなされると、各連携プログラム９５１，９６１の動作によって、画面９１２に表示されているデータ９１２ｂがＷｅｂアプリケーションＡからＷｅｂアプリケーションＢに受け渡され、画面９１３の適切な場所にデータ９１２ｂが表示される。
【０００６】
ところで、連携対象となるデータに指定された属性名は、一般にＷｅｂアプリケーションを提供するサーバ毎に異なっている。従って、同じ属性のデータを正しく受け渡すためには、これらの属性名の対応関係をＷｅｂアプリケーション側で管理する必要ある。例えば上記の例で、電話番号データを指定する属性名を、ＷＷＷサーバ９２０では「ｔｅｌ」とし、ＷＷＷサーバ９３０では「ｐｈｏｎｅ」としているものとする。このような場合、ＷｅｂアプリケーションＡ，Ｂでは、電話番号データが対応可能な引数名に対して、「ｔｅｌ」と「ｐｈｏｎｅ」とを登録しておく必要がある。
【０００７】
このように、各ＷＷＷサーバ９２０，９３０での属性名の対応関係をＷｅｂアプリケーション側で管理することで、ＷｅｂアプリケーションＡからＷｅｂアプリケーションＢにコピーされたデータ９１２ｂは、画面９１３上の適切な場所に表示される。
【０００８】
また、従来、メタデータを用いることで、クライアントに対する窓口業務を提供するサーバの業務円滑化と共に、窓口を利用するユーザの労力削減を図る技術がある（例えば、非特許文献１参照）。
【０００９】
この技術では、例えばフォームサーバに入力されるフォームのメタデータを予め定義しておく。そして、クライアント側で動作するエージェントが上記メタデータを取得し、このメタデータに記述された属性などの情報を参照する。これにより、例えば、同一フォーム上での記入内容を互いに連動させた自動入力機能や、フォームデータの書式や値などが正しいかどうか判断する記入内容チェック機能などが実現される。
【非特許文献１】藤原  克哉、中所  武司、“窓口業務アプリケーションフレームワークｗｗＨｗｗにおけるフォームナビゲーション機能のＸＭＬによる実現方式”、［ｏｎｌｉｎｅ］、平成１４年３月、情報処理学会、［平成１６年１月１４日検索］、インターネット＜URL:http://www.se.cs.meiji.ac.jp/~chusho/paper/0203fujiwara.pdf＞
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、上記のような連携方式では、各Ｗｅｂアプリケーションが連携のためのプログラムを出力することで、ＷＷＷサーバ同士の連携を実現している。従って、Ｗｅｂアプリケーションの提供者側が連携のためのプログラムを作成する必要があり、提供者への負担が大きいという問題があった。
【００１１】
また、ＷＷＷサーバ同士の属性名の対応関係をＷｅｂアプリケーション側で管理しているため、既に連携関係が構築された各ＷＷＷサーバに対して、新たにＷＷＷサーバを連携させる場合、既に連携されている個々のＷｅｂアプリケーションの連携実行部分を修正する必要がある。
【００１２】
例えば、上述の図３７に示した例において、電話番号データを指定する属性名として「ｗｅｂｃ−ｔｅｌ」が定義されたＷＷＷサーバを新たに追加する場合、ＷｅｂアプリケーションＡ，Ｂでの電話番号データが対応可能な引数名に対して、「ｗｅｂｃ−ｔｅｌ」を追加しなければならない。
【００１３】
このように、連携させるＷＷＷサーバを既存の連携関係に対して新たに追加する場合、既に連携関係にあるＷｅｂアプリケーションの修正によって提供者側に負担がかかり、さらに、連携されているＷｅｂアプリケーションの数が多くなるほど、修正が必要なＷｅｂアプリケーションの数も増えて負担が増大するという問題があった。
【００１４】
なお、上記非特許文献１に記載された技術は、窓口業務アプリケーションが動作しているサーバとそれを利用するクライアント間で受け渡されるデータに対して、予め定義されたメタデータを使用して何らかの自動処理を実現するものであり、ＷＷＷサーバ間でのデータの連携を実現するものではない。
【００１５】
本発明はこのような点に鑑みてなされたものであり、サーバの連携に要する提供者側の負担を軽減することが可能なデータ中継プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１６】
本発明では上記課題を解決するために、図１に示すように、クライアントと複数のサーバとの間で受け渡される通信情報を中継するデータ中継プログラムにおいて、コンピュータを、前記通信情報に含まれ、前記サーバ同士で連携されるデータの属性を示す共有属性名に関連付けて、前記共有属性名と同じ属性を示す名称として前記サーバそれぞれで定義されたサーバ固有属性名が登録された属性管理テーブルＴ１を記憶する記憶手段１ａと、通信情報１１に第１のサーバ固有属性名１１ｂで属性が指定された出力データ１１ａが含まれているとき、出力データ１１ａを第１のサーバ固有属性名１１ｂに関連付けてデータ記憶手段１ｄに格納すると共に、第１のサーバ固有属性名１１ｂを他のプロセスに渡す処理が記述された第１の動作ファイル１２を通信情報１１に付加してクライアントに送信する第１の連携手段１ｂと、通信情報１３に第２のサーバ固有属性名１３ａで属性が指定された入力データが要求されているとき、第１の動作ファイル１２を実行するプロセスから第１のサーバ固有属性名１１ｂを受け取ると、第１のサーバ固有属性名１１ｂを指定した連携要求Ｓ１を出力する処理が記述された第２の動作ファイル１４を通信情報１３に付加してクライアントに送信し、第１の動作ファイル１２及び第２の動作ファイル１４のクライアントでの実行によってなされる連携要求Ｓ１を受けて、共有属性名を介して第１のサーバ固有属性名１１ｂに対応する第２のサーバ固有属性名１３ａを取得し、取得した第２のサーバ固有属性名１３ａの入力データにデータ記憶手段１ｄにおいて第１のサーバ固有属性名１１ｂに対応付けられた出力データ１１ａを設定する第２の連携手段１ｃと、として機能させることを特徴とするデータ中継プログラムが提供される。
【００１７】
上記のようにコンピュータを機能させることで、第１の連携手段１ｂは、通信情報１１に第１のサーバ固有属性名１１ｂで属性が指定された出力データ１１ａが含まれているとき、出力データ１１ａを第１のサーバ固有属性名１１ｂに関連付けてデータ記憶手段１ｄに格納すると共に、第１のサーバ固有属性名１１ｂを他のプロセスに渡す処理が記述された第１の動作ファイル１２を通信情報１１に付加してクライアントに送信する。また、第２の連携手段１ｃは、通信情報１３に第２のサーバ固有属性名１３ａで属性が指定された入力データが要求されているとき、第１の動作ファイル１２を実行するプロセスから第１のサーバ固有属性名１１ｂを受け取ると、第１のサーバ固有属性名１１ｂを指定した連携要求Ｓ１を出力する処理が記述された第２の動作ファイル１４を通信情報１３に付加してクライアントに送信し、第１の動作ファイル１２及び第２の動作ファイル１４のクライアントでの実行によってなされる連携要求Ｓ１を受けて、記憶手段１ａによって記憶された属性管理テーブルＴ１に登録されている共有属性名を介して第１のサーバ固有属性名１１ｂに対応する第２のサーバ固有属性名１３ａを取得し、取得した第２のサーバ固有属性名１３ａの入力データにデータ記憶手段１ｄにおいて第１のサーバ固有属性名１１ｂに対応付けられた出力データ１１ａを設定する。
【００１８】
また、本発明では上記課題を解決するために、図２２に示すように、クライアント２１と複数のサーバ２２ａ，２２ｂ，２２ｃ，．．．との間で受け渡される通信情報１５を中継するデータ中継プログラムにおいて、コンピュータを、通信情報１５に含まれ、サーバ２２ａ，２２ｂ，２２ｃ，．．．同士で連携されるデータの属性を示す共有属性名に関連付けて、前記共有属性名と同じ属性を示す名称としてサーバ２２ａ，２２ｂ，２２ｃ，．．．それぞれで定義されたサーバ固有属性名が登録された属性管理テーブルＴ１を記憶する記憶手段２ａと、通信情報１５に前記サーバ固有属性名で属性が指定された出力データ１５ａが含まれているとき、属性管理テーブルＴ１を参照して出力データ１５ａの前記サーバ固有属性名と対応付けられている共有属性名Ｔ１ａを取得し、取得した共有属性名Ｔ１ａと出力データ１５ａとを対応付けてデータ記憶手段２ｄに格納する第１の連携手段２ｂと、通信情報１５において前記サーバ固有属性名で属性が指定された入力データが要求されているとき、属性管理テーブルＴ１を参照して前記入力データの前記サーバ固有属性名に対応付けられている共有属性名Ｔ１ａを取得し、データ記憶手段２ｄにおいて取得した共有属性名Ｔ１ａに対応付けて登録されている出力データ１５ａを前記入力データとして設定する第２の連携手段２ｃと、として機能させることを特徴とするデータ中継プログラムが提供される。
【００１９】
上記のようにコンピュータを機能させることで、第１の連携手段２ｂは、通信情報１５にサーバ固有属性名で属性が指定された出力データ１５ａが含まれているとき、記憶手段１ａに記憶された属性管理テーブルＴ１を参照して出力データ１５ａのサーバ固有属性名と対応付けられている共有属性名Ｔ１ａを取得し、取得した共有属性名Ｔ１ａと出力データ１５ａとを対応付けてデータ記憶手段２ｄに格納する。また、第２の連携手段２ｃは、通信情報１５においてサーバ固有属性名で属性が指定された入力データが要求されているとき、記憶手段１ａに記憶された属性管理テーブルＴ１を参照して入力データのサーバ固有属性名に対応付けられている共有属性名Ｔ１ａを取得し、データ記憶手段２ｄにおいて取得した共有属性名Ｔ１ａに対応付けて登録されている出力データ１５ａを入力データとして設定する。
【発明の効果】
【００２０】
本発明では、サーバ同士で連携されるデータの属性を示す共有属性名に関連付けて、前記共有属性名と同じ属性を示す名称としてサーバそれぞれで定義されたサーバ固有属性名が登録された属性管理テーブルによってサーバ毎に定義された属性名の対応付けを行うことで、連携に要する提供者側の負担を軽減することが可能となる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施の形態を図面を参照して説明する。
（第１の実施の形態）
図１は、本発明の第１の実施の形態の原理構成図である。以下、この図１を用いて本実施の形態の概要について説明する。
【００２２】
図１は、クライアントと複数のサーバとの間で受け渡される通信情報を中継する機能を有するデータ中継サーバ１に本発明を適用した場合について示している。
データ中継サーバ１は、属性管理テーブルＴ１を記憶する記憶手段１ａ、第１の連携手段１ｂ、第２の連携手段１ｃ、及びデータ記憶手段１ｄを有している。さらに、データ中継サーバ１には、図示していないネットワークを介して、複数のクライアント及びこれらにサービスを提供する複数のサーバが接続されている。
【００２３】
属性管理テーブルＴ１は、クライアント及び複数のサーバの間で受け渡される通信情報に含まれ、サーバ同士で連携されるデータの属性を示す共有属性名と、この共有属性名と同じ属性を示す名称としてサーバそれぞれで定義されたサーバ固有属性名とが対応付けられて登録されている。
【００２４】
第１の連携手段１ｂは、連携元サーバから受信した通信情報１１に、第１のサーバ固有属性名１１ｂで属性が指定され、他のサーバに連携可能な出力データ１１ａが含まれているとき、出力データ１１ａを第１のサーバ固有属性名１１ｂに関連付けてデータ記憶手段１ｄに格納する。ここで、第１のサーバ固有属性名１１ｂとは、連携元サーバで定義されたサーバ固有属性名を示す。同時に、第１のサーバ固有属性名１１ｂをクライアント上で動作する他のプロセスに渡す処理が記述された第１の動作ファイル１２を、通信情報１１に付加してクライアントに送信する。
【００２５】
第２の連携手段１ｃは、連携先サーバから受信した通信情報１３に、第２のサーバ固有属性名１３ａで属性が指定された入力データが要求されているとき、第１の動作ファイル１２を実行するプロセスから第１のサーバ固有属性名１１ｂを受け取ると、第１のサーバ固有属性名１１ｂを指定した連携要求Ｓ１を出力する処理が記述された第２の動作ファイル１４を、通信情報１３に付加してクライアントに送信する。ここで、第２のサーバ固有属性名１３ａとは、連携先サーバで定義されたサーバ固有属性名を示す。その後、第１の動作ファイル１２及び第２の動作ファイル１４のクライアントでの実行によってなされる連携要求Ｓ１を受けて、属性管理テーブルＴ１に登録されている共有属性名を介し、第１のサーバ固有属性名１１ｂに対応する第２のサーバ固有属性名１３ａを取得する。そして、この第２のサーバ固有属性名１３ａが属性名として指定されている入力データに対して、データ記憶手段１ｄで第１のサーバ固有属性名１１ｂに対応付けられた出力データ１１ａを設定する。
【００２６】
以下、上記のように構成されるデータ中継サーバ１の動作について説明する。
まず、連携元サーバからの通信情報１１に第１のサーバ固有属性名１１ｂと対応付けられた出力データ１１ａが含まれている場合、第１の連携手段１ｂは、この出力データ１１ａと第１のサーバ固有属性名１１ｂとを対応付けてデータ記憶手段１ｄに格納すると共に、第１の動作ファイル１２を通信情報１１に付加してクライアントに送信する。
【００２７】
次に、連携先サーバからの通信情報１３に第２のサーバ固有属性名１３ａで属性が指定された入力データが要求されている場合、第２の連携手段１ｃは、通信情報１３に第２の動作ファイル１４を付加してクライアントに送信する。
【００２８】
その後、クライアント側での操作入力などによって、第１の動作ファイル１２及び第２の動作ファイル１４がクライアント上で実行される。この時、第１の動作ファイル１２を実行するプロセスは第１のサーバ固有属性名１１ｂを受け取り、第２の動作ファイル１４を実行するプロセスは第１の動作ファイル１２を実行するプロセスから第１のサーバ固有属性名１３ａを取得する。そして、第２の動作ファイル１４を実行するプロセスは、取得したサーバ固有属性名１３ａを指定した連携要求Ｓ１を、第２の連携手段１ｃに対して出力する。
【００２９】
そして、これを受けた第２の連携手段１ｃは、属性管理テーブルＴ１に登録されている共有属性名を介して、第１のサーバ固有属性名１１ｂに対応する第２のサーバ固有属性名１３ａを取得する。
【００３０】
この処理は、第１の連携手段１ｂ及び第２の連携手段１ｃの連携によってなされる。例えば、連携要求Ｓ１を受けた第２の連携手段１ｃは、第１の連携手段１ｂに対して処理要求を出力する。これを受けた第１の連携手段１ｂは、データ記憶手段１ｄを参照し、第１のサーバ固有属性名１１ｂとこれに対応付けられている出力データ１１ａとを取得する。そして、属性管理テーブルＴ１を参照し、取得した第１のサーバ固有属性名１１ｂに対応する共有属性名を取得した後、この共有属性名と出力データ１１ａとを対応付けて第２の連携手段１ｃに渡す。第２の連携手段１ｃは、属性管理テーブルＴ１を参照し、渡された共有属性名に対応する第２のサーバ固有属性名１３ａを取得する。
【００３１】
ここで、第１のサーバ固有属性名１１ｂ及び第２のサーバ固有属性名１３ａには、予め決められた仕様に則って、これらが定義されたサーバを識別するための識別情報が付加されており、この識別情報も上記各サーバ固有属性名と共に扱われるものとする。このような場合、属性管理テーブルＴ１でのサーバ固有属性名と共有属性名との対応付けを、例えば上記識別情報によってまとめて管理しておくことで、上記のような共有属性名から第２のサーバ固有属性名１３ａとの対応付けを、第２のサーバ固有属性名１３ａに付加された識別情報を用いて取得することができる。
【００３２】
その後、例えば上記のような処理によって、共有属性名を介して第１のサーバ固有属性名１１ｂに対応する第２のサーバ固有属性名１３ａを取得した第２の連携手段１ｃは、この第２のサーバ固有属性名１３ａが属性名として指定されている入力データに、第１のサーバ固有属性名１１ｂに対応付けられた出力データ１１ａを設定する。
【００３３】
このように、サーバ固有属性名と共有属性名との対応付けを予め属性管理テーブルＴ１によって管理しておくことで、第１のサーバ固有属性名１１ｂと第２のサーバ固有属性名１３ａとの対応付けを、属性管理テーブルＴ１に登録された共有属性名を介して行うことが可能となり、データ中継サーバ１上で出力データ１１ａと入力データとの連携を実現できる。
【００３４】
なお、上記の説明では、第１の動作ファイル１２及び第２の動作ファイル１４の実行によって第１のサーバ固有属性名１１ｂを受け渡し、これを指定した連携要求Ｓ１を第２の連携手段１ｃに出力するとしたが、第１のサーバ固有属性名１１ｂを示すＩＤなどを受け渡し、これを出力するようにしてもよい。
【００３５】
次に、本実施の形態を具体的に説明する。
図２は、本発明を適用した第１の実施の形態のデータ中継サーバが接続されたネットワークの構成例を示す図である。この図は、ドラッグ＆ドロップによるＷＷＷサーバの連携例を示している。
【００３６】
本実施の形態のネットワーク構成では、データ中継サーバ１００には、インターネット６０１及びＬＡＮ（Local Area Network）６０２が接続されている。インターネット６０１には、ＷＷＷサーバ３１０，３２０及び他のＷＷＷサーバなどの様々なネットワーク機器が接続されている。ＬＡＮ６０２には、クライアント４００及び他のクライアントなどの様々なネットワーク機器が接続されている。
【００３７】
データ中継サーバ１００は、クライアントとＷＷＷサーバとの間で受け渡されるデータを中継し、ＷＷＷサーバ同士で連携可能なデータがあれば、そのデータを連携させる機能を有する。本実施の形態では、このデータ中継サーバ１００を介して、クライアント４００及びＷＷＷサーバ３１０，３２０が接続されている。
【００３８】
このデータ中継サーバ１００は、属性管理テーブル１１０及び動作ファイル記憶部１４０を有している。
属性管理テーブル１１０には、ＷＷＷサーバ同士で連携されるデータの属性を示す共有属性名と、この共有属性名と同じ属性を示す名称としてＷＷＷサーバそれぞれで定義されたサーバ固有の属性名とが対応付けられて登録されている。
【００３９】
動作ファイル記憶部１４０には、連携されるデータの属性をデータ中継サーバ１００に出力するための動作が記述された動作ファイルが格納されている。本実施の形態では、この動作ファイル記憶部１４０には、ドラッグ＆ドロップによる連携を実現するための、ドラッグ用スクリプト６２及びドロップ用スクリプト７２が格納されている。
【００４０】
ＷＷＷサーバ３１０，３２０上では、ＷｅｂアプリケーションＡ，ＷｅｂアプリケーションＢがそれぞれ動作している。本実施の形態では、ＷＷＷサーバ３１０を連携元ＷＷＷサーバとし、ＷＷＷサーバ３２０を連携先ＷＷＷサーバとしてそれぞれ機能させる。
【００４１】
上記のような構成で、クライアント４００からＷＷＷサーバ３１０への表示画面の要求が、データ中継サーバ１００を介してなされる。ＷＷＷサーバ３１０上で動作するＷｅｂアプリケーションＡは、上記要求を受けてページデータ６０を出力する。このページデータ６０には、例えばＨＴＭＬなどのマークアップ言語で記述された表示画面のデータの他、予め決められた仕様に沿って作成された連携メタデータ６１が含まれている。連携メタデータ６１には、他のサーバに連携可能な出力データや、そのＷＷＷサーバ３１０での属性名の他、ＷＷＷサーバ３１０を識別するための情報として機能する名前空間などが、例えばＸＭＬ（eXtensible Markup Language）などのメタ言語によって記述されている。
【００４２】
データ中継サーバ１００は、受信したページデータ６０に出力データが含まれていると、出力データとその属性名などを対応付けて格納する。そして、動作ファイル記憶部１４０からドラッグ用スクリプト６２を取り出し、これを付加したページデータ６０ａをクライアント４００に送信する。クライアント４００に備えられた画面４１０には、このページデータ６０ａに対応する画面として、連携元画面４１１が出力される。
【００４３】
また、クライアント４００からＷＷＷサーバ３２０への表示画面の要求が、データ中継サーバ１００を介してなされる。ＷＷＷサーバ３２０上で動作するＷｅｂアプリケーションＢは、上記要求を受けてページデータ７０を出力する。このページデータ７０には、上記と同様に、予め決められた仕様に沿って作成された連携メタデータ７１が含まれている。この連携メタデータ７１には、他のＷＷＷサーバからの入力データが要求されている他、この入力データの属性及び名前空間などが記述されている。
【００４４】
データ中継サーバ１００は、受信したページデータ７０に入力データが要求されていると、動作ファイル記憶部１４０からドロップ用スクリプト７２を取り出し、これを付加したページデータ７０ａをクライアント４００に送信する。クライアント４００の画面４１０には、このページデータ７０ａに対応する画面として、連携先画面４１２が出力される。ここで、クライアント４００上で、連携元画面４１１から連携先画面４１２へのドラッグ＆ドロップが実行されると、ドラッグ用スクリプト６２及びドロップ用スクリプト７２が実行される。これにより、クライアント４００からデータ中継サーバ１００に対して連携要求が出力される。
【００４５】
この連携要求を受けて、データ中継サーバ１００は、属性管理テーブル１１０を参照し、出力データに指定されたＷＷＷサーバ３１０の属性名に対応するＷＷＷサーバ３２０の属性名を取得する。そして、このように取得したＷＷＷサーバ３２０の属性名と一致する属性名が指定された入力データに対して、対応する出力データを設定する。その後、入力データが設定されたページデータをクライアント４００が受信すると、クライアント４００の画面４１０には、ドラッグ＆ドロップの結果が反映された表示画面が出力される。
【００４６】
このようにして、サービス提供者側への負担が少ないＷＷＷサーバ間の連携を実現することができる。
以下、図２に示すような処理の実現方法について具体的に説明する。
【００４７】
図３は、本実施の形態に用いるデータ中継サーバのハードウェア構成例を示す図である。
データ中継サーバ１００は、ＣＰＵ（Central Processing Unit）１０１によって装置全体が制御されている。ＣＰＵ１０１には、バス１０８を介して、ＲＯＭ（Read Only Memory）１０２、ＲＡＭ（Random Access Memory）１０３、ハードディスクドライブ（HDD:Hard Disk Drive）１０４、グラフィック処理装置１０５、入力インターフェース１０６、及び通信インターフェース１０７ａ，１０７ｂが接続されている。
【００４８】
ＲＯＭ１０２には、ＣＰＵ１０１が実行する基本的なプログラムやデータが格納される。ＲＡＭ１０３には、ＣＰＵ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０３には、ＣＰＵ１０１による処理に必要な各種データが格納される。ＨＤＤ１０４には、ＯＳやアプリケーションプログラムが格納される。
【００４９】
グラフィック処理装置１０５には、表示装置３１が接続されている。グラフィック処理装置１０５は、ＣＰＵ１０１からの命令に従って、画像を表示装置３１の画面に表示させる。入力インターフェース１０６は、マウス３２やキーボード３３から送られてくる信号を、バス１０８を介してＣＰＵ１０１に送信する。通信インターフェース１０７ａは、インターネット６０１を介して、他の装置とのデータの送受信を行う。また、通信インターフェース１０７ｂは、ＬＡＮ６０２を介して、他の装置とのデータの送受信を行う。
【００５０】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。次に、本実施の形態を実施するためにデータ中継サーバ１００が備える機能について説明する。
【００５１】
図４は、第１の実施の形態のデータ中継サーバの機能を示す機能ブロック図である。
データ中継サーバ１００は、属性管理テーブル１１０、連携元中継処理部１２０、連携先中継処理部１３０、及び動作ファイル記憶部１４０を有している。
【００５２】
属性管理テーブル１１０では、上記説明したように、ＷＷＷサーバ同士で連携されるデータの属性を示す共有属性名と各ＷＷＷサーバで定義されたサーバ固有の属性名とが対応付けられて登録されている。
【００５３】
連携元中継処理部１２０は、連携元ＷＷＷサーバとクライアントとの間で受け渡されるデータを中継し、連携元ＷＷＷサーバから送信されるページデータに含まれる連携メタデータをチェックする。そして、連携元ＷＷＷサーバから他のＷＷＷサーバに連携可能な出力データが含まれていれば、出力データ及びその連携元ＷＷＷサーバでの属性名を対応付けて、連携元中継処理部１２０に用意されたデータ記憶部１２１に格納する。その後、動作ファイル記憶部１４０からドラッグ用スクリプト６２を取得し、これを付加したページデータをクライアントに送信する。
【００５４】
さらに、連携元中継処理部１２０は、連携先中継処理部１３０からの処理要求を受けると、マッピング処理部１２２を呼び出す。マッピング処理部１２２は、データ記憶部１２１に格納された出力データの属性名と共有属性名とのマッピングを行う。
【００５５】
連携先中継処理部１３０は、連携先ＷＷＷサーバとクライアントとの間で受け渡されるデータを中継し、連携先ＷＷＷサーバから送信されるページデータに含まれる連携メタデータをチェックする。そして、他のＷＷＷサーバからの入力データが要求されていれば、動作ファイル記憶部１４０からドロップ用スクリプト７２を取得し、これを付加したページデータをクライアントに送信する。
【００５６】
さらに、連携先中継処理部１３０は、クライアントからの連携要求を受けると、連携元中継処理部１２０に処理要求を出力する。そして、この処理要求に対する結果として、共有属性名に対応付けられた出力データを受けた後、データ設定部１３１を呼び出す。データ設定部１３１は、属性管理テーブル１１０を参照し、上記共有属性名と連携先ＷＷＷサーバの属性名とのマッピングを行う。さらに、このマッピングによって取得した連携先ＷＷＷサーバの属性名と同じ属性名が指定された入力データに対して、対応する出力データを設定する。
【００５７】
動作ファイル記憶部１４０には、上記説明したように、スクリプト言語によって記述されたドラッグ用スクリプト６２及びドロップ用スクリプト７２が格納されている。本実施の形態では、これらのスクリプトを記述するための言語として、ＪａｖａＳｃｒｉｐｔ（ＪａｖａＳｃｒｉｐｔは登録商標である）を用いた。
【００５８】
次に、データ中継サーバ１００が有する属性管理テーブル１１０のデータ構成例を説明する。
図５は、属性管理テーブルのデータ構成例を示す図である。この図に示すように、本実施の形態の属性管理テーブル１１０は、「共有属性名」の項目１１０ａ、「ＷｅｂＡ」の項目１１０ｂ、及び「ＷｅｂＢ」の項目によって構成される。なお、実際には、データ中継サーバ１００によって連携される各ＷＷＷサーバに対応する項目が登録される。また、複数のユーザに対応するために、ユーザＩＤ（システムのログインＩＤなど）などと対応付けて管理される。
【００５９】
「共有属性名」の項目１１０ａには、ＷＷＷサーバ同士で連携されるデータの属性を示す属性名が登録される。
「ＷｅｂＡ」の項目１１０ｂには、共有属性名が示す属性と同じ属性を示し、ＷｅｂアプリケーションＡが動作するＷＷＷサーバ３１０で定義された各属性名が、共有属性名と対応付けられて登録される。
【００６０】
「ＷｅｂＢ」の項目１１０ｃには、上記と同様に、共有属性名が示す属性と同じ属性を示し、ＷｅｂアプリケーションＢが動作するＷＷＷサーバ３２０で定義された各属性名が、共有属性名と対応付けられて登録される。
【００６１】
ここで、「ＷｅｂＡ」及び「ＷｅｂＢ」は、それぞれＷＷＷサーバ３１０，３２０で定義された属性名をまとめる名前空間として定義され、各ＷＷＷサーバ３１０，３２０を一意に識別する機能を有している。本実施の形態では、共有属性名とＷＷＷサーバに固有の属性名との対応関係が、名前空間「ＷｅｂＡ」及び「ＷｅｂＢ」によってまとめて管理されており、各名前空間を指定すれば、共有属性名とＷＷＷサーバに固有の属性名との対応関係が導き出される。これにより、ＷＷＷサーバ側では、属性管理テーブル１１０と整合する名前空間を付与して出力すればよいので、個々のＷＷＷサーバ側でサーバ固有の属性名と共有属性名との対応付けを管理する必要がなくなる。従って、サービス提供者側の負担をより低減することが可能となる。
【００６２】
次に、以上のように構成されるデータ中継サーバ１００、クライアント、連携元ＷＷＷサーバ、及び連携先ＷＷＷサーバの間で行われる処理について、シーケンス図を用いて説明する。
【００６３】
図６は、クライアントがデータ中継サーバを介して連携元ＷＷＷサーバからページデータを取得する際のシーケンス図である。以下、図６に示す処理を、ステップ番号に沿って説明する。
【００６４】
［ステップＳ１１］クライアントは、データ中継サーバ１００の連携元中継処理部１２０を介して、連携元ＷＷＷサーバに対するページの取得要求を行う。
［ステップＳ１２］連携元中継処理部１２０は、クライアントからのページ取得要求を受け取ると、そのリクエスト文字列に設定された連携元中継処理部１２０のＵＲＬ（Uniform Resource Locator）を、連携元ＷＷＷサーバのＵＲＬに設定して送信する。
【００６５】
［ステップＳ１３］連携元ＷＷＷサーバは、連携元中継処理部１２０からのページ取得要求を受け取ると、そのリクエストＵＲＬに対応するＷｅｂページのページデータを取得すると共に、予め決められたテンプレートなどに基づいて連携メタデータを作成し、これらをまとめたページデータを連携元中継処理部１２０に送信する。
【００６６】
［ステップＳ１４］連携元中継処理部１２０は、連携元ＷＷＷサーバからのページデータを受け取ると、その中に含まれる連携メタデータを検出する。
図７は、連携元ＷＷＷサーバから送られる連携メタデータの一例を示す図である。
【００６７】
この図に示すように、連携元ＷＷＷサーバからのページデータ６０に含まれる連携メタデータ６１は、コメントで囲まれた部分に、同一ＩＤが指定された＜ｅｘｐｏｒｔＢｅｇｉｎ＞要素６１ａ、＜ｅｘｐｏｒｔＥｎｄ＞要素６１ｂ、及び＜ａｔｔｒｉｂｕｔｅｓ＞要素６１ｃを有している。なお、＜ｅｘｐｏｒｔＢｅｇｉｎ＞要素６１ａ及び＜ｅｘｐｏｒｔＥｎｄ＞６１ｂ要素は共に空要素タグである。
【００６８】
上記のように構成される連携メタデータ６１で、＜ｅｘｐｏｒｔＢｅｇｉｎ＞要素６１ａと＜ｅｘｐｏｒｔＥｎｄ＞要素６１ｂとで囲まれる部分には、連携対象となる表示画面の画面データが記述される。また、＜ａｔｔｒｉｂｕｔｅｓ＞要素６１ｃには、上記ＩＤと共に、属性管理テーブル１１０と整合する名前空間として、本実施の形態では「ＷｅｂＡ」が指定される。そして、＜ａｔｔｒｉｂｕｔｅｓ＞要素６１ｃ内に列挙される＜ｏｕｔｐｕｔ＞要素には、上記画面データに記述されている連携元ＷＷＷサーバの属性名が、他のＷＷＷサーバと連携可能な出力データの属性名として記述される。上記画面データに出力データが含まれている場合、＜ｏｕｔｐｕｔ＞要素に記述される属性名には、その属性名に対応する出力データも設定される。
【００６９】
連携元中継処理部１２０は、上記のように構成される連携メタデータを含むページデータを受けると、そのコメント部分を参照し、同一ＩＤが指定された＜ｅｘｐｏｒｔＢｅｇｉｎ＞要素、＜ｅｘｐｏｒｔＥｎｄ＞要素、及び＜ａｔｔｒｉｂｕｔｅｓ＞要素が全て含まれているかどうかによって、連携メタデータを検出する。そして、ステップＳ１５に処理を進める。
【００７０】
［ステップＳ１５］連携元中継処理部１２０は、検出された連携メタデータの＜ａｔｔｒｉｂｕｔｅｓ＞要素を参照し、その内部の＜ｏｕｔｐｕｔ＞要素に記述された出力データ及びこれに指定された属性名とを対応付け、さらにそれを＜ａｔｔｒｉｂｕｔｅｓ＞要素に指定された名前空間と合わせてまとめる。そして、このようにまとめられたデータに対して上記ＩＤを付与し、データ記憶部１２１に格納する。これにより、上記ＩＤは、連携元ＷＷＷサーバの属性名を示す連携元属性ＩＤとして機能する。そして、ステップＳ１６に処理を進める。
【００７１】
［ステップＳ１６］連携元中継処理部１２０は、動作ファイル記憶部１４０を参照してドラッグ用スクリプト６２を取得した後、これをステップＳ１４で受信したページデータに付加したページデータを作成する。そして、ステップＳ１７に処理を進める。なお、この際、連携メタデータに含まれる＜ｅｘｐｏｒｔＢｅｇｉｎ＞要素、＜ｅｘｐｏｒｔＥｎｄ＞要素、及び＜ａｔｔｒｉｂｕｔｅｓ＞要素は削除してもよい。
【００７２】
［ステップＳ１７］連携元中継処理部１２０は、ステップＳ１６で作成したページデータをクライアントに送信する。
［ステップＳ１８］クライアントが連携元中継処理部１２０からのページデータを受け取ると、クライアント上で動作するブラウザなどがこのデータを読み取り、クライアントの画面には対応する表示画面が出力される。
【００７３】
以上の処理により、クライアントから連携元ＷＷＷサーバへの表示画面要求及びその応答を連携元中継処理部１２０を介して行うと共に、連携元ＷＷＷサーバからの出力データをその属性名と対応付けて格納することが可能となる。
【００７４】
以下、上記処理を具体的な例を挙げて説明する。
図８は、クライアントからの表示画面要求の一例を示す図である。
この図に示すデータ４１は、クライアント４００が、連携元中継処理部１２０を介してＷＷＷサーバ３１０へ表示画面を要求する際のリクエスト文字列を示している。ここで、ＵＲＬ「ｈｔｔｐ：／／ｐｏｒｔａｌ／ｐｒｏｘｙＡ」は連携元中継処理部１２０のＵＲＬである。また、その引数「ｓｅｒｖｅｒＲｅｑ」には、ＷＷＷサーバ３１０のＵＲＬが指定される。なお、実際のリクエスト文字列では、リクエストＵＲＬと引数部との区切りが文字「？」によって示され、各引数の区切りが文字「＆」によって示されるが、ここでは見やすくするために、リクエストＵＲＬの下に各引数を列挙するような表記とした。
【００７５】
このようなデータ４１を受け取ると、連携元中継処理部１２０は、その引数「ｓｅｒｖｅｒＲｅｑ」に設定されたＵＲＬを用いて、ＷＷＷサーバ３１０にリクエスト文字列を送信する。ＷＷＷサーバ３１０は、そのリクエスト文字列のＵＲＬ「ｈｔｔｐ：／／ｓｅｒｖｅｒＡ／ｕｓｅｒＩｎｆｏ．ｈｔｍｌ」に対応するページデータを取得する。そして、上述の図７に示したような連携メタデータ６１を含めたページデータ６０を送信する。
【００７６】
連携元中継処理部１２０は、このようなページデータ６０から連携メタデータ６１を検出すると、次のようなデータをデータ記憶部１２１に格納する。
図９は、連携元中継処理部のデータ記憶部に格納されるデータの構成例を示す図である。
【００７７】
この図に示すデータ４２は、図７に示す連携メタデータ６１によって、データ記憶部１２１に格納されるデータを示している。このように、連携メタデータ６１の＜ｏｕｔｐｕｔ＞要素に記述された出力データ及びその属性名が、例えば「ｎａｍｅ＝“鈴木”」のように対応付けられ、さらに＜ａｔｔｒｉｂｕｔｅｓ＞要素６１ｃに指定された名前空間「ＷｅｂＡ」と合わせてまとめられる。そして、このようにまとめられたデータに対しては、連携元属性ＩＤ「ｓｕｚｕｋｉ＠ｅｘ．ｃｏｍ」が付与される。
【００７８】
そして、連携元中継処理部１２０は、ドラッグ用スクリプト６２を付加したページデータ６０ａをクライアント４００に送信する。クライアント４００の画面４１０には、このページデータ６０ａに対応する連携元画面４１１が表示される。
【００７９】
図１０は、ドラッグ用スクリプトが付加されたページデータの一例を示す図である。
この図に示すように、ページデータ６０ａには、＜ｔａｂｌｅ＞要素に記述された連携元画面４１１に対応するデータの他、ドラッグ操作の検出や属性受け渡し用の変数を作成するスクリプトが記述される。この例に示すスクリプトでは、まず連携元画面４１１が表示されると共に、変数ｄｒａｇｄａｔａが作成される。そして、この変数に連携元属性ＩＤ「ｓｕｚｕｋｉ＠ｅｘ．ｃｏｍ」が代入され、このスクリプトを実行するプロセスに渡される。そして、ユーザの操作入力によりドラッグ操作が行われると「Ｏｎｍｏｕｓｅｄｏｗｎ」イベントが発生し、ドロップ用スクリプト７２を実行するプロセスに渡すための処理として、上記変数が共有の空間にコピーされる。
【００８０】
図１１は、クライアントの画面に表示される連携元画面の構成例を示す図である。
この図に示すように、連携元画面４１１には、上記ページデータ６０ａの＜ｔａｂｌｅ＞要素に記述された画面データが表示される。また、その上部にはアイコン４１１ａが表示される。ユーザは、このアイコン４１１ａによって、表示されているデータが他のＷＷＷサーバに対して連携可能であることを認識する。そして、このアイコン４１１ａを連携先画面４１２にドラッグ＆ドロップすることで、ドラッグ用スクリプト６２及びドロップ用スクリプト７２による連携動作が行われる。
【００８１】
次に、クライアントと連携先ＷＷＷサーバとのデータの受け渡しについて、シーケンス図を用いて説明する。
図１２は、クライアントがデータ中継サーバを介して連携先ＷＷＷサーバからページデータを取得する際のシーケンス図である。以下、図１２に示す処理をステップ番号に沿って説明する。
【００８２】
［ステップＳ２１］クライアントは、データ中継サーバ１００の連携先中継処理部１３０を介して、連携先ＷＷＷサーバに対するページの取得要求を行う。
［ステップＳ２２］連携先中継処理部１３０は、クライアントからのページ取得要求を受け取ると、そのリクエスト文字列に設定された連携先中継処理部１３０のＵＲＬを、連携先ＷＷＷサーバのＵＲＬに設定して送信する。
【００８３】
［ステップＳ２３］連携先ＷＷＷサーバは、連携先中継処理部１３０からのページ取得要求を受け取ると、そのリクエストＵＲＬに対応するＷｅｂページのページデータを取得すると共に、予め決められたテンプレートなどに基づいて連携メタデータを作成し、これらをまとめたページデータを連携先中継処理部１３０に送信する。
【００８４】
［ステップＳ２４］連携先中継処理部１３０は、連携先ＷＷＷサーバからのページデータを受け取ると、その中に含まれる連携メタデータを検出する。
図１３は、連携先ＷＷＷサーバから送られる連携メタデータの一例を示す図である。
【００８５】
この図に示すように、連携先ＷＷＷサーバからのページデータ７０に含まれる連携メタデータ７１は、コメントで囲まれた部分に、同一ＩＤが指定された＜ｉｍｐｏｒｔＢｅｇｉｎ＞要素７１ａ、＜ｉｍｐｏｒｔＥｎｄ＞要素７１ｂ、及び＜ａｔｔｒｉｂｕｔｅｓ＞要素７１ｃを有している。なお、＜ｉｍｐｏｒｔＢｅｇｉｎ＞要素７１ａ及び＜ｉｍｐｏｒｔＥｎｄ＞要素７１ｂは共に空要素である。
【００８６】
上記のように構成される連携メタデータ７１で、＜ｉｍｐｏｒｔＢｅｇｉｎ＞要素７１ａと＜ｉｍｐｏｒｔＥｎｄ＞要素７１ｂとで囲まれる部分には、連携対象となる表示画面の画面データが記述される。この画面データには、連携対象となる表示画面のデータとして、例えばフォームなどの入力項目が記述され、他のＷＷＷサーバからの入力データが要求される。
【００８７】
また、＜ａｔｔｒｉｂｕｔｅｓ＞要素７１ｃには、上記ＩＤと共に、属性管理テーブル１１０と整合する名前空間として、本実施の形態では「ＷｅｂＢ」が指定される。そして、＜ａｔｔｒｉｂｕｔｅｓ＞要素７１ｃ内に列挙される＜ｉｎｐｕｔ＞要素には、上記画面データで要求される入力データの連携先ＷＷＷサーバでの属性名が記述される。
【００８８】
連携先中継処理部１３０は、このような連携メタデータを含むページデータを受信すると、上述したステップＳ１４と同様に、そのコメント部分を参照し、同一ＩＤが指定された＜ｉｍｐｏｒｔＢｅｇｉｎ＞要素、＜ｉｍｐｏｒｔＥｎｄ＞要素、及び＜ａｔｔｒｉｂｕｔｅｓ＞要素が全て含まれているかどうかによって、連携メタデータを検出する。そして、ステップＳ２５に処理を進める。
【００８９】
［ステップＳ２５］連携先中継処理部１３０は、連携メタデータの＜ｉｎｐｕｔ＞要素に記述された属性名と、＜ａｔｔｒｉｂｕｔｅｓ＞要素に指定された名前空間とをまとめる。そしてこのようにまとめられたデータに対して上記ＩＤを付与し、データ記憶部１３２に格納する。これにより、上記ＩＤは、連携先ＷＷＷサーバの属性名を示す連携先属性ＩＤとして機能する。そして、ステップＳ２６に処理を進める。
【００９０】
［ステップＳ２６］連携先中継処理部１３０は、動作ファイル記憶部１４０を参照してドロップ用スクリプト７２を取得した後、これをステップＳ２４で受信したページデータに付加したページデータを作成する。そして、ステップＳ２７に処理を進める。
【００９１】
［ステップＳ２７］連携先中継処理部１３０は、ステップＳ２６で作成したページデータをクライアントに送信する。
［ステップＳ２８］クライアントが連携先中継処理部１３０からのページデータを受け取ると、クライアント上で動作するブラウザなどがこのデータを読み取り、クライアントの画面には対応する表示画面が出力される。
【００９２】
以上の処理により、上記と同様に、クライアントから連携先ＷＷＷサーバへのデータの受け渡しを連携先中継処理部１３０を介して行うと共に、要求される入力データに指定された属性名を格納することが可能となる。
【００９３】
以下、上記処理を具体的な例を挙げて説明する。
まず、クライアント４００が、連携先中継処理部１３０を介してＷＷＷサーバ３２０へ表示画面を要求する。この時のリクエスト文字列は、上述の図８に示したデータ４１と同様の構成である。このリクエスト文字列では、連携先中継処理部１３０のＵＲＬ「ｈｔｔｐ：／／ｐｏｒｔａｌ／ｐｒｏｘｙＢ」がリクエストＵＲＬに指定されており、その引数「ｓｅｒｖｅｒＲｅｑ」には、ＷＷＷサーバ３２０のＵＲＬが指定される。
【００９４】
このようなリクエスト文字列を受け取ると、連携先中継処理部１３０は、その引数「ｓｅｒｖｅｒＲｅｑ」に指定されたＵＲＬを用いて、ＷＷＷサーバ３２０にリクエストを送信する。ＷＷＷサーバ３２０は、このＵＲＬに対応するページデータを取得した後、これに上述の図１３に示したような連携メタデータ７１を含めたページデータ７０を送信する。
【００９５】
連携先中継処理部１３０は、このようなページデータ７０から連携メタデータ７１を検出すると、次のようなデータをデータ記憶部１３２に格納する。
図１４は、連携先中継処理部のデータ記憶部に格納されるデータの構成例を示す図である。
【００９６】
この図に示すデータ４３は、図１３に示す連携メタデータ７１によって、データ記憶部１３２に格納されるデータを示している。このように、連携メタデータ７１の＜ｉｎｐｕｔ＞要素に記述された属性名と、＜ａｔｔｒｉｂｕｔｅｓ＞要素７１ｃに指定された名前空間「ＷｅｂＢ」とがまとめられ、＜ａｔｔｒｉｂｕｔｅｓ＞要素７１ｃに指定されたＩＤ「ｕｓｅｒＩｎｐｕｔ」が付与される。
【００９７】
そして、連携先中継処理部１３０は、ドロップ用スクリプト７２を付加したページデータ７０ａをクライアント４００に送信する。クライアント４００の画面４１０には、このページデータ７０ａに対応する連携先画面４１２が表示される。
【００９８】
図１５は、ドロップ用スクリプトが付加されたページデータの一例を示す図である。
この図に示すように、ページデータ７０ａには、＜ｆｏｒｍ＞要素に記述された連携先画面４１２の画面データの他、さらに、ドロップ操作の検出や属性受け渡し用の変数を作成するスクリプトが記述される。この例に示すスクリプトでは、まず連携先画面４１２が表示されると共に、変数ｄｒｏｐｄａｔａが作成される。そして、この変数に連携先属性ＩＤ「ｕｓｅｒＩｎｐｕｔ」が代入され、このスクリプトを実行するプロセスに渡される。そして、ユーザの操作入力によりドロップ操作が行われると、「Ｏｎｍｏｕｓｅｕｐ」イベントが発生し、「ＰｎｐｂｃＤｒｏｐＡｃｔｉｏｎ」が呼び出される。この中では、ドラッグの実行によって共有空間にコピーされた連携元属性ＩＤ「ｓｕｚｕｋｉ＠ｅｘ．ｃｏｍ」が連携先側のプロセスに受け渡される。そして、連携元属性ＩＤ「ｓｕｚｕｋｉ＠ｅｘ．ｃｏｍ」及び連携先属性ＩＤ「ｕｓｅｒＩｎｐｕｔ」を指定した連携要求が、連携先中継処理部１３０に出力される。
【００９９】
図１６は、クライアントの画面に表示される連携先画面の構成例を示す図である。
この図に示すように、連携先画面４１２には、上記ページデータ７０ａの＜ｆｏｒｍ＞要素に記述されたデータが表示される。そして、上述したアイコン４１１ａを連携先画面４１２にドラッグ＆ドロップすることで、クライアント４００から連携先中継処理部１３０に対して連携要求が出力される。
【０１００】
次に、クライアント４００からの連携要求を受けて行われる、連携元中継処理部１２０と連携先中継処理部１３０との連携処理について、シーケンス図を用いて説明する。
図１７は、連携元中継処理部と連携先中継処理部との連携処理を示すシーケンス図である。以下、図１７に示す処理を、ステップ番号に沿って説明する。
【０１０１】
［ステップＳ３１］連携元画面から連携先画面へのドラッグ＆ドロップがユーザにより実行されると、クライアントでは、ドラッグ用スクリプト６２とドロップ用スクリプト７２との間で連携元属性ＩＤが受け渡される。そして、ステップＳ３２に処理を進める。
【０１０２】
［ステップＳ３２］クライアントは、ドロップ用スクリプト７２の実行によって、連携元属性ＩＤ及び連携先属性ＩＤを指定した連携要求を、連携先中継処理部１３０に出力する。
【０１０３】
［ステップＳ３３］連携先中継処理部１３０は、クライアントからの連携要求を受け取ると、連携元中継処理部１２０に対して、マッピング処理の処理要求を出力する。この処理要求には、上記連携要求で指定された連携元属性ＩＤが含まれる。
【０１０４】
［ステップＳ３４］連携元中継処理部１２０は、連携先中継処理部１３０からの処理要求を受け取ると、マッピング処理部１２２を呼び出す。マッピング処理部１２２は、上記処理要求に含まれる連携元属性ＩＤを元にデータ記憶部１２１を参照し、上述のステップＳ１５で格納されたデータを取り出す。そして、マッピング処理部１２２は、このデータに含まれる名前空間と一致する属性管理テーブル１１０の項目を参照し、上記データの連携元ＷＷＷサーバの属性名を共有属性名にマッピングする。そして、ステップＳ３５に処理を進める。
【０１０５】
［ステップＳ３５］マッピング処理部１２２は、ステップＳ３４で行われたマッピング処理の結果として、出力データ及びこれに対応する共有属性名を対応付けて連携元中継処理部１２０に返す。連携元中継処理部１２０は、ステップＳ３３の処理要求に対する応答として、マッピング処理部１２２から返されたデータを連携先中継処理部１３０に渡す。
【０１０６】
［ステップＳ３６］連携先中継処理部１３０は、連携元中継処理部１２０から渡されたデータを受け取ると、データ設定部１３１を呼び出す。データ設定部１３１は、ステップＳ３３での連携要求に含まれる連携先属性ＩＤを元にデータ記憶部１３２を参照し、上述のステップＳ２５で格納されたデータに含まれる名前空間を取り出す。そして、データ設定部１３１は、この名前空間と一致する属性管理テーブル１１０の項目を参照し、連携元中継処理部１２０から渡された共有属性名を、上記名前空間によって管理される属性名、即ち連携先ＷＷＷサーバの属性名にマッピングし、これと出力データとを対応付ける。そして、ステップＳ３７に処理を進める。
【０１０７】
［ステップＳ３７］データ設定部１３１は、ステップＳ３３での連携要求に含まれる連携先属性ＩＤを元にデータ記憶部１３２を参照し、上述のステップＳ２５で格納されたデータを取り出す。そして、このデータに含まれる属性名と、ステップＳ３６のマッピングによって得られた連携先ＷＷＷサーバの属性名とを比較する。その結果、両者が一致していれば、上記データに含まれる属性名に対して、これと一致する連携先ＷＷＷサーバの属性名に対応付けられた出力データを設定する。その後、このように出力データが設定されたデータに連携先属性ＩＤを付与し、データ記憶部１３２に格納する。
【０１０８】
［ステップＳ３８］連携先中継処理部１３０は、上述のステップＳ２２と同様のリクエスト文字列を連携先ＷＷＷサーバに送信し、ページ取得要求を行う。
［ステップＳ３９］連携先ＷＷＷサーバは、連携先中継処理部１３０からのページ取得要求を受け取ると、対応するページデータを連携先中継処理部１３０に送信する。
【０１０９】
［ステップＳ４０］連携先中継処理部１３０は、連携先ＷＷＷサーバからのページデータを受け取ると、これに含まれる連携メタデータの＜ｉｍｐｏｒｔＢｅｇｉｎ＞要素と＜ｉｍｐｏｒｔＥｎｄ＞要素との間に記述された画面データの入力項目を参照する。その後、連携先中継処理部１３０は、取得した連携メタデータに指定されたＩＤを元にデータ記憶部１３２を参照し、ステップＳ３７で格納されたデータを取得する。そして、取得したデータに含まれる属性名と同一の属性名が指定された上記入力項目に対して、この属性名に設定された出力データを埋め込み、受け取ったページデータを更新する。そして、ステップＳ４１に処理を進める。
【０１１０】
［ステップＳ４１］連携先中継処理部１３０は、ステップＳ４０で更新したページデータをクライアントに送信する。
［ステップＳ４２］クライアントが更新されたページデータを受け取ると、クライアント上で動作するブラウザなどがこのデータを読み取り、クライアントの画面には対応する表示画面が出力される。
【０１１１】
以上の処理により、データ中継サーバ１００上で、連携元ＷＷＷサーバ及び連携先ＷＷＷサーバ間のドラッグ＆ドロップによる連携を行い、更新された画面をクライアントの画面に表示させることが可能となる。なお、上記では、ステップＳ４０で再度連携先ＷＷＷサーバに対してリクエストを発行したが、上述のステップＳ２４で取得したページデータをキャッシュに保存しておき、このキャッシュから取り出したページデータに対して更新を行ってもよい。
【０１１２】
以下、上記処理を具体的な例を挙げて説明する。
図１８は、クライアントから出力される連携要求の一例を示す図である。
この図に示す連携要求４４では、連携先中継処理部１３０のＵＲＬを指定したリクエスト文字列によって、連携先中継処理部１３０が呼び出される。連携先中継処理部１３０は、このリクエスト文字列の引数に含まれるコマンド「ｇｅｔＤｒｏｐＡｔｔｒ」によって、ドラッグ＆ドロップによる連携が要求されていることを判断する。そして、連携元中継処理部１２０に対して、同じく引数の「ｄｒａｇＡｔｔｒＩｄ」変数に格納された連携元属性ＩＤ「ｓｕｚｕｋｉ＠ｅｘ．ｃｏｍ」を指定した処理要求を、連携元中継処理部１２０に出力する。
【０１１３】
図１９は、連携元中継処理部のマッピング処理部による処理結果の一例を示す図である。
この図に示すように、マッピング処理部１２２によって、ＷＷＷサーバ３１０の属性名と共有属性名とがマッピングされ、その共有属性名と出力データとが対応付けられたデータ４５が得られる。
【０１１４】
図２０は、連携先中継処理部のデータ設定部によってデータ記憶部に格納されるデータの一例を示す図である。
この図に示すデータ４６は、上記データ４５を受け取ったデータ設定部１３１がデータ記憶部１３２に格納するデータを示している。このように、データ４５の属性名と一致するＷＷＷサーバ３２０の属性名に対して、データ４５の属性名に対応付けられた出力データが設定される。その後、連携先中継処理部１３０は、再度ページデータ７０を取得し、その連携メタデータの＜ｉｍｐｏｒｔＢｅｇｉｎ＞要素と＜ｉｍｐｏｒｔＥｎｄ＞要素との間に記述された画面データの入力項目に、対応する出力データを埋め込む。上述の図１３に示すページデータ７０の場合、例えば「ｐｈｏｎｅ」属性名が指定された＜ｉｎｐｕｔ  ｎａｍｅ＝“ｐｈｏｎｅ”＞に対しては、上記データ４６に含まれる同属性名に設定された出力データを用いて、＜ｉｎｐｕｔ  ｎａｍｅ＝“ｐｈｏｎｅ”  ｖａｌｕｅ＝“７７７７−１２３４”＞のように電話番号データを埋め込む。
【０１１５】
図２１は、ドラッグ＆ドロップによる連携によって更新された連携先画面の構成例を示す図である。
この図に示すように、ドラッグ＆ドロップによる連携の結果、連携元画面４１１に表示されているデータが連携され、連携先画面４１２の適切なフォームにコピーされる。ここで、ユーザが連携先画面４１２の実行ボタン４１２ａを押下すると、連携先画面４１２の各フォームにコピーされたデータが、ＷＷＷサーバ３２０に送信される。
【０１１６】
以上説明したように、本実施の形態のデータ中継サーバ１００では、ＷＷＷサーバの属性名と共有属性名との対応付けを予め属性管理テーブル１１０で管理しておくことで、連携元ＷＷＷサーバの属性名と連携先ＷＷＷサーバの属性名との対応付けを共有属性名を介して行うことが可能となり、データ中継サーバ１００上でドラッグ＆ドロップによるデータの連携を行うことができる。従って、各ＷＷＷサーバ側で連携用のプログラムを作成する必要がなくなる上、連携させるＷＷＷサーバを新たに追加する場合でも、このＷＷＷサーバで定義された属性名を属性管理テーブル１１０に追加すればよいので、既存の各ＷＷＷサーバに対してプログラムの修正を加える必要がない。よって、ＷＷＷサーバ同士の連携に要するサービス提供者側の負担を大幅に軽減させることができる。
【０１１７】
（第２の実施の形態）
図２２は、本発明の第２の実施の形態の原理構成図である。以下、この図２２を用いて本実施の形態の概要について説明する。なお、図１と同じものには同じ符号を付し、説明を省略する。
【０１１８】
図２２は、クライアントと複数のサーバとの間で受け渡される通信情報を中継する機能を有するデータ中継サーバ２に本発明を適用した場合について示している。
データ中継サーバ２は、属性管理テーブルＴ１を記憶する記憶手段２ａ、第１の連携手段２ｂ、第２の連携手段２ｃ、及びデータ記憶手段２ｄを有している。さらに、データ中継サーバ２には、ネットワーク３０ａ，３０ｂを介して、クライアント２１及びこのクライアント２１にサービスを提供する複数のサーバ２２ａ，２２ｂ，２２ｃ，．．．が接続されている。
【０１１９】
第１の連携手段２ｂは、受信した通信情報１５にサーバ固有属性名で属性が指定された出力データが含まれているとき、属性管理テーブルＴ１を参照し、この出力データのサーバ固有属性名と対応付けられている共有属性名を取得する。そして、取得した共有属性名と出力データとを対応付けてデータ記憶手段２ｄに格納する。
【０１２０】
第２の連携手段２ｃは、受信した通信情報１５にサーバ固有属性名で属性が指定された入力データが要求されているとき、属性管理テーブルＴ１を参照し、この入力データのサーバ固有属性名に対応付けられている共有属性名を取得する。そして、データ記憶手段２ｄを参照し、取得した共有属性名に対応付けて登録されている出力データを取得し、これを上記入力データとして設定する。
【０１２１】
以下、上記のように構成されるデータ中継サーバ２の動作について説明する。
第１の連携手段２ｂは、受信した通信情報１５にサーバ固有属性名で属性が指定された出力データが含まれている場合、属性管理テーブルＴ１を参照し、この出力データのサーバ固有属性名と対応付けられている共有属性名を取得する。そして、取得した共有属性名と出力データとを対応付けてデータ記憶手段２ｄに格納する。
【０１２２】
また、第２の連携手段２ｃは、受信した通信情報１５にサーバ固有属性名で属性が指定された入力データが要求されているとき、属性管理テーブルＴ１を参照し、この入力データのサーバ固有属性名に対応付けられている共有属性名を取得する。そして、データ記憶手段２ｄを参照し、取得した共有属性名に対応付けて登録されている出力データを取得し、これを上記入力データとして設定する。
【０１２３】
このように、サーバ固有属性名と共有属性名との対応付けを予め属性管理テーブルＴ１によって管理しておくことで、サーバ固有属性名同士の対応付けを属性管理テーブルＴ１に登録された共有属性名を介して行うことが可能となり、データ中継サーバ２上で出力データと入力データとの連携を実現できる。
【０１２４】
次に、本実施の形態を具体的に説明する。
図２３は、本発明を適用した第２の実施の形態のデータ中継サーバが接続されたネットワークの構成例を示す図である。この図は、一方のＷｅｂアプリケーションへの入力を保存し、他方のＷｅｂアプリケーションに自動入力させる連携例を示している。なお、上述の図２と同じものには同じ符号を付し、その詳細な説明を省略する。
【０１２５】
本実施の形態のデータ中継サーバ２００には、インターネット６０１及びＬＡＮ６０２が接続されており、図２と同様にこれらのネットワークには、クライアント４００やＷＷＷサーバ３１０，３２０など様々なネットワーク機器が接続されている。
【０１２６】
データ中継サーバ２００は、クライアントとＷＷＷサーバとの間で受け渡されるデータを中継し、ＷＷＷサーバ同士で連携可能なデータがあれば、そのデータを連携させる機能を有する。本実施の形態では、このデータ中継サーバ２００を介して、クライアント４００及びＷＷＷサーバ３１０，３２０が接続されている。
【０１２７】
また、データ中継サーバ２００は、上述したような属性管理テーブル１１０を有している。この属性管理テーブル１１０では、上記と同様に、属性名が定義されたＷＷＷサーバを示すためのサーバ識別情報によって、共有属性名とＷＷＷサーバの属性名との対応付けがまとめて管理されている。
【０１２８】
ＷＷＷサーバ３１０，３２０上では、ＷｅｂアプリケーションＡ，ＷｅｂアプリケーションＢがそれぞれ動作している。本実施の形態では、上記と同様に、ＷＷＷサーバ３１０を連携元ＷＷＷサーバとし、ＷＷＷサーバ３２０を連携先ＷＷＷサーバとして、それぞれ機能させる。
【０１２９】
上記のような構成で、クライアント４００からＷＷＷサーバ３１０に対する表示画面の要求が、データ中継サーバ２００を介してなされる。本実施の形態では、この表示画面としてフォーム画面が要求される。ＷＷＷサーバ３１０上で動作するＷｅｂアプリケーションＡは、上記要求を受けてページデータ８０を出力する。このページデータ８０には、例えばＨＴＭＬなどのマークアップ言語で記述された画面データの他、上記と同様の構成を有する連携メタデータ８１が含まれている。
【０１３０】
データ中継サーバ２００は、上記ページデータ８０を受信し、所定の処理を行ってページデータ８０をクライアント４００に渡す。クライアント４００の画面４１０には、このページデータ８０に対応する表示画面として、連携元画面４１３が出力される。そして、その画面のフォームなどの入力項目にデータが入力され、入力ボタンの押下などが行われると、クライアント４００からはリクエスト文字列が送信される。このリクエスト文字列では、上記データ及びそのＷＷＷサーバ３１０の属性名が対応付けられている。
【０１３１】
データ中継サーバ２００は、リクエスト文字列を受け取ると、上記データを他のＷＷＷサーバに連携可能な出力データとして取り出した後、属性管理テーブル１１０を参照し、ＷＷＷサーバ３１０の属性名を共有属性名にマッピングする。そして、出力データと共有属性名とを対応付けて、マッピングデータ記憶部２４０に格納する。
【０１３２】
また、クライアント４００からＷＷＷサーバ３２０に対して、データ中継サーバ２００を介した表示画面の要求がなされる。ＷＷＷサーバ３２０上で動作するＷｅｂアプリケーションＢは、上記要求を受けてページデータ９０を出力する。このページデータ９０には、上記と同様の構成を有する連携メタデータ９１が含まれている。
【０１３３】
データ中継サーバ２００は、受信したページデータ９０に入力データが要求されていると、属性管理テーブル１１０を参照し、要求される入力データに対応付けられたＷＷＷサーバ３２０の属性名を共有属性名にマッピングする。さらに、マッピングデータ記憶部２４０を参照し、上記共有属性名に対応付けて登録されている出力データを取得する。その後、取得した出力データを入力データとして設定してページデータ９０を更新し、クライアント４００に送信する。クライアント４００の画面４１０には、更新されたページデータ９０に対応する表示画面として、連携先画面４１４が表示される。この画面には、連携元画面４１３に入力されたデータが自動入力される。
【０１３４】
このようにして、サービス提供者側への負担が少ないＷＷＷサーバ間の連携を実現することができる。
以下、図２３に示すような処理の実現方法について具体的に説明する。
【０１３５】
本実施の形態に用いるデータ中継サーバ２００のハードウェア構成例は、上述の図３に示した構成例と同様であり、その説明を省略する。
図２４は、第２の実施の形態のデータ中継サーバの機能を示す機能ブロック図である。
【０１３６】
データ中継サーバ２００は、属性管理テーブル１１０、連携元中継処理部２２０、連携先中継処理部２３０、及びマッピングデータ記憶部２４０を有している。
連携元中継処理部２２０は、連携元ＷＷＷサーバとクライアントとの間で受け渡されるデータを中継する。そして、連携元ＷＷＷサーバから送信されるページデータの連携メタデータをチェックし、そこに記述された名前空間などをデータ記憶部２２１に格納する。そして、他のＷＷＷサーバに連携可能なデータを受信した場合、このデータを出力データとして取り出すと共に、属性管理テーブル１１０を参照し、この出力データに対応付けられている属性名を共有属性名にマッピングする。その後、取り出された出力データと共有属性名とを対応付けて、マッピングデータ記憶部２４０に格納する。
【０１３７】
連携先中継処理部２３０は、連携先ＷＷＷサーバとクライアントとの間で受け渡されるデータを中継する。そして、連携先ＷＷＷサーバから送信されるページデータの連携メタデータをチェックし、他のＷＷＷサーバからの入力データが要求されていれば、属性管理テーブル１１０を参照し、この入力データに指定された属性名を共有属性名にマッピングする。そして、マッピングデータ記憶部２４０を参照し、上記共有属性名に対応付けて登録されている出力データを取得し、これを入力データとして設定する。
【０１３８】
次に、以上のように構成されるデータ中継サーバ２００、クライアント、連携元ＷＷＷサーバ、及び連携先ＷＷＷサーバ間で行われる処理について、シーケンス図を用いて説明する。
【０１３９】
図２５は、クライアントがデータ中継サーバを介して連携元ＷＷＷサーバからページデータを取得する際のシーケンス図である。以下、図２５に示す処理を、ステップ番号に沿って説明する。
【０１４０】
［ステップＳ５１］クライアントは、データ中継サーバ２００の連携元中継処理部２２０を介して、連携元ＷＷＷサーバに対するページの取得要求を行う。
［ステップＳ５２］連携元中継処理部２２０は、上記ページ取得要求を受け取ると、そのリクエスト文字列に設定された連携元中継処理部２２０のＵＲＬを、連携元ＷＷＷサーバのＵＲＬに設定して送信する。
【０１４１】
［ステップＳ５３］連携元ＷＷＷサーバは、連携元中継処理部２２０からのページ取得要求を受け取ると、そのリクエストＵＲＬに対応するＷｅｂページのページデータを取得すると共に、予め決められたテンプレートなどに基づいて連携メタデータを作成し、これらをまとめたページデータを連携元中継処理部２２０に送信する。
【０１４２】
［ステップＳ５４］連携元中継処理部２２０は、上記ページデータを受け取ると、その中に含まれる連携メタデータを検出する。
図２６は、連携元ＷＷＷサーバから送られる連携メタデータの一例を示す図である。
【０１４３】
この図に示すように、連携元ＷＷＷサーバからのページデータ８０に含まれる連携メタデータ８１は、上述した連携メタデータ６１と同様に、コメントで囲まれた部分に、同一ＩＤが指定された＜ｅｘｐｏｒｔＢｅｇｉｎ＞要素８１ａ、＜ｅｘｐｏｒｔＥｎｄ＞要素８１ｂ、及び＜ａｔｔｒｉｂｕｔｅｓ＞要素８１ｃを有している。本実施の形態では、上記画面データがユーザからの入力を要求するフォームによって構成されるため、＜ａｔｔｒｉｂｕｔｅｓ＞要素８１ｃ内部の＜ｏｕｔｐｕｔ＞要素には、上記フォームに指定された属性名が記述される。
【０１４４】
連携元中継処理部２２０は、このように構成されるページデータのコメント部分を参照し、上述のステップＳ１４と同様にして連携メタデータを検出する。そして、ステップＳ５５に処理を進める。
【０１４５】
［ステップＳ５５］連携元中継処理部２２０は、検出された連携メタデータの＜ｏｕｔｐｕｔ＞要素を参照し、記述されている属性名及び＜ａｔｔｒｉｂｕｔｅｓ＞要素に指定された名前空間をまとめ、これらのデータに対して連携メタデータに指定されたＩＤを付与し、データ記憶部２２１に格納する。これにより、このＩＤは、連携元ＷＷＷサーバの属性名を示す連携元属性ＩＤとして機能する。そして、ステップＳ５６に処理を進める。
【０１４６】
［ステップＳ５６］連携元中継処理部２２０は、ページデータに対して、クライアントからのリクエスト文字列が連携元中継処理部２２０を介したリクエストとなるように、リクエストＵＲＬの変換を行う。そして、ステップＳ５７に処理を進める。
【０１４７】
［ステップＳ５７］連携元中継処理部２２０は、ステップＳ５６での変換が行われたページデータをクライアントに送信する。
［ステップＳ５８］クライアントがページデータを受け取ると、クライアント上で動作するブラウザなどがこのデータを読み取り、クライアントの画面には対応する表示画面が出力される。
【０１４８】
［ステップＳ５９］ユーザが上記表示画面に対してデータを入力し、さらに入力されたデータの送信が実行されると、連携元中継処理部２２０に対して、入力されたデータを含むリクエスト文字列が送信される。
【０１４９】
［ステップＳ６０］連携元中継処理部２２０は、上記リクエスト文字列を受信する。このリクエスト文字列には、ユーザによって入力されたデータ及びその連携元ＷＷＷサーバでの属性名が対応付けられている他、連携元属性ＩＤも含まれている。連携元中継処理部２２０は、ユーザによって入力されたデータを、他のＷＷＷサーバに連携可能な出力データとして取り出す。そして、ステップＳ６１に処理を進める。
【０１５０】
［ステップＳ６１］連携元中継処理部２２０は、上記連携元属性ＩＤを元にデータ記憶部２２１を参照し、ステップＳ５５で格納されたデータに含まれる名前空間を取得する。そして、属性管理テーブル１１０の上記名前空間と一致する項目を参照し、ステップＳ６０で取り出した出力データに対応付けられている連携元ＷＷＷサーバの属性名を、共有属性名にマッピングする。そして、ステップＳ６２に処理を進める。
【０１５１】
［ステップＳ６２］連携元中継処理部２２０は、ステップＳ６１でマッピングされた共有属性名と出力データとを対応付けて、マッピングデータ記憶部２４０に格納する。そして、ステップＳ６３に処理を進める。
【０１５２】
［ステップＳ６３］連携元中継処理部２２０は、ステップＳ６０で受信したリクエスト文字列のリクエストＵＲＬを連携元ＷＷＷサーバのＵＲＬに変更後、そのリクエスト文字列を連携元ＷＷＷサーバに送信する。
【０１５３】
以上の処理により、クライアントと連携元ＷＷＷサーバとのデータの受け渡しを連携元中継処理部２２０によって中継し、その際、連携元ＷＷＷサーバの属性名と対応付けられた出力データを取り出すことが可能となる。
【０１５４】
以下、上記処理を具体的な例を挙げて説明する。
まず、クライアント４００からの表示画面要求に対して、ＷＷＷサーバ３１０は、上述の図２６に示すような連携メタデータ８１を含むページデータ８０を送信する。
【０１５５】
連携元中継処理部２２０は、このページデータ８０から連携メタデータ８１を検出すると、次のようなデータをデータ記憶部２２１に格納する。
図２７は、連携元中継処理部のデータ記憶部に格納されるデータの構成例を示す図である。
【０１５６】
この図に示すデータ５１は、連携メタデータ８１に対して、データ記憶部２２１に格納されるデータを示している。このように、連携メタデータ８１の＜ｏｕｔｐｕｔ＞要素に記述されている属性名と＜ａｔｔｒｉｂｕｔｅｓ＞要素８１ｃに指定された名前空間「ＷｅｂＡ」とがまとめられ、さらに＜ａｔｔｒｉｂｕｔｅｓ＞要素８１ｃに指定されているＩＤ「ｒｅｇｉｓｔｅｒＵｓｅｒ」が付与されて、データ記憶部２２１に格納される。
【０１５７】
その後、連携元中継処理部２２０は、クライアント４００からのリクエスト文字列が連携元中継処理部２２０を介したリクエストとなるようにする。この例では、ページデータ８０の「ａｃｔｉｏｎ＝“／ｉｎｐｕｔ”」に対して、連携元中継処理部２２０のＵＲＬを指定したリクエスト文字列を設定する。
【０１５８】
図２８は、クライアントの画面に表示される連携元画面の構成例を示す図である。
この図は、ページデータ８０に対応して、クライアント４００の画面４１０に表示される連携元画面４１３を示している。この連携元画面４１３には、ページデータ８０の＜ｆｏｒｍ＞要素に記述されたデータが表示されており、ユーザは、この画面の各フォームに対して、「鈴木」などのデータを入力する。そして、ユーザの操作入力によって入力ボタン４１３ａが押下されると、入力されたデータを含むリクエスト文字列が、クライアント４００から送信される。
【０１５９】
図２９は、ユーザによって入力されたデータを含むリクエスト文字列の一例を示す図である。
この図に示すリクエスト文字列５２は、上記連携元画面４１３に入力されたデータを含んで構成されている。このように、リクエスト文字列５２には、連携元中継処理部２２０を呼び出すリクエストＵＲＬが設定され、その引数には、連携元画面４１３に入力されたデータとＷＷＷサーバ３１０の属性名とが対応付けられて設定される。また、他の引数には連携元属性ＩＤ「ｒｅｇｉｓｔｅｒＵｓｅｒ」も設定される。
【０１６０】
このようなリクエスト文字列５２を受け取ると、連携元中継処理部２２０は、その引数に指定された「鈴木」などのデータを出力データとして取り出す。また、同じく引数に指定された連携元属性ＩＤ「ｒｅｇｉｓｔｅｒＵｓｅｒ」を取り出し、これを元にデータ記憶部２２１を参照して上記データ５１を取り出す。そして、出力データに対応付けられている属性名と一致するデータ５１の属性名に対して、上記出力データを設定する。さらに、共有属性名へのマッピングを行い、その結果をマッピングデータ記憶部２４０に格納する。
【０１６１】
図３０は、マッピングデータ記憶部に格納されるデータの一例を示す図である。
この図に示すデータ５３は、上記リクエスト文字列５２から取り出された出力データに対して、連携元中継処理部２２０が行った共有属性名へのマッピング結果を示している。連携元中継処理部２２０は、上記データ５１に含まれる名前空間「ＷｅｂＡ」が用いて共有属性名へのマッピングを行い、その結果得られたデータ５３をマッピングデータ記憶部２４０に格納する。
【０１６２】
次に、データ中継サーバ２００と連携先ＷＷＷサーバとの間で行われる処理についてシーケンス図を用いて説明する。
図３１は、クライアントがデータ中継サーバを介して連携先ＷＷＷサーバからページデータを取得する際のシーケンス図である。以下、図３１に示す処理を、ステップ番号に沿って説明する。
【０１６３】
［ステップＳ７１］クライアントは、データ中継サーバ２００の連携先中継処理部２３０を介して、連携先ＷＷＷサーバに対するページの取得要求を行う。
［ステップＳ７２］連携先中継処理部２３０は、上記ページ取得要求を受け取ると、そのリクエスト文字列に設定された連携先中継処理部２３０のＵＲＬを、連携先ＷＷＷサーバのＵＲＬに設定して送信する。
【０１６４】
［ステップＳ７３］連携先ＷＷＷサーバは、連携先中継処理部２３０からのページ取得要求を受け取ると、そのリクエストＵＲＬに対応するＷｅｂページのページデータを取得すると共に、予め決められたテンプレートなどに基づいて連携メタデータを作成し、これらをまとめたページデータを連携先中継処理部２３０に送信する。
【０１６５】
［ステップＳ７４］連携先中継処理部２３０は、上記ページデータを受け取ると、その中に含まれる連携メタデータを検出する。
図３２は、連携先ＷＷＷサーバから送られる連携メタデータの一例を示す図である。
【０１６６】
この図に示すように、連携先ＷＷＷサーバからのページデータ９０に含まれる連携メタデータ９１は、上述の図１３に示す連携メタデータ７１と同様に、コメントで囲まれた部分に、同一ＩＤが指定された＜ｉｍｐｏｒｔＢｅｇｉｎ＞要素９１ａ、＜ｉｍｐｏｒｔＥｎｄ＞要素９１ｂ、及び＜ａｔｔｒｉｂｕｔｅｓ＞要素９１ｃを有している。
【０１６７】
連携先中継処理部２３０は、上述のステップＳ１４と同様にして連携メタデータを検出する。そして、ステップＳ７５に処理を進める。
［ステップＳ７５］連携先中継処理部２３０は、検出された連携メタデータの＜ｉｎｐｕｔ＞要素に記述された属性名を取り出すと共に、＜ａｔｔｒｉｂｕｔｅｓ＞要素に指定されている名前空間を元に属性管理テーブル１１０を参照し、＜ｉｎｐｕｔ＞要素から取り出した属性名を共有属性名にマッピングする。そして、その共有属性名を元にマッピングデータ記憶部２４０を参照し、上記共有属性名と同一の共有属性名に対応付けられた出力データがあれば、その出力データを共有属性名と対応付けて取り出す。そして、ステップＳ７６に処理を進める。
【０１６８】
［ステップＳ７６］連携先中継処理部２３０は、連携メタデータの＜ａｔｔｒｉｂｕｔｅｓ＞要素に指定されている名前空間（連携先ＷＷＷサーバを示す）を元に属性管理テーブル１１０を参照し、ステップＳ７５で取り出した出力データに対応付けられている共有属性名を、連携先ＷＷＷサーバの属性名にマッピングする。そして、ステップＳ７７に処理を進める。
【０１６９】
［ステップＳ７７］連携先中継処理部２３０は、連携メタデータの＜ｉｍｐｏｒｔＢｅｇｉｎ＞要素及び＜ｉｍｐｏｒｔＥｎｄ＞要素によって囲まれた画面データを参照する。そして、連携先中継処理部２３０は、ステップＳ７６でマッピングされた連携先ＷＷＷサーバの属性名と同一の属性名が指定された入力項目に、上記連携先ＷＷＷサーバの属性名と対応付けられている出力データを設定する。このようにして、ステップＳ７４で受け取ったページデータを更新し、ステップＳ７８に処理を進める。
【０１７０】
［ステップＳ７８］連携先中継処理部２３０は、クライアントからのリクエスト文字列が連携先中継処理部２３０を中継するように、ステップＳ７７で更新されたページデータに対してリクエストＵＲＬの変換を行い、ステップＳ７９に処理を進める。
【０１７１】
［ステップＳ７９］連携先中継処理部２３０は、ステップＳ７８のＵＲＬ変換が行われたページデータをクライアントに送信する。
［ステップＳ８０］クライアントがページデータを受け取ると、クライアント上で動作するブラウザなどがこのデータを読み取り、クライアントの画面には対応する表示画面が出力される。
【０１７２】
以上の処理により、クライアントと連携先ＷＷＷサーバとのデータの受け渡しを連携先中継処理部２３０によって中継し、連携先画面の入力項目に対して、連携元画面に入力された出力データを設定することができる。なお、マッピングデータ記憶部２４０に、参照に用いた共有属性名と同一の共有属性名に対応付けられた出力データが複数格納されている場合、これらの複数の出力データを入力データに設定してもよい。このようにすることで、例えば複数の出力データをクライアントの画面に候補として表示することが可能となり、ユーザの利便性を向上させることができる。
【０１７３】
以下、上記処理を具体的な例を挙げて説明する。
まず、クライアント４００からの表示画面要求に対して、ＷＷＷサーバ３２０は、上述の図３２に示すような連携メタデータ９１を含むページデータ９０を送信する。
【０１７４】
連携先中継処理部２３０は、このページデータ９０から連携メタデータ９１を検出すると、マッピングデータ記憶部２４０に記憶されたデータを取り出す。そして、属性管理テーブル１１０を参照し、共有属性名をＷＷＷサーバ３２０の属性名にマッピングする。
【０１７５】
図３３は、連携先中継処理部によってマッピング処理されたデータの一例を示す図である。
この図に示すデータ５４は、上述の図３０に示したデータ５３に対して、連携先中継処理部２３０がＷＷＷサーバ３２０へのマッピングを行った結果を示している。このように、共有属性名からＷＷＷサーバ３２０へのマッピングによって、例えばＷＷＷサーバ３２０の属性名「ｐｈｏｎｅ」と対応する出力データ「７７７７−１２３４」が対応付けられる。
【０１７６】
その後、連携先中継処理部２３０は、＜ｉｍｐｏｒｔＢｅｇｉｎ＞要素９１ａ及び＜ｉｍｐｏｒｔＥｎｄ＞要素９１ｂによって囲まれた画面データの入力項目に対して、出力データを埋め込む。上述の図３３に示したようなページデータ９０の場合、例えば「ｍａｉｌ」属性が指定された＜ｉｎｐｕｔ  ｎａｍｅ＝“ｍａｉｌ”＞に対して、＜ｉｎｐｕｔ
ｎａｍｅ＝“ｍａｉｌ”  ｖａｌｕｅ＝“ｓｕｚｕｋｉ＠ｅｘ．ｃｏｍ”＞のように電子メールアドレスを埋め込む。
【０１７７】
図３４は、クライアントの画面に表示される連携先画面の構成例を示す図である。
この図は、出力データが埋め込まれたページデータ９０に対応して、クライアント４００の画面４１０に表示される連携先画面４１４を示している。このように、連携元画面４１３に入力されたデータが、自動的に連携先画面４１４の適切な入力項目に表示される。そして、ユーザの操作入力によって実行ボタン４１４ａが押下されると、上記のように連携先画面４１４に自動入力されたデータが、連携先中継処理部２３０を介して、クライアント４００からＷＷＷサーバ３２０に送信される。
【０１７８】
以上説明したように、本実施の形態のデータ中継サーバ２００では、ＷＷＷサーバの属性名と共有属性名との対応付けを予め属性管理テーブル１１０で管理しておくことで、連携元ＷＷＷサーバの属性名と連携先ＷＷＷサーバの属性名との対応付けを共有属性名を介して行うことが可能となり、データ中継サーバ２００上で自動入力によるデータの連携を行うことができる。従って、各ＷＷＷサーバ側で連携用のプログラムを作成する必要がなくなる上、連携させるＷＷＷサーバを新たに追加する場合でも、このＷＷＷサーバで定義された属性名を属性管理テーブル１１０に追加すればよいので、既存の各ＷＷＷサーバに対してプログラムの修正を加える必要がない。よって、ＷＷＷサーバ同士の連携に要するサービス提供者側の負担を大幅に軽減させることができる。
【０１７９】
なお、上記の説明では、連携元中継処理部２２０が出力データを取り出した後、連携先中継処理部２３０が連携先ＷＷＷサーバへのリクエストを発行して自動入力を行ったが、連携元中継処理部２２０が連携先ＷＷＷサーバを呼び出して自動入力するようにしてもよい。ただしこの場合は、連携元中継処理部２２０が連携先ＷＷＷサーバのリクエストＵＲＬや引数についての情報を知っておく必要があるため、連携元ＷＷＷサーバが出力する連携メタデータ中に、予め連携先ＷＷＷサーバのリクエストＵＲＬや引数情報を記述しておく。
【０１８０】
まず、連携元中継処理部２２０は、出力データを取り出した後、上記連携メタデータに記述されたリクエストＵＲＬを元に、連携先ＷＷＷサーバにリクエストを発行する。そして、これに対応するページデータを受け取ると、そのページデータの連携メタデータに記述された名前空間を元に属性管理テーブル１１０を参照し、共有属性名を介して、連携元ＷＷＷサーバの属性名から連携先ＷＷＷサーバの属性名へのマッピングを行う。その後、連携先ＷＷＷサーバに対して、上記リクエストＵＲＬが設定されたリクエスト文字列を発行する。このリクエスト文字列の引数には、上記引数情報を元にして、上記マッピングによって得られた連携先ＷＷＷサーバの属性名と出力データとが対応付けられて設定される。
【０１８１】
このようにして、連携元画面に入力されたデータを取り出した後、そのまま連携先ＷＷＷサーバに自動入力することが可能となる。
図３５は、本実施の形態の変形例のデータ中継サーバを用いたＷＷＷサーバの連携を示す図である。なお、図２３と同じものには同じ符号を付し、その詳細な説明を省略する。
【０１８２】
この図は、本実施の形態の変形例のデータ中継サーバ２００ａを用いて、Ｗｅｂアプリケーションが動作する各ＷＷＷサーバとして、ＬＡＮ６０３に接続されているスケジュール管理サーバ３３０，３４０、会議室予約サーバ３５０、及びＴＶ会議室予約サーバ３６０を連携させる例を示している。各スケジュール管理サーバ３３０，３４０は、例えば社内の部署Ａ及び部署Ｂのスケジュールを管理する機能を有している。
【０１８３】
データ中継サーバ２００ａは、属性管理テーブル２１０を有しており、これを用いて各ＷＷＷサーバ同士の連携を行う。
図３６は、本実施の形態の変形例の中継サーバが有する属性管理テーブルの構成例を示す図である。
【０１８４】
この図に示すように、属性管理テーブル２１０では、各ＷＷＷサーバで定義された属性名と、最下行に登録された共有属性名との対応付けが管理されている。これにより、例えば、部署Ａに所属するクライアント４００が会議室予約サーバ３５０にて会議室の予約を行う。その後、同じ部署Ａに所属する他のクライアントが、部署Ａのスケジュールを管理するスケジュール管理サーバ３３０に対してスケジュールの参照や入力を行う場合、その表示画面に対して、先のクライアント４００による会議室の予約状況を自動的に表示することが可能となる。また、上記の構成に対して、例えば部署Ｃを管理するスケジュール管理サーバを新たに追加する場合、属性管理テーブル２１０にこのサーバの属性名を追加することで、既存の各ＷＷＷサーバとの連携が可能となる。
【０１８５】
このように、属性管理テーブル２１０を用いて各ＷＷＷサーバ同士を連携させることで、上記と同様に、連携に要するサービス提供者側の負担を大幅に低減することができる。
なお、データ中継サーバ１００，２００の処理機能は、サーバコンピュータによって実現することができる。その場合、データ中継サーバ１００，２００が有すべき機能の処理内容を記述したデータ中継プログラムが提供される。サーバコンピュータは、クライアントコンピュータからの要求に応答して、データ中継プログラムを実行する。これにより、上記処理機能がサーバコンピュータ上で実現され、処理結果がクライアントコンピュータに提供される。
【０１８６】
処理内容を記述したデータ中継プログラムは、サーバコンピュータで読み取り可能な記録媒体に記録しておくことができる。サーバコンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープなどがある。光ディスクには、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。光磁気記録媒体には、ＭＯ（Magneto-Optical disk）などがある。
【０１８７】
データ中継プログラムを流通させる場合には、例えば、データ中継プログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。
データ中継プログラムを実行するサーバコンピュータは、例えば、可搬型記録媒体に記録されたデータ中継プログラムを、自己の記憶装置に格納する。そして、サーバコンピュータは、自己の記憶装置からデータ中継プログラムを読み取り、データ中継プログラムに従った処理を実行する。なお、サーバコンピュータは、可搬型記録媒体からデータ中継プログラムを読み取り、そのプログラムに従った処理を実行することもできる。
【０１８８】
（付記１）  クライアントと複数のサーバとの間で受け渡される通信情報を中継するデータ中継プログラムにおいて、
コンピュータを、
前記通信情報に含まれ、前記サーバ同士で連携されるデータの属性を示す共有属性名に関連付けて、前記共有属性名と同じ属性を示す名称として前記サーバそれぞれで定義されたサーバ固有属性名が登録された属性管理テーブルを記憶する記憶手段と、
前記通信情報に第１のサーバ固有属性名で属性が指定された出力データが含まれているとき、前記出力データを前記第１のサーバ固有属性名に関連付けてデータ記憶手段に格納すると共に、前記第１のサーバ固有属性名を他のプロセスに渡す処理が記述された第１の動作ファイルを前記通信情報に付加して前記クライアントに送信する第１の連携手段と、
前記通信情報に第２のサーバ固有属性名で属性が指定された入力データが要求されているとき、前記第１の動作ファイルを実行するプロセスから前記第１のサーバ固有属性名を受け取ると、前記第１のサーバ固有属性名を指定した連携要求を出力する処理が記述された第２の動作ファイルを前記通信情報に付加して前記クライアントに送信し、前記第１の動作ファイル及び前記第２の動作ファイルの前記クライアントでの実行によってなされる前記連携要求を受けて、前記共有属性名を介して前記第１のサーバ固有属性名に対応する前記第２のサーバ固有属性名を取得し、取得した前記第２のサーバ固有属性名の前記入力データに前記データ記憶手段において前記第１のサーバ固有属性名に対応付けられた前記出力データを設定する第２の連携手段と、
として機能させることを特徴とするデータ中継プログラム。
【０１８９】
（付記２）  前記第１の連携手段は、前記連携要求に応じて前記第２の連携手段から出力される処理要求によって前記データ記憶手段に前記出力データに対応付けられた前記第１のサーバ固有属性名を取得し、前記属性管理テーブルを参照して取得した前記第１のサーバ固有属性名に対応付けられている前記共有属性名を取得し、取得した前記共有属性名と前記出力データとを対応付けて前記第２の連携手段に渡し、前記第２の連携手段は、前記属性管理テーブルを参照して渡された前記共有属性名に対応付けられている前記第２のサーバ固有属性名を取得することを特徴とする付記１記載のデータ中継プログラム。
【０１９０】
（付記３）  前記属性管理テーブルでは各々の前記サーバ毎に定義された前記サーバ固有属性名と前記共有属性名との対応付けが前記サーバを識別するための識別情報によってまとめて管理されており、前記識別情報によって前記通信情報に含まれる前記サーバ固有属性名と前記共有属性名との対応付けがなされることを特徴とする付記１記載のデータ中継プログラム。
【０１９１】
（付記４）  前記識別情報には名前空間を用いることを特徴とする付記３記載のデータ中継プログラム。
（付記５）  前記第１の動作ファイル及び前記第２の動作ファイルは、スクリプト言語によって記述されていることを特徴とする付記１記載のデータ中継プログラム。
【０１９２】
（付記６）  クライアントと複数のサーバとの間で受け渡される通信情報を中継するデータ中継装置において、
前記通信情報に含まれ、前記サーバ同士で連携されるデータの属性を示す共有属性名に関連付けて、前記共有属性名と同じ属性を示す名称として前記サーバそれぞれで定義されたサーバ固有属性名が登録された属性管理テーブルを記憶する記憶手段と、
前記通信情報に第１のサーバ固有属性名で属性が指定された出力データが含まれているとき、前記出力データを前記第１のサーバ固有属性名に関連付けてデータ記憶手段に格納すると共に、前記第１のサーバ固有属性名を他のプロセスに渡す処理が記述された第１の動作ファイルを前記通信情報に付加して前記クライアントに送信する第１の連携手段と、
前記通信情報に第２のサーバ固有属性名で属性が指定された入力データが要求されているとき、前記第１の動作ファイルを実行するプロセスから前記第１のサーバ固有属性名を受け取ると、前記第１のサーバ固有属性名を指定した連携要求を出力する処理が記述された第２の動作ファイルを前記通信情報に付加して前記クライアントに送信し、前記第１の動作ファイル及び前記第２の動作ファイルの前記クライアントでの実行によってなされる前記連携要求を受けて、前記共有属性名を介して前記第１のサーバ固有属性名に対応する前記第２のサーバ固有属性名を取得し、取得した前記第２のサーバ固有属性名の前記入力データに前記データ記憶手段において前記第１のサーバ固有属性名に対応付けられた前記出力データを設定する第２の連携手段と、
を有することを特徴とするデータ中継装置。
【０１９３】
（付記７）  クライアントと複数のサーバとの間で受け渡される通信情報を中継する処理をコンピュータに記録させるプログラムを格納したコンピュータ読み取り可能な記録媒体において、
コンピュータを、
前記通信情報に含まれ、前記サーバ同士で連携されるデータの属性を示す共有属性名に関連付けて、前記共有属性名と同じ属性を示す名称として前記サーバそれぞれで定義されたサーバ固有属性名が登録された属性管理テーブルを記憶する記憶手段、
前記通信情報に第１のサーバ固有属性名で属性が指定された出力データが含まれているとき、前記出力データを前記第１のサーバ固有属性名に関連付けてデータ記憶手段に格納すると共に、前記第１のサーバ固有属性名を他のプロセスに渡す処理が記述された第１の動作ファイルを前記通信情報に付加して前記クライアントに送信する第１の連携手段、
前記通信情報に第２のサーバ固有属性名で属性が指定された入力データが要求されているとき、前記第１の動作ファイルを実行するプロセスから前記第１のサーバ固有属性名を受け取ると、前記第１のサーバ固有属性名を指定した連携要求を出力する処理が記述された第２の動作ファイルを前記通信情報に付加して前記クライアントに送信し、前記第１の動作ファイル及び前記第２の動作ファイルの前記クライアントでの実行によってなされる前記連携要求を受けて、前記共有属性名を介して前記第１のサーバ固有属性名に対応する前記第２のサーバ固有属性名を取得し、取得した前記第２のサーバ固有属性名の前記入力データに前記データ記憶手段において前記第１のサーバ固有属性名に対応付けられた前記出力データを設定する第２の連携手段、
として機能させるプログラムを格納したコンピュータ読み取り可能な記録媒体。
【０１９４】
（付記８）  クライアントと複数のサーバとの間で受け渡される通信情報を中継するデータ中継方法において、
記憶手段が、前記通信情報に含まれ、前記サーバ同士で連携されるデータの属性を示す共有属性名に関連付けて、前記共有属性名と同じ属性を示す名称として前記サーバそれぞれで定義されたサーバ固有属性名が登録された属性管理テーブルを記憶し、
第１の連携手段が、前記通信情報に第１のサーバ固有属性名で属性が指定された出力データが含まれているとき、前記出力データを前記第１のサーバ固有属性名に関連付けてデータ記憶手段に格納すると共に、前記第１のサーバ固有属性名を他のプロセスに渡す処理が記述された第１の動作ファイルを前記通信情報に付加して前記クライアントに送信し、
第２の連携手段が、前記通信情報に第２のサーバ固有属性名で属性が指定された入力データが要求されているとき、前記第１の動作ファイルを実行するプロセスから前記第１のサーバ固有属性名を受け取ると、前記第１のサーバ固有属性名を指定した連携要求を出力する処理が記述された第２の動作ファイルを前記通信情報に付加して前記クライアントに送信し、前記第１の動作ファイル及び前記第２の動作ファイルの前記クライアントでの実行によってなされる前記連携要求を受けて、前記共有属性名を介して前記第１のサーバ固有属性名に対応する第２のサーバ固有属性名を取得し、取得した前記第２のサーバ固有属性名の前記入力データに前記データ記憶手段において前記第１のサーバ固有属性名に対応付けられた前記出力データを設定する、
ことを特徴とするデータ中継方法。
【０１９５】
（付記９）  クライアントと複数のサーバとの間で受け渡される通信情報を中継するデータ中継プログラムにおいて、
コンピュータを、
前記通信情報に含まれ、前記サーバ同士で連携されるデータの属性を示す共有属性名に関連付けて、前記共有属性名と同じ属性を示す名称として前記サーバそれぞれで定義されたサーバ固有属性名が登録された属性管理テーブルを記憶する記憶手段と、
前記通信情報に前記サーバ固有属性名で属性が指定された出力データが含まれているとき、前記属性管理テーブルを参照して前記出力データの前記サーバ固有属性名と対応付けられている前記共有属性名を取得し、取得した前記共有属性名と前記出力データとを対応付けてデータ記憶手段に格納する第１の連携手段と、
前記通信情報において前記サーバ固有属性名で属性が指定された入力データが要求されているとき、前記属性管理テーブルを参照して前記入力データの前記サーバ固有属性名に対応付けられている前記共有属性名を取得し、前記データ記憶手段において取得した前記共有属性名に対応付けて登録されている前記出力データを前記入力データとして設定する第２の連携手段と、
として機能させることを特徴とするデータ中継プログラム。
【０１９６】
（付記１０）  前記データ記憶手段において前記第２の連携手段が取得した前記共有属性名に対応付けられた前記出力データが複数存在する場合、前記第２の連携手段は前記入力データに対して複数の前記出力データを設定することを特徴とする付記９記載のデータ中継プログラム。
【０１９７】
（付記１１）  前記属性管理テーブルでは各々の前記サーバ毎に定義された前記サーバ固有属性名と前記共有属性名との対応付けが前記サーバを識別するための識別情報によってまとめて管理されており、前記識別情報によって前記通信情報に含まれる前記サーバ固有属性名と前記共有属性名との対応付けがなされることを特徴とする付記９記載のデータ中継プログラム。
【０１９８】
（付記１２）  前記識別情報には名前空間を用いることを特徴とする付記１０記載のデータ中継プログラム。
（付記１３）  クライアントと複数のサーバとの間で受け渡される通信情報を中継するデータ中継装置において、
前記通信情報に含まれ、前記サーバ同士で連携されるデータの属性を示す共有属性名に関連付けて、前記共有属性名と同じ属性を示す名称として前記サーバそれぞれで定義されたサーバ固有属性名が登録された属性管理テーブルを記憶する記憶手段と、
前記通信情報に前記サーバ固有属性名で属性が指定された出力データが含まれているとき、前記属性管理テーブルを参照して前記出力データの前記サーバ固有属性名と対応付けられている前記共有属性名を取得し、取得した前記共有属性名と前記出力データとを対応付けてデータ記憶手段に格納する第１の連携手段と、
前記通信情報において前記サーバ固有属性名で属性が指定された入力データが要求されているとき、前記属性管理テーブルを参照して前記入力データの前記サーバ固有属性名に対応付けられている前記共有属性名を取得し、前記データ記憶手段において取得した前記共有属性名に対応付けて登録されている前記出力データを前記入力データとして設定する第２の連携手段と、
を有することを特徴とするデータ中継装置。
【０１９９】
（付記１４）  クライアントと複数のサーバとの間で受け渡される通信情報を中継する処理をコンピュータに記録させるプログラムを格納したコンピュータ読み取り可能な記録媒体において、
コンピュータを、
前記通信情報に含まれ、前記サーバ同士で連携されるデータの属性を示す共有属性名に関連付けて、前記共有属性名と同じ属性を示す名称として前記サーバそれぞれで定義されたサーバ固有属性名が登録された属性管理テーブルを記憶する記憶手段と、
前記通信情報に前記サーバ固有属性名で属性が指定された出力データが含まれているとき、前記属性管理テーブルを参照して前記出力データの前記サーバ固有属性名と対応付けられている前記共有属性名を取得し、取得した前記共有属性名と前記出力データとを対応付けてデータ記憶手段に格納する第１の連携手段と、
前記通信情報において前記サーバ固有属性名で属性が指定された入力データが要求されているとき、前記属性管理テーブルを参照して前記入力データの前記サーバ固有属性名に対応付けられている前記共有属性名を取得し、前記データ記憶手段において取得した前記共有属性名に対応付けて登録されている前記出力データを前記入力データとして設定する第２の連携手段と、
として機能させるプログラムを格納したコンピュータ読み取り可能な記録媒体。
【０２００】
（付記１５）  クライアントと複数のサーバとの間で受け渡される通信情報を中継するデータ中継方法において、
記憶手段が、前記通信情報に含まれ、前記サーバ同士で連携されるデータの属性を示す共有属性名に関連付けて、前記共有属性名と同じ属性を示す名称として前記サーバそれぞれで定義されたサーバ固有属性名が登録された属性管理テーブルを記憶し、
第１の連携手段が、前記通信情報に前記サーバ固有属性名で属性が指定された出力データが含まれているとき、前記通信情報に含まれ、前記サーバ同士で連携されるデータの属性を示す共有属性名に関連付けて、前記共有属性名と同じ属性を示す名称として前記サーバそれぞれで定義されたサーバ固有属性名が登録された属性管理テーブルを参照して前記出力データの前記サーバ固有属性名と対応付けられている前記共有属性名を取得し、取得した前記共有属性名と前記出力データとを対応付けてデータ記憶手段に格納し、
第２の連携手段が、前記通信情報において前記サーバ固有属性名で属性が指定された入力データが要求されているとき、前記属性管理テーブルを参照して前記入力データの前記サーバ固有属性名に対応付けられている前記共有属性名を取得し、前記データ記憶手段において取得した前記共有属性名に対応付けて登録されている前記出力データを前記入力データとして設定する、
ことを特徴とするデータ中継方法。
【図面の簡単な説明】
【０２０１】
【図１】本発明の第１の実施の形態の原理構成図である。
【図２】本発明を適用した第１の実施の形態のデータ中継サーバが接続されたネットワークの構成例を示す図である。
【図３】本実施の形態に用いるデータ中継サーバのハードウェア構成例を示す図である。
【図４】第１の実施の形態のデータ中継サーバの機能を示す機能ブロック図である。
【図５】属性管理テーブルのデータ構成例を示す図である。
【図６】クライアントがデータ中継サーバを介して連携元ＷＷＷサーバからページデータを取得する際のシーケンス図である。
【図７】連携元ＷＷＷサーバから送られる連携メタデータの一例を示す図である。
【図８】クライアントからの表示画面要求の一例を示す図である。
【図９】連携元中継処理部のデータ記憶部に格納されるデータの構成例を示す図である。
【図１０】ドラッグ用スクリプトが付加されたページデータの一例を示す図である。
【図１１】クライアントの画面に表示される連携元画面の構成例を示す図である。
【図１２】クライアントがデータ中継サーバを介して連携先ＷＷＷサーバからページデータを取得する際のシーケンス図である。
【図１３】連携先ＷＷＷサーバから送られる連携メタデータの一例を示す図である。
【図１４】連携先中継処理部のデータ記憶部に格納されるデータの構成例を示す図である。
【図１５】ドロップ用スクリプトが付加されたページデータの一例を示す図である。
【図１６】クライアントの画面に表示される連携先画面の構成例を示す図である。
【図１７】連携元中継処理部と連携先中継処理部との連携処理を示すシーケンス図である。
【図１８】クライアントから出力される連携要求の一例を示す図である。
【図１９】連携元中継処理部のマッピング処理部による処理結果の一例を示す図である。
【図２０】連携先中継処理部のデータ設定部によってデータ記憶部に格納されるデータの一例を示す図である。
【図２１】ドラッグ＆ドロップによる連携によって更新された連携先画面の構成例を示す図である。
【図２２】本発明の第２の実施の形態の原理構成図である。
【図２３】本発明を適用した第２の実施の形態のデータ中継サーバが接続されたネットワークの構成例を示す図である。
【図２４】第２の実施の形態のデータ中継サーバの機能を示す機能ブロック図である。
【図２５】クライアントがデータ中継サーバを介して連携元ＷＷＷサーバからページデータを取得する際のシーケンス図である。
【図２６】連携元ＷＷＷサーバから送られる連携メタデータの一例を示す図である。
【図２７】連携元中継処理部のデータ記憶部に格納されるデータの構成例を示す図である。
【図２８】クライアントの画面に表示される連携元画面の構成例を示す図である。
【図２９】ユーザによって入力されたデータを含むリクエスト文字列の一例を示す図である。
【図３０】マッピングデータ記憶部に格納されるデータの一例を示す図である。
【図３１】クライアントがデータ中継サーバを介して連携先ＷＷＷサーバからページデータを取得する際のシーケンス図である。
【図３２】連携先ＷＷＷサーバから送られる連携メタデータの一例を示す図である。
【図３３】連携先中継処理部によってマッピング処理されたデータの一例を示す図である。
【図３４】クライアントの画面に表示される連携先画面の構成例を示す図である。
【図３５】本実施の形態の変形例のデータ中継サーバを用いたＷＷＷサーバの連携を示す図である。
【図３６】本実施の形態の変形例の中継サーバが有する属性管理テーブルの構成例を示す図である。
【図３７】従来のＷＷＷサーバの連携例を示す図である。
【符号の説明】
【０２０２】
Ｔ１，１１０，２１０  属性管理テーブル
１，２，１００，２００，２００ａ  データ中継サーバ
１ａ，２ａ  記憶手段
１ｂ，２ｂ  第１の連携手段
１ｃ，２ｃ  第２の連携手段
１ｄ，２ｄ  データ記憶手段
１１ａ，１５ａ  出力データ
２１，４００  クライアント
２２ａ，２２ｂ，２２ｃ  サーバ
３１０，３２０  ＷＷＷサーバ
６０，７０，８０，９０  ページデータ
６１，７１，８１，９１  連携メタデータ
６２  ドラッグ用スクリプト
７２  ドロップ用スクリプト
１２０，２２０  連携元中継処理部
１３０，２３０  連携先中継処理部
２４０  マッピングデータ記憶部
【図１】
2005250781.tif 000003
【図２】
2005250781.tif 000004
【図３】
2005250781.tif 000005
【図４】
2005250781.tif 000006
【図５】
2005250781.tif 000007
【図６】
2005250781.tif 000008
【図７】
2005250781.tif 000009
【図８】
2005250781.tif 000010
【図９】
2005250781.tif 000011
【図１０】
2005250781.tif 000012
【図１１】
2005250781.tif 000013
【図１２】
2005250781.tif 000014
【図１３】
2005250781.tif 000015
【図１４】
2005250781.tif 000016
【図１５】
2005250781.tif 000017
【図１６】
2005250781.tif 000018
【図１７】
2005250781.tif 000019
【図１８】
2005250781.tif 000020
【図１９】
2005250781.tif 000021
【図２０】
2005250781.tif 000022
【図２１】
2005250781.tif 000023
【図２２】
2005250781.tif 000024
【図２３】
2005250781.tif 000025
【図２４】
2005250781.tif 000026
【図２５】
2005250781.tif 000027
【図２６】
2005250781.tif 000028
【図２７】
2005250781.tif 000029
【図２８】
2005250781.tif 000030
【図２９】
2005250781.tif 000031
【図３０】
2005250781.tif 000032
【図３１】
2005250781.tif 000033
【図３２】
2005250781.tif 000034
【図３３】
2005250781.tif 000035
【図３４】
2005250781.tif 000036
【図３５】
2005250781.tif 000037
【図３６】
2005250781.tif 000038
【図３７】
2005250781.tif 000039