(57)【要約】【課題】アプリケーション開発者がデザインしたユーザインタフェースの表現を個々のユーザにとって使いやすいＵＩ部品に置き換えて、より使いやすいユーザインタフェースにカスタマイズし、操作性を高めることができるユーザインタフェース制御装置及びその方法を提供する。【解決手段】クライアントコンピュータ１０１は、ユーザインタフェースの表現を記述する要素と、ユーザインタフェースで表現されるデータモデルを記述する要素とを含むアプリケーション・ソフトをアプリケーションサーバ１０２からネットワーク１０３を介して通信部２０５が取得し、ＵＩ部品検索部２０７が、データモデルの要素と置換可能なユーザの好みの表現を持ったＵＩ部品を個人ＵＩ部品ライブラリ２０６から検索する。そして、アプリケーション・ソフト内の第２の要素を検索されたＵＩ部品にＵＩ部品置き換え部２０８が置き換える。【選択図】  図２
2005031995.tif 000002
【特許請求の範囲】
【請求項１】
ユーザインタフェースの表現を記述する第１の要素と、該ユーザインタフェースで表現されるデータモデルを記述する第２の要素とを含むアプリケーション・ソフトを取得する取得手段と、
所定のデータモデルを記述する第３の要素とその表現を記述する第４の要素をペアで保持する保持手段と、
前記アプリケーション・ソフト内の前記第２の要素と置換可能な第３の要素を前記保持手段から検索する検索手段と、
前記アプリケーション・ソフト内の前記第１の要素を、前記第２の要素と置換可能な前記第３の要素とペアの前記第４の要素に置換する置換手段と
を備えることを特徴とするユーザインタフェース制御装置。
【請求項２】
前記検索手段が、前記第２の要素として記述された前記データモデルと前記第３の要素として記述された前記所定のデータモデルとが同種の場合、該第３の要素が置換可能であると判定して、前記保持手段から該第３の要素を検索することを特徴とする請求項１に記載のユーザインタフェース制御装置。
【請求項３】
前記検索手段が、前記第２の要素として記述された前記データモデルのデータタイプと前記第３の要素として記述された前記所定のデータモデルのデータタイプとが類似の場合、該第３の要素を置換可能であると判定して、前記保持手段から該第３の要素を検索することを特徴とする請求項１に記載のユーザインタフェース制御装置。
【請求項４】
前記取得手段が、互いに分離し、所定の記述言語で記述された前記第１の要素と前記第２の要素とを含む前記アプリケーション・ソフトを取得することを特徴とする請求項１から３までのいずれか１項に記載のユーザインタフェース制御装置。
【請求項５】
前記第２の要素及び前記第３の要素が共に文字列で記述されたデータモデルであって、
前記検索手段が、前記アプリケーション・ソフト内の前記第２の要素に関するデータモデルの文字列と同一の文字列を有するデータモデルに関する第３の要素を前記保持手段から検索する
ことを特徴とする請求項２に記載のユーザインタフェース制御装置。
【請求項６】
前記第２の要素及び前記第３の要素が、整数又は文字列を含むデータ型が記述されたデータモデルであって、
前記検索手段が、前記アプリケーション・ソフト内の前記第２の要素に関するデータモデルのデータ型と同一又は類似のデータ型を有するデータモデルに関する第３の要素を前記保持手段から検索する
ことを特徴とする請求項３に記載のユーザインタフェース制御装置。
【請求項７】
前記検索手段によって前記保持手段から複数の第３の要素が検索された場合、該複数の第３の要素に関する情報を表示する表示手段と、
前記複数の第３の要素の中から選択された一の要素を前記第３の要素とする選択手段と
をさらに備えることを特徴とする請求項１から６までのいずれか１項に記載のユーザインタフェース制御装置。
【請求項８】
前記第２の要素に関する情報と該第２の要素に類似する要素に係る情報とを組み合わせて登録するペア登録手段をさらに備え、
前記検索手段が、前記ペア登録手段で登録された前記組み合わせに基づいて、前記アプリケーション・ソフト内の前記第２の要素に類似する第３の要素を前記保持手段から検索する
ことを特徴とする請求項３又は６に記載のユーザインタフェース制御装置。
【請求項９】
前記保持手段が、所定のユーザによって管理され、該ユーザの好みの表現で記述されたデータモデルに関する第３の要素を保持することを特徴とする請求項１から８までのいずれか１項に記載のユーザインタフェース制御装置。
【請求項１０】
ユーザインタフェースの表現を記述する第１の要素と、該ユーザインタフェースで表現されるデータモデルを記述する第２の要素とを含むアプリケーション・ソフトを取得する取得手段を有する第１の機器と、
所定のデータモデルを記述する第３の要素を保持する保持手段と、前記アプリケーション・ソフト内の前記第２の要素と置換可能な第３の要素を前記保持手段から検索する検索手段とを有する第２の機器とを備えるユーザインタフェース制御システムであって、
前記第１の機器が、前記アプリケーション・ソフト内の前記第２の要素を前記検索手段によって検索された前記第１の要素に置換する置換手段をさらに有することを特徴とするユーザインタフェース制御システム。
【請求項１１】
前記第１の機器と前記第２の機器とがネットワークを介して接続されていることを特徴とする請求項１０に記載のユーザインタフェース制御システム。
【請求項１２】
前記ユーザインタフェースの表現が、ボタン、テキストボックス、プルダウメニューの少なくとも１つ以上のＧＵＩを含むことを特徴とする請求項１から９までのいずれか１項に記載のユーザインタフェース制御装置。
【請求項１３】
前記ユーザインタフェースの表現が、音声による入出力を含むことを特徴とする請求項１から９までのいずれか１項に記載のユーザインタフェース制御装置。
【請求項１４】
前記第１、第２及び第３の要素が、ＸＭＬで記述されていることを特徴とする請求項１から９までのいずれか１項に記載のユーザインタフェース制御装置。
【請求項１５】
ユーザインタフェースの表現を記述する第１の要素と、該ユーザインタフェースで表現されるデータモデルを記述する第２の要素とを含むアプリケーション・ソフトを取得する取得工程と、
所定のデータモデルを記述する第３の要素とその表現を記述する第４の要素をペアで保持する保持工程と、
前記アプリケーション・ソフト内の前記第２の要素と置換可能な所定のデータモデルを記述する第３の要素を検索する検索工程と、
前記アプリケーション・ソフト内の前記第１の要素を、前記第２の要素と置換可能な前記第３の要素とペアの前記第４の要素に置換する置換工程と
を有することを特徴とするユーザインタフェース制御方法。
【請求項１６】
コンピュータに、
ユーザインタフェースの表現を記述する第１の要素と、該ユーザインタフェースで表現されるデータモデルを記述する第２の要素とを含むアプリケーション・ソフトを取得する取得手順と、
所定のデータモデルを記述する第３の要素とその表現を記述する第４の要素をペアで保持する保持手順と、
前記アプリケーション・ソフト内の前記第２の要素と置換可能な所定のデータモデルを記述する第３の要素を検索する検索手順と、
前記アプリケーション・ソフト内の前記第１の要素を、前記第２の要素と置換可能な前記第３の要素とペアの前記第４の要素に置換する置換手順と
を実行させる制御プログラム。
【請求項１７】
請求項１６に記載の制御プログラムを格納したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データモデルとそれを表現する表現の要素とから成るアプリケーション・ソフトを実行してユーザインタフェースを表現するユーザインタフェース制御技術に関する。
【０００２】
【従来の技術】
一般に、ソフトウェアアプリケーションは、そのアプリケーションの開発者がデザインしたユーザインタフェースを持つ。その多くはＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）であり、ユーザは、マウスやキーボードを用いて、コンピュータ画面上に表示されるＧＵＩによるボタンをクリックしたり、プルダウンメニューから選択したりしながらアプリケーションを操作する。また、近年では、音声認識・合成の技術が進展し、音声ユーザインタフェースによるアプリケーションの操作も可能になってきている。
【０００３】
さらに、ユーザインタフェースをマークアップ言語で記述し、ブラウザでマークアップ言語を実行することによってユーザインタフェースを実現する技術も知られている。現在広く普及しているＨＴＭＬとウエブブラウザは、このような技術の一例であると言える。ＨＴＭＬとウエブブラウザは、もともとはドキュメントの閲覧のための技術であったが、ＨＴＭＬのフォームやウエブサーバ側のＣＧＩ（Ｃｏｍｍｏｎ  Ｇａｔｅｗａｙ  Ｉｎｔｅｒｆａｃｅ）の機構により、インタラクションも可能になっている。例えば、ウエブコンテンツの検索を行うサーチエンジンのページでは、検索語を入力するテキストボックスがあり、「検索」ボタンをクリックすることで検索ができる。それ以外にも、ウエブブラウザ上でさまざまなデータを入力しサーバに送信するスタイルが広く普及している。これらの例では、ＨＴＭＬが一種のＧＵＩ記述言語の役割を果たしている。
【０００４】
一方、Ｗ３Ｃ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ  Ｃｏｎｓｏｒｔｉｕｍ）が策定しているＶｏｉｃｅＸＭＬというマークアップ言語は、音声によるインタラクションを記述する言語である。
【０００５】
ユーザインタフェースは、論理的には、「データモデル」の要素と「表現」の要素とに分離して考えることができる。「データモデル」とは、アプリケーションがそのユーザインタフェースを通じてユーザからどのようなデータを得ようとしているのかを表すものである。前述のサーチエンジンの場合は、ユーザから得ようとするものは「検索語」となる文字列であり、これがサーチエンジンのデータモデルである。これは本質的に、ユーザインタフェースの表現とは独立である。一方、「表現」とは、ユーザインタフェースがどのようなモダリティ（ｍｏｄａｌｉｔｙ）で構成されるか（例えば、ＧＵＩや音声等）、そして、ＧＵＩの場合は見た目がどのようになるのかということを表すものである。
【０００６】
サーチエンジンの場合、ＧＵＩをベースとし、検索語を入力するためにテキストボックスというＧＵＩ部品を割り当てている。例えば、検索語がいくつかの文字列の１つに限られている場合であれば、テキストボックスではなく、プルダウンメニューを用いる方法もある。また、近年普及しつつあるボイスポータルの場合は、ユーザから得ようとするものは「検索語」となる文字列であるが、これに対応する表現はテキストボックスではなく、音声入力というモダリティである。
【０００７】
上述のように、「検索」というアプリケーションのユーザインタフェースは、「検索語」というデータモデルを持ち、これに対して、さまざまな表現を割り当てることができる。上記Ｗ３Ｃでは、ＸＦｏｒｍｓと呼ばれるマークアップ言語の仕様を策定している。これは、ユーザインタフェースの表現とデータモデルを分離して記述できるようなＸＭＬベースのマークアップ言語である。
【０００８】
そして、ほとんどのユーザが、通常、上述したようなアプリケーションの開発者がデザインしたユーザインタフェースの表現に従ってアプリケーションの操作を行っている。
【０００９】
尚、上記従来技術は、現在のＷＥＢに相当する技術であり、出願人は、当該技術に関する適切な先行技術文献情報について現時点では把握していない。
【００１０】
【発明が解決しようとする課題】
しかしながら、各ユーザが使用するユーザインタフェースの表現は、上記のようにアプリケーションの開発者がデザインしているので、必ずしもそれぞれのユーザにとって使いやすいものになっているとは限らない。例えば、ユーザ名、住所及び郵便番号等を入力させるユーザインタフェースでは、それぞれの項目ごとにテキストフィールドを割り当て、ユーザにキーボード等で入力される場合がしばしば見受けられる。
【００１１】
例えば、このようなユーザインタフェースで名前のフィールドを埋める場合、多くは自分の名前か、せいぜい自分のまわりの限られた人名である場合が多い。従って、各ユーザからすると、テキストフィールドにユーザ名等をキーボード等を用いて入力するよりは、そのいくつかの名前の候補を持つプルダウンメニューからマウス等で選択するほうが操作が容易である。また、そのいくつかの名前の候補を認識語彙とする音声認識によって入力できるようなユーザインタフェースを好むユーザも多い。
【００１２】
一方、郵便番号を入力するような場合、通常、ユーザがすべての郵便番号を記憶していることはほとんどないと考えられ、多くは何らかの手段を用いて郵便番号を探して、これをテキストフィールドにキーボード等で打ち込む必要がある。これよりは、例えばインターネット上で閲覧可能なＵＲＬ：ｈｔｔｐ：／／ｗｗｗ１．ｓｐｈｅｒｅ．ｎｅ．ｊｐ／ｙｊｋ／ｐｏｓｔａｌ／で示されるような表現を持つユーザインタフェースで、地図やリンクのクリックだけで郵便番号を探し出して入力できれば便利であると考えるユーザも多いであろう。
【００１３】
上述したように、同じデータモデルであっても、どのようなユーザインタフェースの表現が好ましいかは、それぞれのユーザによって異なる。しかし、従来は、アプリケーションの開発者がデザインしたユーザインタフェースの表現に従って各ユーザはユーザインタフェースを操作するしかなく、各ユーザごとに適切な表現を割り当てることはできなかった。
【００１４】
本発明は、このような事情を考慮してなされたものであり、アプリケーション開発者がデザインしたユーザインタフェースの表現を個々のユーザにとって使いやすいＵＩ部品に置き換えて、より使いやすいユーザインタフェースにカスタマイズし、操作性を高めることができるユーザインタフェース制御装置を提供することを目的とする。
【００１５】
【課題を解決するための手段】
上記課題を解決するために、本発明に係るユーザインタフェース制御装置は、ユーザインタフェースの表現を記述する第１の要素と、該ユーザインタフェースで表現されるデータモデルを記述する第２の要素とを含むアプリケーション・ソフトを取得する取得手段と、
所定のデータモデルを記述する第３の要素とその表現を記述する第４の要素をペアで保持する保持手段と、
前記アプリケーション・ソフト内の前記第２の要素と置換可能な第３の要素を前記保持手段から検索する検索手段と、
前記アプリケーション・ソフト内の前記第１の要素を、前記第２の要素と置換可能な前記第３の要素とペアの前記第４の要素に置換する置換手段と
を備えることを特徴とする。
【００１６】
また、本発明に係るユーザインタフェース制御方法は、ユーザインタフェースの表現を記述する第１の要素と、該ユーザインタフェースで表現されるデータモデルを記述する第２の要素とを含むアプリケーション・ソフトを取得する取得工程と、
所定のデータモデルを記述する第３の要素とその表現を記述する第４の要素をペアで保持する保持工程と、
前記アプリケーション・ソフト内の前記第２の要素と置換可能な所定のデータモデルを記述する第３の要素を検索する検索工程と、
前記アプリケーション・ソフト内の前記第１の要素を、前記第２の要素と置換可能な前記第３の要素とペアの前記第４の要素に置換する置換工程と
を有することを特徴とする。
【００１７】
【発明の実施の形態】
以下、図面を参照して、本発明の好適な実施形態について詳細に説明する。
【００１８】
＜第１の実施形態＞
図１は、本発明の第１の実施形態に係るユーザインタフェース制御システムの構成図である。第１の実施形態では、図１に示すように、ユーザがクライアントコンピュータを用いて、アプリケーションサーバから提供されるアプリケーション・ソフトをネットワークを介してダウンロードし操作するケースを想定する。図１において、１０１は、ユーザが使用するクライアントコンピュータ、１０２は、アプリケーションサーバ、１０３は、インターネット等のネットワークである。
【００１９】
図２は、第１の実施形態に係るクライアントコンピュータ１０１の細部構成を示すブロック図である。図２において、２０１は、出力部であり、ＧＵＩを表示したり、音声出力をしたりするモジュールである。２０２は、入力部であり、キーボードやマウスによるＧＵＩへの入力や音声入力を受け付けるモジュールである。２０３は、ＭＬ（Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）解釈部であり、アプリケーションサーバ１０２からダウンロードされるアプリケーション・ソフトのユーザインタフェース記述言語を解釈するモジュールである。
【００２０】
また、２０４は、ＵＩ（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）実行部であり、ユーザインタフェース記述言語の内容を実行するモジュールである。２０５は、通信部であり、インターネット等のネットワーク１０３を介してアプリケーションサーバ１０２と通信し、ユーザインタフェース記述言語をダウンロードしたり、ユーザから入力されたデータをアプリケーションサーバ１０２へ送信したりする。２０６は、個人ＵＩ部品ライブラリであり、さまざまなデータモデルに対するユーザの好みのユーザインタフェース表現を集めたものである。尚、各データモデルはユーザインタフェース記述言語で記述されている。
【００２１】
２０７は、ＵＩ部品検索部であり、アプリケーションサーバ１０２からダウンロードしたアプリケーション・ソフトのユーザインタフェース記述言語のデータモデルをキーとして個人ＵＩ部品ライブラリ２０６の中から所定の部品（データモデル）を検索する。２０８は、ＵＩ部品置き換え部であり、ＵＩ検索部２０７で検索されたユーザインタフェースの部品に置き換えるモジュールである。
【００２２】
図３は、第１の実施形態に係るクライアントコンピュータ１０１のハードウェア構成図である。図３において、３０１はＣＰＵであり、後述する手順を実現するプログラムに従って動作する。３０２はＲＡＭであり、ＣＰＵ３０１による後述するプログラムの動作に必要な記憶領域を提供する。３０３はＲＯＭであり、後述する手順を実現するプログラムを保持する。３０４は液晶表示装置（ＬＣＤ）であり、ＧＵＩの表示等を行う。３０５は入力装置として機能するキーボードである。３０６は入力装置として機能するマウスである。３０７はスピーカであり、音声出力を行う。３０８はマイクであり、ユーザからの音声入力を受け付ける。３０９は通信デバイスであり、インターネット等のネットワーク１０３に接続して、アプリケーションサーバ１０２との通信を行う。３１０はクライアントコンピュータ１０１の内部バスである。
【００２３】
ここで、本実施形態におけるクライアントコンピュータ１０１の動作手順を説明する前に、ユーザインタフェース記述言語について説明する。図５は、第１の実施形態において使用されるユーザインタフェース記述言語とその図式表現の一例を説明するための図である。図５において、５Ａに示すように、第１の実施形態におけるユーザインタフェース記述言語はＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）で記述されているものとする。このユーザインタフェース記述言語は、Ｗ３Ｃが標準化を進めている言語仕様であるＸＨＴＭＬ、ＸＦｏｒｍｓを利用した例になっている。
【００２４】
図５において、５Ａの＜ｘｆ：ｍｏｄｅｌ＞〜＜／ｘｆ：ｍｏｄｅｌ＞要素の中身がデータモデルを表現している。この例では、”ＰｅｒｓｏｎＮａｍｅ”、”Ｅｍａｉｌ”、”Ｃｏｍｐａｎｙ”、”ＺｉｐＣｏｄｅ”、”Ａｄｄｒｅｓｓ”という５つのデータを入力することを目的としたユーザインタフェースであることを示している。尚、これらはＸＦｏｒｍｓの仕様である。
【００２５】
一方、５Ａにおいて、＜ｂｏｄｙ＞〜＜／ｂｏｄｙ＞要素の中身が、ユーザインタフェースの表現を記述したものである。ここで、＜ｉｎｐｕｔ  ｔｙｐｅ＝”ｔｅｘｔ”・・・・＞はＧＵＩのテキストボックスを意味しており、ＸＨＴＭＬの仕様である。また、＜ｉｎｐｕｔ／＞要素の”ｒｅｆ”属性は、対応するデータモデルを示すものであり、ＸＦｏｒｍｓの仕様である。すなわち、５Ａで示される記述言語は、”ＰｅｒｓｏｎＮａｍｅ”、”Ｅｍａｉｌ”、”Ｃｏｍｐａｎｙ”，”ＺｉｐＣｏｄｅ”、”Ａｄｄｒｅｓｓ”という５つのデータを入力するためにテキストボックスが利用されることを表している。
【００２６】
５Ａで示すような記述言語をＭＬ解釈部２０３で解釈してＵＩ実行部２０４で実行すると、５Ｂに示すようなＧＵＩ表現になる。また、５Ｃはデータモデルを図式的に表したものであり、実際には表示されない。以降、データモデルを図式的に表現する場合は、５Ｃに示すように表現する。
【００２７】
次に、個人ＵＩ部品ライブラリ２０６について説明する。個人ＵＩ部品ライブラリ２０６は、前述のように、ユーザの好みの表現を持ったＵＩの部品を集めたものである。図６は、第１の実施形態に係る個人ＵＩ部品ライブラリ２０６に登録されたＵＩ部品の図式表現を示す図である。本実施形態では、図６に示すように、個人ＵＩ部品ライブラリ２０６には、”ＵｓｅｒＮａｍｅ”、”Ｅｍａｉｌ”というデータモデルに対応付けられた３つのＵＩ部品が登録されているケースを考える。
【００２８】
図７は、第１の実施形態に係る個人ＵＩ部品ライブラリ２０６に登録されたＵＩ部品６０１を説明するための図である。図７において、７Ａは図６におけるＵＩ部品６０１の記述言語である。また、７ＢはそのＧＵＩ表現、７Ｃはデータモデルを図式的に表現したものである。図７では、７Ａに示すように、１つのＵＩ部品は＜ｐａｒｔ＞〜＜／ｐａｒｔ＞要素の中に記述される。一方、ＵＩ部品の表現に関する部分は、７Ａにおいて＜ｐｒｅｓｅｎｔａｔｉｏｎ＞〜＜／ｐｒｅｓｅｎｔａｔｉｏｎ＞要素の中に記述される。図７では、ＵＩ部品６０１が、”ＵｓｅｒＮａｍｅ”というデータモデルに値を埋めるために、「鈴木太郎」、「野田英雄」、「佐々木次郎」という３つの値を持つプルダウンメニューを割り当てたものであることを表現している。
【００２９】
図５に示すように、本実施形態では、所定の記述言語でインタフェースの表現を記述した第１の要素と、所定の記述言語でデータモデルを記述した第２の要素とが、互いに分離したアプリケーション・ソフトを通信部２０５が取得することを特徴とする。
【００３０】
図８は、第１の実施形態に係る個人ＵＩ部品ライブラリ２０６に登録されたＵＩ部品６０２を説明するための図である。図８では、図７と同じ”ＰｅｒｓｏｎＮａｍｅ”というデータモデルに対し、音声入力を割り当てたものであることを表現している。図８において、８Ａで示されるように音声入力部品は＜ｌｉｓｔｅｎ＞〜＜／ｌｉｓｔｅｎ＞要素で記述される。また、＜ｇｒａｍｍａｒ＞〜＜／ｇｒａｍｍａｒ＞要素は、当該音声入力部品（ＵＩ部品６０２）の音声認識文法を記述するものである。すなわち、８Ａは、「スズキタロー」、「ノダヒデオ」、「ササキジロー」の３つの認識語彙を持つことを表現している。
【００３１】
同様に、図９は、第１の実施形態に係る個人ＵＩ部品ライブラリ２０６に登録されたＵＩ部品６０３を説明するための図である。図９では、”Ｅｍａｉｌ”というデータモデルに対し、ＧＵＩ部品のプルダウンメニューを割り当てたものあることを表現している。
【００３２】
上記構成を備えることにより、本実施形態に係るユーザインタフェース制御システムにおけるクライアントコンピュータ１０１は、ユーザインタフェースの表現を記述する第１の要素（例えば、上述した５Ａにおける＜ｂｏｄｙ＞〜＜／ｂｏｄｙ＞要素）と、当該ユーザインタフェースで表現されるデータモデルを記述する第２の要素（例えば、上述した５Ａの＜ｘｆ：ｍｏｄｅｌ＞〜＜／ｘｆ：ｍｏｄｅｌ＞要素）とを含むアプリケーション・ソフトをアプリケーションサーバ１０２からネットワーク１０３を介して通信部２０５が取得する。また、個人ＵＩ部品ライブラリ２０６には、例えば、ユーザの好みの表現を持ったＵＩの部品のような所定のデータモデルを記述する第３の要素が保持されている。ここで、取得したアプリケーション・ソフト内の第２の要素と置換可能な第３の要素を個人ＵＩ部品ライブラリ２０６からＵＩ部品検索部２０７が検索する。そして、当該アプリケーション・ソフト内の第１の要素を，第２の要素と置換可能なデータモデルとしてＵＩ部品検索部２０７によって検索された第３の要素とペアになっている第４の要素にＵＩ部品置き換え部２０８が置換する。
【００３３】
次に、第１の実施形態におけるクライアントコンピュータ１０１の動作手順について説明する。図４は、本発明の第１の実施形態に係るクライアントコンピュータ１０１の動作手順を説明するためのフローチャートである。
【００３４】
まず、通信部２０５が、インターネット等のネットワーク１０３を経由してアプリケーションサーバ１０２から図５の５Ａに示されるようなユーザインタフェース記述言語をダウンロードする（ステップＳ４０１）。次いで、ＭＬ解釈部２０３がこの内容を解釈する（ステップＳ４０２）。そして、ＵＩ実行部２０４がダウンロードされたユーザインタフェース記述言語に沿った実行を開始する前に、ＵＩ部品検索部２０７が、個人ＵＩ部品ライブラリ２０６の中からアプリケーション・ソフトのユーザインタフェース記述言語に対して置き換え可能なＵＩ部品がないかどうかを検索する（ステップＳ４０３）。
【００３５】
例えば、図５において５Ａで示されるユーザインタフェース記述言語には、”ＰｅｒｓｏｎＮａｍｅ”、”Ｅｍａｉｌ”、”Ｃｏｍｐａｎｙ”、”ＺｉｐＣｏｄｅ”、”Ａｄｄｒｅｓｓ”という５つのデータ要素を含むデータモデルが記述されている。そこで、ステップＳ４０３では、”ＰｅｒｓｏｎＮａｍｅ”、”Ｅｍａｉｌ”、”Ｃｏｍｐａｎｙ”、”ＺｉｐＣｏｄｅ”、”Ａｄｄｒｅｓｓ”といったデータモデルに結び付けられたＵＩ部品を個人ＵＩ部品ライブラリ２０６の中から探す。尚、前述のように、個人ＵＩ部品ライブラリ２０６には、ユーザ個々が操作しやすいＵＩ部品等が登録されている。
【００３６】
本実施形態では、個人ＵＩ部品ライブラリ２０６には、図６に示すように”ＰｅｒｓｏｎＮａｍｅ”に結び付けられたＵＩ部品が２つと、”Ｅｍａｉｌ”に結び付けられたＵＩ部品が１つ存在するので、置き換え部品があると判断される（ステップＳ４０４でＹｅｓ）。その結果、ＵＩ部品置き換え部２０８が、当該ＵＩ部品の置き換えを行う（ステップＳ４０５）。すなわち、元のユーザインタフェース記述言語においてデータモデル”ＰｅｒｓｏｎＮａｍｅ”に結びつけられているテキストボックスの代わりに、検索された”ＰｅｒｓｏｎＮａｍｅ”に結び付けられたプルダウンメニューを持つＵＩ部品６０１を割り当てる。
【００３７】
また、ＵＩ部品６０２も”ＰｅｒｓｏｎＮａｍｅ”に結び付けられているので、これも割り当てる。ここで、ＵＩ部品６０１はＧＵＩ部品であり、ＵＩ部品６０２は音声部品であるので、これらは競合せず共存可能であり、両方割り当てることが可能である。さらに、ステップＳ４０５では、元のユーザインタフェース記述言語においてデータモデル”Ｅｍａｉｌ”に結びつけられているテキストボックスの代わりに、ＵＩ部品６０３を割り当てる。
【００３８】
すなわち、本実施形態に係るクライアントコンピュータ１０１では、ＵＩ部品検索部２０７が、第２の要素として記述されたデータモデルのデータモデル名（例えば、上述したＰｅｒｓｏｎＮａｍｅ）と第３の要素として記述されたユーザの好みのデータモデルのデータモデル名とが同種（例えば、上述したＰｅｒｓｏｎＮａｍｅ）の場合、当該第３の要素が置換可能であると判定して、個人ＵＩ部品ライブラリ２０６からその第３の要素を検索することを特徴とする。また、本実施形態では、上記第２の要素及び第３の要素が共に文字列で記述されたデータモデルであって、ＵＩ部品検索部２０７が、アプリケーション・ソフト内の第２の要素に関するデータモデルの文字列と同一の文字列を有するデータモデルに関する第３の要素を個人ＵＩ部品ライブラリ２０６から検索することを特徴とする。
【００３９】
図１０は、本発明の第１の実施形態に係るアプリケーション・ソフトのユーザインタフェースの部品の一部を個人ＵＩ部品ライブラリ２０６で置き換えた場合のＧＵＩ表現を示す図である。図１０に示すように、上述した処理の結果、最終的に得られるユーザインタフェースの表現では、「氏名」、「電子メール」の欄をテキストボックスに対するキーボード入力ではなく、プルダウンメニューからの選択で入力することが可能になる。また、「氏名」欄に対しては、さらに、音声入力も可能である。
【００４０】
ステップＳ４０５の置き換え処理の後、置き換えられたアプリケーション・ソフトによるユーザインタフェースを用いて所定の入力等を実行する（ステップＳ４０６）。尚、ステップＳ４０４で個人ＵＩ部品ライブラリ２０６に置き換え可能なデータモデルが見つからなかった場合（Ｎｏ）、元のユーザインタフェース記述言語をそのまま実行するだけである（ステップＳ４０６）。例えば、この場合は、図５の５Ｂで示されるようなＧＵＩ表現で実行される。
【００４１】
その後、所定の終了条件が満たされたか否かが判定され（ステップＳ４０７）、満たされた場合（Ｙｅｓ）は当該処理を終了し、まだの場合（Ｎｏ）はステップＳ４０６に戻る。
【００４２】
＜第２の実施形態＞
上述した第１の実施形態では、置き換えるためのＵＩ部品ライブラリがユーザのクライアントコンピュータ１０１上に保持された「個人ＵＩ部品ライブラリ２０６」である場合について説明した。これに対し、ＵＩ部品ライブラリは、ユーザとは別の第三者によってネットワークを通じて提供され、さまざまなユーザから利用可能にする形態も考えられる。そこで、第２の実施形態では、図１１に示すように、図１のシステムにおけるクライアントコンピュータ１０１とアプリケーションサーバ１０２に加え、ユーザとは別の第三者がＵＩ部品を提供するためのＵＩ部品検索サーバがインターネット等のネットワーク上に存在するケースを想定する。
【００４３】
図１１は、本発明の第２の実施形態に係るユーザインタフェース制御システムの構成図である。図１１において、１１０１は、クライアントコンピュータである。１１０２は、アプリケーションサーバである。１１０３は、インターネット等のネットワークである。１１０４は、第三者がＵＩ部品を提供するためのＵＩ部品検索サーバである。
【００４４】
図１２は、第２の実施形態に係るクライアントコンピュータ１１０１の細部構成を示すブロック図である。図１２に示すクライアントコンピュータ１１０１は、図１に示すクライアントコンピュータ１０１とほぼ同じ構成であるが、個人ＵＩ部品ライブラリ２０６の代わりに、ＵＩ検索サーバＵＲＬリスト１２０６を有する点で異なる。このＵＩ検索サーバＵＲＬリスト１２０６は、ＵＩ部品検索サーバ１１０４のＵＲＬを含むインターネット等のネットワーク１１０３上のＵＩ部品検索サーバのＵＲＬを記録したものである。
【００４５】
すなわち、本実施形態におけるユーザインタフェース制御システムは、ユーザインタフェースの表現を記述する第１の要素と、当該ユーザインタフェースで表現されるデータモデルを記述する第２の要素とを含むアプリケーション・ソフトを取得するクライアントコンピュータ１１０１と、所定のデータモデルを記述する第３の要素とその表現を記述する第４の要素のペアを保持する保持手段と、アプリケーション・ソフト内の第２の要素と置換可能な第３の要素を上記保持手段から検索する検索手段とを有するＵＩ部品検索サーバ１１０４とを備え、クライアントコンピュータ１１０１が、アプリケーション・ソフト内の第１の要素を，第２の要素と置換可能な第３の要素のペアである第４の要素に置換するＵＩ部品置き換え部１２０８をさらに有することを特徴とする。
【００４６】
図１３は、本発明の第２の実施形態に係るクライアントコンピュータ１１０１の動作手順を説明するためのフローチャートである。
【００４７】
まず、通信部１２０５が、インターネット等のネットワーク１１０３を経由してアプリケーションサーバ１１０２から図５の５Ａに示されるようなユーザインタフェース記述言語をダウンロードする（ステップＳ１３０１）。次に、ＭＬ解釈部１２０３がこのインタフェース記述言語の内容を解釈する（ステップＳ１３０２）。そして、ユーザインタフェース記述言語の記述内容に従って、ＧＵＩを表示する（ステップＳ１３０３）。この時点で前述した図５の５Ｂに示すようなＧＵＩが表示される。
【００４８】
ここで、本実施形態では、ユーザは当該ＧＵＩをそのまま利用してデータを入力することもできるが、ＵＩ検索部品サーバ１１０４から別のＵＩ部品を探すこともできる。図１４は、第２の実施形態においてユーザがアプリケーション・ソフトのユーザインタフェースの一つの部品を置き換えるためにテキストボックスを右クリックした場合の例を説明するための図である。すなわち、ユーザが、例えば郵便番号を入力するために他の簡単なＵＩがないかと考えた場合、図１４に示すように、郵便番号のフィールドを右クリックすると、ＵＩ部品検索サーバ１１０４のＵＲＬがリスト表示され、適当なＵＲＬをクリックすることで、当該ＵＲＬのＵＩ部品検索サーバから代替ＵＩ部品を探すことができる。
【００４９】
図１６は、第２の実施形態におけるＵＩ部品検索サーバが返した検索結果をクライアントコンピュータ１１０１上で表示した場合の表示例を示す図である。すなわち、図１６に示すように、検索結果として郵便番号を入力するためのＵＩ部品の候補が、その表現のサムネイル表示が簡単な説明とともにリストアップされる。ここで、ユーザが任意のＵＩ部品を選択して「確定」ボタン１６１をクリックすることで、図１７に示すようなサブウインドウ上で選択したＵＩ部品を利用することができる。図１７は、第２の実施形態におけるアプリケーション・ソフトのユーザインタフェースの一つの部品をＵＩ部品検索サーバからの検索結果に含まれるＵＩ部品の一つで置き換えた場合の例を説明するための図である。
【００５０】
すなわち、本実施形態では、ＵＩ部品検索部１２０７によってＵＩ部品検索サーバＵＲＬリスト１２０６から複数の第３の要素と第４の要素のペア（ＵＩ部品）が検索された場合、当該ペアに関する情報を出力部１２０１が表示する。そして、複数のペアの中からユーザが入力部１２０２によって選択した一の要素を第３の要素および第４の要素のペアとすることを特徴とする。尚、上述した第１の実施形態及び後述する第３の実施形態においても複数の第３の要素と第４の要素のペアが検索された場合、同様に処理をするようにしてもよい。
【００５１】
上記置き換え動作は、図１３のステップＳ１３０４〜ステップＳ１３０７の処理で実現される。ユーザからのＵＩ部品検索要求があった場合（例えば、前述の右クリック）（ステップＳ１３０４）、ＵＩ部品検索部１２０７はＵＩ部品検索サーバＵＲＬリスト１２０６にアクセスして、ＵＩ部品検索サーバ１１０４のＵＲＬリストを取り出し、これをユーザに提示する。そして、ユーザが当該リストから１つを選択すると、ＵＩ部品検索部１２０７は当該ＵＲＬに対して検索要求を出す（ステップＳ１３０５）。
【００５２】
この検索要求には、対象となる郵便番号フィールドに結び付けられたデータモデル”ＺｉｐＣｏｄｅ”の情報を含める。第２の実施形態では、図１８に示すようなＳＯＡＰ（Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）メッセージをＨＴＴＰでＵＩ部品検索サーバ１１０４に送信する。すなわち、図１８は、第２の実施形態に係るクライアントコンピュータ１１０１からＵＩ部品検索サーバ１１０４に送信される検索要求メッセージの一例を示す図である。
【００５３】
ここで、前述した検索要求メッセージを受けたＵＩ部品検索サーバ１１０４は、データモデル”ＺｉｐＣｏｄｅ”に結び付けられたユーザインタフェース表現として、図１５に示すような部品を保持しているとする。すなわち、図１５は、第２の実施形態に係るＵＩ部品検索サーバ１１０４が保持するＵＩ部品ライブラリに登録されたＵＩ部品の一例を図式表現した図である。尚、図１５に示すような部品は、前述した７Ａ、８Ａ、９Ａで示されるような記述言語で記述されている。そして、ＵＩ部品検索サーバ１１０４は、図１５に示すようなＵＩ部品を図１９に示すようなＳＯＡＰの返信メッセージとしてクライアントコンピュータ１１０１に返信する。図１９は、第２の実施形態におけるＵＩ部品検索サーバ１１０４からクライアントコンピュータ１１０１へ返信される検索結果メッセージの一例を示す図である。
【００５４】
そして、クライアントコンピュータ１１０１では上記返信メッセージに埋め込まれた検索結果であるＵＩ部品のリストが表示され、ユーザがこの中から１つを選択する（ステップＳ１３０６）。次いで、クライアントコンピュータ１１０１のＵＩ実行部１２０４は、出力部１２０１を通してこれをサブウインドウで表示する。
【００５５】
＜第３の実施形態＞
上記実施形態では、データモデルどうしのマッチングをデータモデルを表す文字列のマッチングによって行っていた。例えば、アプリケーションユーザインタフェースの「氏名」フィールドを置き換えるために、そのデータモデル”ＰｅｒｓｏｎＮａｍｅ”と同じ文字列のデータモデルを持つ部品をライブラリから検索するようにしていた。これは、データモデルの意味を表す語彙が標準化されており、ライブラリ側及びアプリケーション側の両方とも氏名を表現するデータモデルは”ＰｅｒｓｏｎＮａｍｅ”という語彙を用いるという前提があることを想定したものである。しかし、同じ文字列のマッチングによってあらゆる種類のデータモデルの語彙を標準化することは困難である。そこで、第３の実施形態では、データモデルの語彙が事前に標準化されていない場合の動作例について説明する。
【００５６】
第３の実施形態におけるシステム構成は図１１に示す第２の実施形態におけるシステム構成と同じであるが、クライアントコンピュータのブロック図が図２０に示すようになる点で異なる。すなわち、図２０は、第３の実施形態に係るクライアントコンピュータ２１０１の細部構成を示すブロック図である。
【００５７】
第３の実施形態では、まず、データモデルの記述を拡張し、データの型を定義できるようにする。これは、ＸＦｏｒｍｓという公知技術で実現可能である。図２１は、第３の実施形態におけるデータ型の指定を含んだデータモデル記述言語の例を説明するための図である。すなわち、図２１では、データモデルを記述する＜ｘｆ：ｍｏｄｅｌ＞〜＜／ｘｆ：ｍｏｄｅｌ＞要素内に、＜ｘｆ：ｂｉｎｄ／＞という要素を記述して、データ要素のデータ型を記述する例を示している。例えば、図２１において２１Ａは”ＺｉｐＣｏｄｅ”が”ｎｕｍｂｅｒ”、すなわち「番号」という型であることを示している。また、２１Ｂは”ＰｅｒｓｏｎＮａｍｅ”がストリング（文字列）であることを示している。
【００５８】
次に、アプリケーション・ソフトが図２２に示すようなユーザインタフェース記述言語を備えていた場合を考える。図２２は、第３の実施形態に係るアプリケーション・ソフトのユーザインタフェース記述言語とその図式表現を示す図である。例えば、ユーザが「郵便番号」の入力に対して、代替ＵＩ部品の検索要求を出した場合、ＵＩ部品検索サーバ１１０２は、「郵便番号」のデータモデル”ＺｉｐＣｏｄｅ”をキーとして検索する。その結果、名前が”ＺｉｐＣｏｄｅ”そのものであるデータモデルを持ったＵＩ部品がない場合は、そのデータ型である”ｎｕｍｂｅｒ”にマッチするデータ型のデータモデルに結びついたＵＩ部品を検索する。
【００５９】
すなわち、本実施形態では、ＵＩ部品検索部２００７が、第２の要素として記述されたデータモデルのデータモデルと第３の要素として記述された所定のデータモデルのデータモデルとが同種の場合、当該第３の要素が置換可能であると判定して、ＵＩ部品検索サーバＵＲＬリストから当該第３の要素に関する情報を検索することを特徴とする。また、本実施形態においては、第２の要素及び第３の要素が、整数又は文字列を含むデータ型が記述されたデータモデルであって、ＵＩ部品検索部２００７が、アプリケーション・ソフト内の第２の要素に関するデータモデルのデータ型と同一又は類似のデータ型を有するデータモデルに関する第３の要素に関する情報をＵＩ部品検索サーバＵＲＬリストから検索することを特徴とする。
【００６０】
図２３は、第３の実施形態係るＵＩ部品検索サーバ１１０４が保持するＵＩ部品ライブラリに登録されたＵＩ部品の一部を図式表現した図である。第３の実施形態では、上記検索の結果、図２３に示すような３つのＵＩ部品がマッチしたとする。例えば、本実施形態では、”ＺｉｐＣｏｄｅ”という名前のデータモデルはないが、”ｎｕｍｂｅｒ”というデータ型にマッチする”ＰｈｏｎｅＮｕｍｂｅｒ”、”ＰｏｓｔａｌＣｏｄｅ”に結び付けられたＵＩ部品がこの検索でヒットする。この検索結果をクライアントコンピュータ２１０１に返信し、クライアントコンピュータ２１０１で当該候補をユーザに提示すると図２４に示すようになる。
【００６１】
図２４は、第３の実施形態に係るＵＩ部品検索サーバ１１０４が返した検索結果のクライアントコンピュータ２１０１における表示例を示す図である。本実施形態では、データ型によるマッチングであるため、２４Ａに示すように、「電話番号入力」用のＵＩ部品のように、郵便番号入力には適さないＵＩ部品もヒットする。しかしその一方で、２４Ｂ、Ｃに示すように、データモデルが”ＰｏｓｔａｌＣｏｄｅ”という”ＺｉｐＣｏｄｅ”とは異なる語彙で記述されている場合でも、郵便番号入力用ＵＩ部品がヒットする。そして、ユーザは、図２４に示すように表示された候補の中から郵便番号入力に適当な部品を前述したような方法で選択することができる。
【００６２】
例えば、ユーザが２４ＣのＵＩ部品を選択した場合、選択されたＵＩ部品のデータモデル”ＰｏｓｔａｌＣｏｄｅ”が、アプリケーション・ソフトのデータモデル”ＺｉｐＣｏｄｅ”と同じ意味であると推測できる。そこで、ＵＩ部品検索部２００７は、データモデルペアリスト２００９に、データモデルのペア、（”ＺｉｐＣｏｄｅ”，”ＰｏｓｔａｌＣｏｄｅ”）を登録する。図２５は、第３の実施形態に係るデータモデルペアリスト２００９のデータ記述例を示す図である。
【００６３】
そして、ＵＩ部品検索部２００７は、データモデルペアリスト２００９にデータモデルペアが１つ以上登録されている場合、ＵＩ部品検索を行う前にデータモデルペアリスト２００９にアクセスし、検索したいデータモデルと同じ意味を持つ別の語彙を探す。また、”ＺｉｐＣｏｄｅ”で検索したい場合は、図２５に示すデータ記述例から”ＰｏｓｔａｌＣｏｄｅ”も同じ意味であることがわかるので、これを検索要求のメッセージに加える。図２６は、第３の実施形態におけるクライアントコンピュータ２１０１からＵＩ部品検索サーバ１１０４に送信する検索要求メッセージの一例を示す図である。
【００６４】
例えば、
＜ＤａｔａＭｏｄｅｌＮａｍｅ＞
ＺｉｐＣｏｄｅ
＜／ＤａｔａＭｏｄｅｌＮａｍｅ＞
に加えて、
＜ＤａｔａＭｏｄｅｌＮａｍｅ＞
ＰｏｓｔａｌＣｏｄｅ
＜／ＤａｔａＭｏｄｅｌＮａｍｅ＞
が追加された形になる。このようにすることで、語彙レベルでのマッチングの確率を高めることができる。
【００６５】
すなわち、本実施形態に係るクライアントコンピュータ２１０１は、前述した第２の要素に関する情報（例えば、ＺｉｐＣｏｄｅ）と当該第２の要素に類似する要素に係る情報（例えば、ＰｏｓｔａｌＣｏｄｅ）とを組み合わせて登録するデータモデルペアリスト２００９をさらに備え、ＵＩ部品検索部２００７が、データモデルペアリスト２００９で登録された組み合わせに基づいて、アプリケーション・ソフト内の第２の要素に類似する第３の要素に関する情報をＵＩ部品検索サーバＵＲＬリスト２００６から検索することを特徴とする。
【００６６】
＜その他の実施形態＞
上述した実施形態では、プログラムをＲＯＭに保持する場合について説明したが、これに限定されるものではなく、任意の記憶媒体を用いて実現してもよい。また、同様の動作をする回路で実現してもよい。
【００６７】
尚、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【００６８】
プログラムコードを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤーＲＯＭ、ＣＤーＲ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。  また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳなどが実際の処理の一部または全部を行ない、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００６９】
更に、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７０】
【発明の効果】
以上説明したように、本発明によれば、アプリケーション開発者がデザインしたユーザインタフェースの表現を個々のユーザにとって使いやすいＵＩ部品に置き換えて、より使いやすいユーザインタフェースにカスタマイズし、操作性を高めることができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係るユーザインタフェース制御システムの構成図である。
【図２】第１の実施形態に係るクライアントコンピュータ１０１の細部構成を示すブロック図である。
【図３】第１の実施形態に係るクライアントコンピュータ１０１のハードウェア構成図である。
【図４】本発明の第１の実施形態に係るクライアントコンピュータ１０１の動作手順を説明するためのフローチャートである。
【図５】第１の実施形態において使用されるユーザインタフェース記述言語とその図式表現の一例を説明するための図である。
【図６】第１の実施形態に係る個人ＵＩ部品ライブラリ２０６に登録されたＵＩ部品の図式表現を示す図である。
【図７】第１の実施形態に係る個人ＵＩ部品ライブラリ２０６に登録されたＵＩ部品６０１を説明するための図である。
【図８】第１の実施形態に係る個人ＵＩ部品ライブラリ２０６に登録されたＵＩ部品６０２を説明するための図である。
【図９】第１の実施形態に係る個人ＵＩ部品ライブラリ２０６に登録されたＵＩ部品６０３を説明するための図である。
【図１０】本発明の第１の実施形態に係るアプリケーション・ソフトのユーザインタフェースの部品の一部を個人ＵＩ部品ライブラリ２０６で置き換えた場合のＧＵＩ表現を示す図である。
【図１１】本発明の第２の実施形態に係るユーザインタフェース制御システムの構成図である。
【図１２】第２の実施形態に係るクライアントコンピュータ１１０１の細部構成を示すブロック図である。
【図１３】本発明の第２の実施形態に係るクライアントコンピュータ１１０１の動作手順を説明するためのフローチャートである。
【図１４】第２の実施形態においてユーザがアプリケーション・ソフトのユーザインタフェースの一つの部品を置き換えるためにテキストボックスを右クリックした場合の例を説明するための図である。
【図１５】第２の実施形態に係るＵＩ部品検索サーバ１１０４が保持するＵＩ部品ライブラリに登録されたＵＩ部品の一例を図式表現した図である。
【図１６】第２の実施形態におけるＵＩ部品検索サーバが返した検索結果をクライアントコンピュータ１１０１上で表示した場合の表示例を示す図である。
【図１７】第２の実施形態におけるアプリケーション・ソフトのユーザインタフェースの一つの部品をＵＩ部品検索サーバからの検索結果に含まれるＵＩ部品の一つで置き換えた場合の例を説明するための図である。
【図１８】第２の実施形態に係るクライアントコンピュータ１１０１からＵＩ部品検索サーバ１１０４に送信される検索要求メッセージの一例を示す図である。
【図１９】第２の実施形態におけるＵＩ部品検索サーバ１１０４からクライアントコンピュータ１１０１へ返信される検索結果メッセージの一例を示す図である。
【図２０】第３の実施形態に係るクライアントコンピュータ２１０１の細部構成を示すブロック図である。
【図２１】第３の実施形態におけるデータ型の指定を含んだデータモデル記述言語の例を説明するための図である。
【図２２】第３の実施形態に係るアプリケーション・ソフトのユーザインタフェース記述言語とその図式表現を示す図である。
【図２３】第３の実施形態係るＵＩ部品検索サーバ１１０４が保持するＵＩ部品ライブラリに登録されたＵＩ部品の一部を図式表現した図である。
【図２４】第３の実施形態に係るＵＩ部品検索サーバ１１０４が返した検索結果のクライアントコンピュータ２１０１における表示例を示す図である。
【図２５】第３の実施形態に係るデータモデルペアリスト２００９のデータ記述例を示す図である。
【図２６】第３の実施形態におけるクライアントコンピュータ２１０１からＵＩ部品検索サーバ１１０４に送信する検索要求メッセージの一例を示す図である。
【符号の説明】
１０１、１１０１、２１０１  クライアントコンピュータ
１０２、１１０２  アプリケーションサーバ
１０３、１１０３  ネットワーク
２０１、１２０１、２００１  出力部
２０２、１２０２、２００２  入力部
２０３、１２０３、２００３  ＭＬ解釈部
２０４、１２０４、２００４  ＵＩ実行部
２０５、１２０５、２００５  通信部
２０６  個人ＵＩ部品ライブラリ
２０７、１２０７、２００７  ＵＩ部品検索部
２０８、１２０８、２００８  ＵＩ部品置き換え部
１１０４  ＵＩ部品検索サーバ
１２０６、２００６  ＵＩ部品検索サーバＵＲＬリスト
２００９  データモデルペアリスト
【図１】
2005031995.tif 000003
【図２】
2005031995.tif 000004
【図３】
2005031995.tif 000005
【図４】
2005031995.tif 000006
【図５】
2005031995.tif 000007
【図６】
2005031995.tif 000008
【図７】
2005031995.tif 000009
【図８】
2005031995.tif 000010
【図９】
2005031995.tif 000011
【図１０】
2005031995.tif 000012
【図１１】
2005031995.tif 000013
【図１２】
2005031995.tif 000014
【図１３】
2005031995.tif 000015
【図１４】
2005031995.tif 000016
【図１５】
2005031995.tif 000017
【図１６】
2005031995.tif 000018
【図１７】
2005031995.tif 000019
【図１８】
2005031995.tif 000020
【図１９】
2005031995.tif 000021
【図２０】
2005031995.tif 000022
【図２１】
2005031995.tif 000023
【図２２】
2005031995.tif 000024
【図２３】
2005031995.tif 000025
【図２４】
2005031995.tif 000026
【図２５】
2005031995.tif 000027
【図２６】
2005031995.tif 000028