説明

ウェブ・アプリケーション内のコンポーネントの接続先候補を提示するための方法、並びにそのコンピュータ・プログラム及びコンピュータ・システム

【課題】ウェブ・アプリケーション内の2つのコンポーネントが互いに接続できるかどうかを、ユーザが迅速に、しかも容易に知ることができる手法を提供する。
【解決手段】ウェブ・アプリケーション内のコンポーネント同士を接続するに際してコンポーネントの接続先候補を提示するための方法、コンピュータ・システム及びそのコンピュータ・プログラムを提供する。該方法は、少なくとも2のコンポーネントを表示装置上に表示するステップ401と、上記少なくとも2のコンポーネントのうちの1つのコンポーネント(第1のコンポーネント)においてタグ(第1のタグ)のうちの少なくとも1つをユーザに選択することを許すステップ404と、上記選択された第1のタグと同じタグを有する第2のコンポーネントを特定するステップ407と、上記特定された第2のコンポーネントをユーザに提示するステップ408とを含む。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ウェブ・アプリケーション内のコンポーネントの接続先候補を提示するための方法、並びにそのコンピュータ・プログラム及びコンピュータ・システムに関する。
【背景技術】
【0002】
Web2.0アプリケーションを生成するために、複数のコンポーネントが使用される。ITの専門家ではないビジネスユーザが状況依存型アプリケーションを生成することを可能にするためには、ビジネスユーザがコンポーネントの配置及び接続を行うことができる必要がある。2つのコンポーネントが互いに接続できるかどうかを知ることが困難である状況において、コンポーネントの接続は、ユーザ、特にITの専門家でないユーザにとって簡単ではない。
【0003】
iGoogle(あいぐーぐる)は、グーグル(商標)が提供するウェブ・サービスである。iGoogleでは、ユーザは、Googleのトップページに最新のニュース又は天気などを自由に追加することが可能である(下記非特許文献1を参照)。ユーザは、例えば、コンポーネントを一覧から選択したり、又は、コンポーネントの設定を編集したりすることによって、様々なコンポーネントを自分専用のGoogleのトップページ上に追加することが可能である。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】iGoogle、インターネット〈URL:http://www.google.co.jp/help/ig/product/〉
【発明の概要】
【発明が解決しようとする課題】
【0005】
ウェブ・アプリケーション内のコンポーネント同士を接続できるかどうかは、コンポーネントを見ている限り不明である。そこで、ウェブ・アプリケーション内の2つのコンポーネントが互いに接続できるかどうかを、ユーザが迅速に、しかも容易に知ることができる手法を提供する。
【課題を解決するための手段】
【0006】
本発明は、ウェブ・アプリケーション内のコンポーネント同士を接続するに際してコンポーネントの接続先候補を提示するための方法を提供する。該方法は、コンピュータ・システムに下記ステップを実行させる。該ステップは、
少なくとも2のコンポーネントを表示装置上に表示するステップであって、上記各コンポーネントは、コンポーネント同士を接続するために利用するタグがコンポーネントのプロパティに付与されている、上記表示するステップと、
上記少なくとも2のコンポーネントのうちの1つのコンポーネント(第1のコンポーネント)においてタグ(第1のタグ)のうちの少なくとも1つをユーザに選択することを許すステップであって、上記第1のタグは、上記第1のコンポーネント以外のコンポーネント(第2のコンポーネント)のプロパティに付与されたタグ(第2のタグ)が、上記第1のコンポーネントに収集されたものである、上記許すステップと、
上記選択された第1のタグと同じタグを有する第2のコンポーネントを特定するステップと、
上記特定された第2のコンポーネントを提示するステップと
を含む。
【0007】
本発明の1つの実施態様では、上記許すステップが、
上記少なくとも2のコンポーネントのうちの1つ(第1のコンポーネント)を選択することを許すステップと、
上記選択されたコンポーネント(第1のコンポーネント)以外の第2のコンポーネントから第2のタグを収集するステップと、
上記収集された第2のタグを、上記選択されたコンポーネント(第1のコンポーネント)上で第1のタグとして表示するステップと
をさらに含む
【0008】
本発明の1つの実施態様では、上記許すステップが、コンポーネントの接続編集モードの起動に応じて、コンポーネントごとに、プロパティ、イベント又はそれらの組み合わせを表示するステップをさらに含む。
【0009】
本発明の1つの実施態様では、上記許すステップが、ユーザによる第1のタグの表示要求に応じて、上記第1のタグを表示するステップをさらに含む。
【0010】
本発明の1つの実施態様では、上記第1のタグの表示要求がユーザによるイベントの選択である。
【0011】
本発明の1つの実施態様では、上記許すステップが、上記第1のタグの一覧をリストボックスにより上記表示装置上に表示するステップを含む。
【0012】
本発明の1つの実施態様では、上記タグが、型名、プロパティ名、制約、注釈、又はテンプレートである。
【0013】
本発明の1つの実施態様では、上記特定するステップが、上記選択された第1のタグを同じタグを有する第2のコンポーネントに含まれるプロパティを特定するステップをさらに含む。
【0014】
本発明の1つの実施態様では、上記提示するステップが、上記特定された第2のタグを付与された第2のコンポーネントのプロパティをユーザに提示するステップをさらに含む。
【0015】
本発明の1つの実施態様では、上記方法は、上記コンピュータ・システムに下記ステップをさらに実行させる。該ステップは、上記選択された第1のタグと上記第2のコンポーネントの各プロパティに付与されたタグとを照合して、類似度を計算するステップを含む。
【0016】
本発明の1つの実施態様では、上記方法は、上記コンピュータ・システムに下記ステップをさらに実行させる。該ステップは、上記計算された類似度又は該類似度に基づく表示を、上記第2のタグを付与されたプロパティ上に表示するステップを含む。
【0017】
本発明の1つの実施態様では、上記方法は、上記コンピュータ・システムに下記ステップをさらに実行させる。該ステップは、上記第1のコンポーネントの出力と該第1のコンポーネントが接続されうる第2のコンポーネントの入力との間のリンク線を上記表示装置上に表示するステップを含む。
【0018】
本発明の1つの実施態様では、上記方法は、上記コンピュータ・システムに下記ステップをさらに実行させる。該ステップは、
上記第1のコンポーネントの接続アイコン(第1の接続アイコン)を上記第1のコンポーネント上又はその近傍に表示するステップと、
上記選択された第1のタグの一部又は全部と合致することに応じて、該合致した第2のコンポーネントの接続アイコン(第2の接続アイコン)を上記第2のコンポーネント上又はその近傍に表示するステップと
を含む。
【0019】
本発明の1つの実施態様では、上記方法は、上記コンピュータ・システムに下記ステップをさらに実行させる。該ステップは、上記第2の接続アイコンを上記第2のコンポーネント上又はその近傍に表示するステップが、上記選択された第1のタグと合致するタグを付与されたプロパティの表示上又はその近傍に表示するステップを含む。
【0020】
本発明の1つの実施態様では、上記方法は、上記コンピュータ・システムに下記ステップをさらに実行させる。該ステップは、上記第1の接続アイコンが上記第2の接続アイコンのうちの1つに接続されることに応じて、上記第1のコンポーネントと、上記第1の接続アイコンが接続された第2の接続アイコンとの間にリンク線を表示するステップを含む。
【0021】
本発明の1つの実施態様では、上記方法は、上記コンピュータ・システムに下記ステップをさらに実行させる。該ステップは、上記第1のコンポーネントの操作に応じて、該第1のコンポーネントの出力が接続された上記第2のコンポーネントの入力の情報を変更するステップを含む。
【0022】
本発明の1つの実施態様では、上記方法は、上記コンピュータ・システムに下記ステップをさらに実行させる。該ステップは、上記第2のコンポーネントの操作に応じて、該第2のコンポーネントの入力が接続された上記第1のコンポーネントの出力の情報を変更するステップを含む。
【0023】
本発明の1つの実施態様では、上記コンポーネントがマッシュアップ・コンポーネントである。
【0024】
本発明はまた、ウェブ・アプリケーション内のコンポーネント同士を接続するに際してコンポーネントの接続先候補を提示するためのコンピュータ・システムを提供する。該コンピュータ・システムは、
少なくとも2のコンポーネントを表示する表示部であって、上記各コンポーネントは、コンポーネント同士を接続ために利用するタグがコンポーネントのプロパティに付与されている、上記表示部と、
上記少なくとも2のコンポーネントのうちの1つのコンポーネント(第1のコンポーネント)においてタグ(第1のタグ)のうちの少なくとも1つをユーザに選択することを許す許可部であって、上記第1のタグは、上記第1のコンポーネント以外のコンポーネント(第2のコンポーネント)のプロパティに付与されたタグ(第2のタグ)が、上記第1のコンポーネントに収集されたものである、上記許可部と、
上記選択された第1のタグと同じタグを有する第2のコンポーネントを特定する特定部と、
上記特定された第2のコンポーネントをユーザに提示する提示部と
を含む。
【0025】
本発明の1つの実施態様では、上記許可部がさらに、
上記少なくとも2のコンポーネントのうちの1つ(第1のコンポーネント)を選択することを許し、
上記選択されたコンポーネント(第1のコンポーネント)以外の第2のコンポーネントから第2のタグを収集し、
上記収集された第2のタグを、上記選択されたコンポーネント(第1のコンポーネント)上で第1のタグとして表示する。
【0026】
本発明の1つの実施態様では、上記許可部がさらに、コンポーネントの接続編集モードの起動に応じて、コンポーネントごとに、プロパティ、イベント又はそれらの組み合わせを表示する。
【0027】
本発明の1つの実施態様では、上記許可部がさらに、ユーザによる第1のタグの表示要求に応じて、上記第1のタグを表示する。
【0028】
本発明の1つの実施態様では、上記許可部がさらに、上記第1のタグの一覧をリストボックスにより上記表示装置上に表示する。
【0029】
本発明の1つの実施態様では、上記特定部がさらに、上記選択された第1のタグと同じタグを有する第2のコンポーネントに含まれるプロパティを特定する。
【0030】
本発明の1つの実施態様では、上記提示部がさらに、上記特定された第2のタグを付与された第2のコンポーネントのプロパティをユーザに提示する。
【0031】
本発明の1つの実施態様では、上記コンピュータ・システムは、上記選択された第1のタグと上記第2のコンポーネントの各プロパティに付与されたタグとを照合して、類似度を計算する計算部をさらに含む。
【0032】
本発明の1つの実施態様では、上記表示部はさらに、上記計算された類似度又は該類似度に基づく表示を、上記第2のタグを付与されたプロパティ上に表示する。
【0033】
本発明の1つの実施態様では、上記表示部はさらに、上記第1のコンポーネントの出力と該第1のコンポーネントが接続されうる第2のコンポーネントの入力との間のリンク線を上記表示装置上に表示する。
【0034】
本発明の1つの実施態様では、上記表示部はさらに、
上記第1のコンポーネントの接続アイコン(第1の接続アイコン)を上記第1のコンポーネント上又はその近傍に表示し、及び
上記選択された第1のタグの一部又は全部と合致することに応じて、該合致した第2のコンポーネントの接続アイコン(第2の接続アイコン)を上記第2のコンポーネント上又はその近傍に表示する。
【0035】
本発明の1つの実施態様では、上記表示部はさらに、上記第2の接続アイコンを上記第2のコンポーネント上又はその近傍に表示するステップが、上記選択された第1のタグと合致するタグを付与されたプロパティの表示上又はその近傍に表示する。
【0036】
本発明の1つの実施態様では、上記表示部はさらに、上記第1の接続アイコンが上記第2の接続アイコンのうちの1つに接続されることに応じて、上記第1のコンポーネントと、上記第1の接続アイコンが接続された第2の接続アイコンとの間にリンク線を表示する。
【0037】
本発明の1つの実施態様では、上記コンピュータ・システムは、上記第1のコンポーネントの操作に応じて、該第1のコンポーネントの出力が接続された上記第2のコンポーネントの入力の情報を変更する変更部を含む。
【0038】
本発明の1つの実施態様では、上記変更部はさらに、上記第2のコンポーネントの操作に応じて、該第2のコンポーネントの入力が接続された上記第1のコンポーネントの出力の情報を変更する。
【0039】
本発明はまた、ウェブ・アプリケーション内のコンポーネント同士を接続するに際してコンポーネントの接続先候補を提示するための方法を提供する。該方法は、コンピュータ・システムに下記ステップを実行させる。該ステップは、
少なくとも2のコンポーネントを表示装置上に表示するステップであって、上記各コンポーネントは、上記コンポーネントに関連付けられた属性情報又はトピック名を有する、上記表示するステップと、
上記コンポーネントのうちの1つのコンポーネント(第1のコンポーネント)に関連付けられた属性情報の少なくとも1つ又はトピック名が、上記コンポーネントのうちの他のコンポーネント(第2のコンポーネント)に関連付けられた属性情報又はトピック名の一部又は全部と合致することを判定する判定部と、
上記合致した第2のコンポーネントを提示するステップと
を含む。
【0040】
本発明はまた、ウェブ・アプリケーション内のコンポーネント同士を接続するに際してコンポーネントの接続先候補を提示するためのコンピュータ・システムを提供する。該コンピュータ・システムは、
少なくとも2のコンポーネントを表示する表示部であって、上記各コンポーネントは、上記コンポーネントに関連付けられた属性情報又はトピック名を有する、上記表示部と、
上記コンポーネントのうちの1つのコンポーネント(第1のコンポーネント)に関連付けられた属性情報の少なくとも1つ又はトピック名が、上記コンポーネントのうちの他のコンポーネント(第2のコンポーネント)に関連付けられた属性情報又はトピック名の一部又は全部と合致することを判定する判定部と、
上記合致した第2のコンポーネントを提示する提示部と
を含む。
【0041】
本発明はまた、コンピュータ・システムに、上記方法のいずれか1つに記載の各ステップを実行させるコンピュータ・プログラムを提供する。
【発明の効果】
【0042】
本発明の実施態様に従うと、ユーザは、ウェブ・アプリケーション内の2つのコンポーネントが互いに接続できるかどうかを視覚的に確認することが可能である。また、該接続によって、2つのコンポーネントが連携して動作するようになる。
【図面の簡単な説明】
【0043】
【図1】ウェブ・アプリケーション内のコンポーネントの例を示す。
【図2】ウェブ・アプリケーション内にコンポーネントを追加する例を示す。
【図3A】本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【図3B】本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【図3C】本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【図3D】本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【図3E】本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【図3F】本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【図3G】本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【図3H】本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【図3I】本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【図4A】本発明の実施態様である、コンポーネント同士を接続するに際してコンポーネントの接続先候補を提示する方法のフローチャートを示す。
【図4B】本発明の実施態様である、タグの類似度を計算する方法のフローチャートを示す。
【図5】本発明の実施態様である、タグを使用してソース・コンポーネントの接続先の候補を絞り込む方法を示す。
【図6】本発明の実施態様である、複数のタグを使用してソース・コンポーネントの接続先の候補を絞り込む方法を示す。
【図7A】本発明の実施態様である、テンプレートを使用して、ターゲット・コンポーネントからソース・コンポーネントに接続する方法を示す。
【図7B】本発明の実施態様である、テンプレートを使用して、ターゲット・コンポーネントからソース・コンポーネントに接続する方法を示す。
【図8A】本発明の別の実施態様である、属性情報を使用してソース・コンポーネントの接続先の候補を絞り込む態様を示す。
【図8B】一見してソース・コンポーネントが接続しうるように見える、全ての接続先候補の全てのプロパティを示す。
【図8C】本発明の別の実施態様である、ソース・コンポーネントの接続先の候補が、ある程度絞り込まれた様子を示す。
【図9】本発明の実施態様である、ウェブ・アプリケーションを実行するために必要なコンピュータ・システムの構成図を示す。
【図10】本発明の実施態様における、図10に示したコンピュータ・システムのブロック図を示す。
【発明を実施するための形態】
【0044】
本発明の実施態様において、「コンポーネント」とは、ウェブ・アプリケーション内で利用できる小さなアプリケーションである。コンポーネントは、ウィジェット又はガジェットとも呼ばれる。コンポーネントは、ウェブ・アプリケーション内で一つのウィンドウとして表示される。ウェブ・アプリケーションは、複数のコンポーネントを含む。複数のコンポーネントのそれぞれは、典型的には、異なるURLからのウェブ・サービスによって提供される。ウェブ・アプリケーションは、複数のウェブ・サービスが集まって、新たなサービスをユーザに提供する。ユーザは、ウェブ・アプリケーション内に、どのコンポーネントを配置するかを決定することができる。ユーザはまた、コンポーネントの配置を変更し、又はコンポーネントを削除し、挿入し、若しくは置換することが可能である。コンポーネントの挿入及び配置の変更は、ウェブ・アプリケーション内の所定の位置へコンポーネントをドラッグすることによって行われる。
【0045】
本発明の実施態様において、「コンポーネント」は、例えば、「マッシュアップ・コンポーネント」である。マッシュアップとは、複数のコンテンツを複合させて新しいウェブ・サービスを形作ることをいう。コンポーネントは、例えば、製品情報サイトのコンポーネント、天気予報サイトのコンポーネント、検索サイトのコンポーネント、ニュースサイトのコンポーネント、地図サイトのコンポーネント、及び乗り換え案内サイトのコンポーネントを挙げることができるがこれらに限定されない。
【0046】
本発明の実施態様において、「コンポーネント同士を接続する」とは、ソース・コンポーネントの出力とターゲット・コンポーネントの入力を結びつけることにより、接続されたコンポーネント同士が連携して動作するようにすることである。「接続する」は、ワイヤリング(wiring)ともいう。
【0047】
本発明の実施態様において、「コンポーネント」は、典型的には、プロパティを含む。「コンポーネント」はまた、イベントを含んでよい。イベントは、例えば、「ボタンを押すこと」、「リストボックスで行を選択すること」を挙げることができるがこれらに限定されない。
【0048】
本発明の実施態様において、「プロパティ」とは、コンポーネントが持つ、そのコンポーネントの性質を表すデータをいう。例えば、マップ・コンポーネントは、住所(プロパティ名“address”)及び緯度経度(プロパティ名“location”)をプロパティとして持つ。プロパティは、読み取り専用の場合並びに読み取り及び書き込みが可能な場合がある。
【0049】
本発明の実施態様において、「属性情報」(attribute information)は、コンポーネントのプロパティが付随して持つ付加的な情報である。属性情報は、メタ情報とも呼ばれる。属性情報は、例えば、コンポーネントのプロパティの型(type)、注釈(annotation)若しくは制約(constraint)、又はそれらの組み合わせである。
【0050】
本発明の実施態様において、「タグ」とは、コンポーネントのプロパティに属性情報を与えるために付与される短い単語又はフレーズである。複数のタグをコンポーネントのプロパティに付与することにより、そのプロパティに対して様々な属性情報を与えることができ、例えば、プロパティの検索又は分類に役立てることができる。「タグ」の記述内容としては、例えば、型名(type name)、プロパティ名(property name)、制約(constraint)、注釈(annotation)、又はテンプレートを記述してよい。ユーザは、これらのタグを任意の個数コンポーネントのプロパティに付与することができる。タグを付与することをタギングともいう。
【0051】
本発明の実施態様において、「型名」とは、データ型の名前をいう。「型名」は、例えば、整数型の型名“Integer”、文字列型の型名“String”である。型名は、システムに依存する。
【0052】
本発明の実施態様において、「プロパティ名」とは、プロパティの名前をいう。
【0053】
本発明の実施態様において、「制約」とは、データの値の取り得る範囲に関する制限をいう。「制約」は、例えば、整数型であれば、例えば、データの値の取り得る範囲を1以上12以下の整数値に制限するものである。
【0054】
本発明の実施態様において「注釈」は、注釈を付されたアイテムが何を意味するのかを人間に解る言葉で注釈として表現したものである。
【0055】
本発明の実施態様において、「テンプレート」とは、制約の一種である。テンプレートは、プロパティが入力として受け付けるデータのパターンを表現する。テンプレートを使用することによって、該テンプレートの情報を基にそのプロパティが要求する形式にマッチする入力データを組み立てることが可能である。例えば、アドレスが、“市名(city)”、“,”及び“州(state)”であることを定義する。テンプレートは、例えば、[<city>,<state>]である。
【0056】
「トピック名」は、送信(Publish)/受信(Subscribe)型通信を行うコンポーネントにおいて、コンポーネントが送信又は受信する宛先の名前である。送信(Publish)/受信(Subscribe)型通信メッセージング機構では、メッセージの送り側(Publisher)が受け取り側を明示的に指定せず、「トピック」に対してメッセージを送信し、該トピックを受信する受信側(Subscriber)がメッセージを受け取ることができるという仕組みである。
【0057】
本発明の実施態様において、「接続アイコン」とは、ソース・コンポーネントをターゲット・コンポーネントに接続するためのアイコンである。
ソース・コンポーネントの接続アイコン(接続元アイコン)は、ターゲット・コンポーネントに接続しうることを示すアイコンである。ソース・コンポーネントの接続アイコンは、例えば、プラグ・アイコンである。
ターゲット・コンポーネントの接続アイコン(接続先アイコン)は、ソース・コンポーネントに接続されうることを示すアイコンである。ターゲット・コンポーネントの接続アイコンは、例えば、ソケット・アイコンである。
接続元アイコンは、接続先アイコンに接続できるように、変形しうる。該変形は、例えば、接続元アイコンのケーブル部分が延長して表示される。
【0058】
本発明の実施態様において、「リンク線」は、ソース・コンポーネントの出力プロパティと、該ソース・コンポーネントが接続されうるターゲット・コンポーネントの入力プロパティとの間を結ぶために表示される。
【0059】
以下、図面に従って、本発明の実施態様を説明する。本実施態様は、本発明の好適な態様を説明するためのものであり、本発明の範囲をここで示すものに限定する意図はないことを理解されたい。また、以下の図を通して、特に断らない限り、同一の符号は、同一の対象を指す。
【0060】
図1は、ウェブ・アプリケーション内のコンポーネントの例を示す。
ウェブ・アプリケーション(101)は、複数のコンポーネント(102〜107)を含む。
ウェブ・アプリケーション(101)は、ウェブ・ブラウザ上で動作するアプリケーション・ソフトウェアである。
各コンポーネント(102〜107)は、ウェブ・アプリケーション(101)内の1つのウィンドウに表示される小さなアプリケーションである。
図1のウェブ・アプリケーション(101)は、検索ボックス・コンポーネント(102)、天気用予報コンポーネント(103)、写真コンポーネント(104)、ニュース・コンポーネント(105)、マップ・コンポーネント(106)及びTIPS&Solutionsコンポーネント(107)を含む。
【0061】
図2は、ウェブ・アプリケーション内にコンポーネントを追加する例を示す。
ユーザは、ウェブ・アプリケーション(201)内にコンポーネントを追加することができる。コンポーネントは、例えば、利用可能なコンポーネント一覧としてウェブ・ページ内に配置されている。ユーザは、マウス等の入力デバイスを使用して、ウェブ・アプリケーション(201)内に追加するコンポーネント(202)をコンポーネント一覧の中から選択してドラッグし、該ドラッグしたコンポーネントをウェブ・アプリケーション(201)内においてドロップすることによって、コンポーネントを追加することができる。
図2は、検索ボックス・コンポーネント(202)がウェブ・アプリケーション(201)内に追加される態様を示す。
【0062】
図3A〜図3Iは、本発明の実施態様である、コンポーネントの接続先候補を提示することを説明する図である。
【0063】
図3Aは、ウェブ・アプリケーション(301)が6つのコンポーネントA〜F(302〜307)を含むことを示す。ブラウザは、所謂、表示モードで上記コンポーネントA〜F(302〜307)を表示している。ユーザは、コンポーネント同士を接続するに際して、表示モードをワイヤリング編集モードに切り替える。モードの切り替えは、例えば、メニュー表示において、表示モードをワイヤリング編集モードに切り替えることによって行われる。
【0064】
図3Bは、ワイヤリング編集モードに切り替えた際のブラウザの表示例を示す。コンポーネントA〜D(302〜305)は、プロパティ及びイベントを持つ。コンポーネントE(306)は、プロパティのみを持つ。コンポーネントF(307)は、イベントのみを持つ。コンポーネントA〜F(302〜307)の各ウィンドウ上に、プロパティ名、イベント名又はそれらの組み合わせがポップアップで表示されている。図3B〜図3Iに示す例では、イベントが発生したときに、イベントが発生したコンポーネントから他のコンポーネントにどのようなデータが送信されるかはイベントごとに決まっていることを前提にして、以下に説明する。
なお、現時点で、どのコンポーネントがソース・コンポーネントであるか又はターゲット・コンポーネントであるかは決まっていない。例えば、ユーザが或るコンポーネントのイベントを選択することによって、該イベントを含むコンポーネントがソース・コンポーネントとなり、その他のコンポーネントがターゲット・コンポーネントとなる。但し、図3Bの例では、コンポーネントE(306)はイベントを含まないので、ソース・コンポーネントになりえない。
【0065】
図3Cは、タグの一覧を表示する例を示す。ユーザは、コンポーネントC(304)のイベント2の表示上で、例えばマウスを右クリックする。該クリックに応じて、コンポーネントC(304)以外のコンポーネントA〜B及びD〜F(302〜303及び305〜307)の各プロパティに付与されているタグが動的に収集される。なお、コンポーネントF(307)はプロパティを持たないので、コンポーネントF(307)からタグは収集されない。
上記収集されたタグX、Y及びZが、コンポーネントC(304)に関連付けられる。収集されたタグの一覧が、コンポーネントC(304)のイベントに関連付けて表示される(308)。なお、ここで注意すべきことは、コンポーネントC(304)が持つプロパティに付与されたタグは、上記動的に収集されたタグとは無関係である。すなわち、ソース・コンポーネントとなるコンポーネント(この例では、コンポーネントC(304))のプロパティに付与されたタグは、接続先候補であるターゲット・コンポーネントを提示する際にタグを収集する上で関係ない。
【0066】
図3Dは、ユーザがタグXを選択し、その結果、タグXを含むプロパティが特定された例を示す。ユーザが、タグの一覧からタグXを選択したとする。タグXの選択に応じて、タグXのみを含むプロパティは、その表示が例えばイタリック且つ下線付きで示される。また、タグXと他のタグを含むプロパティは、その表示が例えば下線付きで示される。タグXを含まないプロパティは、その表示に変更はない。このように、例えばプロパティの表示を変更することによって、コンポーネントC(304)上でユーザによって選択されたタグXを含むターゲット・コンポーネント上のプロパティが特定される。そして、コンポーネントC(304)は、該特定されたプロパティを含むコンポーネントと接続しうる。
ここで、図3Dでは、コンポーネントA(302)のプロパティ1はタグY及びタグZを付与されており、同プロパティ2はタグXを付与されており、並びに同プロパティ3はタグX及びタグYが付与されているとする。図3Dでは、ポップアップで各プロパティに付与されたタグを示しているが、該表示は説明を容易にするためのものであって、通常タグの内容は表示されない。コンポーネントA(302)のプロパティ2は選択されたタグXのみを含むので、イタリック且つ下線付きで示されている。また、コンポーネントA(302)のプロパティ3は選択されたタグX及びタグYを含むので、下線付きで示されている。しかし、コンポーネントA(302)のプロパティ1はタグXを含まないので、その表示は変更されない。
【0067】
図3Eは、ユーザがタグYを選択し、その結果、タグYを含むプロパティが特定された例を示す。ユーザは、コンポーネントC(304)のイベント2の表示上で、例えばマウスを右クリックする。コンポーネントC(304)以外のコンポーネントA〜B及びD〜F(302〜303及び305〜307)の各プロパティに付与されているタグはすでに収集されているので、この場合タグは動的に収集されない。右クリックに応じて、収集されたタグの一覧が、コンポーネントC(304)のイベント2に関連付けて表示される(308)。
ユーザが、タグの一覧からタグYを選択したとする。タグYの選択に応じて、タグYのみを含むプロパティは、その表示が例えばイタリック且つ下線付きで示される。また、タグYと他のタグを含むプロパティは、その表示が例えば下線付きで示される。タグYを含まないプロパティは、その表示に変更はない。このように、例えばプロパティの表示を変更することによって、コンポーネントC(304)において選択されたタグYを含むターゲット・コンポーネント上のプロパティが特定される。そして、コンポーネントC(304)は、該特定されたプロパティを含むコンポーネントと接続しうる。
【0068】
図3Fは、ソース・コンポーネントのイベントと、特定されたプロパティとを接続する例を示す。ユーザはソース・コンポーネントであるコンポーネントC(304)のイベント2の表示(例えば、アイコン)をマウス等でドラッグしながら、図3Eで説明したようにタグYを含むと特定されたコンポーネントE(306)のプロパティ1へ接続する。上記ドラッグに応じて、イベント2とコンポーネントE(306)のプロパティ1との間にリンク線が表示される。上記接続によって、コンポーネントC(304)のイベント2とコンポーネントE(306)のプロパティ1とが接続される。従って、コンポーネントC(304)のイベント2の発生によって、イベント2に関連付けられたデータがコンポーネントE(306)に送られ、該データに基づく情報がコンポーネントE(306)上に表示される。例えば、コンポーネントC(304)が住所録のコンポーネントであり、コンポーネントE(306)が名刺カードのコンポーネントであり、住所録のコンポーネントC(304)の氏名の欄のユーザによる選択がイベントである場合について説明する。ユーザが、コンポーネントC(304)の氏名の欄を選択する。該選択がイベントであるので、該選択に応じて、該イベントに関連付けられたユーザ・データがコンポーネントC(304)からコンポーネントE(306)に送信される。コンポーネントE(306)では、該ユーザ・データを受信し、該受信したユーザ・データに対応する詳細情報を表示する。
【0069】
図3Gは、図3Fで説明した接続が完了したことを示す図である。コンポーネントC(304)のイベント2とコンポーネントE(306)のプロパティ1との間にリンク線が表示されている。ユーザは、ワイヤリング編集モードを終了するために、メニュー表示において、ワイヤリング編集モードを表示モードに切り替える。
【0070】
図3Hは、ワイヤリング編集モードから表示モードに切り替えたブラウザの画面を示す。図3Hの画面は図3Aの画面と何ら変わりない。しかし、図3Hでは、コンポーネントC(304)とコンポーネントE(306)が接続されているので、コンポーネントC(304)でイベント2が発生すると、それに応じてコンポーネントE(306)が動作する。
【0071】
図3Iは、再び、表示モードをワイヤリング編集モードに切り替えたブラウザの画面を示す。ワイヤリング編集モードでは、コンポーネントC(304)とコンポーネントEの接続を確認することができる。すなわち、コンポーネントC(304)とコンポーネントE(306)の接続は維持されている。
【0072】
図4Aは、本発明の実施態様である、コンポーネント同士を接続するに際してコンポーネントの接続先候補を提示する方法のフローチャートを示す。
ステップ401では、コンピュータ・システムは、複数のコンポーネントをウェブ・アプリケーション内に表示する。コンポーネントは、例えば、ネットワークを介して該コンピュータ・システムの記憶装置内に格納される。各コンポーネントのプロパティには、タグが付与されている。タグの付与は、ワイヤリング編集を行うコンピュータ・システムと同じコンピュータ上で行われていてもよく又は異なるコンピュータ・システム上で行われていてもよい。
ステップ402では、コンピュータ・システムは、ユーザからの、表示モードからワイヤリング編集モードへの切り替えを受け付ける。該切り替えに応じて、処理はステップ403に進む。
ステップ403では、上記切り替えに応じて、コンポーネント上に、該コンポーネントが持つプロパティ、イベント、又はそれぞれの組み合わせを表示する。
ステップ404では、コンピュータ・システムは、ユーザがコンポーネント上に表示されたイベントを選択することを許す。
ステップ405では、コンピュータ・システムは、上記選択に応じて、該イベントを持つコンポーネント以外のコンポーネントのプロパティからタグを収集する。
ステップ406では、コンピュータ・システムは、該収集したタグを上記選択されたイベントの表示近傍にタグの一覧として表示する。ユーザは、該一覧からタグを選択することが可能である。
ステップ407では、コンピュータ・システムは、上記選択されたタグと同じタグを持つ他のコンポーネントのプロパティを特定する。
ステップ408では、コンピュータ・システムは、上記特定されたコンポーネントのプロパティをユーザに視覚的に認識出来るように表示する。コンピュータ・システムは、上記特定されたプロパティの表示を、例えば強調表示したり、色を変更したり、アイコンを表示したりする。
また、任意のステップではあるが、処理はステップ421に進み、タグの類似度を計算するようにしてもよい。
ステップ409では、コンピュータ・システムは、ユーザの指示によって、ソース・コンポーネントのユーザによって選択されたイベントと、上記特定されたプロパティのうちのユーザによって選択されたプロパティとを接続する。
ステップ410では、コンピュータ・システムは、ソース・コンポーネントのユーザによって選択されたイベントと、上記特定されたプロパティのうちのユーザによって選択されたプロパティとの間にリンク線を表示する。
ステップ411では、コンピュータ・システムは、ユーザからの、ワイヤリング編集モードから表示モードへの切り替えを受け付ける。該切り替えに応じて、コンピュータ・システムは、ワイヤリング編集モードを終了する。
【0073】
図4Bは、本発明の実施態様である、タグの類似度を計算する方法のフローチャートを示す。
ステップ421では、コンピュータ・システムは、上記選択されたタグと、ターゲット・コンポーネントの各プロパティに含まれるタグとを照合し、類似度を計算する。類似度は、例えば、{(選択されたタグと一致するタグ数)/(ターゲット・コンポーネント上のあるプロパティに付与されたタグの数)}×100(%)、又は{選択されたタグと一致するタグ数(1)/ソース・コンポーネント上で選択されたタグ数}×100(%)に従い計算される。
ステップ422では、コンピュータ・システムは、上記計算された類似度そのもの又は類似度に基づく表示を、上記特定されたプロパティの表示上又はその近傍に表示する。
ステップ422の終了後、コンピュータ・システムは、図4Aのステップ409に戻る。
【0074】
図5は、本発明の実施態様である、タグを使用してソース・コンポーネント(502)の接続先の候補を絞り込む態様を示す。
ソース・コンポーネント(502)上でユーザにより選択可能なタグの一覧がリスト(510)として表示される。該選択可能なタグは、ソース・コンポーネント(502)以外のターゲット・コンポーネントの全て(502〜507)のプロパティから収集されたものである。タグのリストは、例えば、プルダウン・メニューによって表示される。
図5では、タグの例として、Boolean, Integer, String, address, array of two numbers, atom, city,keyword, latitude/longitude, ranges (1-12), rss1.0, rss2.0, rss, url, zip codeが表示されている。ユーザは、ソース・コンポーネント(502)上でリストからタグを選択することが可能である。図5では、ユーザによってタグurlが選択されているために、文字urlが反転表示されている。
図5では、点線の矢印及び吹き出しは、図の説明のために示したものであり、実際のアプリケーションで表示されなくてもよい。
ソース・コンポーネント(502)の上記選択されたタグ「url」と同じタグを有するターゲット・コンポーネント(505及び507)の入力プロパティが強調表示されるか、又はその上若しくは近傍に接続先アイコン(509)が表示される。
該接続先アイコンが表示されることによって、ユーザは、ソース・コンポーネント(502)が接続しうるターゲット・コンポーネント(505及び507)のプロパティを容易に確認することができる。
【0075】
図6は、本発明の実施態様である、複数のタグを使用してソース・コンポーネント(602)の接続先の候補を絞り込む方法を示す。
ソース・コンポーネント(602)上でユーザにより選択可能なタグの一覧がリスト(610)として表示される。該選択能なタグは、ソース・コンポーネント(502)以外のターゲット・コンポーネントの全て(502〜507)の入力プロパティから収集されたものである。タグのリストは、例えば、プルダウン・メニューによって表示される。各タグには、複数のタグの選択を可能にするために、例えばチェック・ボックス(610)が設けられている。ユーザは、1以上のタグを選択することが可能である。
ユーザはまた、複数のタグの選択とともに、該選択する複数のタグが、「and」条件、「or」条件、又はそれらの組み合わせの条件のいずれかの条件(610)を用いるかを指定してもよい。
図6では、3つのタグ、すなわち、「String」、「atom」及び「url」がユーザによって選択されている。
上記選択に応じて、選択されたタグ「String」、「atom」及び「url」の少なくとも1つと同じタグを有するターゲット・コンポーネント(603、604、605、606及び607)の入力プロパティが強調表示されるか、またはその上若しくは近傍に接続先アイコン(609)が表示される。
図6では、さらに上記同じタグを有するターゲット・コンポーネント(603、604、605、606及び607)について、類似度が表示されている。
天気予報コンポーネント(603)では、上記選択されたタグのうち、「String」が一致する。よって、一致度は、{一致するタグ数(1)/ソース・コンポーネント(610)上で選択されたタグ数(3)}×100=33%である。
写真コンポーネント(604)では、上記選択されたタグのうち、「String」が一致する。よって、一致度は、{一致するタグ数(1)/ソース・コンポーネント(610)上で選択されたタグ数(3)}×100=33%である。
ニュース・コンポーネント(605)では、上記選択されたタグのうち、「String」、「url」及び「atom」の全てが一致する。よって、一致度は、{一致するタグ数(3)/ソース・コンポーネント(610)上で選択されたタグ数(3)}×100=100%である。
マップ・コンポーネント(606)では、上記選択されたタグのうち、「String」が一致する。よって、一致度は、{一致するタグ数(1)/ソース・コンポーネント(610)上で選択されたタグ数(3)}×100=33%である。
TIPS&Solutionsコンポーネント(607)では、上記選択されたタグのうち、「String」及び「url」が一致する。よって、一致度は、{一致するタグ数(2)/ソース・コンポーネント(610)上で選択されたタグ数(3)}×100=66%である。
1つの実施態様では、一致度は、図6に示すように、例えば、バーで表される。バーは、例えば、一致する割合を実線で、一致しない割合を点線で表される。他の実施態様では、一致度は、数字で表すことができる。他の実施態様では、一致する割合によって、赤、黄、緑の3段階でターゲット・コンポーネントの接続先アイコンにマーク付けをすることができる。例えば、赤は0%以上〜35%未満であり、黄は35%以上〜70%未満であり、緑は70%以上から100%以下である。
また、一致度を計算する上で、各タグに重みを予め付与しておいてもよい。
【0076】
図7A及び図7Bは、本発明の実施態様である、テンプレートを使用して、ターゲット・コンポーネントからソース・コンポーネントに接続する方法を示す。
Zip2Address(708)は、1つのウェブ・サービスを意味している。Zip2Addressサービスは、Zipコードを住所(つまりcity とstate)に変換するサービスである。Zip2Address(708)を点線で囲っているのは、該ウェブ・サービスが視覚的な表現を持っていないためである。Zip2Addressは、入力として、例えば郵便番号(zip code)を受け取り、都市名 (city)及び州名(state)の2つを出力する。
以下では、データ・アセンブル(704)パネルを使い、例えばアドレス(address)が”San Diego, CA”となるような入力をZip2Address(708)サービスの二つの出力から、タグ情報を利用して合成するというシナリオを考える。但し、それぞれの出力はそのままではaddressへの入力として利用できないため、データ・アセンブルを利用してそれぞれの出力をカンマ区切りで結合し、addressへの入力を合成する。
ステップ1
マップ・パネル(707)から、アドレス(address)を指定した状態で、データ・アセンブル・パネル(704)を表示する。この時点で、データ・アセンブル・パネル(704)の出力とマップ・コンポーネント(707)のaddressプロパティが接続された状態で、データ・アセンブル・パネル(704)が表示される。
ステップ2
データ・アセンブル・パネル(704)には、addressプロパティに付与されたテンプレートから読み取られた[<city>,<state>]という情報が表示されており、また、<city>と<state>は選択可能になっている。
ステップ3
最初に、ユーザが、データ・アセンブル・パネル(704)内の<city>を選択する。該選択に応じて、<city>というタグ情報と文字列型(String)という型情報に基づいて、画面内で選択可能な他のコンポーネントの出力プロパティとの間で類似度が計算される。そして、類似度又は類似度に基づく表示(図7Aではバーである)が画面上に表示される(図7A)。また、<city>を選択した時点で、<city>周辺に接続先アイコンが、また、コンポーネント(702)及びコンポーネント(705)の各プロパティ横に接続元アイコンが表示される(図7B)。
ステップ4
ユーザは類似度を参考にしながら、接続元アイコンを<city>の接続先アイコンへつなげて、接続を行う。
【0077】
図8Aは、本発明の別の実施態様である、属性情報を使用してソース・コンポーネントの接続先の候補を絞り込む態様を示す。
検索ボックス・コンポーネント(802)は、ウェブ・アプリケーション内の他のコンポーネントに対して検索パラメータを与えるコンポーネントである。
接続を開始したコンポーネントがソース・コンポーネントとなるため、図8Aにおける検索ボックス・コンポーネント(802)は、ソース・コンポーネントである。また、他のコンポーネント(803〜807)は、ターゲット・コンポーネントである。
図8Aでは、ソース・コンポーネント(802)の接続元アイコン(808)が表示されている。
ソース・コンポーネント(802)では、トリガーとなるイベント及び出力プロパティの選択が可能である。どのような出力プロパティを持つかは、ソース・コンポーネント(802)に依存して決まり、ユーザは、コンポーネントの持つ出力プロパティの少なくとも1つを選択することが可能である。コンポーネントが、出力プロパティとして、例えばvalue1、value2及びvalue3を持つ場合、ユーザは、value1、value2及びvalue3のうちから少なくとも1つの出力プロパティを選択することが可能である。
ターゲット・コンポーネント(803〜807)それぞれは、入力プロパティを有する。例えば、マップ・コンポーネント(806)は、データの入力を受け付けるプロパティとして、address、location、zoomLevel及びshowControlsを持つ。
【0078】
図8Bは、一見してソース・コンポーネント(802)が接続しうるように見える、全てのターゲット・コンポーネント(803〜807)の全てのプロパティを示す。
ターゲット・コンポーネント又はプロパティが多数存在し、結果としてソース・コンポーネント(802)の接続先の候補が多数存在する場合においては、ユーザがソース・コンポーネント(802)が接続しうるターゲット・コンポーネントのプロパティを見つけることは容易ではない。
図8Bにおいて、点線の矢印は接続先の候補が存在することを説明するためのものであり、実際のアプリケーションで表示されるものではない。
【0079】
図8Cは、本発明の別の実施態様である、ソース・コンポーネント(802)の接続先の候補が、ある程度絞り込まれた様子を示す。
ソース・コンポーネント(802)の出力プロパティがターゲット・コンポーネント(803〜807)の入力プロパティと接続可能であるかどうかは、属性情報に基づいて決定されうる。ターゲット・コンポーネント(803〜807)の入力プロパティが、ソース・コンポーネント(802)の出力プロパティの属性情報の一部又は全部を含むことによって、ターゲット・コンポーネントの入力プロパティ上又はその近傍に接続先アイコンが表示される。ソース・コンポーネント(802)の出力プロパティの属性情報が例えば文字列型である場合、ターゲット・コンポーネントの入力プロパティのうち文字列型であるもの表示上又はその近傍に接続先アイコンが表示される。検索ボックス・コンポーネント(802)の場合は、文字列型である。また、ソース・コンポーネント(802)及びターゲット・コンポーネント(803〜807)それぞれに関連付けられたトピック名を用いてもよい。
接続可能なプロパティの表示上又はその近傍にのみ接続先アイコン(ソケット・アイコン)が表示されている。ターゲット・コンポーネントの接続先アイコン(809)は例えばソース・コンポーネント(802)の接続元アイコン(808)に対応する形状をしている。
【0080】
図9は、本発明の実施態様である、ウェブ・アプリケーションを実行するために必要なコンピュータ・システムの構成図を示す。
コンピュータ・システム(901)は、取得部(902)、照合部(903)、計算部(904)、表示部(905)、許可部(906)及び変更部(907)を含む。コンピュータ・システム(901)は、インターネット(909)又はイントラネットを介して、ウェブ・サーバ・システム(910)に接続されている。
取得部(902)は、本発明の実施態様である、ソース・コンポーネント以外のターゲット・コンポーネントのプロパティに付与されたタグを記憶部内に取得する。取得部(902)はまた、本発明の他の実施態様である、ソース・コンポーネントの属性情報(第1の属性情報)及びターゲット・コンポーネントの属性情報(第2の属性情報)を記憶部内に取得する。
照合部(903)は、本発明の実施態様である、ターゲット・コンポーネントのプロパティに付与されたタグからソース・コンポーネント上に収集され、ソース・コンポーネント上でユーザによって選択されたタグ(第1のタグ)と、ターゲット・コンポーネントのプロパティに付与されたタグ(第2のタグ)とを照合し、第2のタグが第2のタグを含むかどうかを照合する。照合部(903)はまた、本発明の他の実施態様である、第1の属性情報と第2の属性情報とを照合し、第1の属性情報が第2の属性情報の一部又は全部と合致するかどうかを判定する。
計算部(904)は、本発明の実施態様である、ユーザによって選択された1以上の第1のタグと第2のタグとを照合して、類似度を計算する。計算部(904)はまた、本発明の他の実施態様である、第1の属性情報と第2の属性情報とを照合して、類似度を計算する。
表示部(905)は、ソース・コンポーネント及びターゲット・コンポーネントを表示装置上に表示する。表示部(905)はまた、ソース・コンポーネントの出力フィールドと該ソース・コンポーネントが接続されうるターゲット・コンポーネントの入力フィールドとの間のリンク線を表示装置上に表示する。表示部(905)はまた、ソース・コンポーネントの接続元アイコン(第1の接続アイコン)とターゲット・コンポーネントの接続先アイコン(第2の接続アイコン)を表示装置上に表示する。表示部(905)はまた、類似度又は該類似度に基づく表示を表示装置上に表示する。
許可部(906)は、本発明の実施態様である、第1のタグのうちの少なくとも1つをユーザに選択することを許す。
変更部(907)は、ソース・コンポーネントの操作に応じて、該第1の接続アイコンが接続された第2の接続アイコンを有するターゲット・コンポーネントの内容を自動的に変更する。変更部(907)はまた、ターゲット・コンポーネントの操作に応じて、該ターゲット・コンポーネントに対応する第2の接続アイコンが接続された第1の接続アイコンを有するソース・コンポーネントの内容を自動的に変更する。
記憶部(908)は、コンポーネントを記憶する。
【0081】
図10は、本発明の実施態様における、図9に示したコンピュータ・システムのブロック図を示す。
コンピュータ・システム(1001)は、CPU(1002)とメイン・メモリ(1003)と含み、これらはバス(1004)に接続されている。CPU(1002)は好ましくは、32ビット又は64ビットのアーキテクチャに基づくものであり、例えば、インテル社のXeon(商標)シリーズ、Core(商標)シリーズ、Atom(商標)シリーズ、Pentium(商標)シリーズ、Celeron(商標)シリーズ、AMD社のPhenom(商標)シリーズ、Athlon(商標)シリーズ、Turion(商標)シリーズ及びSempron(商標)などを使用することができる。バス(1004)には、ディスプレイ・コントローラ(1005)を介して、LCDモニタなどのディスプレイ(1006)が接続される。ディスプレイ(1006)は、そのコンピュータ・システム(1001)上で動作中のソフトウェアについての情報を、適当なグラフィック・インタフェースで表示するために使用される。バス(1004)にはまた、IDE又はS−ATAコントローラ(1007)を介して、ハードディスク又はシリコン・ディスク(1008)と、CD、DVD又はBlu−rayドライブ(1009)が接続されている。CD、DVD又はBDドライブ(1009)は、必要に応じて、CD−ROM、DVD−ROM又はBDからプログラムをハードディスク又はシリコン・ディスク(1008)に導入するために使用される。バス(1004)にはさらに、キーボード・マウスコントローラ(1010)を介して、或いはUSBコントローラ(図示せず)を介して、キーボード(1011)及びマウス(1012)が接続されている。
【0082】
通信インタフェース(1014)は、例えばイーサネット(商標)プロトコルに従うものであり、通信コントローラ(1013)を介してバス(1004)に接続される。通信インタフェース(1014)は、コンピュータ・システム(1001)及び通信回線(1015)を物理的に接続する役割を担い、コンピュータ・システム(1001)のオペレーティング・システムの通信機能のTCP/IP通信プロトコルに対して、ネットワーク・インタフェース層を提供する。通信回線は、有線LAN環境、或いは例えばIEEE802.11a/b/g/nなどの無線LAN接続規格に基づく無線LAN環境であってもよい。
【0083】
以上、実施態様に基づき本発明を説明してきたが、本実施態様に記載されている内容は、本発明の一例であり、当業者なら、本発明の技術的範囲を逸脱することなく、様々な変形例に想到できることが明らかであろう。

【特許請求の範囲】
【請求項1】
ウェブ・アプリケーション内のコンポーネント同士を接続するに際してコンポーネントの接続先候補を提示するための方法であって、
少なくとも2のコンポーネントを表示装置上に表示するステップであって、前記各コンポーネントは、コンポーネント同士を接続するために利用するタグがコンポーネントのプロパティに付与されている、前記表示するステップと、
前記少なくとも2のコンポーネントのうちの1つのコンポーネント(以下、第1のコンポーネント)においてタグ(以下、第1のタグ)のうちの少なくとも1つをユーザに選択することを許すステップであって、前記第1のタグは、前記第1のコンポーネント以外のコンポーネント(以下、第2のコンポーネント)のプロパティに付与されたタグ(以下、第2のタグ)が、前記第1のコンポーネントに収集されたものである、前記許すステップと、
前記選択された第1のタグと同じタグを有する第2のコンポーネントを特定するステップと、
前記特定された第2のコンポーネントを提示するステップと
を含む、前記方法。
【請求項2】
前記許すステップが、
前記少なくとも2のコンポーネントのうちの1つ(第1のコンポーネント)を選択することを許すステップと、
前記選択されたコンポーネント(第1のコンポーネント)以外の第2のコンポーネントから第2のタグを収集するステップと、
前記収集された第2のタグを、前記選択されたコンポーネント(第1のコンポーネント)上で第1のタグとして表示するステップと
をさらに含む。
【請求項3】
前記許すステップが、
コンポーネントの接続編集モードの起動に応じて、コンポーネントごとに、プロパティ、イベント又はそれらの組み合わせを表示するステップをさらに含む、請求項1に記載の方法。
【請求項4】
前記許すステップが、
ユーザによる第1のタグの表示要求に応じて、前記第1のタグを表示するステップをさらに含む、請求項1に記載の方法。
【請求項5】
前記第1のタグの表示要求がユーザによるイベントの選択である、請求項4に記載の方法。
【請求項6】
前記許すステップが、前記第1のタグの一覧をリストボックスにより前記表示装置上に表示するステップを含む、請求項1に記載の方法。
【請求項7】
前記タグが、型名、プロパティ名、制約、注釈、又はテンプレートである、請求項6に記載の方法。
【請求項8】
前記特定するステップが、前記選択された第1のタグと同じタグを有する第2のコンポーネントに含まれるプロパティを特定するステップをさらに含む、請求項1に記載の方法。
【請求項9】
前記提示するステップが、前記特定された第2のタグを付与された第2のコンポーネントのプロパティをユーザに提示するステップをさらに含む、請求項1に記載の方法。
【請求項10】
前記選択された第1のタグと前記第2のコンポーネントの各プロパティに付与されたタグとを照合して、類似度を計算するステップ
をさらに含む、請求項1に記載の方法。
【請求項11】
前記計算された類似度又は該類似度に基づく表示を、前記第2のタグを付与されたプロパティ上に表示するステップ
をさらに含む、請求項10に記載の方法。
【請求項12】
前記第1のコンポーネントの出力と該第1のコンポーネントが接続されうる第2のコンポーネントの入力との間のリンク線を前記表示装置上に表示するステップをさらに含む、請求項1に記載の方法。
【請求項13】
前記第1のコンポーネントの接続アイコン(第1の接続アイコン)を前記第1のコンポーネント上又はその近傍に表示するステップと、
前記選択された第1のタグの一部又は全部と合致することに応じて、該合致した第2のコンポーネントの接続アイコン(第2の接続アイコン)を前記第2のコンポーネント上又はその近傍に表示するステップと
をさらに含む、請求項1に記載の方法。
【請求項14】
前記第2の接続アイコンを前記第2のコンポーネント上又はその近傍に表示するステップが、前記選択された第1のタグと合致するタグを付与されたプロパティの表示上又はその近傍に表示するステップをさらに含む、請求項13に記載の方法。
【請求項15】
前記第1の接続アイコンが前記第2の接続アイコンのうちの1つに接続されることに応じて、前記第1のコンポーネントと、前記第1の接続アイコンが接続された第2の接続アイコンとの間にリンク線を表示するステップをさらに含む、請求項1に記載の方法。
【請求項16】
前記第1のコンポーネントの操作に応じて、該第1のコンポーネントの出力が接続された前記第2のコンポーネントの入力の情報を変更するステップをさらに含む、請求項1に記載の方法。
【請求項17】
前記第2のコンポーネントの操作に応じて、該第2のコンポーネントの入力が接続された前記第1のコンポーネントの出力の情報を変更するステップをさらに含む、請求項1に記載の方法。
【請求項18】
前記コンポーネントがマッシュアップ・コンポーネントである、請求項1に記載の方法。
【請求項19】
ウェブ・アプリケーション内のコンポーネント同士を接続するに際してコンポーネントの接続先候補を提示するためのコンピュータ・システムであって、
少なくとも2のコンポーネントを表示する表示部であって、前記各コンポーネントは、コンポーネント同士を接続ために利用するタグがコンポーネントのプロパティに付与されている、前記表示部と、
前記少なくとも2のコンポーネントのうちの1つのコンポーネント(以下、第1のコンポーネント)においてタグ(以下、第1のタグ)のうちの少なくとも1つをユーザに選択することを許す許可部であって、前記第1のタグは、前記第1のコンポーネント以外のコンポーネント(以下、第2のコンポーネント)のプロパティに付与されたタグ(以下、第2のタグ)が、前記第1のコンポーネントに収集されたものである、前記許可部と、
前記選択された第1のタグと同じタグを有する第2のコンポーネントを特定する特定部と、
前記特定された第2のコンポーネントをユーザに提示する提示部と
を含む、前記コンピュータ・システム。
【請求項20】
ウェブ・アプリケーション内のコンポーネント同士を接続するに際してコンポーネントの接続先候補を提示するための方法であって、
少なくとも2のコンポーネントを表示装置上に表示するステップであって、前記各コンポーネントは、前記コンポーネントに関連付けられた属性情報又はトピック名を有する、前記表示するステップと、
前記コンポーネントのうちの1つのコンポーネント(以下、第1のコンポーネント)に関連付けられた属性情報の少なくとも1つ又はトピック名が、前記コンポーネントのうちの他のコンポーネント(以下、第2のコンポーネント)に関連付けられた属性情報又はトピック名の一部又は全部と合致することを判定する判定部と、
前記合致した第2のコンポーネントを提示するステップと
を含む、前記方法。
【請求項21】
ウェブ・アプリケーション内のコンポーネント同士を接続するに際してコンポーネントの接続先候補を提示するためのコンピュータ・システムであって、
少なくとも2のコンポーネントを表示する表示部であって、前記各コンポーネントは、前記コンポーネントに関連付けられた属性情報又はトピック名を有する、前記表示部と、
前記コンポーネントのうちの1つのコンポーネント(以下、第1のコンポーネント)に関連付けられた属性情報の少なくとも1つ又はトピック名が、前記コンポーネントのうちの他のコンポーネント(以下、第2のコンポーネント)に関連付けられた属性情報又はトピック名の一部又は全部と合致することを判定する判定部と、
前記合致した第2のコンポーネントを提示する提示部と
を含む、前記コンピュータ・システム。
【請求項22】
コンピュータ・システムに、請求項1〜18又は20のいずれか一項に記載の方法の各ステップを実行させるコンピュータ・プログラム。

【図1】
image rotate

【図2】
image rotate

【図3A】
image rotate

【図3B】
image rotate

【図3C】
image rotate

【図3D】
image rotate

【図3E】
image rotate

【図3F】
image rotate

【図3G】
image rotate

【図3H】
image rotate

【図3I】
image rotate

【図4A】
image rotate

【図4B】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7A】
image rotate

【図7B】
image rotate

【図8A】
image rotate

【図8B】
image rotate

【図8C】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2010−176195(P2010−176195A)
【公開日】平成22年8月12日(2010.8.12)
【国際特許分類】
【出願番号】特願2009−15625(P2009−15625)
【出願日】平成21年1月27日(2009.1.27)
【出願人】(390009531)インターナショナル・ビジネス・マシーンズ・コーポレーション (4,084)
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MASCHINES CORPORATION
【復代理人】
【識別番号】100085545
【弁理士】
【氏名又は名称】松井 光夫
【復代理人】
【識別番号】100118599
【弁理士】
【氏名又は名称】村上 博司
【Fターム(参考)】