(57)【要約】【課題】  より柔軟に機器間の連携を実現することができる情報処理装置及びその制御方法、情報処理システム、プログラムを提供する。【解決手段】  検索情報生成部２０５は、周辺機器と連携可能な機能を検索するための検索情報を生成する。通信部２０７は、検索情報をネットワーク上の周辺機器へ送信し、その検索情報に対する検索結果をネットワーク上の周辺機器から受信する。ＵＩ部品生成部２０３は、受信した検索結果に基づいて、周辺機器と連携可能な機能を操作するためのユーザインタフェース部品を生成する。ＵＩ部品更新部２０２は、生成したユーザインタフェース部品に基づいて、既存のユーザインタフェースを更新する。【選択図】  図２
2005174027.tif 000002
【特許請求の範囲】
【請求項１】
自身の機能を記述した機能情報とその機能に対応するユーザインタフェース情報を関連付けて保持する周辺機器とネットワークを介して接続され、該周辺機器を操作するためのユーザインタフェースを生成する情報処理装置であって、
周辺機器と連携可能な機能を検索するための検索情報を生成する生成手段と、
前記検索情報を前記ネットワーク上の周辺機器へ送信する送信手段と、
前記検索情報に対する検索結果を前記ネットワーク上の周辺機器から受信する受信手段と、
前記受信手段で受信した検索結果に基づいて、前記周辺機器と連携可能な機能を操作するためのユーザインタフェース部品を生成する生成手段と、
前記生成手段で生成したユーザインタフェース部品に基づいて、既存のユーザインタフェースを更新する更新手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記検索情報は、前記周辺機器の動作種類情報、動作対象情報、各種設定情報、動作結果出力情報のうちの少なくとも一つを含む
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記生成手段は、前記受信手段で受信した検索結果として示される前記周辺機器と連携可能な機能を起動するためのユーザインタフェース部品、及び該機能の各種設定情報を設定するためのユーザインタフェース部品を生成する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記ユーザインタフェースを実行する実行手段を更に備え、
前記更新手段は、前記実行手段が実行する既存のユーザインタフェースに、前記生成手段で生成したユーザインタフェース部品を追加する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記実行手段は、グラフィックユーザインタフェースを実行し、
前記生成手段は、前記グラフィックユーザインタフェースのユーザインタフェース部品を生成する
ことを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記実行手段は、音声ユーザインタフェースを実行し、
前記生成手段は、音声認識文法を含む前記音声インタフェースのユーザインタフェース部品を生成する
ことを特徴とする請求項４に記載の情報処理装置。
【請求項７】
前記受信手段で受信した検索結果に基づいて、前記ネットワーク上の周辺機器間で連携可能な機能の組み合わせを検索する検索手段と、
前記検索手段で検索された前記ネットワーク上の周辺機器間で連携可能な機能の組み合わせに関する情報を登録する登録手段とを更に備え、
前記生成手段は、前記受信手段で受信した検索結果と前記登録手段で登録された情報に基づいて、複数の前記周辺機器を操作するためのユーザインタフェース部品を生成する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項８】
ネットワークを介して接続されるユーザインタフェース機器からの操作を受け付ける情報処理装置であって、
自身の機能を記述した機能情報とその機能に対応するユーザインタフェース情報を関連付けて保持する保持手段と、
前記ユーザインタフェース機器と連携可能な機能を検索するための検索情報を、前記ネットワーク上のユーザインタフェース機器から受信する受信手段と、
前記受信手段で受信した検索情報に基づいて、前記保持手段を参照して、前記ユーザインタフェース機器と連携動作が可能な機能の組み合わせを検索する検索手段と、
前記検索手段で検索された前記ユーザインタフェース機器と連携動作が可能な機能の組み合わせに関する情報を、前記ネットワーク上のユーザインタフェース機器へ送信する送信手段と
を備えることを特徴とする情報処理装置。
【請求項９】
前記機能情報は、当該情報処理装置の動作種類情報、動作対象情報、各種設定情報、動作結果出力情報のうちの少なくとも一つを含む
ことを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記検索手段は、前記受信手段で受信した検索情報と前記保持手段で保持される機能情報を、前記動作種類情報、前記動作対象情報、前記各種設定情報、前記動作結果出力情報毎に照合することで、前記ユーザインタフェース機器と連携動作が可能な機能の組み合わせを検索する
ことを特徴とする請求項９に記載の情報処理装置。
【請求項１１】
ユーザインタフェース機器と周辺機器とがネットワークを介して相互に接続されて構成される情報処理システムであって、
前記ユーザインタフェース機器は、
前記周辺機器と連携可能な機能を検索するための検索情報を生成する生成手段と、
前記検索情報を前記ネットワーク上の周辺機器へ送信する第１送信手段と、
前記検索情報に対する検索結果を前記ネットワーク上の周辺機器から受信する第１受信手段と、
前記第１受信手段で受信した検索結果に基づいて、前記周辺機器と連携可能な機能を操作するためのユーザインタフェース部品を生成する生成手段と、
前記生成手段で生成したユーザインタフェース部品に基づいて、既存のユーザインタフェースを更新する更新手段とを備え、
前記周辺機器は、
前記検索情報を、前記ネットワーク上の前記ユーザインタフェース機器から受信する第２受信手段と、
前記第２受信手段で受信した検索情報に基づいて、前記保持手段を参照して、前記ユーザインタフェース機器と連携動作が可能な機能の組み合わせを検索する検索手段と、
前記検索手段で検索された検索結果として、前記ユーザインタフェース機器と連携動作が可能な機能の組み合わせに関する情報を、前記ネットワーク上のユーザインタフェース機器へ送信する第２送信手段と
を備えることを特徴とする情報処理システム。
【請求項１２】
前記第１受信手段で受信した検索結果に基づいて、前記ネットワーク上の周辺機器間で連携可能な機能の組み合わせを検索する検索手段と、
前記検索手段で検索された前記ネットワーク上の周辺機器間で連携可能な機能の組み合わせに関する情報を登録する登録手段とを更に備え、
前記生成手段は、前記受信手段で受信した検索結果と前記登録手段で登録された情報に基づいて、複数の前記周辺機器を操作するためのユーザインタフェース部品を生成する
ことを特徴とする請求項１１に記載の情報処理システム。
【請求項１３】
自身の機能を記述した機能情報とその機能に対応するユーザインタフェース情報を関連付けて保持する周辺機器とネットワークを介して接続され、該周辺機器を操作するためのユーザインタフェースを生成する情報処理装置の制御方法であって、
周辺機器と連携可能な機能を検索するための検索情報を生成する生成工程と、
前記検索情報を前記ネットワーク上の周辺機器へ送信する送信工程と、
前記検索情報に対する検索結果を前記ネットワーク上の周辺機器から受信する受信工程と、
前記受信工程で受信した検索結果に基づいて、前記周辺機器と連携可能な機能を操作するためのユーザインタフェース部品を生成する生成工程と、
前記生成工程で生成したユーザインタフェース部品に基づいて、既存のユーザインタフェースを更新する更新工程と
を備えることを特徴とする情報処理装置の制御方法。
【請求項１４】
ネットワークを介して接続されるユーザインタフェース機器からの操作を受け付ける情報処理装置の制御方法であって、
自身の機能を記述した機能情報とその機能に対応するユーザインタフェース情報を関連付けて記憶媒体に保持する保持工程と、
前記ユーザインタフェース機器と連携可能な機能を検索するための検索情報を、前記ネットワーク上のユーザインタフェース機器から受信する受信工程と、
前記受信工程で受信した検索情報に基づいて、前記記憶媒体を参照して、前記ユーザインタフェース機器と連携動作が可能な機能の組み合わせを検索する検索工程と、
前記検索工程で検索された前記ユーザインタフェース機器と連携動作が可能な機能の組み合わせに関する情報を、前記ネットワーク上のユーザインタフェース機器へ送信する送信工程と
を備えることを特徴とする情報処理装置の制御方法。
【請求項１５】
自身の機能を記述した機能情報とその機能に対応するユーザインタフェース情報を関連付けて保持する周辺機器とネットワークを介して接続され、該周辺機器を操作するためのユーザインタフェースを生成する情報処理装置の制御を実現するプログラムであって、
周辺機器と連携可能な機能を検索するための検索情報を生成する生成工程のプログラムコードと、
前記検索情報を前記ネットワーク上の周辺機器へ送信する送信工程のプログラムコードと、
前記検索情報に対する検索結果を前記ネットワーク上の周辺機器から受信する受信工程のプログラムコードと、
前記受信工程で受信した検索結果に基づいて、前記周辺機器と連携可能な機能を操作するためのユーザインタフェース部品を生成する生成工程のプログラムコードと、
前記生成工程で生成したユーザインタフェース部品に基づいて、既存のユーザインタフェースを更新する更新工程のプログラムコードと
を備えることを特徴とするプログラム。
【請求項１６】
ネットワークを介して接続されるユーザインタフェース機器からの操作を受け付ける情報処理装置の制御を実現するプログラムであって、
自身の機能を記述した機能情報とその機能に対応するユーザインタフェース情報を関連付けて記憶媒体に保持する保持工程のプログラムコードと、
前記ユーザインタフェース機器と連携可能な機能を検索するための検索情報を、前記ネットワーク上のユーザインタフェース機器から受信する受信工程のプログラムコードと、
前記受信工程で受信した検索情報に基づいて、前記記憶媒体を参照して、前記ユーザインタフェース機器と連携動作が可能な機能の組み合わせを検索する検索工程のプログラムコードと、
前記検索工程で検索された前記ユーザインタフェース機器と連携動作が可能な機能の組み合わせに関する情報を、前記ネットワーク上のユーザインタフェース機器へ送信する送信工程のプログラムコードと
を備えることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザインタフェース機器と周辺機器とがネットワークを介して相互に接続されて構成される情報処理システムにおいて、自身の機能を記述した機能情報とその機能に対応するユーザインタフェース情報を関連付けて保持する周辺機器とネットワークを介して接続され、該周辺機器を操作するためのユーザインタフェースを生成する情報処理装置と、ネットワークを介して接続されるユーザインタフェース機器からの操作を受け付ける情報処理装置及びそれらの制御方法、プログラムに関するものである。
【背景技術】
【０００２】
携帯電話、デジタルカメラ、カーナビゲーションシステム、デジタルテレビをはじめとする情報家電、複写機やプリンタを含むオフィス機器など、情報機器形態の多様化が進んでいる。これに加え、インターネットの普及、あるいは、ＵＳＢ、Ｂｌｕｅｔｏｏｔｈなどの有線、無線の接続インタフェース技術の普及により、多様化した情報機器同士が通信ネットワークを介して連携することで、新しい機能やサービスが生み出されつつある。
【０００３】
例えば、デジタルカメラで撮影した画像は、ＰＣ（パーソナルコンピュータ）等の端末を仲介することなく、ＵＳＢ等のケーブルを介して、直接プリンタで印刷するダイレクトプリントが可能となっている。また、携帯電話と自動販売機が直接連動し、携帯電話上の操作で自動販売機の物品を購入することも技術的には可能である。
【０００４】
こうした機器間のさまざまな連携サービスにおいて、そのサービスを起動したり、そのサービスに対する各種設定等の各種操作を行うためには、その操作を行うためのユーザインタフェースが少なくとも必要である。
【０００５】
例えば、ダイレクトプリントの場合、デジタルカメラの液晶画面上に表示されるグラフィックユーザインタフェースは、「印刷」という動作を指定するためのボタン等の各種ユーザインタフェース要素が含まれる。さらに、出力用紙サイズ等、印刷のための各種設定を行うためのユーザインタフェース要素も必要である。
【０００６】
従来の技術では、こうした他の機器との連携動作のためのユーザインタフェースは、操作機器側、例えば、ダイレクトプリントのケースでは、デジタルカメラ上にあらかじめ実装されている。つまり、デジタルカメラの開発段階において、プリンタと連携してダイレクトプリントを行うことがあらかじめ想定されており、その想定に合わせたユーザインタフェースの実装がなされる。
【０００７】
例えば、特許文献１では、デジタル撮像装置から外部印刷装置へのダイレクトプリントを操作するユーザインタフェースに関する情報は、デジタル撮像装置側がすべて管理している構成が開示されている。
【特許文献１】特開平１０−０６５８６７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
従来の技術では、上述したように、機器間の連携を実行するための操作機器側のユーザインタフェースは、対象とする連携の内容を想定した上で設計・実装される。従って、想定外の動的な連携にユーザインタフェースは対応することができない。
【０００９】
例えば、ダイレクトプリントの場合、プリンタがどのような用紙サイズを持ちうるかはあらかじめ想定されている。従って、デジタルカメラ上の用紙サイズを選択するユーザインタフェース要素は、その想定された用紙サイズの中から一つを選択できるように実装される。しかしながら、想定外の用紙サイズに対応したプリンタが新規に開発されて、このプリンタに対してダイレクトプリントを行う場合、新規の用紙サイズを選択するためのユーザインタフェース要素をデジタルカメラ上に表現することはできない。
【００１０】
別の例として、デジタルカメラから画像を受信して、その画像を表示可能なデジタルテレビが開発されたとする。しかしながら、既存のデジタルカメラは、テレビと連携してテレビに画像を表示するという機能は想定されていないので、テレビと連携するためのユーザインタフェースは組み込まれていない。
【００１１】
そのため、デジタルカメラには、例えば、「テレビに表示」という選択肢がユーザインタフェース要素には含まれていない。従って、通信インタフェース等の機能としては、デジタルカメラと連携可能なデジタルテレビが開発されたとしても、デジタルカメラ上にそのためのユーザインタフェースがないため、その連携機能をユーザは利用できない。
【００１２】
本発明は上記の課題に鑑みてなされたものであり、より柔軟に機器間の連携を実現することができる情報処理装置及びその制御方法、情報処理システム、プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記の目的を達成するための本発明による情報処理装置は以下の構成を備える。即ち、
自身の機能を記述した機能情報とその機能に対応するユーザインタフェース情報を関連付けて保持する周辺機器とネットワークを介して接続され、該周辺機器を操作するためのユーザインタフェースを生成する情報処理装置であって、
周辺機器と連携可能な機能を検索するための検索情報を生成する生成手段と、
前記検索情報を前記ネットワーク上の周辺機器へ送信する送信手段と、
前記検索情報に対する検索結果を前記ネットワーク上の周辺機器から受信する受信手段と、
前記受信手段で受信した検索結果に基づいて、前記周辺機器と連携可能な機能を操作するためのユーザインタフェース部品を生成する生成手段と、
前記生成手段で生成したユーザインタフェース部品に基づいて、既存のユーザインタフェースを更新する更新手段と
を備える。
【００１４】
また、好ましくは、前記検索情報は、前記周辺機器の動作種類情報、動作対象情報、各種設定情報、動作結果出力情報のうちの少なくとも一つを含む。
【００１５】
また、好ましくは、前記生成手段は、前記受信手段で受信した検索結果として示される前記周辺機器と連携可能な機能を起動するためのユーザインタフェース部品、及び該機能の各種設定情報を設定するためのユーザインタフェース部品を生成する。
【００１６】
また、好ましくは、前記ユーザインタフェースを実行する実行手段を更に備え、
前記更新手段は、前記実行手段が実行する既存のユーザインタフェースに、前記生成手段で生成したユーザインタフェース部品を追加する。
【００１７】
また、好ましくは、前記実行手段は、グラフィックユーザインタフェースを実行し、
前記生成手段は、前記グラフィックユーザインタフェースのユーザインタフェース部品を生成する。
【００１８】
また、好ましくは、前記実行手段は、音声ユーザインタフェースを実行し、
前記生成手段は、音声認識文法を含む前記音声インタフェースのユーザインタフェース部品を生成する。
【００１９】
また、好ましくは、前記受信手段で受信した検索結果に基づいて、前記ネットワーク上の周辺機器間で連携可能な機能の組み合わせを検索する検索手段と、
前記検索手段で検索された前記ネットワーク上の周辺機器間で連携可能な機能の組み合わせに関する情報を登録する登録手段とを更に備え、
前記生成手段は、前記受信手段で受信した検索結果と前記登録手段で登録された情報に基づいて、複数の前記周辺機器を操作するためのユーザインタフェース部品を生成する。
【００２０】
上記の目的を達成するための本発明による情報処理装置は以下の構成を備える。即ち、
ネットワークを介して接続されるユーザインタフェース機器からの操作を受け付ける情報処理装置であって、
自身の機能を記述した機能情報とその機能に対応するユーザインタフェース情報を関連付けて保持する保持手段と、
前記ユーザインタフェース機器と連携可能な機能を検索するための検索情報を、前記ネットワーク上のユーザインタフェース機器から受信する受信手段と、
前記受信手段で受信した検索情報に基づいて、前記保持手段を参照して、前記ユーザインタフェース機器と連携動作が可能な機能の組み合わせを検索する検索手段と、
前記検索手段で検索された前記ユーザインタフェース機器と連携動作が可能な機能の組み合わせに関する情報を、前記ネットワーク上のユーザインタフェース機器へ送信する送信手段と
を備える。
【００２１】
また、好ましくは、前記機能情報は、当該情報処理装置の動作種類情報、動作対象情報、各種設定情報、動作結果出力情報のうちの少なくとも一つを含む。
【００２２】
また、好ましくは、前記検索手段は、前記受信手段で受信した検索情報と前記保持手段で保持される機能情報を、前記動作種類情報、前記動作対象情報、前記各種設定情報、前記動作結果出力情報毎に照合することで、前記ユーザインタフェース機器と連携動作が可能な機能の組み合わせを検索する。
【００２３】
上記の目的を達成するための本発明による情報処理システムは以下の構成を備える。即ち、
ユーザインタフェース機器と周辺機器とがネットワークを介して相互に接続されて構成される情報処理システムであって、
前記ユーザインタフェース機器は、
前記周辺機器と連携可能な機能を検索するための検索情報を生成する生成手段と、
前記検索情報を前記ネットワーク上の周辺機器へ送信する第１送信手段と、
前記検索情報に対する検索結果を前記ネットワーク上の周辺機器から受信する第１受信手段と、
前記第１受信手段で受信した検索結果に基づいて、前記周辺機器と連携可能な機能を操作するためのユーザインタフェース部品を生成する生成手段と、
前記生成手段で生成したユーザインタフェース部品に基づいて、既存のユーザインタフェースを更新する更新手段とを備え、
前記周辺機器は、
前記検索情報を、前記ネットワーク上の前記ユーザインタフェース機器から受信する第２受信手段と、
前記第２受信手段で受信した検索情報に基づいて、前記保持手段を参照して、前記ユーザインタフェース機器と連携動作が可能な機能の組み合わせを検索する検索手段と、
前記検索手段で検索された検索結果として、前記ユーザインタフェース機器と連携動作が可能な機能の組み合わせに関する情報を、前記ネットワーク上のユーザインタフェース機器へ送信する第２送信手段と
を備える。
【００２４】
また、好ましくは、前記第１受信手段で受信した検索結果に基づいて、前記ネットワーク上の周辺機器間で連携可能な機能の組み合わせを検索する検索手段と、
前記検索手段で検索された前記ネットワーク上の周辺機器間で連携可能な機能の組み合わせに関する情報を登録する登録手段とを更に備え、
前記生成手段は、前記受信手段で受信した検索結果と前記登録手段で登録された情報に基づいて、複数の前記周辺機器を操作するためのユーザインタフェース部品を生成する。
【００２５】
上記の目的を達成するための本発明による情報処理装置の制御方法は以下の構成を備える。即ち、
自身の機能を記述した機能情報とその機能に対応するユーザインタフェース情報を関連付けて保持する周辺機器とネットワークを介して接続され、該周辺機器を操作するためのユーザインタフェースを生成する情報処理装置の制御方法であって、
周辺機器と連携可能な機能を検索するための検索情報を生成する生成工程と、
前記検索情報を前記ネットワーク上の周辺機器へ送信する送信工程と、
前記検索情報に対する検索結果を前記ネットワーク上の周辺機器から受信する受信工程と、
前記受信工程で受信した検索結果に基づいて、前記周辺機器と連携可能な機能を操作するためのユーザインタフェース部品を生成する生成工程と、
前記生成工程で生成したユーザインタフェース部品に基づいて、既存のユーザインタフェースを更新する更新工程と
を備える。
【００２６】
上記の目的を達成するための本発明による情報処理装置の制御方法は以下の構成を備える。即ち、
ネットワークを介して接続されるユーザインタフェース機器からの操作を受け付ける情報処理装置の制御方法であって、
自身の機能を記述した機能情報とその機能に対応するユーザインタフェース情報を関連付けて記憶媒体に保持する保持工程と、
前記ユーザインタフェース機器と連携可能な機能を検索するための検索情報を、前記ネットワーク上のユーザインタフェース機器から受信する受信工程と、
前記受信工程で受信した検索情報に基づいて、前記記憶媒体を参照して、前記ユーザインタフェース機器と連携動作が可能な機能の組み合わせを検索する検索工程と、
前記検索工程で検索された前記ユーザインタフェース機器と連携動作が可能な機能の組み合わせに関する情報を、前記ネットワーク上のユーザインタフェース機器へ送信する送信工程と
を備える。
【００２７】
上記の目的を達成するための本発明によるプログラムは以下の構成を備える。即ち、
自身の機能を記述した機能情報とその機能に対応するユーザインタフェース情報を関連付けて保持する周辺機器とネットワークを介して接続され、該周辺機器を操作するためのユーザインタフェースを生成する情報処理装置の制御を実現するプログラムであって、
周辺機器と連携可能な機能を検索するための検索情報を生成する生成工程のプログラムコードと、
前記検索情報を前記ネットワーク上の周辺機器へ送信する送信工程のプログラムコードと、
前記検索情報に対する検索結果を前記ネットワーク上の周辺機器から受信する受信工程のプログラムコードと、
前記受信工程で受信した検索結果に基づいて、前記周辺機器と連携可能な機能を操作するためのユーザインタフェース部品を生成する生成工程のプログラムコードと、
前記生成工程で生成したユーザインタフェース部品に基づいて、既存のユーザインタフェースを更新する更新工程のプログラムコードと
を備える。
【００２８】
上記の目的を達成するための本発明によるプログラムは以下の構成を備える。即ち、
ネットワークを介して接続されるユーザインタフェース機器からの操作を受け付ける情報処理装置の制御を実現するプログラムであって、
自身の機能を記述した機能情報とその機能に対応するユーザインタフェース情報を関連付けて記憶媒体に保持する保持工程のプログラムコードと、
前記ユーザインタフェース機器と連携可能な機能を検索するための検索情報を、前記ネットワーク上のユーザインタフェース機器から受信する受信工程のプログラムコードと、
前記受信工程で受信した検索情報に基づいて、前記記憶媒体を参照して、前記ユーザインタフェース機器と連携動作が可能な機能の組み合わせを検索する検索工程のプログラムコードと、
前記検索工程で検索された前記ユーザインタフェース機器と連携動作が可能な機能の組み合わせに関する情報を、前記ネットワーク上のユーザインタフェース機器へ送信する送信工程のプログラムコードと
を備える。
【発明の効果】
【００２９】
本発明によれば、より柔軟に機器間の連携を実現することができる情報処理装置及びその制御方法、情報処理システム、プログラムを提供できる。
【発明を実施するための最良の形態】
【００３０】
以下、本発明の実施の形態について図面を用いて詳細に説明する。
【００３１】
＜実施形態１＞
実施形態１では、図１に示すように、無線ＬＡＮインタフェースを持つデジタルカメラ１０１を使用して、無線ＬＡＮの無線ＬＡＮ基地局１０４を介して有線ＬＡＮ１０５にアクセスでき、その有線ＬＡＮ１０５上の複写機１０２やプリンタ１０３を操作する例について説明する。
【００３２】
図１は本発明の実施形態１に係る情報処理システムの構成図である。
【００３３】
１０１は、デジタルカメラである。１０２は、複写機である。１０３は、プリンタである。１０４は、無線ＬＡＮ基地局である。１０５は、有線ＬＡＮである。
【００３４】
ここで、デジタルカメラ１０１は、本発明の機能によって、有線ＬＡＮ１０５上の周辺機器（複写機１０２やプリンタ１０３）を操作可能なユーザインタフェースを動的に生成することができるユーザインタフェース機器として機能する。
【００３５】
尚、図１では、１０５は有線ＬＡＮとしているが、これに限定されず、例えば、インターネットやＷＡＮや電話回線、専用デジタル回線、ＡＴＭやフレームリレー回線、通信衛星回線、ケーブルテレビ回線、データ放送用無線回線等のいずれか、またはこれらの組み合わせにより実現されるいわゆる通信ネットワークであり、データの送受信が可能であれば良い。
【００３６】
次に、デジタルカメラ１０１の機能構成について、図２を用いて説明する。
【００３７】
図２は本発明の実施形態１に係るデジタルカメラの機能構成図である。
【００３８】
同図において、２０１は、表示によるユーザへの出力やユーザからの入力を受け付けるＵＩ（ユーザインタフェース）を実行するＵＩ実行部である。２０２は、周辺機器との連携に応じてＵＩを更新するＵＩ更新部である。
【００３９】
２０３は、周辺機器との連携に応じてその連携機能に対応したＵＩ部品を生成するＵＩ部品生成部である。
【００４０】
２０４は、自身と通信可能なネットワーク上の周辺機器を探索する周辺機器探索部である。
【００４１】
２０５は、自身と連携可能な周辺機器の機能を検索するための検索情報を生成する検索情報生成部である。
【００４２】
ここで、検索情報とは、ユーザインタフェース機器であるデジタルカメラ１０１が、周辺機器の中で、その周辺機器を操作するために動的なインタフェースを生成することができる周辺機器を検索するための情報であり、例えば、周辺機器の動作種類情報、動作対象情報、各種設定情報、動作結果出力情報の少なくとも１つを含む。
【００４３】
２０６は、検索情報生成部２０５で生成した検索情報を通信可能な周辺機器に送信し、その検索結果である連携可能な周辺機器の機能情報を取得する周辺機器機能情報取得部である。
【００４４】
２０７は、通信部であり、実施形態１では、無線ＬＡＮによる通信を実現する通信部として構成される。
【００４５】
２０８は、周辺機器との連携機能に対するユーザの操作によって得られる制御情報を周辺機器に送信する制御情報送信部である。
【００４６】
次に、複写機１０２の機能構成について、図３を用いて説明する。
【００４７】
図３は本発明の実施形態１に係る複写機の機能構成図である。
【００４８】
尚、プリンタ１０３の機能構成についても、図３と同様の機能構成を有する。
【００４９】
同図において、３０１は、他の機器（実施形態１の場合は、デジタルカメラ１０１）から、検索情報生成部２０５で生成した検索情報を通信部３０７を経由して受信する検索情報受信部である。
【００５０】
３０２は、複写機１０２の機能情報を保持する自機能情報保持部である。
【００５１】
この機能情報は、例えば、周辺機器である複写機１０２の動作種類情報、動作対象情報、各種設定情報、動作結果出力情報の少なくとも１つを含む。また、自機能情報保持部３０２では、機能情報に加えて、その機能に対応するユーザインタフェース情報を関連付けて保持している。このユーザインタフェース情報は、ユーザインタフェース機器上で、自身の操作を可能にするためのユーザインフェースを作成するための情報である。
【００５２】
３０３は、検索情報受信部３０１で受信した他の機器（実施形態１の場合は、デジタルカメラ１０１）からの検索情報と、自機能情報保持部３０２が保持する自機能情報とを照合して、連携可能な機能を検索する連携機能検索部である。
【００５３】
３０４は、連携機能検索部３０３の検索結果を、検索情報の送信元（実施形態１の場合、デジタルカメラ１０１）へ送信する連携機能情報送信部である。
【００５４】
３０５は、制御情報送信部２０８から印刷を制御する制御情報を受信する印刷情報受信部である。
【００５５】
３０６は、印刷情報受信部３０５が受信した印刷情報に基づいて印刷を実行する印刷実行部である。
【００５６】
３０７は通信部であり、実施形態１の場合、有線ＬＡＮ１０５による通信を実現する通信部として構成される。
【００５７】
次に、デジタルカメラ１０１のハードウェア構成について、図４を用いて説明する。
【００５８】
図４は本発明の実施形態１に係るデジタルカメラのハードウェア構成を示す図である。
【００５９】
同図において、４０１はＣＰＵであり、後述するデジタルカメラ１０１の動作手順を実現するプログラムに従って動作する。
【００６０】
４０２はＲＡＭであり、上記プログラムの動作に必要な記憶領域を提供する。４０３はＲＯＭであり、上記プログラムの動作手順を実現するプログラムを保持する。
【００６１】
４０４はＬＣＤであり、グラフィックユーザインタフェースや撮影画像を表示する。
【００６２】
４０５は物理ボタンであり、ユーザは、この物理ボタン４０５を操作することでデジタルカメラ１０１への各種入力を行う。物理ボタン４０５は、単純な押下ボタンの他、後述の十字キー等を含む。
【００６３】
４０６は通信デバイスであり、実施形態１では、無線ＬＡＮカードを想定している。４０７は撮像部であり、光学系やＣＣＤ等から構成され、被写体を撮像する。
【００６４】
４０８はバスであり、デジタルカメラ１０１の上記各構成要素を相互に接続する。
【００６５】
次に、複写機１０２のハードウェア構成について、図５を用いて説明する。
【００６６】
図５は本発明の実施形態１に係る複写機のハードウェア構成を示す図である。
【００６７】
同図において、５０１はＣＰＵであり、後述する複写機１０２の動作手順を実現するプログラムに従って動作する。
【００６８】
５０２はＲＡＭであり、上記プログラムの動作に必要な記憶領域を提供する。５０３はＲＯＭであり、上記プログラムの動作手順を実現するプログラムを保持する。
【００６９】
５０４はＨＤＤ（ハードディスクドライブ）であり、自機能情報保持部３０２は、このＨＤＤ５０４によって実現され、自機能情報を保持する。
【００７０】
５０５はタッチパネルであり、複写機１０２に対する各種操作を実行するための入力を行う。５０６は印刷部であり、受信した印刷データに基づく印刷媒体への印刷を実行し、その印刷媒体を出力する。
【００７１】
５０７は通信デバイスであり、実施形態１では、有線ＬＡＮカードを想定している。５０８はバスであり、複写機１０２の上記各構成要素を相互に接続する。
【００７２】
次に、プリンタ１０３のハードウェア構成について、図６を用いて説明する。
【００７３】
図６は本発明の実施形態１に係るプリンタのハードウェア構成を示す図である。
【００７４】
同図において、６０１はＣＰＵであり、後述するプリンタ１０３の動作手順を実現するプログラムに従って動作する。
【００７５】
６０２はＲＡＭであり、上記プログラムの動作に必要な記憶領域を提供する。６０３はＲＯＭであり、上記プログラムの動作手順を実現するプログラムを保持する。
【００７６】
６０４はタッチパネルであり、プリンタ１０３に対する各種操作を実行するための入力を行う。６０５は印刷部であり、受信した印刷データに基づく印刷媒体への印刷を実行し、その印刷媒体を出力する。
【００７７】
６０６は通信デバイスであり、実施形態１では、有線ＬＡＮカードを想定している。６０７はバスであり、上記各構成要素を相互に接続する。
【００７８】
ここで、複写機１０２やプリンタ１０３の自機能情報保持部３０２が保持する自身の機能情報について説明する。
【００７９】
複写機１０２の機能情報の記述例を図２３Ａ〜図２３Ｄに、プリンタ１０３の機能情報の記述例を図２４に示す。機能情報は、ＸＭＬ文書として記述される。このＸＭＬ文書中の各要素について説明する。
【００８０】
＜ｄｅｖｉｃｅＮａｍｅ＞要素
その機器の名前を記述する。図２３Ａでは、複写機１０２の名前が「複写機Ａ」であることを表している。
【００８１】
＜ｆｕｎｃｔｉｏｎ＞要素
その機器の一つの機能を記述する。その機能を示す情報である機能情報は、動作種類情報、動作対象情報、各種設定情報、動作結果出力情報の少なくとも１つ有している。
【００８２】
＜ａｃｔｉｏｎ＞要素
動作種類情報を記述する。例えば、
＜ａｃｔｉｏｎ＞ｐｒｉｎｔ＜／ａｃｔｉｏｎ＞
という記述は、その機能の動作種類が、印刷機能：画像データを印刷することを意味する。
【００８３】
＜ｏｂｊｅｃｔ＞要素
動作対象情報を記述する。子要素の＜ｔｙｐｅ＞要素の中に、動作対象情報のタイプを記述する。例えば、
＜ｏｂｊｅｃｔ＞
＜ｔｙｐｅ＞ｉｍａｇｅ＜／ｔｙｐｅ＞
＜／ｏｂｊｅｃｔ＞
という記述は、その機能が対象とするデータが、画像データであることを意味する。
【００８４】
＜ｓｅｔｔｉｎｇ＞要素
各種設定情報を記述する。例えば、「印刷」という機能の場合は、印刷枚数や出力用紙サイズ等の設定項目がある。各項目に対応する要素の「ｔｙｐｅ」属性は、その項目の値の型を指定する。例えば、＜ｎｕｍｂｅｒ  ｔｙｐｅ＝”ｉｎｔｅｇｅｒ”／＞は、＜ｎｕｍｂｅｒ＞要素も値が整数であることを意味する。「ｔｙｐｅ」属性は、その他に、「ｓｔｒｉｎｇ」（文字列）などを値に取りうる。
【００８５】
＜ｏｕｔｐｕｔ＞要素
動作結果出力情報を記述する。子要素の＜ｔｙｐｅ＞要素の中に、動作結果出力情報のタイプを記述する。例えば、「印刷」という機能の場合は、紙が出力されるので、
＜ｏｕｔｐｕｔ＞
＜ｔｙｐｅ＞ｐａｐｅｒ＜／ｔｙｐｅ＞
＜／ｏｕｔｐｕｔ＞
のように記述する。
【００８６】
以上は、機能の中身を記述するものである。これに加えて、自機能情報保持部３０２は、その機能をユーザインタフェース上に表現するためのユーザインタフェース情報も保持している。これらを以下に示す。
【００８７】
＜ｄｅｓｃｒｉｐｔｉｏｎ＞要素
上記の＜ａｃｔｉｏｎ＞、＜ｏｂｊｅｃｔ＞、＜ｓｅｔｔｉｎｇ＞、＜ｏｕｔｐｕｔ＞に対する付加情報を記述する。特に、こうした機能をＵＩ上で表現するための情報を記述する。例えば、
＜ａｃｔｉｏｎ＞ｓｃａｎ＜／ａｃｔｉｏｎ＞
・・・
＜ｄｅｓｃｒｉｐｔｉｏｎ  ｒｅｆ＝”ａｃｔｉｏｎ”＞
＜ｎａｍｅ＞スキャン＜／ｎａｍｅ＞
＜／ｄｅｓｃｒｉｐｔｉｏｎ＞
の＜ｄｅｓｃｒｉｐｔｉｏｎ＞要素は、＜ａｃｔｉｏｎ＞要素について記述しており、＜ｎａｍｅ＞は、その動作の名前を記述している。上記例は、その動作を「スキャン」と表現することを意味している。「ｒｅｆ」属性は、どの要素に対する記述かを示す属性で、Ｗ３Ｃ（ｈｔｔｐ：／／ｗｗｗ．ｗ３ｃ．ｏｒｇ）の仕様であるＸｐａｔｈ（ｈｔｔｐ：／／ｗｗｗ．ｗ３．ｏｒｇ／ＴＲ／ｘｐａｔｈ）で指定する。
【００８８】
＜ｉｎｐｕｔ＞要素
主に、＜ｓｅｔｔｉｎｇ＞要素内の各データをユーザインタフェースでセットするためのユーザインタフェース部品で、フリーフォームでデータを入力する部品であることを示す。「ｒｅｆ」属性は、どの要素に対するユーザインタフェース部品かを示す属性で、これもＸｐａｔｈで指定する。
【００８９】
子要素の＜ｌａｂｅｌ＞要素は、そのユーザインタフェース部品のラベルの記述であり、これもユーザインタフェース用での表現に使用することができる。この要素は、Ｗ３Ｃ（ｈｔｔｐ：／／ｗｗｗ．ｗ３ｃ．ｏｒｇ）の仕様であるＸＦｏｒｍｓの＜ｉｎｐｕｔ＞要素の仕様に従ったものである（ｈｔｔｐ：／／ｗｗｗ．ｗ３．ｏｒｇ／ＴＲ／２００３／ＰＲ−ｘｆｏｒｍｓ−２００３０８０１／ｓｌｉｃｅ８．ｈｔｍｌ＃ｕｉ−ｉｎｐｕｔ）。
【００９０】
例えば、
＜ｓｅｔｔｉｎｇ＞
＜ｃｏｐｉｅｓ／＞
＜／ｓｅｔｔｉｎｇ＞
・・・
＜ｉｎｐｕｔ  ｒｅｆ＝”ｓｅｔｔｉｎｇ／ｃｏｐｉｅｓ”＞
＜ｌａｂｅｌ＞部数＜／ｌａｂｅｌ＞
＜／ｉｎｐｕｔ＞
は、＜ｃｏｐｉｅｓ／＞要素（コピー枚数を表すデータ）は、「部数」というラベルのついたフリーフォームのユーザインタフェース部品（グラフィックユーザインタフェースの場合、テキストボックスなど）で入力できることを意味する。
【００９１】
＜ｓｅｌｅｃｔ１＞要素
主に、＜ｓｅｔｔｉｎｇ＞要素内の各データをユーザインタフェースでセットするためのユーザインタフェース部品で、複数の候補から一つの候補を選択する部品であることを示す。「ｒｅｆ」属性、＜ｌａｂｅｌ＞要素等は＜ｉｎｐｕｔ＞要素と同じであり、これもやはり、Ｗ３Ｃ（ｈｔｔｐ：／／ｗｗｗ．ｗ３ｃ．ｏｒｇ）の仕様であるＸＦｏｒｍｓの＜ｓｅｌｅｃｔ１＞要素の仕様に従ったものである（ｈｔｔｐ：／／ｗｗｗ．ｗ３．ｏｒｇ／ＴＲ／２００３／ＰＲ−ｘｆｏｒｍｓ−２００３０８０１／ｓｌｉｃｅ８．ｈｔｍｌ＃ｕｉ−ｓｅｌｅｃｔＯｎｅ）。
【００９２】
例えば、
＜ｓｅｔｔｉｎｇ＞
＜ｐａｐｅｒｓｉｚｅ／＞
＜／ｓｅｔｔｉｎｇ＞
・・・
＜ｓｅｌｅｃｔ１  ｒｅｆ＝”ｓｅｔｔｉｎｇ／ｐａｐｅｒｓｉｚｅ”＞
＜ｌａｂｅｌ＞用紙サイズ＜／ｌａｂｅｌ＞
＜ｃｈｏｉｃｅｓ＞
＜ｉｔｅｍ＞
＜ｌａｂｅｌ＞Ａ４＜／ｌａｂｅｌ＞
＜ｖａｌｕｅ＞ａ４＜／ｖａｌｕｅ＞
＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞
＜ｌａｂｅｌ＞Ｂ５＜／ｌａｂｅｌ＞
＜ｖａｌｕｅ＞ｂ５＜／ｖａｌｕｅ＞
＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞
＜ｌａｂｅｌ＞Ｌ版＜／ｌａｂｅｌ＞
＜ｖａｌｕｅ＞ｐｈｏｔｏ＜／ｖａｌｕｅ＞
＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞
＜ｌａｂｅｌ＞はがき＜／ｌａｂｅｌ＞
＜ｖａｌｕｅ＞ｌｅｔｔｅｒ＜／ｖａｌｕｅ＞
＜／ｉｔｅｍ＞
＜／ｃｈｏｉｃｅｓ＞
＜／ｓｅｌｅｃｔ１＞
は、＜ｐａｐｅｒｓｉｚｅ／＞要素（用紙サイズを表すデータ）は、「用紙サイズ」というラベルで、「Ａ４」、「Ｂ５」、「Ｌ版」、「はがき」の中から一つを選択する選択型のユーザインタフェース部品（グラフィックユーザインタフェースの場合、プルダウンメニューやラジオボタンなど）で入力できることを意味する。＜ｖａｌｕｅ＞要素は、それぞれの選択肢に対応する内部データ表現である。
【００９３】
次に、実施形態１における、デジタルカメラ１０１、複写機１０２、プリンタ１０３の動作について、図７を用いて説明する。
【００９４】
図７は本発明の実施形態１に係る情報処理システムの動作を示すフローチャートである。
【００９５】
尚、図７では、例えば、デジタルカメラ１０１が、撮影画像の内の１枚をＬＣＤ４０４に表示している状態であるとする。
【００９６】
デジタルカメラ１０１は、ユーザからの入力として、連携機能指示の有無を判定する（ステップＳ７０１）。ユーザが「Ｍｅｎｕ」ボタンを押下すると、図８（ａ）のように画面上にメニューが表示される。この中の「他の機器で処理」をユーザが選択したとする。これは、ステップＳ７０１の「連携機能指示」に相当する。
【００９７】
連携機能指示がない場合（ステップＳ７０１でＮＯ）、連携機能指示があるまで待機する。一方、連携機能指示がある場合（ステップＳ７０１でＹＥＳ）、ステップＳ７０２に進む。
【００９８】
これを受けて、周辺機器探索部２０４は、有線ＬＡＮ１０５上の通信可能な周辺機器を探索する（ステップＳ７０２）。この周辺機器の探索方法は、本発明には含まれないので詳しく述べないが、例えば、所定のサブネットに属する機器を探索する方法により実現する。これにより、例えば、有線ＬＡＮ１０５上の複写機１０２、プリンタ１０３、その他のＰＣなどが探索される。
【００９９】
続いて、検索情報生成部２０５は、連携機能を検索するための検索条件である検索情報を生成する（ステップＳ７０３）。デジタルカメラ１０１は、撮影画像の内の１枚を表示している状態であるので、「他の機器で処理」は、その画像を対象とした何らかの処理となる。
【０１００】
そこで、検索情報生成部２０５は、検索条件である検索情報として、図９のようなＸＭＬ文書を生成する。尚、図９中の＜ａｎｙ／＞要素は、その親要素の値が何でもよいことを意味する。従って、この検索条件である検索情報は、動作対象が「画像データ」である機能を検索することを表現している。
【０１０１】
この検索情報を、図１０のようにＨＴＴＰリクエストによって、周辺機器探索部２０４によって探索された周辺機器それぞれに送信する（ステップＳ７０４）。そして、その検索情報に対する検索結果の受信の有無を判定する（ステップＳ７０５）。
【０１０２】
検索結果を受信していない場合（ステップＳ７０５でＮＯ）、受信するまで待機する。一方、検索結果を受信した場合（ステップＳ７０５でＹＥＳ）、ステップＳ７０６に進む。
【０１０３】
一方、複写機１０２は、デジタルカメラ１０１からの検索情報の受信の有無を判定する（ステップＳ７０９）。検索情報を受信していない場合（ステップＳ７０９でＮＯ）、受信するまで待機する。一方、検索情報を受信した場合（ステップＳ７０９でＹＥＳ）、ステップＳ７１０に進む。ここでは、例えば、図１０のような、ＨＴＴＰリクエストを受信する。このＨＴＴＰリクエストから、図９の検索情報を抽出する。
【０１０４】
連携機能検索部３０３は、この抽出した検索情報をキーに、自機能情報保持部３０２が保持する自身の機能の中からマッチする機能情報を検索する（ステップＳ７１０）。
【０１０５】
複写機１０２の機能情報（図２３Ａ〜図２３Ｄ）には、３つの＜ｆｕｎｃｔｉｏｎ＞要素、即ち、３つの機能が記述されている。この中で、図９の検索情報、即ち、「＜ａｃｔｉｏｎ＞要素が何でもよく、＜ｏｂｊｅｃｔ＞要素のタイプが”ｉｍａｇｅ”のもの」に一致する記述は、ｉｄが”Ｃｏｐｉｅｒ−Ｐｒｉｎｔ”の機能だけである。
【０１０６】
つまり、これは、デジタルカメラ１０１の画像を、複写機１０２が「印刷」できることを意味する。そこで、複写機１０２の連携機能情報送信部３０４は、＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”  Ｃｏｐｉｅｒ−Ｐｒｉｎｔ”＞要素の中身だけを検索結果とし、＜ｄｅｖｉｃｅＮａｍｅ＞要素も加えて、図２５のように、ＨＴＴＰレスポンスの形で、検索情報に対する検索結果としてデジタルカメラ１０１に送信する（ステップＳ７１１）。
【０１０７】
プリンタ１０３も、複写機１０２と全く同様の動作を行う。この場合、図２４に記述される機能の中で、図９の検索情報にマッチする＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”Ｐｒｉｎｔｅｒ−Ｐｒｉｎｔ”＞要素の中身と＜ｄｅｖｉｃｅＮａｍｅ＞要素を、図２６のように、ＨＴＴＰレスポンスの形で、検索情報に対する検索結果としてデジタルカメラ１０１に送信する。
【０１０８】
デジタルカメラ１０１の通信部２０７が、複写機１０２から図２５のＨＴＴＰレスポンスを受信すると、周辺機器機能情報取得部２０６が、連携機能検索結果である＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”  Ｃｏｐｉｅｒ−Ｐｒｉｎｔ”＞要素の中身を抽出する。そして、ＵＩ部品生成部２０３は、この中のユーザインタフェース関連情報からこの連携機能をユーザが利用するためのユーザインタフェース部品を生成する（ステップＳ７０６）。
【０１０９】
具体的には、まず、＜ｄｅｖｉｃｅＮａｍｅ＞要素から、複写機１０２のデバイス名が「複写機Ａ」であることがわかる。さらに、＜ａｃｔｉｏｎ＞要素を指している＜ｄｅｓｃｒｉｐｔｉｏｎ＞要素の＜ｎａｍｅ＞要素から、この機能の動作が「印刷」あるいは「プリント」という名前で表現できることがわかる。
【０１１０】
そこで、図８（ａ）のメニューのリストに、「印刷（複写機Ａ）」を加える。もちろん、「プリント（複写機Ａ）」でもかまわない。何らかの条件で一つを選べばよい。こうして、「画像を複写機１０２で印刷する」というデジタルカメラ１０１と複写機１０２の連携機能を起動するためのユーザインタフェース部品がデジタルカメラ１０１のユーザインタフェースに追加される。
【０１１１】
プリンタ１０３からの連携機能検索結果に対しても同様の処理を行い、「印刷（プリンタＢ）」がメニューに追加される。以上の結果、メニューリストを含むユーザインタフェースは、ＵＩ更新部２０２によって、図８（ｂ）のように更新される（ステップＳ７０７）。
【０１１２】
ステップＳ７０６のユーザインタフェース部品生成、ステップＳ７０７のユーザインタフェース更新で行われることは、もう一つある。それは、複写機１０２やプリンタ１０３で印刷をするための、各種設定値を設定するユーザインタフェースの生成である。そのために必要な情報は、検索結果に含まれる複写機１０２やプリンタ１０３の機能情報に記述されている。
【０１１３】
ここでは、複写機１０２の各種設定のためのユーザインタフェースが、図２５の＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”  Ｃｏｐｉｅｒ−Ｐｒｉｎｔ”＞要素から生成される仕組みを説明する。＜ｓｅｔｔｉｎｇ＞要素内の各要素を指示するユーザインタフェース部品の記述として、＜ｉｎｐｕｔ＞要素や＜ｓｅｌｅｃｔ１＞要素がある。
【０１１４】
例えば、
＜ｉｎｐｕｔ  ｒｅｆ＝”ｓｅｔｔｉｎｇ／ｎｕｍｂｅｒ”＞
＜ｌａｂｅｌ＞部数，印刷枚数＜／ｌａｂｅｌ＞
＜／ｉｎｐｕｔ＞
は、＜ｓｅｔｔｉｎｇ＞内の＜ｎｕｍｂｅｒ／＞要素は、「部数」もしくは「印刷枚数」というラベルで表現でき、フリーフォームのユーザインタフェース部品で設定することを意味している。さらに、＜ｎｕｍｂｅｒ／＞要素は、「ｔｙｐｅ」属性を持ち、その値が「ｉｎｔｅｇｅｒ」であるので、設定値は整数であることがわかる。また、
＜ｓｅｌｅｃｔ１  ｒｅｆ＝”ｓｅｔｔｉｎｇ／ｐａｐｅｒｓｉｚｅ”＞
＜ｌａｂｅｌ＞用紙サイズ＜／ｌａｂｅｌ＞
＜ｃｈｏｉｃｅｓ＞
＜ｉｔｅｍ＞
＜ｌａｂｅｌ＞Ａ４＜／ｌａｂｅｌ＞
＜ｖａｌｕｅ＞ａ４＜／ｖａｌｕｅ＞
＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞
＜ｌａｂｅｌ＞Ｂ５＜／ｌａｂｅｌ＞
＜ｖａｌｕｅ＞ｂ５＜／ｖａｌｕｅ＞
＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞
＜ｌａｂｅｌ＞最大＜／ｌａｂｅｌ＞
＜ｖａｌｕｅ＞ａ３＜／ｖａｌｕｅ＞
＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞
＜ｌａｂｅｌ＞最小＜／ｌａｂｅｌ＞
＜ｖａｌｕｅ＞ａ５＜／ｖａｌｕｅ＞
＜／ｉｔｅｍ＞
＜／ｃｈｏｉｃｅｓ＞
＜／ｓｅｌｅｃｔ１＞
は、＜ｓｅｔｔｉｎｇ＞内の＜ｐａｐｅｒｓｉｚｅ／＞要素は、「用紙サイズ」というラベルで表現でき、選択型のユーザインタフェース部品で設定することを意味している。選択リストの値は、「Ａ４」、「Ｂ５」、「最大」、「最小」のいずれかである。
【０１１５】
このような情報から、ＵＩ部品生成部２０３及びＵＩ更新部２０２は、図１１（ａ）のようなユーザインタフェースを生成する。ここでは、「印刷枚数」及び「用紙サイズ」の２つの設定項目がある。十字キーで「印刷枚数」を選択状態にし、さらに十字キーで右または左を押すと、値である整数値が、それぞれカウントアップ／カウントダウンする。「用紙サイズ」を選択状態にし、十字キーで右または左を押すと、「Ａ４」、「Ｂ５」、「最大」、「最小」の間で値が変わる。
【０１１６】
一番下の「印刷実行」という文字列は、＜ｄｅｓｃｒｉｐｔｉｏｎ＞要素の＜ｎａｍｅ＞要素から得られるものである。この「印刷実行」を選択状態にし、十字キーの中央を押すと、制御情報送信部２０８が、設定された情報と現在対象となっている画像データを複写機１０２に送信し、その設定で「印刷」が実行される。
【０１１７】
図１１（ａ）のユーザインタフェースは、図８（ｂ）において、ユーザが「印刷（複写機Ａ）」を選択状態にして、十字キーの中央を押したときに起動される。同様にして、プリンタ１０３の各種設定のためのユーザインタフェースは、図２６の＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”  Ｐｒｉｎｔｅｒ−Ｐｒｉｎｔ”＞要素から生成され、図１１（ｂ）のようになる。
【０１１８】
以上説明したように、実施形態１によれば、デジタルカメラ１０１と、周辺機器である複写機１０２、プリンタ１０３との連携機能が動的に発見され、その連携機能を利用するためのユーザインタフェースを動的に生成することができる。
【０１１９】
そのため、自身が保持する画像データを、複写機やプリンタで印刷するという機能そのものやそのためのユーザインタフェースは、デジタルカメラ１０１には事前には組み込まれていない場合でも、必要に応じて、適切なユーザインタフェースをデジタルカメラ１０１上で生成することができる。
【０１２０】
同様にして、この他の想定外の連携機能、例えば、周辺機器として画像を受信して表示できるデジタルテレビがある場合、デジタルカメラ１０１の画像をそのデジタルテレビに表示するという連携機能とそのためのユーザインタフェースも、同様にして動的に生成することができる。
【０１２１】
＜実施形態２＞
実施形態２では、図１２に示すように、ＰＣ１２０１、複写機１０２、プリンタ１２０３が有線ＬＡＮ１２０５上に接続され、その有線ＬＡＮ１２０５に新規にスキャナ１２０４を接続し、ＰＣ１２０１が有線ＬＡＮ１２０５を介してスキャナ１２０４を操作する例について説明する。
【０１２２】
図１２は本発明の実施形態２に係る情報処理システムの構成図である。
【０１２３】
１２０１は、ＰＣである。１２０２は、複写機である。１２０３は、プリンタである。１２０４は、スキャナである。１２０５は、有線ＬＡＮである。
【０１２４】
ここで、ＰＣ１２０１は、本発明の機能によって、有線ＬＡＮ１２０５上の周辺機器（複写機１２０２、プリンタ１２０３、スキャナ１２０４）を操作可能なユーザインタフェースを動的に生成することができるユーザインタフェース機器として機能する。
【０１２５】
尚、図１２では、１２０５は有線ＬＡＮとしているが、これに限定されず、例えば、インターネットやＷＡＮや電話回線、専用デジタル回線、ＡＴＭやフレームリレー回線、通信衛星回線、ケーブルテレビ回線、データ放送用無線回線等のいずれか、またはこれらの組み合わせにより実現されるいわゆる通信ネットワークであり、データの送受信が可能であれば良い。
【０１２６】
次に、ＰＣ１２０１の機能構成について、図１３を用いて説明する。
【０１２７】
図１３は本発明の実施形態２に係るＰＣの機能構成図である。
【０１２８】
同図において、１３０１は、表示によるユーザへの出力やユーザからの入力を受け付けるＵＩ実行部である。
【０１２９】
１３０２は、周辺機器との連携に応じてＵＩを更新するＵＩ更新部である。
【０１３０】
１３０３は、周辺機器との連携に応じてその連携機能に対応したＵＩ部品を生成するＵＩ部品生成部である。
【０１３１】
１３０４は、ネットワーク上の周辺機器間で連携可能な連携機能を検索する連携機能検索部である。
【０１３２】
１３０５は、連携機能検索部１３０４で検索された連携機能を登録する連携機能登録部である。
【０１３３】
１３０６は、自身と通信可能なネットワーク上の周辺機器を探索する周辺機器探索部である。
【０１３４】
１３０７は、自身と連携可能な周辺機器の機能を検索するための検索情報を生成する検索情報生成部である。
【０１３５】
ここで、検索情報とは、ユーザインタフェース機器であるＰＣ１２０１が、周辺機器の中で、その周辺機器を操作するために動的なインタフェースを生成することができる周辺機器を検索するための情報であり、例えば、周辺機器の動作種類情報、動作対象情報、各種設定情報、動作結果出力情報の少なくとも１つを含む。
【０１３６】
１３０８は、検索情報生成部１３０７で生成した検索情報を通信可能な周辺機器に送信し、その検索結果である連携可能な周辺機器の機能情報を取得する周辺機器機能情報取得部である。
【０１３７】
１３０９は、通信部であり、実施形態２では、有線ＬＡＮ１２０５による通信を実現する通信部として構成される。
【０１３８】
１３１０は、周辺機器との連携機能に対するユーザの操作によって得られる制御情報を周辺機器に送信する制御情報送信部である。
【０１３９】
次に、スキャナ１２０４の機能構成について、図１４を用いて説明する。
【０１４０】
図１４は本発明の実施形態２に係るスキャナの機能構成図である。
【０１４１】
同図において、１４０１は、他の機器（実施形態２の場合は、ＰＣ１２０１）から、検索情報生成部１３０６で生成した検索情報を通信部を経由して受信する検索情報受信部である。
【０１４２】
１４０２は、スキャナ１２０４の機能情報を保持する自機能情報保持部である。
【０１４３】
この機能情報は、例えば、周辺機器である複写機１０２の動作種類情報、動作対象情報、各種設定情報、動作結果出力情報の少なくとも１つを含む。また、自機能情報保持部１４０２では、機能情報に加えて、その機能に対応するユーザインタフェース情報を関連付けて保持している。このユーザインタフェース情報は、ユーザインタフェース機器上で、自身の操作を可能にするためのユーザインフェースを作成するための情報である。
【０１４４】
１４０３は、検索情報受信部１４０１で受信した他の機器（実施形態２の場合は、ＰＣ１２０１）からの検索情報と、自機能情報保持部１４０２が保持する自機能情報とを照合して、連携可能な機能を検索する連携機能検索部である。
【０１４５】
１４０４は、連携機能検索部１４０３の検索結果を、検索情報の送信元（実施形態２の場合、ＰＣ１２０１）へ送信する連携機能情報送信部である。
【０１４６】
１４０５は、制御情報送信部１３１０からスキャナ１２０４を制御するためのスキャン情報を受信するスキャン情報受信部である。
【０１４７】
１４０６は、スキャン情報受信部１４０５が受信したスキャン情報に基づいて、スキャンを実行するスキャン実行部である。
【０１４８】
１４０７は通信部であり、実施形態２の場合、有線ＬＡＮ１２０５による通信を実現する通信部として構成される。
【０１４９】
次に、ＰＣ１２０１のハードウェア構成について、図１５を用いて説明する。
【０１５０】
図１５は本発明の実施形態２に係るＰＣのハードウェア構成を示す図である。
【０１５１】
同図において、１５０１はＣＰＵであり、後述するＰＣ１２０１の動作手順を実現するプログラムに従って動作する。
【０１５２】
１５０２はＲＡＭであり、上記プログラムの動作に必要な記憶領域を提供する。１５０３はＲＯＭであり、上記プログラムの動作手順を実現するプログラムを保持する。
【０１５３】
１５０４はＨＤＤ（ハードディスクドライブ）であり、連携機能登録部１３０５は、このＨＤＤ１５０４によって、実現され、連携機能情報を保持する。
【０１５４】
１５０５はキーボードである。１５０６はマウスである。
【０１５５】
１５０７はＣＲＴディスプレイであり、グラフィックユーザインタフェースを表示する。尚、ＣＲＴディスプレイの代りに、ＬＣＤディスプレイ等の他のディスプレイであっても良い。
【０１５６】
１５０８は通信デバイスであり、実施形態２では、ＬＡＮカードを想定している。１５０９はバスであり、ＰＣ１２０１の上記各構成要素を相互に接続する。
【０１５７】
次に、スキャナ１２０４のハードウェア構成について、図１６を用いて説明する。
【０１５８】
図１６は本発明の実施形態２に係るスキャナのハードウェア構成を示す図である。
【０１５９】
同図において、１６０１ＣＰＵであり、後述するスキャナ１２０４の動作手順を実現するプログラムに従って動作する。
【０１６０】
１６０２はＲＡＭであり、上記プログラムの動作に必要な記憶領域を提供する。１６０３はＲＯＭであり、上記プログラムの動作手順を実現するプログラムを保持する。
【０１６１】
１６０４はスキャン部であり、スキャン対象の原稿をスキャンする。１６０５は物理ボタンであり、ユーザからの操作を可能とする。
【０１６２】
１６０６通信デバイスであり、実施形態２では、ＬＡＮカードを想定している。１６０７はバスであり、スキャナ１２０４の上記各構成要素を相互に接続する。
【０１６３】
尚、複写機１２０２、プリンタ１２０３の機能構成は、実施形態１の図３と同様である。また、複写機１２０２及びプリンタ１２０３のハードウェア構成図はそれぞれ、実施形態１の図５及び図６と同様である。
【０１６４】
ここで、スキャナ１２０４の自機能情報保持部１４０２が保持する自身の機能情報は、図２７に示す。また、複写機１２０２及びプリンタ１２０３の機能情報は、それぞれ図２３Ａ〜図２３Ｄ及び図２４である。
【０１６５】
次に、実施形態２における、ＰＣ１２０１、複写機１２０２、プリンタ１２０３、スキャナ１２０４の動作について、図１７を用いて説明する。
【０１６６】
図１７は本発明の実施形態２に係る情報処理システムの動作を示すフローチャートである。
【０１６７】
ＰＣ１２０１上で、図１８（ａ）のようなアプリケーションをユーザが立ち上げ、「連携機能の検索」ボタンによる、連携機能検索指示の有無を待機する（ステップＳ１７０１）。連携機能検索指示がない場合（ステップＳ１７０１でＮＯ）、連携機能検索指示があるまで待機する。一方、連携機能検索指示がある場合（ステップＳ１７０１でＹＥＳ）、ステップＳ１７０２に進む。
【０１６８】
周辺機器探索部１３０６は、有線ＬＡＮ１２０５上の通信可能な周辺機器を探索する。（ステップＳ１７０２）。この周辺機器の探索方法は、本発明には含まれないので詳しく述べないが、例えば、所定のサブネットに属する機器を探索する方法により実現する。これにより、例えば、有線ＬＡＮ１２０５上の複写機１２０２、プリンタ１２０３、スキャナ１２０４、その他のＰＣなどが探索される。
【０１６９】
続いて、検索情報生成部１３０７は、連携機能を検索するための検索条件である検索情報を生成する（ステップＳ１７０３）。検索情報生成部１３０７は、検索条件である検索情報として、図１９のようなＸＭＬ文書を生成する。ここでの検索は、検索したい機能の動作種類や動作対象に特に指定はないので、＜ａｃｔｉｏｎ＞要素、＜ｏｂｊｅｃｔ＞要素ともに、＜ａｎｙ／＞要素を子要素としている。
【０１７０】
この検索情報を、図２０のようにＨＴＴＰリクエストによって、周辺機器探索部１３０６によって探索された周辺機器それぞれに送信する（ステップＳ１７０４）。そして、その検索情報に対する検索結果の受信の有無を判定する（ステップＳ１７０５）。
【０１７１】
検索結果を受信していない場合（ステップＳ１７０５でＮＯ）、受信するまで待機する。一方、検索結果を受信した場合（ステップＳ１７０５でＹＥＳ）、ステップＳ１７０６に進む。
【０１７２】
一方、スキャナ１２０４は、検索情報の受信の有無を判定する（ステップＳ１７１０）。検索情報を受信していない場合（ステップＳ１７１０でＮＯ）、受信するまで待機する。一方、検索情報を受信した場合（ステップＳ１７１０でＹＥＳ）、ステップＳ１７１１に進む。ここでは、例えば、図２０のようなＨＴＴＰリクエストを受信する。このＨＴＴＰリクエストから、図１９の検索情報を抽出する。
【０１７３】
連携機能検索部１４０３は、この抽出した検索情報をキーに、自機能情報保持部１４０２が保持する自身の機能の中からマッチする機能情報を検索する（ステップＳ１７１１）。
【０１７４】
スキャナ１２０４の機能情報（図２７）には、＜ｆｕｎｃｔｉｏｎｅｄ＝”  Ｓｃａｎｎｅｒ−Ｓｃａｎ”＞が１つだけ記述されている。これは、図１９の検索情報に一致する。そこで、スキャナ１２０４の連携機能情報送信部１４０４は、＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”  Ｓｃａｎｎｅｒ−Ｓｃａｎ”＞要素の中身だけを検索結果とし、＜ｄｅｖｉｃｅＮａｍｅ＞要素も加えて、図２８のように、ＨＴＴＰレスポンスの形で、検索情報に対する検索結果としてＰＣ１２０１に送信する（ステップＳ１７１２）。
【０１７５】
複写機１２０２、プリンタ１２０３も、同様の動作を行う。
【０１７６】
図２３に記述される機能の中で、３つの機能、＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”Ｃｏｐｉｅｒ−Ｐｒｉｎｔ”＞、＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”Ｃｏｐｉｅｒ−Ｓｃａｎ”＞、＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”Ｃｏｐｉｅｒ−Ｃｏｐｙ”＞すべてが、図１９の検索情報にマッチするので、それらの要素すべての中身と＜ｄｅｖｉｃｅＮａｍｅ＞要素を、図２９Ａ〜図２９Ｄのように、ＨＴＴＰのレスポンスの形で、検索情報に対する検索結果としてＰＣ１２０１に送信する。
【０１７７】
一方、プリンタ１２０３の場合は、図２４に記述される機能の中で、図１９の検索情報にマッチする＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”Ｐｒｉｎｔｅｒ−Ｐｒｉｎｔ”＞要素の中身と＜ｄｅｖｉｃｅＮａｍｅ＞要素を、図２６のように、ＨＴＴＰレスポンスの形で、検索情報に対する検索結果としてＰＣ１２０１に送信する。
【０１７８】
ＰＣ１２０１の通信部１３０９が、各周辺機器からのＨＴＴＰレスポンスを受信すると、周辺機器機能情報取得部１３０８が、これらから連携機能検索結果である＜ｆｕｎｃｔｉｏｎ＞要素の中身を抽出する。そして、連携機能検索部１３０４が、抽出した＜ｆｕｎｃｔｉｏｎ＞同士を照合し、周辺機器間で連携可能な機能の組み合わせを検索する（ステップＳ１７０６）。また、この連携機能検索部１３０４で検索された、周辺機器間で連携可能な機能の組み合わせに関する情報は、連携機能登録部１３０５に登録される。
【０１７９】
連携可能な組み合わせは、ある周辺機器の＜ｆｕｎｃｔｉｏｎ＞要素中の＜ｏｕｔｐｕｔ＞要素と、別の周辺機器の＜ｆｕｎｃｔｉｏｎ＞要素中の＜ｏｂｊｅｃｔ＞要素の＜ｔｙｐｅ＞の値が一致するかどうか調べることで検索することができる。
【０１８０】
例えば、スキャナ１２０４の機能、
＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”Ｓｃａｎｎｅｒ−Ｓｃａｎ”＞
＜ａｃｔｉｏｎ＞ｓｃａｎ＜／ａｃｔｉｏｎ＞
＜ｏｂｊｅｃｔ＞・・・  ＜／ｏｂｊｅｃｔ＞
＜ｓｅｔｔｉｎｇ＞・・・＜／ｓｅｔｔｉｎｇ＞
＜ｏｕｔｐｕｔ＞
＜ｔｙｐｅ＞ｉｍａｇｅ＜／ｔｙｐｅ＞
＜／ｏｕｔｐｕｔ＞
・・・略・・・
＜／ｆｕｎｃｔｉｏｎ＞
の＜ｏｕｔｐｕｔ＞要素と、
プリンタ１２０３の機能、
＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”Ｐｒｉｎｔｅｒ−Ｐｒｉｎｔ”＞
＜ａｃｔｉｏｎ＞ｐｒｉｎｔ＜／ａｃｔｉｏｎ＞
＜ｏｂｊｅｃｔ＞
＜ｔｙｐｅ＞ｉｍａｇｅ＜／ｔｙｐｅ＞
＜／ｏｂｊｅｃｔ＞
＜ｓｅｔｔｉｎｇ＞・・・  ＜／ｓｅｔｔｉｎｇ＞
・・・略・・・
＜／ｆｕｎｃｔｉｏｎ＞
の＜ｏｂｊｅｃｔ＞要素は、
ともに＜ｔｙｐｅ＞の値が、「ｉｍａｇｅ」で一致する。
【０１８１】
これは、スキャナ１２０４が紙をスキャンして出力する画像データを、プリンタ１２０３が受け取って印刷することができることを意味する。ユーザから見ればこれは「コピー」という複合機能になる。
【０１８２】
こうして、連携機能検索部１３０４によって検索された周辺機器間の連携機能に対して、ＵＩ部品生成部１３０３は、この連携機能をユーザが利用するためのユーザインタフェース（ＵＩ）部品を生成する（ステップＳ１７０７）。
【０１８３】
具体的には、図２６、図２８の＜ｄｅｖｉｃｅＮａｍｅ＞要素から、スキャナ１２０４のデバイス名が「スキャナＣ」、プリンタ１２０３のデバイス名が「プリンタＢ」であることがわかる。
【０１８４】
また、図２８の＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”Ｓｃａｎｎｅｒ−Ｓｃａｎ”＞の＜ａｃｔｉｏｎ＞要素を指している＜ｄｅｓｃｒｉｐｔｉｏｎ＞要素の＜ｎａｍｅ＞要素から、この機能の動作が「スキャン」という名前で表現できることがわかる。また、図２６の＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”Ｐｒｉｎｔｅｒ−Ｐｒｉｎｔ”＞の＜ａｃｔｉｏｎ＞要素を指している＜ｄｅｓｃｒｉｐｔｉｏｎ＞要素の＜ｎａｍｅ＞要素から、この機能の動作が「プリント」という名前で表現できることがわかる。
【０１８５】
これらから、この連携機能に対し、「スキャン（スキャナＣ）→プリント（プリンタＢ）」という名前をつける（ステップＳ１７０７）。
【０１８６】
同様な手順で、その他にも、＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”Ｓｃａｎｎｅｒ−Ｓｃａｎ”＞と＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”Ｃｏｐｉｅｒ−Ｐｒｉｎｔ”＞、＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”Ｃｏｐｉｅｒ−Ｓｃａｎ”＞と＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”Ｐｒｉｎｔｅｒ−Ｐｒｉｎｔ”＞といった連携機能を検索でき、それぞれに、「スキャン（スキャナＣ）→印刷（複写機Ａ）」、「スキャン（複写機Ａ）→プリント（プリンタＢ）」という名前をつける。これらを、ＵＩ更新部１３０２は、図１８（ｂ）のようにユーザインタフェース上に反映して更新する（ステップＳ１７０８）。
【０１８７】
ステップ１７０７のユーザインタフェース部品生成、ステップＳ１７０８のユーザインタフェース更新で行われることは、もう一つある。それは、この連携機能に含まれるスキャナ１２０４の「スキャン」機能やプリンタ１２０３の「プリント」機能に対する各種設定値を設定するユーザインタフェースの生成である。そのために必要な情報は、各周辺機器の機能情報に記述されている。
【０１８８】
具体的には、スキャナ１２０４の「スキャン」機能＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”Ｓｃａｎｎｅｒ−Ｓｃａｎ”＞の＜ｓｅｔｔｉｎｇ＞要素は中身をもたないので、特に設定の必要がない。一方、プリンタ１２０３の「プリント」機能＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”Ｐｒｉｎｔｅｒ−Ｐｒｉｎｔ”＞の＜ｓｅｔｔｉｎｇ＞要素は中身を持ち、この＜ｓｅｔｔｉｎｇ＞要素内の各要素を指示するユーザインタフェース部品の記述として、＜ｉｎｐｕｔ＞要素や＜ｓｅｌｅｃｔ１＞要素がある。
【０１８９】
例えば、
＜ｉｎｐｕｔ  ｒｅｆ＝”ｓｅｔｔｉｎｇ／ｎｕｍｂｅｒ”＞
＜ｌａｂｅｌ＞部数，印刷枚数＜／ｌａｂｅｌ＞
＜／ｉｎｐｕｔ＞
は、＜ｓｅｔｔｉｎｇ＞内の＜ｎｕｍｂｅｒ／＞要素は、「部数」もしくは「印刷枚数」というラベルで表現でき、フリーフォームのユーザインタフェース部品で設定することを意味している。さらに、＜ｎｕｍｂｅｒ／＞要素は、「ｔｙｐｅ」属性を持ち、その値が「ｉｎｔｅｇｅｒ」であるので、設定値は整数であることがわかる。
【０１９０】
また、
＜ｓｅｌｅｃｔ１  ｒｅｆ＝”ｓｅｔｔｉｎｇ／ｓｉｚｅ−ｏｆ−ｐａｐｅｒ”＞
＜ｌａｂｅｌ＞用紙サイズ＜／ｌａｂｅｌ＞
＜ｃｈｏｉｃｅｓ＞
＜ｉｔｅｍ＞
＜ｌａｂｅｌ＞Ａ４＜／ｌａｂｅｌ＞
＜ｖａｌｕｅ＞ａ４＜／ｖａｌｕｅ＞
＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞
＜ｌａｂｅｌ＞Ｂ５＜／ｌａｂｅｌ＞
＜ｖａｌｕｅ＞ｂ５＜／ｖａｌｕｅ＞
＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞
＜ｌａｂｅｌ＞Ｌ版＜／ｌａｂｅｌ＞
＜ｖａｌｕｅ＞ｐｈｏｔｏ＜／ｖａｌｕｅ＞
＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞
＜ｌａｂｅｌ＞はがき＜／ｌａｂｅｌ＞
＜ｖａｌｕｅ＞ｌｅｔｔｅｒ＜／ｖａｌｕｅ＞
＜／ｉｔｅｍ＞
＜／ｃｈｏｉｃｅｓ＞
＜／ｓｅｌｅｃｔ１＞
は、＜ｓｅｔｔｉｎｇ＞内の＜ｓｉｚｅ−ｏｆ−ｐａｐｅｒ／＞要素は「用紙サイズ」というラベルで表現でき、選択型のユーザインタフェース部品で設定することを意味している。選択リストの値は、「Ａ４」、「Ｂ５」、「Ｌ版」、「はがき」のいずれかである。
【０１９１】
このような情報から、ＵＩ部品生成部１３０３、ＵＩ更新部１３０２は、図２１のようなユーザインタフェースを生成する。「部数」にはテキストボックスを割り当て、選択型である「用紙サイズ」にはプルダウンメニューを割り当てる。プルダウンメニューのリスト項目は、「Ａ４」、「Ｂ５」、「Ｌ版」、「はがき」である。
【０１９２】
以上説明したように、実施形態２によれば、ＰＣ１２０１を使用するユーザは、周辺機器である複写機１２０２、プリンタ１２０３、スキャナ１２０４のいずれかの組み合わせが相互に連携した複合機能を動的に発見し、その連携機能を利用するためのユーザインタフェースをＰＣ１２０１上に動的に生成することができる。
【０１９３】
そのため、周辺機機器間の連携機能に対するユーザインタフェースがＰＣ１２０４に事前には組み込まれていない場合でも、例えば、スキャナ１２０４を新規購入してＬＡＮに接続した場合でも、「スキャン（スキャナＣ）→プリント（プリンタＢ）」、「スキャン（スキャナＣ）→印刷（複写機Ａ）」といった連携機能とそのためのユーザインタフェースをＰＣ１２０１上に動的に生成することができる。
【０１９４】
＜実施形態３＞
上記実施形態では、グラフィックユーザインタフェースを用いるケースを説明したが、音声認識や音声合成を用いた音声インタフェースでもよい。
【０１９５】
その一例として、実施形態２のＰＣ１２０１のユーザインタフェースに、音声入出力機能を加える場合を想定して説明する。
【０１９６】
まず、ＰＣ１２０１のＵＩ実行部１３０１は、音声入出力機能を備えており、あらかじめ次のような音声認識文法を保持している。
【０１９７】
＜ｇｒａｍｍａｒ＞
＜ｒｕｌｅ  ｉｄ＝”ｃｏｍｍａｎｄ”＞
＜ｏｎｅ−ｏｆ＞
＜ｉｔｅｍ＞レンケーキノーノケンサク＜／ｉｔｅｍ＞
＜／ｏｎｅ−ｏｆ＞
＜／ｒｕｌｅ＞
＜／ｇｒａｍｍａｒ＞
この文法は、Ｗ３Ｃの策定するＳＲＧＳ（ｈｔｔｐ：／／ｗｗｗ．ｗ３ｃ．ｏｒｇ／ＴＲ／ｓｐｅｅｃｈ−ｇｒａｍｍａｒ／）という仕様に基づいて記述されており、「レンケーキノーノケンサク」（連携機能検索）という音声入力を受け付けることを意味する。ユーザが図１８（ａ）の状態において、「レンケーキノーノケンサク」と音声入力すると、図１７のステップＳ１７０２以降の処理に進む。
【０１９８】
ここで、上記実施形態２では、周辺機器間の３つの連携機能が検索され、それぞれ「スキャン（スキャナＣ）→プリント（プリンタＢ）」、「スキャン（スキャナＣ）→印刷（複写機A）」、「スキャン（複写機Ａ）→プリント（プリンタＢ）」という名前を付け、図１８（ｂ）のようにユーザインタフェース上に反映される構成について説明した。
【０１９９】
これに対し、実施形態３では、ＵＩ部品生成部１３０３は、さらに、これらの文字列から、以下のような音声認識文法を生成する。
【０２００】
＜ｇｒａｍｍａｒ＞
＜ｒｕｌｅ  ｉｄ＝”ｃｏｍｐｏｓｉｔｅ−ｆｕｎｃｔｉｏｎ”＞
＜ｏｎｅ−ｏｆ＞
＜ｉｔｅｍ＞スキャナシーデスキャンシテプリンタビーデプリント＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞スキャナシーデスキャンシテフクシャキエーデインサツ＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞フクシャキエーデスキャンシテプリンタビーデプリント＜／ｉｔｅｍ＞
＜／ｏｎｅ−ｏｆ＞
＜／ｒｕｌｅ＞
＜／ｇｒａｍｍａｒ＞
ここで、各＜ｉｔｅｍ＞要素の値は、それぞれ「スキャン（スキャナＣ）→プリント（プリンタＢ）」、「スキャン（スキャナＣ）→印刷（複写機Ａ）」、「スキャン（複写機Ａ）→プリント（プリンタＢ）」という文字列から生成される。これは、次のような処理によって可能となる。
【０２０１】
１．  「Ａ（Ｂ）→Ｃ（Ｄ）」という文字列に対し、「ＢデＡシテＤデＣ」と変換
２．  Ａ、Ｂ、Ｃ、Ｄそれぞれに読みをつけてカタカナ表記する。
【０２０２】
読みを付ける処理は、テキスト音声合成などで用いられる公知の技術によって可能である。これにより、ユーザは、「スキャナシーデスキャンシテプリンタビーデプリント」などと発声することにより、検索された連携機能の一つを起動することが可能となる。
【０２０３】
さらに、ＵＩ部品生成部１３０３は、この連携機能に含まれるスキャナ１２０４の「スキャン」機能やプリンタ１２０３の「プリント」機能に対する各種設定値を設定するユーザインタフェースの生成において、これを音声入力でも可能とするための音声認識文法を生成する。そのために必要な情報は、各周辺機器の機能情報に記述されている。
【０２０４】
スキャナ１２０４の「スキャン」機能＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”Ｓｃａｎｎｅｒ−Ｓｃａｎ”＞の＜ｓｅｔｔｉｎｇ＞要素は中身を持たないので、特に設定の必要がない。
【０２０５】
一方、プリンタ１２０３の「プリント」機能＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”Ｐｒｉｎｔｅｒ−Ｐｒｉｎｔ”＞の＜ｓｅｔｔｉｎｇ＞要素は中身を持ち、この＜ｓｅｔｔｉｎｇ＞要素内の各要素を指示するユーザインタフェース部品の記述として、＜ｉｎｐｕｔ＞要素や＜ｓｅｌｅｃｔ１＞要素がある。このうちの、
＜ｉｎｐｕｔ  ｒｅｆ＝”ｓｅｔｔｉｎｇ／ｎｕｍｂｅｒ”＞
＜ｌａｂｅｌ＞部数，印刷枚数＜／ｌａｂｅｌ＞
＜／ｉｎｐｕｔ＞
は、＜ｓｅｔｔｉｎｇ＞内の＜ｎｕｍｂｅｒ／＞要素は、「部数」もしくは「印刷枚数」というラベルで表現でき、フリーフォームのユーザインタフェース部品で設定することを意味している。さらに、＜ｎｕｍｂｅｒ／＞要素は、「ｔｙｐｅ」属性を持ち、その値が「ｉｎｔｅｇｅｒ」であるので、設定値は整数であることがわかる。
【０２０６】
これに対し、ＵＩ部品生成部１３０３は、以下のような音声認識文法を生成する。
【０２０７】
＜ｇｒａｍｍａｒ＞
＜ｒｕｌｅ  ｉｄ＝”ｎｕｍｂｅｒ”＞
＜ｏｎｅ−ｏｆ＞
＜ｉｔｅｍ＞イチ＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞ニ＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞サン＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞ヨン＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞ゴ＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞ロク＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞ナナ＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞ハチ＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞キュウー＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞ジュウー＜／ｉｔｅｍ＞
＜／ｏｎｅ−ｏｆ＞
＜／ｒｕｌｅ＞
＜／ｇｒａｍｍａｒ＞
これは、「イチ」から「ジュウ」までの数字の発声を受け付ける文法である。この例では１から１０までとしたが、１０より大きな数字を受理する文法を生成することは容易である。
【０２０８】
一方、
＜ｓｅｌｅｃｔ１  ｒｅｆ＝”ｓｅｔｔｉｎｇ／ｓｉｚｅ−ｏｆ−ｐａｐｅｒ”＞
＜ｌａｂｅｌ＞用紙サイズ＜／ｌａｂｅｌ＞
＜ｃｈｏｉｃｅｓ＞
＜ｉｔｅｍ＞
＜ｌａｂｅｌ＞Ａ４＜／ｌａｂｅｌ＞
＜ｖａｌｕｅ＞ａ４＜／ｖａｌｕｅ＞
＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞
＜ｌａｂｅｌ＞Ｂ５＜／ｌａｂｅｌ＞
＜ｖａｌｕｅ＞ｂ５＜／ｖａｌｕｅ＞
＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞
＜ｌａｂｅｌ＞Ｌ版＜／ｌａｂｅｌ＞
＜ｖａｌｕｅ＞ｐｈｏｔｏ＜／ｖａｌｕｅ＞
＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞
＜ｌａｂｅｌ＞はがき＜／ｌａｂｅｌ＞
＜ｖａｌｕｅ＞ｌｅｔｔｅｒ＜／ｖａｌｕｅ＞
＜／ｉｔｅｍ＞
＜／ｃｈｏｉｃｅｓ＞
＜／ｓｅｌｅｃｔ１＞
は、＜ｓｅｔｔｉｎｇ＞内ノ＜ｓｉｚｅ−ｏｆ−ｐａｐｅｒ／＞要素は「用紙サイズ」というラベルで表現でき、選択型のユーザインタフェース部品で設定することを意味している。選択リストの値は、「Ａ４」、「Ｂ５」、「Ｌ版」、「はがき」のいずれかである。
【０２０９】
これに対し、ＵＩ部品生成部１３０３は、以下のような音声認識文法を生成する。
【０２１０】
＜ｇｒａｍｍａｒ＞
＜ｒｕｌｅ  ｉｄ＝”ｓｉｚｅ−ｏｆ−ｐａｐｅｒ”＞
＜ｏｎｅ−ｏｆ＞
＜ｉｔｅｍ＞エーヨン＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞ビーゴ＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞エルバン＜／ｉｔｅｍ＞
＜ｉｔｅｍ＞ハガキ＜／ｉｔｅｍ＞
＜／ｏｎｅ−ｏｆ＞
＜／ｒｕｌｅ＞
＜／ｇｒａｍｍａｒ＞
これは次のような処理によって可能となる。
【０２１１】
１．  ＜ｓｅｌｅｃｔ１＞要素に対応して＜ｒｕｌｅ＞要素を生成する。
【０２１２】
２．  子要素の＜ｃｈｏｉｃｅｓ＞要素に対応して＜ｏｎｅ−ｏｆ＞要素を生成する。
【０２１３】
３．  ＜ｃｈｏｉｃｅｓ＞要素の子要素＜ｉｔｅｍ＞要素の子要素＜ｌａｂｅｌ＞に対応して、＜ｏｎｅ−ｏｆ＞要素の子要素＜ｉｔｅｍ＞要素を生成し、＜ｌａｂｅｌ＞要素の値を読み付けしてその＜ｉｔｅｍ＞要素の値とする。
【０２１４】
以上のようにして、生成された音声認識文法その他をＵＩ更新部１３０２がＰＣ１２０１のユーザインタフェースに反映し、ＵＩ実行部１３０１は、例えば、以下のような音声によるインタラクションを可能にする。
【０２１５】
・ユーザ：「連携機能の検索」
・ＰＣ１２０１：「３つの連携機能が検索されました」
・ユーザ：「スキャナCでスキャンしてプリンタBでプリント」
・ＰＣ２０１：「部数を設定してください」
・ユーザ：「２」
・ＰＣ１２０１：「用紙サイズを設定してください」
・ユーザ：「L版」
・ＰＣ１２０１：「実行しますか」
・ユーザ：「はい」
＜実施形態４＞
上記実施形態では、日本語のユーザインタフェースを扱っていたが、他のいかなる言語でもかまわない。さらに、ユーザやユーザインタフェース機器に応じて使用言語を動的に対応することができる。
【０２１６】
この場合、ユーザインタフェース機器（実施形態１では、デジタルカメラ１０１、実施形態２では、ＰＣ１２０１）は、周辺機器に対して検索情報を送信する際に、使用言語情報を付加して送り、これを受信した周辺機器は、連携機能検索結果に含まれるユーザインタフェース情報をその使用言語に対応したものに変更するようにすればよい。
【０２１７】
例えば、使用言語を英語にした場合、複写機１０２の機能＜ｆｕｎｃｔｉｏｎ  ｉｄ＝”Ｃｏｐｉｅｒ−Ｐｒｉｎｔ”＞は、図３０のような記述すればよい。この場合、図８（ｂ）のユーザインタフェースは、図２２のようになる。
【０２１８】
＜実施形態５＞
上記実施形態では、
＜ｏｂｊｅｃｔ＞
＜ｔｙｐｅ＞ｉｍａｇｅ＜／ｔｙｐｅ＞
＜／ｏｂｊｅｃｔ＞
のように、＜ｏｂｊｅｃｔ＞要素や＜ｏｕｔｐｕｔ＞要素のタイプとして、画像データであることを意味する「ｉｍａｇｅ」だけを例として用いていたが、もちろん、「ｔｅｘｔ」（テキストデータ）、「ａｕｄｉｏ」（音声データ）など、さまざまな種類のタイプ情報を記述してもよい。さらに、ＭＩＭＥタイプを用いて、
・ｉｍａｇｅ／ｇｉｆ  （ＧＩＦ画像）
・ｉｍａｇｅ／ｊｐｅｇ  （ＪＰＥＧ画像）
・ｉｍａｇｅ／ｐｎｇ  （ＰＮＧ画像）
・ａｕｄｉｏ／ｍｐ３  （ＭＰ３データ）
・ｍｏｖ／ｍｐ４  （ＭＰＥＧ４データ）
・ｔｅｘｔ／ｐｌａｉｎ  （プレーンテキスト）
・ｔｅｘｔ／ｈｔｍｌ  （ＨＴＭＬテキスト）
・ｔｅｘｔ／ｘｍｌ  （ＸＭＬテキスト）
・・・・
のような値で記述してもよい。
【０２１９】
＜実施形態６＞
上記実施形態では、周辺機器の機能情報をＸＭＬで記述していたが、その他のいかなる形式でもよいことは言うまでもない。
【０２２０】
＜実施形態７＞
上記実施形態２では、デジタルカメラ１０１は、無線ＬＡＮでネットワークに接続するようにしていたが、Ｂｌｕｅｔｏｏｔｈなど他のいかなる無線接続インタフェースでもよいことは言うまでもない。
【０２２１】
＜実施形態８＞
上記実施形態２では、音声認識文法の記述に、Ｗ３Ｃの策定するＳＲＧＳ（ｈｔｔｐ：／／ｗｗｗ．ｗ３ｃ．ｏｒｇ／ＴＲ／ｓｐｅｅｃｈ−ｇｒａｍｍａｒ／）を用いていたが、その他のいかなる文法記述形式でもよいことは言うまでもない。
【０２２２】
＜実施形態８＞
上記実施形態においては、プログラムをＲＯＭに保持する場合について説明したが、これに限定されるものではなく、任意の記憶媒体を用いて実現してもよい。また、同様の動作をする回路で実現してもよい。
【０２２３】
以上説明したように、本発明によれば、ユーザインタフェース機器とネットワーク上の他の周辺機器との間で可能な連携機能を動的に発見し、その連携機能を操作するためのユーザインタフェースをユーザインタフェース機器上に動的に生成することができ、ユーザインタフェース機器にあらかじめ組み込まれていない想定外の連携機能であっても、ユーザはその連携機能を操作し使用することができるようになる。
【０２２４】
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０２２５】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【０２２６】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０２２７】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であっても良い。
【０２２８】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などがある。
【０２２９】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０２３０】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０２３１】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【０２３２】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【０２３３】
【図１】本発明の実施形態１に係る情報処理システムの構成図である。
【図２】本発明の実施形態１に係るデジタルカメラの機能構成図である。
【図３】本発明の実施形態１に係る複写機の機能構成図である。
【図４】本発明の実施形態１に係るデジタルカメラのハードウェア構成を示す図である。
【図５】本発明の実施形態１に係る複写機のハードウェア構成を示す図である。
【図６】本発明の実施形態１に係るプリンタのハードウェア構成を示す図である。
【図７】本発明の実施形態１に係る情報処理システムの動作を示すフローチャートである。
【図８】本発明の実施形態１に係るデジタルカメラ上に実現されるグラフィックユーザインタフェース例を示す図である。
【図９】本発明の実施形態１に係るデジタルカメラから他の周辺機器へ送信される検索情報の例を示す図である。
【図１０】本発明の実施形態１に係るデジタルカメラから他の周辺機器へＨＴＴＰプロトコルで検索情報を送信する場合の記述例を示す図である。
【図１１】本発明の実施形態１に係るデジタルカメラ上で周辺機器の設定情報を設定する際のグラフィックユーザインタフェース例を示す図である。
【図１２】本発明の実施形態２に係る情報処理システムの構成図である。
【図１３】本発明の実施形態２に係るＰＣの機能構成図である。
【図１４】本発明の実施形態２に係るスキャナの機能構成図である。
【図１５】本発明の実施形態２に係るＰＣのハードウェア構成を示す図である。
【図１６】本発明の実施形態２に係るスキャナのハードウェア構成を示す図である。
【図１７】本発明の実施形態２に係る情報処理システムの動作を示すフローチャートである。
【図１８】本発明の実施形態２に係るＰＣに実現されるグラフィックユーザインタフェース例を示す図である。
【図１９】本発明の実施形態２に係るＰＣから他の周辺機器へ送信される検索情報の例を示す図である。
【図２０】本発明の実施形態２に係るＰＣから他の周辺機器へＨＴＴＰプロトコルで検索情報を送信する場合の記述例を示す図である。
【図２１】本発明の実施形態２に係るＰＣ上で周辺機器の設定情報を設定する際のグラフィックユーザインタフェース例を示す図である。
【図２２】本発明の実施形態３に係るデジタルカメラ上に実現されるグラフィックユーザインタフェース例を示す図である。
【図２３Ａ】本発明の実施形態１に係る複写機の機能情報の記述例を示す図である。
【図２３Ｂ】本発明の実施形態１に係る複写機の機能情報の記述例を示す図である。
【図２３Ｃ】本発明の実施形態１に係る複写機の機能情報の記述例を示す図である。
【図２３Ｄ】本発明の実施形態１に係る複写機の機能情報の記述例を示す図である。
【図２４】本発明の実施形態１に係るプリンタの機能情報の記述例を示す図である。
【図２５】本発明の実施形態１に係る複写機からのＨＴＴＰレスポンスの例を示す図である。
【図２６】本発明の実施形態１に係るプリンタからのＨＴＴＰレスポンスの例を示す図である。
【図２７】本発明の実施形態２に係るスキャナの機能情報の記述例を示す図である。
【図２８】本発明の実施形態２に係るスキャナからのＨＴＴＰレスポンスの例を示す図である。
【図２９Ａ】本発明の実施形態２に係る複写機からのＨＴＴＰレスポンスの例を示す図である。
【図２９Ｂ】本発明の実施形態２に係る複写機からのＨＴＴＰレスポンスの例を示す図である。
【図２９Ｃ】本発明の実施形態２に係る複写機からのＨＴＴＰレスポンスの例を示す図である。
【図２９Ｄ】本発明の実施形態２に係る複写機からのＨＴＴＰレスポンスの例を示す図である。
【図３０】本発明の実施形態３に係る複写機からのＨＴＴＰレスポンスの例を示す図である。
【符号の説明】
【０２３４】
１０１  デジタルカメラ
１０２  複写機
１０３  プリンタ
１０４  無線ＬＡＮ基地局
１０５  有線ＬＡＮ
２０１  ＵＩ実行部
２０２  ＵＩ更新部
２０３  ＵＩ部品生成部
２０４  周辺機器探索部
２０５  検索情報生成部
２０６  周辺機器機能情報取得部
２０７  通信部
２０８  制御情報送信部
３０１  検索情報受信部
３０２  自機能情報保持部
３０３  連携機能検索部
３０４  連携機能情報送信部
３０５  印刷情報受信部
３０６  印刷実行部である。
３０７  通信部
【図１】
2005174027.tif 000003
【図２】
2005174027.tif 000004
【図３】
2005174027.tif 000005
【図４】
2005174027.tif 000006
【図５】
2005174027.tif 000007
【図６】
2005174027.tif 000008
【図７】
2005174027.tif 000009
【図８】
2005174027.tif 000010
【図９】
2005174027.tif 000011
【図１０】
2005174027.tif 000012
【図１１】
2005174027.tif 000013
【図１２】
2005174027.tif 000014
【図１３】
2005174027.tif 000015
【図１４】
2005174027.tif 000016
【図１５】
2005174027.tif 000017
【図１６】
2005174027.tif 000018
【図１７】
2005174027.tif 000019
【図１８】
2005174027.tif 000020
【図１９】
2005174027.tif 000021
【図２０】
2005174027.tif 000022
【図２１】
2005174027.tif 000023
【図２２】
2005174027.tif 000024
【図２３Ａ】
2005174027.tif 000025
【図２３Ｂ】
2005174027.tif 000026
【図２３Ｃ】
2005174027.tif 000027
【図２３Ｄ】
2005174027.tif 000028
【図２４】
2005174027.tif 000029
【図２５】
2005174027.tif 000030
【図２６】
2005174027.tif 000031
【図２７】
2005174027.tif 000032
【図２８】
2005174027.tif 000033
【図２９Ａ】
2005174027.tif 000034
【図２９Ｂ】
2005174027.tif 000035
【図２９Ｃ】
2005174027.tif 000036
【図２９Ｄ】
2005174027.tif 000037
【図３０】
2005174027.tif 000038