(57)【要約】      （修正有）【課題】ウェブ・アプリケーション内の２つのコンポーネントが互いに接続できるかどうかを、ユーザが迅速に、しかも容易に知ることができる手法を提供する。【解決手段】ウェブ・アプリケーション内のコンポーネント同士を接続するに際してコンポーネントの接続先候補を提示するための方法、コンピュータ・システム及びそのコンピュータ・プログラムを提供する。該方法は、少なくとも２のコンポーネントを表示装置上に表示するステップ４０１と、上記少なくとも２のコンポーネントのうちの１つのコンポーネント（第１のコンポーネント）においてタグ（第１のタグ）のうちの少なくとも１つをユーザに選択することを許すステップ４０４と、上記選択された第１のタグと同じタグを有する第２のコンポーネントを特定するステップ４０７と、上記特定された第２のコンポーネントをユーザに提示するステップ４０８とを含む。【選択図】図４Ａ
2010176195.tif 000002
【特許請求の範囲】
【請求項１】
ウェブ・アプリケーション内のコンポーネント同士を接続するに際してコンポーネントの接続先候補を提示するための方法であって、
少なくとも２のコンポーネントを表示装置上に表示するステップであって、前記各コンポーネントは、コンポーネント同士を接続するために利用するタグがコンポーネントのプロパティに付与されている、前記表示するステップと、
前記少なくとも２のコンポーネントのうちの１つのコンポーネント（以下、第１のコンポーネント）においてタグ（以下、第１のタグ）のうちの少なくとも１つをユーザに選択することを許すステップであって、前記第１のタグは、前記第１のコンポーネント以外のコンポーネント（以下、第２のコンポーネント）のプロパティに付与されたタグ（以下、第２のタグ）が、前記第１のコンポーネントに収集されたものである、前記許すステップと、
前記選択された第１のタグと同じタグを有する第２のコンポーネントを特定するステップと、
前記特定された第２のコンポーネントを提示するステップと
を含む、前記方法。
【請求項２】
前記許すステップが、
前記少なくとも２のコンポーネントのうちの１つ（第１のコンポーネント）を選択することを許すステップと、
前記選択されたコンポーネント（第１のコンポーネント）以外の第２のコンポーネントから第２のタグを収集するステップと、
前記収集された第２のタグを、前記選択されたコンポーネント（第１のコンポーネント）上で第１のタグとして表示するステップと
をさらに含む。
【請求項３】
前記許すステップが、
コンポーネントの接続編集モードの起動に応じて、コンポーネントごとに、プロパティ、イベント又はそれらの組み合わせを表示するステップをさらに含む、請求項１に記載の方法。
【請求項４】
前記許すステップが、
ユーザによる第１のタグの表示要求に応じて、前記第１のタグを表示するステップをさらに含む、請求項１に記載の方法。
【請求項５】
前記第１のタグの表示要求がユーザによるイベントの選択である、請求項４に記載の方法。
【請求項６】
前記許すステップが、前記第１のタグの一覧をリストボックスにより前記表示装置上に表示するステップを含む、請求項１に記載の方法。
【請求項７】
前記タグが、型名、プロパティ名、制約、注釈、又はテンプレートである、請求項６に記載の方法。
【請求項８】
前記特定するステップが、前記選択された第１のタグと同じタグを有する第２のコンポーネントに含まれるプロパティを特定するステップをさらに含む、請求項１に記載の方法。
【請求項９】
前記提示するステップが、前記特定された第２のタグを付与された第２のコンポーネントのプロパティをユーザに提示するステップをさらに含む、請求項１に記載の方法。
【請求項１０】
前記選択された第１のタグと前記第２のコンポーネントの各プロパティに付与されたタグとを照合して、類似度を計算するステップ
をさらに含む、請求項１に記載の方法。
【請求項１１】
前記計算された類似度又は該類似度に基づく表示を、前記第２のタグを付与されたプロパティ上に表示するステップ
をさらに含む、請求項１０に記載の方法。
【請求項１２】
前記第１のコンポーネントの出力と該第１のコンポーネントが接続されうる第２のコンポーネントの入力との間のリンク線を前記表示装置上に表示するステップをさらに含む、請求項１に記載の方法。
【請求項１３】
前記第１のコンポーネントの接続アイコン（第１の接続アイコン）を前記第１のコンポーネント上又はその近傍に表示するステップと、
前記選択された第１のタグの一部又は全部と合致することに応じて、該合致した第２のコンポーネントの接続アイコン（第２の接続アイコン）を前記第２のコンポーネント上又はその近傍に表示するステップと
をさらに含む、請求項１に記載の方法。
【請求項１４】
前記第２の接続アイコンを前記第２のコンポーネント上又はその近傍に表示するステップが、前記選択された第１のタグと合致するタグを付与されたプロパティの表示上又はその近傍に表示するステップをさらに含む、請求項１３に記載の方法。
【請求項１５】
前記第１の接続アイコンが前記第２の接続アイコンのうちの１つに接続されることに応じて、前記第１のコンポーネントと、前記第１の接続アイコンが接続された第２の接続アイコンとの間にリンク線を表示するステップをさらに含む、請求項１に記載の方法。
【請求項１６】
前記第１のコンポーネントの操作に応じて、該第１のコンポーネントの出力が接続された前記第２のコンポーネントの入力の情報を変更するステップをさらに含む、請求項１に記載の方法。
【請求項１７】
前記第２のコンポーネントの操作に応じて、該第２のコンポーネントの入力が接続された前記第１のコンポーネントの出力の情報を変更するステップをさらに含む、請求項１に記載の方法。
【請求項１８】
前記コンポーネントがマッシュアップ・コンポーネントである、請求項１に記載の方法。
【請求項１９】
ウェブ・アプリケーション内のコンポーネント同士を接続するに際してコンポーネントの接続先候補を提示するためのコンピュータ・システムであって、
少なくとも２のコンポーネントを表示する表示部であって、前記各コンポーネントは、コンポーネント同士を接続ために利用するタグがコンポーネントのプロパティに付与されている、前記表示部と、
前記少なくとも２のコンポーネントのうちの１つのコンポーネント（以下、第１のコンポーネント）においてタグ（以下、第１のタグ）のうちの少なくとも１つをユーザに選択することを許す許可部であって、前記第１のタグは、前記第１のコンポーネント以外のコンポーネント（以下、第２のコンポーネント）のプロパティに付与されたタグ（以下、第２のタグ）が、前記第１のコンポーネントに収集されたものである、前記許可部と、
前記選択された第１のタグと同じタグを有する第２のコンポーネントを特定する特定部と、
前記特定された第２のコンポーネントをユーザに提示する提示部と
を含む、前記コンピュータ・システム。
【請求項２０】
ウェブ・アプリケーション内のコンポーネント同士を接続するに際してコンポーネントの接続先候補を提示するための方法であって、
少なくとも２のコンポーネントを表示装置上に表示するステップであって、前記各コンポーネントは、前記コンポーネントに関連付けられた属性情報又はトピック名を有する、前記表示するステップと、
前記コンポーネントのうちの１つのコンポーネント（以下、第１のコンポーネント）に関連付けられた属性情報の少なくとも１つ又はトピック名が、前記コンポーネントのうちの他のコンポーネント（以下、第２のコンポーネント）に関連付けられた属性情報又はトピック名の一部又は全部と合致することを判定する判定部と、
前記合致した第２のコンポーネントを提示するステップと
を含む、前記方法。
【請求項２１】
ウェブ・アプリケーション内のコンポーネント同士を接続するに際してコンポーネントの接続先候補を提示するためのコンピュータ・システムであって、
少なくとも２のコンポーネントを表示する表示部であって、前記各コンポーネントは、前記コンポーネントに関連付けられた属性情報又はトピック名を有する、前記表示部と、
前記コンポーネントのうちの１つのコンポーネント（以下、第１のコンポーネント）に関連付けられた属性情報の少なくとも１つ又はトピック名が、前記コンポーネントのうちの他のコンポーネント（以下、第２のコンポーネント）に関連付けられた属性情報又はトピック名の一部又は全部と合致することを判定する判定部と、
前記合致した第２のコンポーネントを提示する提示部と
を含む、前記コンピュータ・システム。
【請求項２２】
コンピュータ・システムに、請求項１〜１８又は２０のいずれか一項に記載の方法の各ステップを実行させるコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ウェブ・アプリケーション内のコンポーネントの接続先候補を提示するための方法、並びにそのコンピュータ・プログラム及びコンピュータ・システムに関する。
【背景技術】
【０００２】
Ｗｅｂ２．０アプリケーションを生成するために、複数のコンポーネントが使用される。ＩＴの専門家ではないビジネスユーザが状況依存型アプリケーションを生成することを可能にするためには、ビジネスユーザがコンポーネントの配置及び接続を行うことができる必要がある。２つのコンポーネントが互いに接続できるかどうかを知ることが困難である状況において、コンポーネントの接続は、ユーザ、特にＩＴの専門家でないユーザにとって簡単ではない。
【０００３】
ｉＧｏｏｇｌｅ（あいぐーぐる）は、グーグル（商標）が提供するウェブ・サービスである。ｉＧｏｏｇｌｅでは、ユーザは、Ｇｏｏｇｌｅのトップページに最新のニュース又は天気などを自由に追加することが可能である（下記非特許文献１を参照）。ユーザは、例えば、コンポーネントを一覧から選択したり、又は、コンポーネントの設定を編集したりすることによって、様々なコンポーネントを自分専用のＧｏｏｇｌｅのトップページ上に追加することが可能である。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】ｉＧｏｏｇｌｅ、インターネット〈URL：http://www.google.co.jp/help/ig/product/〉
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ウェブ・アプリケーション内のコンポーネント同士を接続できるかどうかは、コンポーネントを見ている限り不明である。そこで、ウェブ・アプリケーション内の２つのコンポーネントが互いに接続できるかどうかを、ユーザが迅速に、しかも容易に知ることができる手法を提供する。
【課題を解決するための手段】
【０００６】
本発明は、ウェブ・アプリケーション内のコンポーネント同士を接続するに際してコンポーネントの接続先候補を提示するための方法を提供する。該方法は、コンピュータ・システムに下記ステップを実行させる。該ステップは、
少なくとも２のコンポーネントを表示装置上に表示するステップであって、上記各コンポーネントは、コンポーネント同士を接続するために利用するタグがコンポーネントのプロパティに付与されている、上記表示するステップと、
上記少なくとも２のコンポーネントのうちの１つのコンポーネント（第１のコンポーネント）においてタグ（第１のタグ）のうちの少なくとも１つをユーザに選択することを許すステップであって、上記第１のタグは、上記第１のコンポーネント以外のコンポーネント（第２のコンポーネント）のプロパティに付与されたタグ（第２のタグ）が、上記第１のコンポーネントに収集されたものである、上記許すステップと、
上記選択された第１のタグと同じタグを有する第２のコンポーネントを特定するステップと、
上記特定された第２のコンポーネントを提示するステップと
を含む。
【０００７】
本発明の１つの実施態様では、上記許すステップが、
上記少なくとも２のコンポーネントのうちの１つ（第１のコンポーネント）を選択することを許すステップと、
上記選択されたコンポーネント（第１のコンポーネント）以外の第２のコンポーネントから第２のタグを収集するステップと、
上記収集された第２のタグを、上記選択されたコンポーネント（第１のコンポーネント）上で第１のタグとして表示するステップと
をさらに含む
【０００８】
本発明の１つの実施態様では、上記許すステップが、コンポーネントの接続編集モードの起動に応じて、コンポーネントごとに、プロパティ、イベント又はそれらの組み合わせを表示するステップをさらに含む。
【０００９】
本発明の１つの実施態様では、上記許すステップが、ユーザによる第１のタグの表示要求に応じて、上記第１のタグを表示するステップをさらに含む。
【００１０】
本発明の１つの実施態様では、上記第１のタグの表示要求がユーザによるイベントの選択である。
【００１１】
本発明の１つの実施態様では、上記許すステップが、上記第１のタグの一覧をリストボックスにより上記表示装置上に表示するステップを含む。
【００１２】
本発明の１つの実施態様では、上記タグが、型名、プロパティ名、制約、注釈、又はテンプレートである。
【００１３】
本発明の１つの実施態様では、上記特定するステップが、上記選択された第１のタグを同じタグを有する第２のコンポーネントに含まれるプロパティを特定するステップをさらに含む。
【００１４】
本発明の１つの実施態様では、上記提示するステップが、上記特定された第２のタグを付与された第２のコンポーネントのプロパティをユーザに提示するステップをさらに含む。
【００１５】
本発明の１つの実施態様では、上記方法は、上記コンピュータ・システムに下記ステップをさらに実行させる。該ステップは、上記選択された第１のタグと上記第２のコンポーネントの各プロパティに付与されたタグとを照合して、類似度を計算するステップを含む。
【００１６】
本発明の１つの実施態様では、上記方法は、上記コンピュータ・システムに下記ステップをさらに実行させる。該ステップは、上記計算された類似度又は該類似度に基づく表示を、上記第２のタグを付与されたプロパティ上に表示するステップを含む。
【００１７】
本発明の１つの実施態様では、上記方法は、上記コンピュータ・システムに下記ステップをさらに実行させる。該ステップは、上記第１のコンポーネントの出力と該第１のコンポーネントが接続されうる第２のコンポーネントの入力との間のリンク線を上記表示装置上に表示するステップを含む。
【００１８】
本発明の１つの実施態様では、上記方法は、上記コンピュータ・システムに下記ステップをさらに実行させる。該ステップは、
上記第１のコンポーネントの接続アイコン（第１の接続アイコン）を上記第１のコンポーネント上又はその近傍に表示するステップと、
上記選択された第１のタグの一部又は全部と合致することに応じて、該合致した第２のコンポーネントの接続アイコン（第２の接続アイコン）を上記第２のコンポーネント上又はその近傍に表示するステップと
を含む。
【００１９】
本発明の１つの実施態様では、上記方法は、上記コンピュータ・システムに下記ステップをさらに実行させる。該ステップは、上記第２の接続アイコンを上記第２のコンポーネント上又はその近傍に表示するステップが、上記選択された第１のタグと合致するタグを付与されたプロパティの表示上又はその近傍に表示するステップを含む。
【００２０】
本発明の１つの実施態様では、上記方法は、上記コンピュータ・システムに下記ステップをさらに実行させる。該ステップは、上記第１の接続アイコンが上記第２の接続アイコンのうちの１つに接続されることに応じて、上記第１のコンポーネントと、上記第１の接続アイコンが接続された第２の接続アイコンとの間にリンク線を表示するステップを含む。
【００２１】
本発明の１つの実施態様では、上記方法は、上記コンピュータ・システムに下記ステップをさらに実行させる。該ステップは、上記第１のコンポーネントの操作に応じて、該第１のコンポーネントの出力が接続された上記第２のコンポーネントの入力の情報を変更するステップを含む。
【００２２】
本発明の１つの実施態様では、上記方法は、上記コンピュータ・システムに下記ステップをさらに実行させる。該ステップは、上記第２のコンポーネントの操作に応じて、該第２のコンポーネントの入力が接続された上記第１のコンポーネントの出力の情報を変更するステップを含む。
【００２３】
本発明の１つの実施態様では、上記コンポーネントがマッシュアップ・コンポーネントである。
【００２４】
本発明はまた、ウェブ・アプリケーション内のコンポーネント同士を接続するに際してコンポーネントの接続先候補を提示するためのコンピュータ・システムを提供する。該コンピュータ・システムは、
少なくとも２のコンポーネントを表示する表示部であって、上記各コンポーネントは、コンポーネント同士を接続ために利用するタグがコンポーネントのプロパティに付与されている、上記表示部と、
上記少なくとも２のコンポーネントのうちの１つのコンポーネント（第１のコンポーネント）においてタグ（第１のタグ）のうちの少なくとも１つをユーザに選択することを許す許可部であって、上記第１のタグは、上記第１のコンポーネント以外のコンポーネント（第２のコンポーネント）のプロパティに付与されたタグ（第２のタグ）が、上記第１のコンポーネントに収集されたものである、上記許可部と、
上記選択された第１のタグと同じタグを有する第２のコンポーネントを特定する特定部と、
上記特定された第２のコンポーネントをユーザに提示する提示部と
を含む。
【００２５】
本発明の１つの実施態様では、上記許可部がさらに、
上記少なくとも２のコンポーネントのうちの１つ（第１のコンポーネント）を選択することを許し、
上記選択されたコンポーネント（第１のコンポーネント）以外の第２のコンポーネントから第２のタグを収集し、
上記収集された第２のタグを、上記選択されたコンポーネント（第１のコンポーネント）上で第１のタグとして表示する。
【００２６】
本発明の１つの実施態様では、上記許可部がさらに、コンポーネントの接続編集モードの起動に応じて、コンポーネントごとに、プロパティ、イベント又はそれらの組み合わせを表示する。
【００２７】
本発明の１つの実施態様では、上記許可部がさらに、ユーザによる第１のタグの表示要求に応じて、上記第１のタグを表示する。
【００２８】
本発明の１つの実施態様では、上記許可部がさらに、上記第１のタグの一覧をリストボックスにより上記表示装置上に表示する。
【００２９】
本発明の１つの実施態様では、上記特定部がさらに、上記選択された第１のタグと同じタグを有する第２のコンポーネントに含まれるプロパティを特定する。
【００３０】
本発明の１つの実施態様では、上記提示部がさらに、上記特定された第２のタグを付与された第２のコンポーネントのプロパティをユーザに提示する。
【００３１】
本発明の１つの実施態様では、上記コンピュータ・システムは、上記選択された第１のタグと上記第２のコンポーネントの各プロパティに付与されたタグとを照合して、類似度を計算する計算部をさらに含む。
【００３２】
本発明の１つの実施態様では、上記表示部はさらに、上記計算された類似度又は該類似度に基づく表示を、上記第２のタグを付与されたプロパティ上に表示する。
【００３３】
本発明の１つの実施態様では、上記表示部はさらに、上記第１のコンポーネントの出力と該第１のコンポーネントが接続されうる第２のコンポーネントの入力との間のリンク線を上記表示装置上に表示する。
【００３４】
本発明の１つの実施態様では、上記表示部はさらに、
上記第１のコンポーネントの接続アイコン（第１の接続アイコン）を上記第１のコンポーネント上又はその近傍に表示し、及び
上記選択された第１のタグの一部又は全部と合致することに応じて、該合致した第２のコンポーネントの接続アイコン（第２の接続アイコン）を上記第２のコンポーネント上又はその近傍に表示する。
【００３５】
本発明の１つの実施態様では、上記表示部はさらに、上記第２の接続アイコンを上記第２のコンポーネント上又はその近傍に表示するステップが、上記選択された第１のタグと合致するタグを付与されたプロパティの表示上又はその近傍に表示する。
【００３６】
本発明の１つの実施態様では、上記表示部はさらに、上記第１の接続アイコンが上記第２の接続アイコンのうちの１つに接続されることに応じて、上記第１のコンポーネントと、上記第１の接続アイコンが接続された第２の接続アイコンとの間にリンク線を表示する。
【００３７】
本発明の１つの実施態様では、上記コンピュータ・システムは、上記第１のコンポーネントの操作に応じて、該第１のコンポーネントの出力が接続された上記第２のコンポーネントの入力の情報を変更する変更部を含む。
【００３８】
本発明の１つの実施態様では、上記変更部はさらに、上記第２のコンポーネントの操作に応じて、該第２のコンポーネントの入力が接続された上記第１のコンポーネントの出力の情報を変更する。
【００３９】
本発明はまた、ウェブ・アプリケーション内のコンポーネント同士を接続するに際してコンポーネントの接続先候補を提示するための方法を提供する。該方法は、コンピュータ・システムに下記ステップを実行させる。該ステップは、
少なくとも２のコンポーネントを表示装置上に表示するステップであって、上記各コンポーネントは、上記コンポーネントに関連付けられた属性情報又はトピック名を有する、上記表示するステップと、
上記コンポーネントのうちの１つのコンポーネント（第１のコンポーネント）に関連付けられた属性情報の少なくとも１つ又はトピック名が、上記コンポーネントのうちの他のコンポーネント（第２のコンポーネント）に関連付けられた属性情報又はトピック名の一部又は全部と合致することを判定する判定部と、
上記合致した第２のコンポーネントを提示するステップと
を含む。
【００４０】
本発明はまた、ウェブ・アプリケーション内のコンポーネント同士を接続するに際してコンポーネントの接続先候補を提示するためのコンピュータ・システムを提供する。該コンピュータ・システムは、
少なくとも２のコンポーネントを表示する表示部であって、上記各コンポーネントは、上記コンポーネントに関連付けられた属性情報又はトピック名を有する、上記表示部と、
上記コンポーネントのうちの１つのコンポーネント（第１のコンポーネント）に関連付けられた属性情報の少なくとも１つ又はトピック名が、上記コンポーネントのうちの他のコンポーネント（第２のコンポーネント）に関連付けられた属性情報又はトピック名の一部又は全部と合致することを判定する判定部と、
上記合致した第２のコンポーネントを提示する提示部と
を含む。
【００４１】
本発明はまた、コンピュータ・システムに、上記方法のいずれか１つに記載の各ステップを実行させるコンピュータ・プログラムを提供する。
【発明の効果】
【００４２】
本発明の実施態様に従うと、ユーザは、ウェブ・アプリケーション内の２つのコンポーネントが互いに接続できるかどうかを視覚的に確認することが可能である。また、該接続によって、２つのコンポーネントが連携して動作するようになる。
【図面の簡単な説明】
【００４３】
【図１】ウェブ・アプリケーション内のコンポーネントの例を示す。
【図２】ウェブ・アプリケーション内にコンポーネントを追加する例を示す。
【図３Ａ】本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【図３Ｂ】本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【図３Ｃ】本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【図３Ｄ】本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【図３Ｅ】本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【図３Ｆ】本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【図３Ｇ】本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【図３Ｈ】本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【図３Ｉ】本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【図４Ａ】本発明の実施態様である、コンポーネント同士を接続するに際してコンポーネントの接続先候補を提示する方法のフローチャートを示す。
【図４Ｂ】本発明の実施態様である、タグの類似度を計算する方法のフローチャートを示す。
【図５】本発明の実施態様である、タグを使用してソース・コンポーネントの接続先の候補を絞り込む方法を示す。
【図６】本発明の実施態様である、複数のタグを使用してソース・コンポーネントの接続先の候補を絞り込む方法を示す。
【図７Ａ】本発明の実施態様である、テンプレートを使用して、ターゲット・コンポーネントからソース・コンポーネントに接続する方法を示す。
【図７Ｂ】本発明の実施態様である、テンプレートを使用して、ターゲット・コンポーネントからソース・コンポーネントに接続する方法を示す。
【図８Ａ】本発明の別の実施態様である、属性情報を使用してソース・コンポーネントの接続先の候補を絞り込む態様を示す。
【図８Ｂ】一見してソース・コンポーネントが接続しうるように見える、全ての接続先候補の全てのプロパティを示す。
【図８Ｃ】本発明の別の実施態様である、ソース・コンポーネントの接続先の候補が、ある程度絞り込まれた様子を示す。
【図９】本発明の実施態様である、ウェブ・アプリケーションを実行するために必要なコンピュータ・システムの構成図を示す。
【図１０】本発明の実施態様における、図１０に示したコンピュータ・システムのブロック図を示す。
【発明を実施するための形態】
【００４４】
本発明の実施態様において、「コンポーネント」とは、ウェブ・アプリケーション内で利用できる小さなアプリケーションである。コンポーネントは、ウィジェット又はガジェットとも呼ばれる。コンポーネントは、ウェブ・アプリケーション内で一つのウィンドウとして表示される。ウェブ・アプリケーションは、複数のコンポーネントを含む。複数のコンポーネントのそれぞれは、典型的には、異なるＵＲＬからのウェブ・サービスによって提供される。ウェブ・アプリケーションは、複数のウェブ・サービスが集まって、新たなサービスをユーザに提供する。ユーザは、ウェブ・アプリケーション内に、どのコンポーネントを配置するかを決定することができる。ユーザはまた、コンポーネントの配置を変更し、又はコンポーネントを削除し、挿入し、若しくは置換することが可能である。コンポーネントの挿入及び配置の変更は、ウェブ・アプリケーション内の所定の位置へコンポーネントをドラッグすることによって行われる。
【００４５】
本発明の実施態様において、「コンポーネント」は、例えば、「マッシュアップ・コンポーネント」である。マッシュアップとは、複数のコンテンツを複合させて新しいウェブ・サービスを形作ることをいう。コンポーネントは、例えば、製品情報サイトのコンポーネント、天気予報サイトのコンポーネント、検索サイトのコンポーネント、ニュースサイトのコンポーネント、地図サイトのコンポーネント、及び乗り換え案内サイトのコンポーネントを挙げることができるがこれらに限定されない。
【００４６】
本発明の実施態様において、「コンポーネント同士を接続する」とは、ソース・コンポーネントの出力とターゲット・コンポーネントの入力を結びつけることにより、接続されたコンポーネント同士が連携して動作するようにすることである。「接続する」は、ワイヤリング（wiring）ともいう。
【００４７】
本発明の実施態様において、「コンポーネント」は、典型的には、プロパティを含む。「コンポーネント」はまた、イベントを含んでよい。イベントは、例えば、「ボタンを押すこと」、「リストボックスで行を選択すること」を挙げることができるがこれらに限定されない。
【００４８】
本発明の実施態様において、「プロパティ」とは、コンポーネントが持つ、そのコンポーネントの性質を表すデータをいう。例えば、マップ・コンポーネントは、住所（プロパティ名“address”）及び緯度経度（プロパティ名“location”）をプロパティとして持つ。プロパティは、読み取り専用の場合並びに読み取り及び書き込みが可能な場合がある。
【００４９】
本発明の実施態様において、「属性情報」(attribute information)は、コンポーネントのプロパティが付随して持つ付加的な情報である。属性情報は、メタ情報とも呼ばれる。属性情報は、例えば、コンポーネントのプロパティの型（type）、注釈（annotation）若しくは制約（constraint）、又はそれらの組み合わせである。
【００５０】
本発明の実施態様において、「タグ」とは、コンポーネントのプロパティに属性情報を与えるために付与される短い単語又はフレーズである。複数のタグをコンポーネントのプロパティに付与することにより、そのプロパティに対して様々な属性情報を与えることができ、例えば、プロパティの検索又は分類に役立てることができる。「タグ」の記述内容としては、例えば、型名（type name）、プロパティ名（property name）、制約（constraint）、注釈（annotation）、又はテンプレートを記述してよい。ユーザは、これらのタグを任意の個数コンポーネントのプロパティに付与することができる。タグを付与することをタギングともいう。
【００５１】
本発明の実施態様において、「型名」とは、データ型の名前をいう。「型名」は、例えば、整数型の型名“Integer”、文字列型の型名“String”である。型名は、システムに依存する。
【００５２】
本発明の実施態様において、「プロパティ名」とは、プロパティの名前をいう。
【００５３】
本発明の実施態様において、「制約」とは、データの値の取り得る範囲に関する制限をいう。「制約」は、例えば、整数型であれば、例えば、データの値の取り得る範囲を１以上１２以下の整数値に制限するものである。
【００５４】
本発明の実施態様において「注釈」は、注釈を付されたアイテムが何を意味するのかを人間に解る言葉で注釈として表現したものである。
【００５５】
本発明の実施態様において、「テンプレート」とは、制約の一種である。テンプレートは、プロパティが入力として受け付けるデータのパターンを表現する。テンプレートを使用することによって、該テンプレートの情報を基にそのプロパティが要求する形式にマッチする入力データを組み立てることが可能である。例えば、アドレスが、“市名（city）”、“，”及び“州（state）”であることを定義する。テンプレートは、例えば、[<city>,<state>]である。
【００５６】
「トピック名」は、送信（Publish）／受信（Subscribe）型通信を行うコンポーネントにおいて、コンポーネントが送信又は受信する宛先の名前である。送信（Publish）／受信（Subscribe）型通信メッセージング機構では、メッセージの送り側（Publisher）が受け取り側を明示的に指定せず、「トピック」に対してメッセージを送信し、該トピックを受信する受信側（Subscriber）がメッセージを受け取ることができるという仕組みである。
【００５７】
本発明の実施態様において、「接続アイコン」とは、ソース・コンポーネントをターゲット・コンポーネントに接続するためのアイコンである。
ソース・コンポーネントの接続アイコン（接続元アイコン）は、ターゲット・コンポーネントに接続しうることを示すアイコンである。ソース・コンポーネントの接続アイコンは、例えば、プラグ・アイコンである。
ターゲット・コンポーネントの接続アイコン（接続先アイコン）は、ソース・コンポーネントに接続されうることを示すアイコンである。ターゲット・コンポーネントの接続アイコンは、例えば、ソケット・アイコンである。
接続元アイコンは、接続先アイコンに接続できるように、変形しうる。該変形は、例えば、接続元アイコンのケーブル部分が延長して表示される。
【００５８】
本発明の実施態様において、「リンク線」は、ソース・コンポーネントの出力プロパティと、該ソース・コンポーネントが接続されうるターゲット・コンポーネントの入力プロパティとの間を結ぶために表示される。
【００５９】
以下、図面に従って、本発明の実施態様を説明する。本実施態様は、本発明の好適な態様を説明するためのものであり、本発明の範囲をここで示すものに限定する意図はないことを理解されたい。また、以下の図を通して、特に断らない限り、同一の符号は、同一の対象を指す。
【００６０】
図１は、ウェブ・アプリケーション内のコンポーネントの例を示す。
ウェブ・アプリケーション（１０１）は、複数のコンポーネント（１０２〜１０７）を含む。
ウェブ・アプリケーション（１０１）は、ウェブ・ブラウザ上で動作するアプリケーション・ソフトウェアである。
各コンポーネント（１０２〜１０７）は、ウェブ・アプリケーション（１０１）内の１つのウィンドウに表示される小さなアプリケーションである。
図１のウェブ・アプリケーション（１０１）は、検索ボックス・コンポーネント（１０２）、天気用予報コンポーネント（１０３）、写真コンポーネント（１０４）、ニュース・コンポーネント（１０５）、マップ・コンポーネント（１０６）及びTIPS&Solutionsコンポーネント（１０７）を含む。
【００６１】
図２は、ウェブ・アプリケーション内にコンポーネントを追加する例を示す。
ユーザは、ウェブ・アプリケーション（２０１）内にコンポーネントを追加することができる。コンポーネントは、例えば、利用可能なコンポーネント一覧としてウェブ・ページ内に配置されている。ユーザは、マウス等の入力デバイスを使用して、ウェブ・アプリケーション（２０１）内に追加するコンポーネント（２０２）をコンポーネント一覧の中から選択してドラッグし、該ドラッグしたコンポーネントをウェブ・アプリケーション（２０１）内においてドロップすることによって、コンポーネントを追加することができる。
図２は、検索ボックス・コンポーネント（２０２）がウェブ・アプリケーション（２０１）内に追加される態様を示す。
【００６２】
図３Ａ〜図３Ｉは、本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【００６３】
図３Ａは、ウェブ・アプリケーション（３０１）が６つのコンポーネントＡ〜Ｆ（３０２〜３０７）を含むことを示す。ブラウザは、所謂、表示モードで上記コンポーネントＡ〜Ｆ（３０２〜３０７）を表示している。ユーザは、コンポーネント同士を接続するに際して、表示モードをワイヤリング編集モードに切り替える。モードの切り替えは、例えば、メニュー表示において、表示モードをワイヤリング編集モードに切り替えることによって行われる。
【００６４】
図３Ｂは、ワイヤリング編集モードに切り替えた際のブラウザの表示例を示す。コンポーネントＡ〜Ｄ（３０２〜３０５）は、プロパティ及びイベントを持つ。コンポーネントＥ（３０６）は、プロパティのみを持つ。コンポーネントＦ（３０７）は、イベントのみを持つ。コンポーネントＡ〜Ｆ（３０２〜３０７）の各ウィンドウ上に、プロパティ名、イベント名又はそれらの組み合わせがポップアップで表示されている。図３Ｂ〜図３Ｉに示す例では、イベントが発生したときに、イベントが発生したコンポーネントから他のコンポーネントにどのようなデータが送信されるかはイベントごとに決まっていることを前提にして、以下に説明する。
なお、現時点で、どのコンポーネントがソース・コンポーネントであるか又はターゲット・コンポーネントであるかは決まっていない。例えば、ユーザが或るコンポーネントのイベントを選択することによって、該イベントを含むコンポーネントがソース・コンポーネントとなり、その他のコンポーネントがターゲット・コンポーネントとなる。但し、図３Ｂの例では、コンポーネントＥ（３０６）はイベントを含まないので、ソース・コンポーネントになりえない。
【００６５】
図３Ｃは、タグの一覧を表示する例を示す。ユーザは、コンポーネントＣ（３０４）のイベント２の表示上で、例えばマウスを右クリックする。該クリックに応じて、コンポーネントＣ（３０４）以外のコンポーネントＡ〜Ｂ及びＤ〜Ｆ（３０２〜３０３及び３０５〜３０７）の各プロパティに付与されているタグが動的に収集される。なお、コンポーネントＦ（３０７）はプロパティを持たないので、コンポーネントＦ（３０７）からタグは収集されない。
上記収集されたタグＸ、Ｙ及びＺが、コンポーネントＣ（３０４）に関連付けられる。収集されたタグの一覧が、コンポーネントＣ（３０４）のイベントに関連付けて表示される（３０８）。なお、ここで注意すべきことは、コンポーネントＣ（３０４）が持つプロパティに付与されたタグは、上記動的に収集されたタグとは無関係である。すなわち、ソース・コンポーネントとなるコンポーネント（この例では、コンポーネントＣ（３０４））のプロパティに付与されたタグは、接続先候補であるターゲット・コンポーネントを提示する際にタグを収集する上で関係ない。
【００６６】
図３Ｄは、ユーザがタグＸを選択し、その結果、タグＸを含むプロパティが特定された例を示す。ユーザが、タグの一覧からタグＸを選択したとする。タグＸの選択に応じて、タグＸのみを含むプロパティは、その表示が例えばイタリック且つ下線付きで示される。また、タグＸと他のタグを含むプロパティは、その表示が例えば下線付きで示される。タグＸを含まないプロパティは、その表示に変更はない。このように、例えばプロパティの表示を変更することによって、コンポーネントＣ（３０４）上でユーザによって選択されたタグＸを含むターゲット・コンポーネント上のプロパティが特定される。そして、コンポーネントＣ（３０４）は、該特定されたプロパティを含むコンポーネントと接続しうる。
ここで、図３Ｄでは、コンポーネントＡ（３０２）のプロパティ１はタグＹ及びタグＺを付与されており、同プロパティ２はタグＸを付与されており、並びに同プロパティ３はタグＸ及びタグＹが付与されているとする。図３Ｄでは、ポップアップで各プロパティに付与されたタグを示しているが、該表示は説明を容易にするためのものであって、通常タグの内容は表示されない。コンポーネントＡ（３０２）のプロパティ２は選択されたタグＸのみを含むので、イタリック且つ下線付きで示されている。また、コンポーネントＡ（３０２）のプロパティ３は選択されたタグＸ及びタグＹを含むので、下線付きで示されている。しかし、コンポーネントＡ（３０２）のプロパティ１はタグＸを含まないので、その表示は変更されない。
【００６７】
図３Ｅは、ユーザがタグＹを選択し、その結果、タグＹを含むプロパティが特定された例を示す。ユーザは、コンポーネントＣ（３０４）のイベント２の表示上で、例えばマウスを右クリックする。コンポーネントＣ（３０４）以外のコンポーネントＡ〜Ｂ及びＤ〜Ｆ（３０２〜３０３及び３０５〜３０７）の各プロパティに付与されているタグはすでに収集されているので、この場合タグは動的に収集されない。右クリックに応じて、収集されたタグの一覧が、コンポーネントＣ（３０４）のイベント２に関連付けて表示される（３０８）。
ユーザが、タグの一覧からタグＹを選択したとする。タグＹの選択に応じて、タグＹのみを含むプロパティは、その表示が例えばイタリック且つ下線付きで示される。また、タグＹと他のタグを含むプロパティは、その表示が例えば下線付きで示される。タグＹを含まないプロパティは、その表示に変更はない。このように、例えばプロパティの表示を変更することによって、コンポーネントＣ（３０４）において選択されたタグＹを含むターゲット・コンポーネント上のプロパティが特定される。そして、コンポーネントＣ（３０４）は、該特定されたプロパティを含むコンポーネントと接続しうる。
【００６８】
図３Ｆは、ソース・コンポーネントのイベントと、特定されたプロパティとを接続する例を示す。ユーザはソース・コンポーネントであるコンポーネントＣ（３０４）のイベント２の表示（例えば、アイコン）をマウス等でドラッグしながら、図３Ｅで説明したようにタグＹを含むと特定されたコンポーネントＥ（３０６）のプロパティ１へ接続する。上記ドラッグに応じて、イベント２とコンポーネントＥ（３０６）のプロパティ１との間にリンク線が表示される。上記接続によって、コンポーネントＣ（３０４）のイベント２とコンポーネントＥ（３０６）のプロパティ１とが接続される。従って、コンポーネントＣ（３０４）のイベント２の発生によって、イベント２に関連付けられたデータがコンポーネントＥ（３０６）に送られ、該データに基づく情報がコンポーネントＥ（３０６）上に表示される。例えば、コンポーネントＣ（３０４）が住所録のコンポーネントであり、コンポーネントＥ（３０６）が名刺カードのコンポーネントであり、住所録のコンポーネントＣ（３０４）の氏名の欄のユーザによる選択がイベントである場合について説明する。ユーザが、コンポーネントＣ（３０４）の氏名の欄を選択する。該選択がイベントであるので、該選択に応じて、該イベントに関連付けられたユーザ・データがコンポーネントＣ（３０４）からコンポーネントＥ（３０６）に送信される。コンポーネントＥ（３０６）では、該ユーザ・データを受信し、該受信したユーザ・データに対応する詳細情報を表示する。
【００６９】
図３Ｇは、図３Ｆで説明した接続が完了したことを示す図である。コンポーネントＣ（３０４）のイベント２とコンポーネントＥ（３０６）のプロパティ１との間にリンク線が表示されている。ユーザは、ワイヤリング編集モードを終了するために、メニュー表示において、ワイヤリング編集モードを表示モードに切り替える。
【００７０】
図３Ｈは、ワイヤリング編集モードから表示モードに切り替えたブラウザの画面を示す。図３Ｈの画面は図３Ａの画面と何ら変わりない。しかし、図３Ｈでは、コンポーネントＣ（３０４）とコンポーネントＥ（３０６）が接続されているので、コンポーネントＣ（３０４）でイベント２が発生すると、それに応じてコンポーネントＥ（３０６）が動作する。
【００７１】
図３Ｉは、再び、表示モードをワイヤリング編集モードに切り替えたブラウザの画面を示す。ワイヤリング編集モードでは、コンポーネントＣ（３０４）とコンポーネントＥの接続を確認することができる。すなわち、コンポーネントＣ（３０４）とコンポーネントＥ（３０６）の接続は維持されている。
【００７２】
図４Ａは、本発明の実施態様である、コンポーネント同士を接続するに際してコンポーネントの接続先候補を提示する方法のフローチャートを示す。
ステップ４０１では、コンピュータ・システムは、複数のコンポーネントをウェブ・アプリケーション内に表示する。コンポーネントは、例えば、ネットワークを介して該コンピュータ・システムの記憶装置内に格納される。各コンポーネントのプロパティには、タグが付与されている。タグの付与は、ワイヤリング編集を行うコンピュータ・システムと同じコンピュータ上で行われていてもよく又は異なるコンピュータ・システム上で行われていてもよい。
ステップ４０２では、コンピュータ・システムは、ユーザからの、表示モードからワイヤリング編集モードへの切り替えを受け付ける。該切り替えに応じて、処理はステップ４０３に進む。
ステップ４０３では、上記切り替えに応じて、コンポーネント上に、該コンポーネントが持つプロパティ、イベント、又はそれぞれの組み合わせを表示する。
ステップ４０４では、コンピュータ・システムは、ユーザがコンポーネント上に表示されたイベントを選択することを許す。
ステップ４０５では、コンピュータ・システムは、上記選択に応じて、該イベントを持つコンポーネント以外のコンポーネントのプロパティからタグを収集する。
ステップ４０６では、コンピュータ・システムは、該収集したタグを上記選択されたイベントの表示近傍にタグの一覧として表示する。ユーザは、該一覧からタグを選択することが可能である。
ステップ４０７では、コンピュータ・システムは、上記選択されたタグと同じタグを持つ他のコンポーネントのプロパティを特定する。
ステップ４０８では、コンピュータ・システムは、上記特定されたコンポーネントのプロパティをユーザに視覚的に認識出来るように表示する。コンピュータ・システムは、上記特定されたプロパティの表示を、例えば強調表示したり、色を変更したり、アイコンを表示したりする。
また、任意のステップではあるが、処理はステップ４２１に進み、タグの類似度を計算するようにしてもよい。
ステップ４０９では、コンピュータ・システムは、ユーザの指示によって、ソース・コンポーネントのユーザによって選択されたイベントと、上記特定されたプロパティのうちのユーザによって選択されたプロパティとを接続する。
ステップ４１０では、コンピュータ・システムは、ソース・コンポーネントのユーザによって選択されたイベントと、上記特定されたプロパティのうちのユーザによって選択されたプロパティとの間にリンク線を表示する。
ステップ４１１では、コンピュータ・システムは、ユーザからの、ワイヤリング編集モードから表示モードへの切り替えを受け付ける。該切り替えに応じて、コンピュータ・システムは、ワイヤリング編集モードを終了する。
【００７３】
図４Ｂは、本発明の実施態様である、タグの類似度を計算する方法のフローチャートを示す。
ステップ４２１では、コンピュータ・システムは、上記選択されたタグと、ターゲット・コンポーネントの各プロパティに含まれるタグとを照合し、類似度を計算する。類似度は、例えば、｛（選択されたタグと一致するタグ数）／（ターゲット・コンポーネント上のあるプロパティに付与されたタグの数）｝×１００（％）、又は｛選択されたタグと一致するタグ数（１）／ソース・コンポーネント上で選択されたタグ数｝×１００（％）に従い計算される。
ステップ４２２では、コンピュータ・システムは、上記計算された類似度そのもの又は類似度に基づく表示を、上記特定されたプロパティの表示上又はその近傍に表示する。
ステップ４２２の終了後、コンピュータ・システムは、図４Ａのステップ４０９に戻る。
【００７４】
図５は、本発明の実施態様である、タグを使用してソース・コンポーネント（５０２）の接続先の候補を絞り込む態様を示す。
ソース・コンポーネント（５０２）上でユーザにより選択可能なタグの一覧がリスト（５１０）として表示される。該選択可能なタグは、ソース・コンポーネント（５０２）以外のターゲット・コンポーネントの全て（５０２〜５０７）のプロパティから収集されたものである。タグのリストは、例えば、プルダウン・メニューによって表示される。
図５では、タグの例として、Boolean, Integer, String, address, array of two numbers, atom, city,keyword, latitude/longitude, ranges (1-12), rss1.0, rss2.0, rss, url, zip codeが表示されている。ユーザは、ソース・コンポーネント（５０２）上でリストからタグを選択することが可能である。図５では、ユーザによってタグurlが選択されているために、文字urlが反転表示されている。
図５では、点線の矢印及び吹き出しは、図の説明のために示したものであり、実際のアプリケーションで表示されなくてもよい。
ソース・コンポーネント（５０２）の上記選択されたタグ「url」と同じタグを有するターゲット・コンポーネント（５０５及び５０７）の入力プロパティが強調表示されるか、又はその上若しくは近傍に接続先アイコン（５０９）が表示される。
該接続先アイコンが表示されることによって、ユーザは、ソース・コンポーネント（５０２）が接続しうるターゲット・コンポーネント（５０５及び５０７）のプロパティを容易に確認することができる。
【００７５】
図６は、本発明の実施態様である、複数のタグを使用してソース・コンポーネント（６０２）の接続先の候補を絞り込む方法を示す。
ソース・コンポーネント（６０２）上でユーザにより選択可能なタグの一覧がリスト（６１０）として表示される。該選択能なタグは、ソース・コンポーネント（５０２）以外のターゲット・コンポーネントの全て（５０２〜５０７）の入力プロパティから収集されたものである。タグのリストは、例えば、プルダウン・メニューによって表示される。各タグには、複数のタグの選択を可能にするために、例えばチェック・ボックス（６１０）が設けられている。ユーザは、１以上のタグを選択することが可能である。
ユーザはまた、複数のタグの選択とともに、該選択する複数のタグが、「and」条件、「or」条件、又はそれらの組み合わせの条件のいずれかの条件（６１０）を用いるかを指定してもよい。
図６では、３つのタグ、すなわち、「String」、「atom」及び「url」がユーザによって選択されている。
上記選択に応じて、選択されたタグ「String」、「atom」及び「url」の少なくとも１つと同じタグを有するターゲット・コンポーネント（６０３、６０４、６０５、６０６及び６０７）の入力プロパティが強調表示されるか、またはその上若しくは近傍に接続先アイコン（６０９）が表示される。
図６では、さらに上記同じタグを有するターゲット・コンポーネント（６０３、６０４、６０５、６０６及び６０７）について、類似度が表示されている。
天気予報コンポーネント（６０３）では、上記選択されたタグのうち、「String」が一致する。よって、一致度は、｛一致するタグ数（１）／ソース・コンポーネント（６１０）上で選択されたタグ数（３）｝×１００＝３３％である。
写真コンポーネント（６０４）では、上記選択されたタグのうち、「String」が一致する。よって、一致度は、｛一致するタグ数（１）／ソース・コンポーネント（６１０）上で選択されたタグ数（３）｝×１００＝３３％である。
ニュース・コンポーネント（６０５）では、上記選択されたタグのうち、「String」、「url」及び「atom」の全てが一致する。よって、一致度は、｛一致するタグ数（３）／ソース・コンポーネント（６１０）上で選択されたタグ数（３）｝×１００＝１００％である。
マップ・コンポーネント（６０６）では、上記選択されたタグのうち、「String」が一致する。よって、一致度は、｛一致するタグ数（１）／ソース・コンポーネント（６１０）上で選択されたタグ数（３）｝×１００＝３３％である。
TIPS&Solutionsコンポーネント（６０７）では、上記選択されたタグのうち、「String」及び「url」が一致する。よって、一致度は、｛一致するタグ数（２）／ソース・コンポーネント（６１０）上で選択されたタグ数（３）｝×１００＝６６％である。
１つの実施態様では、一致度は、図６に示すように、例えば、バーで表される。バーは、例えば、一致する割合を実線で、一致しない割合を点線で表される。他の実施態様では、一致度は、数字で表すことができる。他の実施態様では、一致する割合によって、赤、黄、緑の３段階でターゲット・コンポーネントの接続先アイコンにマーク付けをすることができる。例えば、赤は０％以上〜３５％未満であり、黄は３５％以上〜７０％未満であり、緑は７０％以上から１００％以下である。
また、一致度を計算する上で、各タグに重みを予め付与しておいてもよい。
【００７６】
図７Ａ及び図７Ｂは、本発明の実施態様である、テンプレートを使用して、ターゲット・コンポーネントからソース・コンポーネントに接続する方法を示す。
Zip2Address（７０８）は、１つのウェブ・サービスを意味している。Zip2Addressサービスは、Zipコードを住所（つまりcity とstate）に変換するサービスである。Zip2Address（７０８）を点線で囲っているのは、該ウェブ・サービスが視覚的な表現を持っていないためである。Zip2Addressは、入力として、例えば郵便番号（zip code）を受け取り、都市名 (city)及び州名（state）の２つを出力する。
以下では、データ・アセンブル（７０４）パネルを使い、例えばアドレス（address）が”San Diego, CA”となるような入力をZip2Address（７０８）サービスの二つの出力から、タグ情報を利用して合成するというシナリオを考える。但し、それぞれの出力はそのままではaddressへの入力として利用できないため、データ・アセンブルを利用してそれぞれの出力をカンマ区切りで結合し、addressへの入力を合成する。
ステップ１
マップ・パネル（７０７）から、アドレス（address）を指定した状態で、データ・アセンブル・パネル（７０４）を表示する。この時点で、データ・アセンブル・パネル（７０４）の出力とマップ・コンポーネント（７０７）のaddressプロパティが接続された状態で、データ・アセンブル・パネル（７０４）が表示される。
ステップ２
データ・アセンブル・パネル（７０４）には、addressプロパティに付与されたテンプレートから読み取られた[<city>,<state>]という情報が表示されており、また、<city>と<state>は選択可能になっている。
ステップ３
最初に、ユーザが、データ・アセンブル・パネル（７０４）内の<city>を選択する。該選択に応じて、<city>というタグ情報と文字列型（String）という型情報に基づいて、画面内で選択可能な他のコンポーネントの出力プロパティとの間で類似度が計算される。そして、類似度又は類似度に基づく表示（図７Ａではバーである）が画面上に表示される（図７Ａ）。また、<city>を選択した時点で、<city>周辺に接続先アイコンが、また、コンポーネント（７０２）及びコンポーネント（７０５）の各プロパティ横に接続元アイコンが表示される（図７Ｂ）。
ステップ４
ユーザは類似度を参考にしながら、接続元アイコンを<city>の接続先アイコンへつなげて、接続を行う。
【００７７】
図８Ａは、本発明の別の実施態様である、属性情報を使用してソース・コンポーネントの接続先の候補を絞り込む態様を示す。
検索ボックス・コンポーネント（８０２）は、ウェブ・アプリケーション内の他のコンポーネントに対して検索パラメータを与えるコンポーネントである。
接続を開始したコンポーネントがソース・コンポーネントとなるため、図８Ａにおける検索ボックス・コンポーネント（８０２）は、ソース・コンポーネントである。また、他のコンポーネント（８０３〜８０７）は、ターゲット・コンポーネントである。
図８Ａでは、ソース・コンポーネント（８０２）の接続元アイコン（８０８）が表示されている。
ソース・コンポーネント（８０２）では、トリガーとなるイベント及び出力プロパティの選択が可能である。どのような出力プロパティを持つかは、ソース・コンポーネント（８０２）に依存して決まり、ユーザは、コンポーネントの持つ出力プロパティの少なくとも１つを選択することが可能である。コンポーネントが、出力プロパティとして、例えばvalue1、value2及びvalue3を持つ場合、ユーザは、value1、value2及びvalue3のうちから少なくとも１つの出力プロパティを選択することが可能である。
ターゲット・コンポーネント（８０３〜８０７）それぞれは、入力プロパティを有する。例えば、マップ・コンポーネント（８０６）は、データの入力を受け付けるプロパティとして、address、location、zoomLevel及びshowControlsを持つ。
【００７８】
図８Ｂは、一見してソース・コンポーネント（８０２）が接続しうるように見える、全てのターゲット・コンポーネント（８０３〜８０７）の全てのプロパティを示す。
ターゲット・コンポーネント又はプロパティが多数存在し、結果としてソース・コンポーネント（８０２）の接続先の候補が多数存在する場合においては、ユーザがソース・コンポーネント（８０２）が接続しうるターゲット・コンポーネントのプロパティを見つけることは容易ではない。
図８Ｂにおいて、点線の矢印は接続先の候補が存在することを説明するためのものであり、実際のアプリケーションで表示されるものではない。
【００７９】
図８Ｃは、本発明の別の実施態様である、ソース・コンポーネント（８０２）の接続先の候補が、ある程度絞り込まれた様子を示す。
ソース・コンポーネント（８０２）の出力プロパティがターゲット・コンポーネント（８０３〜８０７）の入力プロパティと接続可能であるかどうかは、属性情報に基づいて決定されうる。ターゲット・コンポーネント（８０３〜８０７）の入力プロパティが、ソース・コンポーネント（８０２）の出力プロパティの属性情報の一部又は全部を含むことによって、ターゲット・コンポーネントの入力プロパティ上又はその近傍に接続先アイコンが表示される。ソース・コンポーネント（８０２）の出力プロパティの属性情報が例えば文字列型である場合、ターゲット・コンポーネントの入力プロパティのうち文字列型であるもの表示上又はその近傍に接続先アイコンが表示される。検索ボックス・コンポーネント（８０２）の場合は、文字列型である。また、ソース・コンポーネント（８０２）及びターゲット・コンポーネント（８０３〜８０７）それぞれに関連付けられたトピック名を用いてもよい。
接続可能なプロパティの表示上又はその近傍にのみ接続先アイコン（ソケット・アイコン）が表示されている。ターゲット・コンポーネントの接続先アイコン（８０９）は例えばソース・コンポーネント（８０２）の接続元アイコン（８０８）に対応する形状をしている。
【００８０】
図９は、本発明の実施態様である、ウェブ・アプリケーションを実行するために必要なコンピュータ・システムの構成図を示す。
コンピュータ・システム（９０１）は、取得部（９０２）、照合部（９０３）、計算部（９０４）、表示部（９０５）、許可部（９０６）及び変更部（９０７）を含む。コンピュータ・システム（９０１）は、インターネット（９０９）又はイントラネットを介して、ウェブ・サーバ・システム（９１０）に接続されている。
取得部（９０２）は、本発明の実施態様である、ソース・コンポーネント以外のターゲット・コンポーネントのプロパティに付与されたタグを記憶部内に取得する。取得部（９０２）はまた、本発明の他の実施態様である、ソース・コンポーネントの属性情報（第１の属性情報）及びターゲット・コンポーネントの属性情報（第２の属性情報）を記憶部内に取得する。
照合部（９０３）は、本発明の実施態様である、ターゲット・コンポーネントのプロパティに付与されたタグからソース・コンポーネント上に収集され、ソース・コンポーネント上でユーザによって選択されたタグ（第１のタグ）と、ターゲット・コンポーネントのプロパティに付与されたタグ（第２のタグ）とを照合し、第２のタグが第２のタグを含むかどうかを照合する。照合部（９０３）はまた、本発明の他の実施態様である、第１の属性情報と第２の属性情報とを照合し、第１の属性情報が第２の属性情報の一部又は全部と合致するかどうかを判定する。
計算部（９０４）は、本発明の実施態様である、ユーザによって選択された１以上の第１のタグと第２のタグとを照合して、類似度を計算する。計算部（９０４）はまた、本発明の他の実施態様である、第１の属性情報と第２の属性情報とを照合して、類似度を計算する。
表示部（９０５）は、ソース・コンポーネント及びターゲット・コンポーネントを表示装置上に表示する。表示部（９０５）はまた、ソース・コンポーネントの出力フィールドと該ソース・コンポーネントが接続されうるターゲット・コンポーネントの入力フィールドとの間のリンク線を表示装置上に表示する。表示部（９０５）はまた、ソース・コンポーネントの接続元アイコン（第１の接続アイコン）とターゲット・コンポーネントの接続先アイコン（第２の接続アイコン）を表示装置上に表示する。表示部（９０５）はまた、類似度又は該類似度に基づく表示を表示装置上に表示する。
許可部（９０６）は、本発明の実施態様である、第１のタグのうちの少なくとも１つをユーザに選択することを許す。
変更部（９０７）は、ソース・コンポーネントの操作に応じて、該第１の接続アイコンが接続された第２の接続アイコンを有するターゲット・コンポーネントの内容を自動的に変更する。変更部（９０７）はまた、ターゲット・コンポーネントの操作に応じて、該ターゲット・コンポーネントに対応する第２の接続アイコンが接続された第１の接続アイコンを有するソース・コンポーネントの内容を自動的に変更する。
記憶部（９０８）は、コンポーネントを記憶する。
【００８１】
図１０は、本発明の実施態様における、図９に示したコンピュータ・システムのブロック図を示す。
コンピュータ・システム（１００１）は、ＣＰＵ（１００２）とメイン・メモリ（１００３）と含み、これらはバス（１００４）に接続されている。ＣＰＵ（１００２）は好ましくは、３２ビット又は６４ビットのアーキテクチャに基づくものであり、例えば、インテル社のＸｅｏｎ（商標）シリーズ、Ｃｏｒｅ（商標）シリーズ、Ａｔｏｍ（商標）シリーズ、Ｐｅｎｔｉｕｍ（商標）シリーズ、Ｃｅｌｅｒｏｎ（商標）シリーズ、ＡＭＤ社のＰｈｅｎｏｍ（商標）シリーズ、Ａｔｈｌｏｎ（商標）シリーズ、Ｔｕｒｉｏｎ（商標）シリーズ及びＳｅｍｐｒｏｎ（商標）などを使用することができる。バス（１００４）には、ディスプレイ・コントローラ（１００５）を介して、ＬＣＤモニタなどのディスプレイ（１００６）が接続される。ディスプレイ（１００６）は、そのコンピュータ・システム（１００１）上で動作中のソフトウェアについての情報を、適当なグラフィック・インタフェースで表示するために使用される。バス（１００４）にはまた、ＩＤＥ又はＳ−ＡＴＡコントローラ（１００７）を介して、ハードディスク又はシリコン・ディスク（１００８）と、ＣＤ、ＤＶＤ又はＢｌｕ−ｒａｙドライブ（１００９）が接続されている。ＣＤ、ＤＶＤ又はＢＤドライブ（１００９）は、必要に応じて、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ又はＢＤからプログラムをハードディスク又はシリコン・ディスク（１００８）に導入するために使用される。バス（１００４）にはさらに、キーボード・マウスコントローラ（１０１０）を介して、或いはＵＳＢコントローラ（図示せず）を介して、キーボード（１０１１）及びマウス（１０１２）が接続されている。
【００８２】
通信インタフェース（１０１４）は、例えばイーサネット（商標）プロトコルに従うものであり、通信コントローラ（１０１３）を介してバス（１００４）に接続される。通信インタフェース（１０１４）は、コンピュータ・システム（１００１）及び通信回線（１０１５）を物理的に接続する役割を担い、コンピュータ・システム（１００１）のオペレーティング・システムの通信機能のＴＣＰ／ＩＰ通信プロトコルに対して、ネットワーク・インタフェース層を提供する。通信回線は、有線ＬＡＮ環境、或いは例えばＩＥＥＥ８０２．１１ａ／ｂ／ｇ／ｎなどの無線ＬＡＮ接続規格に基づく無線ＬＡＮ環境であってもよい。
【００８３】
以上、実施態様に基づき本発明を説明してきたが、本実施態様に記載されている内容は、本発明の一例であり、当業者なら、本発明の技術的範囲を逸脱することなく、様々な変形例に想到できることが明らかであろう。
【図１】
2010176195.tif 000003
【図２】
2010176195.tif 000004
【図３Ａ】
2010176195.tif 000005
【図３Ｂ】
2010176195.tif 000006
【図３Ｃ】
2010176195.tif 000007
【図３Ｄ】
2010176195.tif 000008
【図３Ｅ】
2010176195.tif 000009
【図３Ｆ】
2010176195.tif 000010
【図３Ｇ】
2010176195.tif 000011
【図３Ｈ】
2010176195.tif 000012
【図３Ｉ】
2010176195.tif 000013
【図４Ａ】
2010176195.tif 000014
【図４Ｂ】
2010176195.tif 000015
【図５】
2010176195.tif 000016
【図６】
2010176195.tif 000017
【図７Ａ】
2010176195.tif 000018
【図７Ｂ】
2010176195.tif 000019
【図８Ａ】
2010176195.tif 000020
【図８Ｂ】
2010176195.tif 000021
【図８Ｃ】
2010176195.tif 000022
【図９】
2010176195.tif 000023
【図１０】
2010176195.tif 000024