(57)【要約】【課題】  Ｐ２Ｐシステムでは、各ユーザが保持しているデータ共有装置が常にネットワークに接続している保証がないため、データを閲覧したいユーザが、そのデータ共有システムに存在する全てのデータを常に閲覧できない可能性がある。【解決手段】  ネットワークに提供可能なデータを管理する画像管理部５０３と、データ共有システムに含まれる他の情報処理装置の状態を取得する画像共有装置状態監視部５０２と、状態監視部５０２により取得した他の情報処理装置の状態に応じて、当該他の情報処理装置が公開しているデータの関連情報を動的に構築する関連情報管理部５０１と、関連情報管理部５０１により構築された関連情報を基にデータ共有システムの状況をユーザに提示するユーザインタフェースを構築するＵＩ構築部５００とを有する。【選択図】  図５
2007128179.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークで構成されたデータ共有システムに接続してデータを共有する情報処理装置であって、
前記ネットワークに提供可能なデータを管理するデータ管理手段と、
前記データ共有システムに含まれる他の情報処理装置の状態を取得する状態取得手段と、
前記状態取得手段により取得した前記他の情報処理装置の状態に応じて、当該他の情報処理装置が公開しているデータの関連情報を動的に構築する関連情報管理手段と、
前記関連情報管理手段により構築された関連情報を基に前記データ共有システムの状況をユーザに提示するユーザインタフェースを構築するＵＩ構築手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記データ共有システムは、ピア・ツー・ピア型のシステムであることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記状態取得手段は、前記他の情報処理装置が、接続、非接続、接続中であるがデータ供給不可であることを含む状態を、当該他の情報処理装置からのイベントを受信することにより取得することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記状態取得手段は、前記他の情報処理装置が、接続、非接続、接続中であるがデータ供給不可であることを含む状態を、ユーザの要求により前記データ共有システムをサーチすることにより取得することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項５】
前記関連情報管理手段は、前記状態がデータが提供可能であることを示している場合、前記他の情報処理装置が提供するデータが保持している関連情報を基に、前記データ共有システムで閲覧可能な全てのデータ間の関連情報を動的に構築することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記関連情報管理手段は、前記状態がデータが提供可能であることを示していない場合、前記他の情報処理装置が提供するデータに関連している関連情報を無効化し、前記データ共有システムで閲覧可能な全てのデータ間の関連情報を動的に構築することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項７】
前記ユーザインターフェースは、前記データ共有システムでデータを提供可能な各情報処理装置のデータをサムネイルで表示したネットワークモデル表示を含むことを特徴とする請求項１に記載の情報処理装置。
【請求項８】
前記ユーザインターフェースは、前記データ共有システムにおいて、データを提供可能な各情報処理装置のデータを前記ネットワークモデル表示で指示する指示手段を更に含むことを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記ユーザインターフェースは、前記ネットワークモデル表示を更新するように指示する更新指示手段を更に含むことを特徴とする請求項７又は８に記載の情報処理装置。
【請求項１０】
ネットワークで構成されたデータ共有システムに接続してデータを共有する情報処理装置の制御方法であって、
前記ネットワークに提供可能なデータを管理するデータ管理工程と、
前記データ共有システムに含まれる他の情報処理装置の状態を取得する状態取得工程と、
前記状態取得工程で取得した前記他の情報処理装置の状態に応じて、当該他の情報処理装置が公開しているデータの関連情報を動的に構築する関連情報管理工程と、
前記関連情報管理工程で構築された関連情報を基に前記データ共有システムの状況をユーザに提示するユーザインタフェースを構築するＵＩ構築工程と、
を有することを特徴とする情報処理装置の制御方法。
【請求項１１】
前記データ共有システムは、ピア・ツー・ピア型のシステムであることを特徴とする請求項１０に記載の情報処理装置の制御方法。
【請求項１２】
前記状態取得工程では、前記他の情報処理装置が、接続、非接続、接続中であるがデータ供給不可であることを含む状態を、当該他の情報処理装置からのイベントを受信することにより取得することを特徴とする請求項１０又は１１に記載の情報処理装置の制御方法。
【請求項１３】
前記状態取得工程では、前記他の情報処理装置が、接続、非接続、接続中であるがデータ供給不可であることを含む状態を、ユーザの要求により前記データ共有システムをサーチすることにより取得することを特徴とする請求項１０又は１１に記載の情報処理装置の制御方法。
【請求項１４】
前記関連情報管理工程では、前記状態がデータが提供可能であることを示している場合、前記他の情報処理装置が提供するデータが保持している関連情報を基に、前記データ共有システムで閲覧可能な全てのデータ間の関連情報を動的に構築することを特徴とする請求項１０乃至１３のいずれか１項に記載の情報処理装置の制御方法。
【請求項１５】
前記関連情報管理工程では、前記状態がデータが提供可能であることを示していない場合、前記他の情報処理装置が提供するデータに関連している関連情報を無効化し、前記データ共有システムで閲覧可能な全てのデータ間の関連情報を動的に構築することを特徴とする請求項１０乃至１３のいずれか１項に記載の情報処理装置の制御方法。
【請求項１６】
前記ユーザインターフェースは、前記データ共有システムでデータを提供可能な各情報処理装置のデータをサムネイルで表示したネットワークモデル表示を含むことを特徴とする請求項１０に記載の情報処理装置の制御方法。
【請求項１７】
前記ユーザインターフェースは、前記データ共有システムにおいて、データを提供可能な各情報処理装置のデータを前記ネットワークモデル表示で指示する指示工程を更に含むことを特徴とする請求項１６に記載の情報処理装置の制御方法。
【請求項１８】
前記ユーザインターフェースは、前記ネットワークモデル表示を更新するように指示する更新指示工程を更に含むことを特徴とする請求項１６又は１７に記載の情報処理装置の制御方法。
【請求項１９】
請求項１０乃至１８のいずれか１項に記載の制御方法を実行することを特徴とするプログラム。
【請求項２０】
請求項１９に記載のプログラムを記憶していることを特徴とする、コンピュータにより読取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークで構成されたデータ共有システムに接続してデータを共有する情報処理装置とその制御方法、プログラム及び記憶媒体に関する。
【背景技術】
【０００２】
近年、通信インフラの整備及び情報通信技術の発展により、インターネットを利用した情報提供サービス及び情報利用サービスが実現されてきている。特に、テキストデータ、画像データ、音声データ等のデータがデジタル化されたマルチメディア環境での情報の共有や情報の提供が可能となり、インターネットを介した多くの情報提供サービスが誕生している。このサービスには、インターネット上のサーバの所定の記憶領域に顧客がデジタルカメラなどの画像入力機器で撮影した画像データを格納し、その画像データを顧客が任意に閲覧できるものがある。また所定のサーバに画像データをアップロードし、他の人に画像保管場所のＵＲＬを電子メール等で知らせることにより、その画像データをネットワーク上の複数のユーザがシェアできるサービスもある。また、ユーザから転送された複数の画像を関連付けて１つにまとめたアルバムとして保管し、そのアルバムを公開するものも存在する。このような公開サービスでは、アルバムが公開されたことが通知されると、ユーザは、その通知された内容に従ってパーソナルコンピュータや携帯型の情報通信端末を利用することによりアルバムを閲覧することができる。
【０００３】
このような画像等のデータ閲覧及びデータの共有サービスは、情報を提供するサーバと、そのサーバから情報の提供を受けるクライアントからなるクライアントサーバシステムによって行われてきた。このクライアントサーバシステムでは、情報の提供者と被提供者という関係が明確であり、情報の提供者であるサーバに負荷が集中したり、サーバの管理が煩雑であるという特徴がある。
【０００４】
このようなクライアントサーバシステムの問題点を解決する手法として、ピア・ツー・ピア型（Ｐ２Ｐ）システムが存在する。このＰ２Ｐシステムでは、クライアントサーバシステムにおけるサーバやクライアントに相当するものが存在せず、両者の機能を備える複数のピアによりシステムが構成される。このＰ２Ｐシステムでは、情報の提供者と被提供者が対等であり、負荷がネットワーク全体に分散されるという特徴がある。有名なＰ２Ｐシステムに「Napster」（登録商標）があり、これは、インターネットを通じて個人間で音楽データの交換ができるシステムであり、無償で音楽を入手できることにより爆発的に普及した。このNapsterでは、ユーザのＰＣ（コンピュータ）はNapster社が管理するサーバに接続し、ユーザのＰＣに保存されている音声ファイルのリストを送信する。これを世界中のユーザが共有することにより、互いに他のユーザが所持する音楽ファイルを検索してダウンロードできるものである。中央のサーバは、ファイル検索データベースの提供とユーザの接続管理のみを行っており、音楽データ自体のやり取りはユーザのコンピュータ間の直接接続によって行われている。その後、登場した「Gnutella」は、Napsterと違って中央のサーバを必要とせず、全てのデータがバケツリレー式に各ユーザのコンピュータ間を直接伝播する。このようにＰ２Ｐ技術は、サーバの媒介を要するハイブリッド型のユーザのＰ２Ｐシステムと、バケツリレー式にデータを運ぶPure型のＰ２Ｐシステムの２種類が存在する。
【０００５】
このＰ２Ｐシステムを利用したデータ閲覧及びデータ共有が可能なシステムの一例として特許文献１に記載の技術がある。この特許文献１では、Ｐ２Ｐネットワークを利用して、限られた人たちの間で画像を共有できる環境が提案されている。これには、アップロード手続きが不要で、誰もが簡単に所望の仕上がり品質のプリントを最寄のラボ店で入手できることが記載されている。
【特許文献１】特開２００４−２５９２４９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上述した、現在多く採用されているクライアントサーバ型のデータ共有システムは、情報の提供者であるサーバに負荷が集中したり、サーバの管理が煩雑であるという問題点が存在する。しかし、全ての共有するデータがサーバにアップロードされ、また管理者が厳密に管理することにより、２４時間３６５日、停止することなく安定して動作するため、ユーザはいつでも見たいときにサーバにアクセスしデータを見ることができる。一方、特許文献１に記載のＰ２Ｐデータ共有システムでは、共有されるデータはサーバにアップロードされるのではなく各ユーザが保持しているデータ共有装置に存在する。更に、各ユーザが保持しているデータ共有装置が常にネットワークに接続している保証がない。このため、データを閲覧したいユーザが、そのデータ共有システムに存在する全てのデータを常に閲覧できない可能性がある。
【０００７】
また、データ共有システムに存在するデータ間でリンクが張られて関連付けられているような場合、全てのデータを常に提供することができないため、リンク切れなどのエラーが発生するようになってしまう。
【０００８】
本発明の目的は、この様な従来の問題点を解決することにある。
【０００９】
本願発明の特徴は、データ共有システムの各情報処理装置の状態に基づいて、動的にデータの関連情報を変更することによりリンク切れの発生を防止することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成するために本発明の一態様に係る情報処理装置は以下のような構成を備える。即ち、
ネットワークで構成されたデータ共有システムに接続してデータを共有する情報処理装置であって、
前記ネットワークに提供可能なデータを管理するデータ管理手段と、
前記データ共有システムに含まれる他の情報処理装置の状態を取得する状態取得手段と、
前記状態取得手段により取得した前記他の情報処理装置の状態に応じて、当該他の情報処理装置が公開しているデータの関連情報を動的に構築する関連情報管理手段と、
前記関連情報管理手段により構築された関連情報を基に前記データ共有システムの状況をユーザに提示するユーザインタフェースを構築するＵＩ構築手段と、
を有することを特徴とする。
【００１１】
上記目的を達成するために本発明の一態様に係る情報処理装置の制御方法は以下のような工程を備える。即ち、
ネットワークで構成されたデータ共有システムに接続してデータを共有する情報処理装置の制御方法であって、
前記ネットワークに提供可能なデータを管理するデータ管理工程と、
前記データ共有システムに含まれる他の情報処理装置の状態を取得する状態取得工程と、
前記状態取得工程で取得した前記他の情報処理装置の状態に応じて、当該他の情報処理装置が公開しているデータの関連情報を動的に構築する関連情報管理工程と、
前記関連情報管理工程で構築された関連情報を基に前記データ共有システムの状況をユーザに提示するユーザインタフェースを構築するＵＩ構築工程と、
を有することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、例えＰ２Ｐのデータ共有システムであっても、リンク切れが存在しないユーザインタフェースを提供できる。
【発明を実施するための最良の形態】
【００１３】
以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。尚、この実施の形態では、データとして画像を用いた場合、即ち、画像共有システム、画像共有装置、画像共有方法を例として説明する。
【００１４】
本実施の形態は、例えば図１（Ａ）に示すようなクライアントサーバシステムではなく、図１（Ｂ）に示すようなPure型のＰ２Ｐシステムに適用される。
【００１５】
図２（Ａ）〜（Ｃ）は、従来のＰ２Ｐデータ共有システムを概念的に説明する図で、図３は本実施の形態に係るＰ２Ｐデータ共有システムを説明する図である。尚、図２の２０３及び図３の３０３は、画像共有システム間に存在する画像間の関連（リンク）を概念的に図示したものである。
【００１６】
図２（Ａ）では、Ｐ２Ｐの画像共有システムにユーザＡ２００の画像共有装置が接続した際に画像２０４の他に２枚の画像が有効になる。ここで画像２０４には、ユーザＢ２０１の画像共有装置が保持している画像２０８（図２（Ｂ））への関連（リンク）情報が存在している。また画像２０５には、ユーザＣ２０２の画像共有装置が保持している画像２０９（図２（Ｂ））への関連（リンク）情報が存在している。このため、ユーザＡ２００の画像共有装置のみが接続しているだけでは、画像２０４及び２０５は、２０６，２０７で示すように、それぞれリンク切れの状態になっている。
【００１７】
これに対して図２（Ｂ）は、ユーザＡ２００の画像共有装置、ユーザＢ２０１の画像共有装置、ユーザＣ２０２の画像共有装置が接続している状態を示し、この場合はリンク切れが発生しない。即ち、画像共有システムに接続すべき全ユーザの画像共有装置が接続して全ての画像が利用可能な状態になっている。この場合は、従来のクライアントサーバ型の画像共有システムと同様に全ての画像を閲覧できる。
【００１８】
これは図２（Ａ）において、ユーザＢ２０１の画像共有装置が保持している画像２０８が利用可能になるとリンク切れ２０６が解消され、ユーザＣ２０２の画像共有装置が保持している画像２０９が利用可能なるとリンク切れ２０７が解消された状態を示す。
【００１９】
しかし、Ｐ２Ｐの画像共有システムにおいて、全てのユーザが常時接続していることは保証できないため、この状態を継続することは不可能である。例えば図２（Ｃ）に示すように、ユーザＡ２００の画像共有装置が非接続の状態になった場合は、画像共有システムからユーザＡ２００の画像共有装置が保持していた画像２０４等が利用不可になる。このため、画像２０４と画像２０８の間の関連（リンク）情報が２１０で示すようにリンク切れになる。また画像２０５と画像２０９の間の関連（リンク）情報が２１１で示すようにリンク切れになってしまう。
【００２０】
これに対して図３に記載の本実施の形態では、ユーザＡ３００の画像共有装置が画像共有システム３０３ａに接続した際、まずこの画像共有システム３０３ａに接続している他の画像共有装置を検索する。このとき他の画像共有装置が発見できない場合は、ユーザＢ３０１の画像共有装置が保持する画像３０７への関連（リンク）情報３０６及びユーザＣ３０２の画像共有装置が保持する画像３０９への関連（リンク）情報３０８を無効化する。即ち、自分以外の画像共有装置が保持している画像に対する関連（リンク）情報を無効化することにより、リンク切れにならないように関連情報を構築する。
【００２１】
一方、３０３ｂで示すように、ユーザＡ３００の画像共有装置、ユーザＢ３０１の画像共有装置、ユーザＣ３０２の画像共有装置が接続している状態を考える。この場合は、画像共有システムに接続すべき全ユーザの画像共有装置が接続されて、全ての画像が利用可能な状態になっている。この場合は従来のクライアントサーバ型の画像共有システム或は従来のＰ２Ｐの画像共有システムと同様に、全ての画像が見たいときにリンク切れが存在しない状態で閲覧することができる。即ち、ユーザＡ３００の画像共有装置が保持する画像３０４とユーザＢ３０１の画像共有装置が保持する画像３０７の間の関連（リンク）情報３０６を有効化する。更に、ユーザＡ３００の画像共有装置が保持している画像３０５とユーザＣ３０２の画像共有装置が保持している画像３０９の間の関連（リンク）情報３０８を有効化する。
【００２２】
これに加えて本実施の形態では、以下の特徴を有している。３０３ｃは、全ユーザが接続している状態から、例えばユーザＡ３００の画像共有装置が非接続となり、画像３０４等のユーザＡ３００の画像共有装置が保持している画像が利用できなくなった場合を示している。この場合、その他の画像共有装置（ユーザＢ３０１及びユーザＣ３０２の画像共有装置）は、ユーザＡ３００の画像共有装置が非接続になったことを感知する。そして、ユーザＡ３００の画像共有装置が保持している画像３０４，３０５に対する関連（リンク）情報３０６と３０８を無効化する。こうしてリンク切れが発生しないように関連情報を構築する。このように本実施の形態では、動的に変化する利用可能な画像共有装置の構成を反映した画像の関連付けを動的に行う。これによりＰ２Ｐの画像共有システムであっても、リンク切れが存在しないユーザインタフェースを提供することが可能となる。
【００２３】
図４は、本実施の形態に係る画像共有システムに接続している画像共有装置をＰＣ（パーソナルコンピュータ）等のコンピュータシステムで構成した場合の構成を示すブロック図である。尚、この画像共有装置は、ＰＣ（パーソナルコンピュータ）以外に、ワークステーション、ノートブックＰＣ、パームトップＰＣ、コンピュータを内蔵したテレビ等の各種家電製品、通信機能を有するゲーム機を含む。更には、電話、ＦＡＸ、携帯電話、ＰＨＳ、電子手帳、等を含む他の画像共有装置と通信するための通信機能を有する端末、又は、これらの組合せによっても実現可能である。
【００２４】
ＣＰＵ４０１は、このコンピュータシステムの制御を司る中央演算装置（ＣＰＵと記す）で、プログラムＲＯＭ及びＲＡＭ４０２にロードされたプログラムに従って各種制御を実行する。ＲＡＭ４０２は、ランダムアクセスメモリ（以下、ＲＡＭと記す）であり、ＣＰＵ４０１の主メモリ、及び実行プログラムの領域や該プログラムの実行エリア並びに、各種データを記憶するワークエリアとして機能する。このＣＰＵ４０１により実行される各種アプリケーションは、実行時にＨＤＤ４０９から、このＲＡＭ４０２にロードされて実行される。ＲＯＭ４０３は、ＣＰＵ４０１の処理手順を記録している。ＲＯＭ４０３には、コンピュータシステムの機器制御を行うシステムプログラムである基本ソフト（ＯＳ）を記憶したプログラムＲＯＭとシステムを稼動するために必要な情報等を記憶したデータＲＯＭがある。尚、このＲＯＭ４０３の代わりに後述のＨＤＤ４０９を用いる場合もある。ネットワークインターフェース（ＮＥＴＩＦ）部４０４は、ネットワークを介して、他のコンピュータシステムとの間でのデータ転送を行うための制御や接続状況の診断を行う。ビデオＲＡＭ（ＶＲＡＭ）４０５は、コンピュータシステムの稼動状態を示す後述する表示部４０６の画面に表示される画像を展開し、その表示の制御を行う。表示部４０６はディスプレイ部で、液晶やＣＲＴ等の表示ユニットを備えている。キーボードコントローラ（ＫＢＣ）４０７は、キーボードやマウス等を有する入力部４０８からの入力信号を制御する。外部記憶装置（ＨＤＤ）４０９は、例えば、ハードディスクやＭＯ等の大容量記憶装置である。ここには各種アプリケーションプログラムやＯＳがインストールされており、また画像情報などのデータ保存用に用いられる。本実施の形態に係るアプリケーションプログラムとは、本実施の形態を構成する各種機器制御手段を実行するソフトウェアプログラムなどである。外部入出力装置（ＦＤＤ）４１０は、例えばフロッピー（登録商標）ディスクドライブ、ＣＤ−ＲＯＭドライブなどのリムーバブル（登録商標）を入出力するものであり、上述したアプリケーションプログラムの媒体からの読み出しなどに用いられる。尚、ＨＤＤ４０９に格納するアプリケーションプログラムやデータをＦＤＤ４１０に格納して使用することも可能である。システムバス４００は、上述した各ユニット間の接続するための入出力バス（アドレスバス、データバス及び制御バス）である。
【００２５】
図５は、本発明の実施の形態に係る画像共有システムを構成する画像共有装置で実行されるアプリケーションモジュールを説明する機能ブロック図である。尚、以下に述べるアプリケーションは、該機能を実現するプログラムコードを記録した記録媒体をシステム或は装置に供給し、そのシステム或は装置のコンピュータが記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成される。
【００２６】
この画像共有装置は、ＵＩ構築部５００、関連情報管理部５０１、状態監視部５０２、画像管理部５０３、メッセージ送受信部５０４を含む。またメッセージ送受信部５０４は、メッセージ送信部５０４ａ、メッセージ受信部５０４ｂを含む。尚、これら各部の機能については後述する。
【００２７】
図６は、本実施の形態に係る画像共有装置において、画像管理部５０３で画像とともに管理されるメタデータの一例を示す図である。尚、図６に示した項目はあくまでも一例であり、この項目に限定されるものではない。
【００２８】
図６の例では、画像管理部５０３は、その画像自身とともに、画像名６００、撮影日時６０１、撮影場所６０２、リンク先６０３のメタデータを保持している。更に、リンク先６０３は、どの画像共有装置（ユーザＡ，Ｂ，Ｃ）のどの画像と関連（リンク）されているかを保持している。このリンク先６０３の情報を基に、画像共有システムに接続している画像共有装置の増減に対応して、関連情報管理部５０１で、この画像共有システムで閲覧可能な全てのデータ間の関連情報を動的に構築する。
【００２９】
図７は、本実施の形態１に係る画像共有装置のＵＩ構築部５００によって構築されるユーザインタフェースの一例を示す図である。尚、図７に示した項目はあくまでも一例であり、この項目に限定されるものではない。
【００３０】
図７の例では、表示部４０６に表示されたＵＩ画面例を示している。画像表示部７００には、現在の表示画像が表示される。リンク情報表示部７０１には、この画像共有システム内で利用可能な画像の関連（リンク）情報が、この画像共有システムに存在する画像のサムネイルを用いて概念的に表示される。リンク先リスト７０２には、画像表示部７００に表示されている画像にリンク付けられている画像の一覧が表示される。
【００３１】
前述の図３及び図６を参照すると明らかなように、図３の画像３０４（ユーザＡ）に図７の画像７１０が、また図３の画像３０７（ユーザＢ）には画像７１１がそれぞれ対応している。よって画像表示部７００には、画像７１０画表示されている。また図６より、「A2.jpeg」と「B1.jpeg」とがリンク先として登録されているため、リンク先リスト７０２に、これらが表示されている。
【００３２】
戻るボタン７０４は、現時点で画像表示部７００に表示されている画像の１つ前に表示していた画像に戻るように指示するボタンである。次へボタン７０４は、現時点で画像表示部７００に表示されている画像の１つ先の画像に進むように指示するボタンで、リンク情報表示部７０１或はリンク先リスト７０２で選択された画像を表示する。終了ボタン７０５は、アプリケーションを終了するためのボタンである。
【００３３】
図８は、本発明の実施の形態に係る画像共有システムを構成する画像共有装置による処理を説明するフローチャートで、この処理を実行するプログラムはＨＤＤ４０９にインストールされており、実行時にＲＡＭ４０２に読み出されＣＰＵ４０１の制御の下に実行される。
【００３４】
このプログラムの起動後、まずステップＳ８００で、この画像共有システムを構成する自分以外の画像共有装置が存在するかどうかを検索する。このとき画像共有装置状態監視部５０２は、メッセージ送信部５０４ａからネットワークに検索要求を送信する。尚、メッセージ送信部５０４ａから送信される際には、インターネットプロトコル（ＩＰ）が用いられる。この場合、ＩＰのバージョンはＩＰｖ４とＩＰｖ６の双方が使用可能である。また実際に通信経路として使用される媒体として有線或は無線を用いることができる。機器制御用プロトコルによっては、更に、ＴＣＰ，ＵＤＰ，ＨＴＴＰ，ＳＭＴＰ，ＳＮＭＰ，ＦＴＰなどの通信プロトコルが用いられる場合もある。
【００３５】
次にステップＳ８０１で、画像共有装置状態監視部５０２は、メッセージ受信部５０４ｂにより受信した、自分以外の画像共有装置から送信された検索応答を基に、画像共有装置リストを更新する。尚、メッセージ受信部５０４ｂでの受信は、前述のメッセージ送信部５０４ａの場合と同様のプロトコルによる。次にステップＳ８０２で、ステップＳ８０１で検索応答を返却してきた画像共有装置から、それぞれが保持する画像関連情報を取得する。ここで取得される画像関連情報には、図６に示すリンク情報の他に各種メタデータが含まれている。更に、取得した画像関連情報と、画像管理部５０３で管理している自分自身が保持している画像の画像関連情報とを基にして画像共有システム全体の関連情報を構築する。
【００３６】
次にステップＳ８０３で、ステップＳ８０２で構築した画像共有システム全体の画像共有情報を基に、リンク情報表示部７０１に表示するユーザインタフェース（ＵＩ）を構築する。次にステップＳ８０４で、ユーザに対して図７に示すようなユーザインタフェースを表示する。ここで画像表示部７００に表示される画像は、例えば自分自身が保持している１番目の画像７１０等のように、予め定義されているものが表示される。
【００３７】
次にステップＳ８０５で、ユーザからの操作イベント及びネットワークを通じて他の画像共有装置から発行されるイベントに対する処理を行う。次にステップＳ８０５における処理の詳細を図９のフローチャートを参照して説明する。
【００３８】
図９は、図８のＳ８０５のイベント受信処理を説明するフローチャートである。
【００３９】
まずステップＳ９００で、ユーザからの操作イベント及びネットワークを通じて他の画像共有装置から発行されるイベントを受信するのを待つ。そしてステップＳ９０１でイベントを受信するとステップＳ９０２に進み、そのイベントの発信元がユーザインタフェースであるか、ネットワークと通じた他の画像共有装置からのイベントであるかを判定する。
【００４０】
ステップＳ９０２で、ユーザインタフェースからのイベントであると判定した場合はステップＳ９０３に進み、ユーザインタフェースに対するイベント処理を行う。尚、ステップＳ９０３におけるＵＩイベント処理の詳細は図１０を参照して後述する。
【００４１】
一方、ステップＳ９０２で、ネットワークを通じた他の画像共有装置からのイベントであると判定した場合はステップＳ９０４に進み、ネットワークに対するイベント処理を実行する。このステップＳ９０４におけるネットワークイベント処理の詳細は図１１を参照して後述する。そしてこれらステップＳ９０３或はＳ９０４のいずれかを実行した後ステップＳ９０５に進み、終了かどうかを判定し、終了であると判定した場合は処理を終了するが、継続であると判定した場合は再びステップＳ９００に進み、イベントの受信待ちとなる。
【００４２】
図１０は、図９のステップＳ９０３のＵＩイベント処理を説明するフローチャートである。この処理は、図７の画面において、ユーザがボタン７０３〜７０５のいずれかを操作したときに発生される。
【００４３】
まずステップＳ１０００で、ユーザインタフェースから受信したイベントの種類を判定する。ここで終了ボタン７０５がクリックされたイベントであると判定された場合は、処理を終了する。また戻るボタン７０３がクリックされたイベントであると判定された場合はステップＳ１００１に進み、画像表示部７００に表示された画像の履歴を記憶している表示履歴リストを参照して、現在画像表示部７００に表示中である画像の１つ前の画像情報を識別する。尚、この表示履歴リストはＲＡＭ４０２に設けられている。そしてステップＳ１００２で、その画像の画像データを取得する。この時、自分自身が保持している画像である場合は画像管理部５０３から取得し、自分以外の画像共有装置が保持している画像である場合は、ネットワークを通じて画像を取得する。
【００４４】
一方、ステップＳ１０００で、次へボタン７０４がクリックされたイベントであると判定した場合はステップＳ１００３に進み、次に表示すべき情報をリンク情報表示部７０１或はリンク先リスト７０２から取得する。これら２つの内、どちらかの部品（リンク情報表示部７０１の画像、或はリンク先リスト７０２の行）の選択されている方をリンク先とする。そしてステップＳ１００４で、そのリンク先の画像の画像データを取得する。この時、自分自身が保持している画像である場合は画像管理部５０３から取得し、自分以外の画像共有装置が保持している画像である場合は、ネットワークを通じて、その画像データを取得する。
【００４５】
こうしてステップＳ１００２或はＳ１００４を実行した後ステップＳ１００５に進み、画像の取得に成功したかどうかを判定する。ステップＳ１００５で取得成功と判定した場合はステップＳ１００６に進み、画像表示部７００に該当する画像を表示し、その画像に付属する画像関連情報を基に、リンク情報表示部７０１及びリンク先リスト７０２を更新する（ＵＩ構築部５００）。次にステップＳ１００７で、ユーザに対して更新された図７のようなユーザインタフェースを表示する。尚、ここで画像に付属する画像関連情報は、関連情報管理部５０１で管理されている。
【００４６】
一方、ステップＳ１００５で取得失敗と判定した場合はステップＳ１００８に進み、ユーザに対してエラーメッセージを表示する。次にステップＳ１００９で、画像共有システムを構成する自分以外の画像共有装置が存在するかどうかを検索する。このとき、画像共有装置状態監視部５０２は、メッセージ送信部５０４ａから検索要求を送信する。そしてステップＳ１０１０で、画像共有装置状態監視部５０２は、メッセージ受信部５０４ｂから受信した自分以外の画像共有装置から送信された検索応答を基に、画像共有装置リストを更新する。そして、ステップＳ１００６の処理に移行する。
【００４７】
図１１は、図９のステップＳ９０４で示すネットワークイベント処理を説明するフローチャートである。
【００４８】
まずステップＳ１１００で、自分以外の画像共有装置から、ネットワークを通して受信したイベントの種類を判定する。ここで画像共有装置の追加のイベントであると判定した場合はステップＳ１１０１に進み、画像共有装置リストにイベントを通知してきた画像共有装置を追加する。次にステップＳ１１０２で、そのイベントを通知してきた画像共有装置が保持している画像関連情報を取得する。ここで取得される画像関連情報は、図６に示したようなリンク情報の他に、各種メタデータから構成されている。これら関連情報は関連情報管理部５０１で管理されている。更に、その取得した画像関連情報と画像管理部５０３で管理している自分自身が保持している画像の画像関連情報とを基にして画像共有システム全体の関連情報を構築する。そしてステップＳ１１０３に進み、ＵＩ構築部５００により、その構築された画像共有システム全体の画像共有情報を基にしてリンク情報表示部７０１に表示するユーザインタフェースを構築する。そして、ステップＳ１１０４で、ユーザに対して図７のようなユーザインタフェースを表示する。
【００４９】
一方、ステップＳ１１０１で、削除のイベントであると判定した場合はステップＳ１１０５に進み、イベントを通知してきた画像共有装置を画像共有装置リストから削除する。次にステップＳ１１０６で、そのイベントを通知してきた画像共有装置が保持している関連情報を削除する。次にステップＳ１１０８で、現時点で画像表示部７００に表示している画像が、イベントを通知してきた画像共有装置が保持しているものかどうかを判定する。そうでないと判定した場合は、ステップＳ１１０３の処理に移行する。
【００５０】
一方、ステップＳ１１０８で、イベントを通知していた画像共有装置が保持している画像であると判定した場合はステップＳ１１０９に進み、現在表示している画像が、イベントを通知してきた画像共有装置以外が保持している画像に対してリンクが存在するかどうかを判定する。ここでリンクが存在すると判定した場合はステップＳ１１０３の処理に移行する。一方、リンクが存在しないと判定した場合、即ち、リンクすべき画像が画像共有装置の削除によってリンク自体も削除されてしまった場合はステップＳ１１１０に進み、次へボタン７０４を無効化する。そして、ステップＳ１１０３の処理に移行する。
【００５１】
このように本実施の形態１によれば、ネットワークを通して受信したイベントに基づいて、画像共有装置が新規追加されたか、或は削除されたかを検知すると、それに基づいて画像関連情報及びリンク先を更新できる。こうして更新した情報に基づいて、画像共有システムのＵＩ画面を表示できるため、ユーザは現在、視聴できる画像等のコンテンツを容易に識別できる。
【００５２】
ここで本実施の形態１では、画像のような静的なデータ、即ち、表示時にダウンロード済みのものを対象としている。従って、動画のストリーミングのように随時受信しながら表示するようなコンテンツの場合は、閲覧中に表示対象のオブジェクトが存在しなくなると継続不可能となる。このため、直前のコンテンツに戻るなどの処理が必要となる。
【００５３】
＜実施形態２＞
次に本発明の実施の形態２について説明する。尚、この実施の形態２に係る共有システムや画像共有装置の基本構成は前述の実施の形態１と同様であるため、その説明を省略する。
【００５４】
図１２は、本発明の実施の形態２に係るＵＩ構築部５００によって構築されるユーザインタフェースの一例を示す図である。尚、図１２に示した項目はあくまでも一例であり、この項目に限定されるものではない。図１２において、前述の図７と共通する部分は同じ記号で示し、その説明を省略する。
【００５５】
この実施の形態２では、画像共有システムの状態を最新の状態に更新するための更新ボタン１２０５を設けている点が、前述の実施の形態１と異なっている。
【００５６】
またこの実施の形態２に係る画像共有システムを構成する画像共有装置における処理は、前述の図８、図９及び図１１のフローチャートと同じであるため、その説明を省略する。
【００５７】
図１３は、本実施の形態２に係るＵＩイベント処理（Ｓ９０３）を説明するフローチャートで、ステップＳ１３００〜Ｓ１３１０の処理は、前述の図１０のステップＳ１０００〜Ｓ１０１０と同じであるため、その説明を省略する。
【００５８】
ステップＳ１３００で、ユーザインタフェースから受信したイベントの種類を判定し、更新ボタン１２０５がクリックされたイベントであると判定した場合はステップＳ１３１１に進む。ここでは画像共有システムを構成する自分以外の画像共有装置が存在するかどうかを検索する。このとき、画像共有装置状態監視部５０２は、メッセージ送信部５０４ａから検索要求を送信する。次にステップＳ１３１２で、画像共有装置状態監視部５０２は、メッセージ受信部５０４ｂから受信した自分以外の画像共有装置から送信された検索応答を基に画像共有装置リストを更新する。そして、ステップＳ１３０６の処理に移行する。
【００５９】
以上説明したように本実施の形態２によれば、前述の実施の形態１の効果に加えて、簡単な操作で、画像共有システムの状態を最新の状態に更新することができる。これにより、画像共有システムに画像共有装置が新規に追加されたり、或はシステムから除去された場合でも、簡単に最新のシステム構成にアップデートできる。
【００６０】
本実施の形態２では、画像のような静的なデータ、即ち、表示時にダウンロード済みのものを対象としている。よって、動画のストリーミングのように随時受信しながら表示するようなコンテンツの場合は、閲覧中表示対象のオブジェクトが存在しなくなるため、継続不可能となり、直前のコンテンツに戻るなどの処理が必要となる。
【００６１】
本実施の形態１及び２において、データとして画像を取り扱うデータ共有システム、データ共有装置、データ共有方法、即ち、画像共有システム、画像共有装置、画像共有方法を例として説明した。しかし、本発明で取り扱えるデータとしては画像に限定されるものではなく、テキストデータ、音声データ、文書データなど、さまざまな形態のデータであっても良い。その際、図７及び図１２のリンク情報表示部７０１では、画像をサムネイル表示していたが、音声データなどサムネイル表示できないデータに対しては、アイコン等を表示することにより、リンク情報を図示することが可能である。
【００６２】
以上説明したように本実施の形態によれば、Ｐ２Ｐのデータ共有システムであっても、ユーザに対してリンク切れが存在しないユーザインタフェースを提供できる。
【００６３】
更に、Ｐ２Ｐデータ共有システムの状態を常に監視し、データ共有システムに参加している他のデータ共有装置が、接続、非接続、接続中だがデータ供給不可であるといったような状態を、他のデータ共有装置からのイベントを受信することにより把握できる。これにより、エンドノードが常にネットワークに接続しているとは限らないＰ２Ｐデータ共有システムにおいて、現在接続中であるデータ共有装置をイベントを使用して識別できる。こうしてデータ共有システムにおいて、閲覧可能なデータを抽出することが可能となる。
【００６４】
更に、Ｐ２Ｐデータ共有システムの状態を常に監視し、データ共有システムに参加している他のデータ共有装置の状態をユーザからの要求によりデータ共有システム内をサーチして把握できる。これにより、エンドノードが常にネットワークに接続しているとは限らないＰ２Ｐのデータ共有システムにおいて、接続中であるデータ共有装置をユーザが知りたいときに知ることができる。これにより、データ共有システムにおいて、閲覧可能なデータを抽出することが可能となる。
【００６５】
また、データが提供可能であると判定された全てのデータ共有装置が提供するデータが保持している関連（リンク）情報を基に、データ共有システムで閲覧可能な全てのデータ間の関連情報を動的に構築できる。これにより、現在データ共有システムに参加しているデータ共有装置が提供しているデータのみから構成されるデータ共有システムが構築可能となる。
【００６６】
更に、Ｐ２Ｐデータ共有システムで閲覧可能な全てのデータ間の関連情報を基に、動的にユーザインタフェースを構築し、ユーザに対して常に閲覧可能なデータのリンクを提供できる。これにより、再構築された関連（リンク）情報を基にユーザインタフェースを再構築できる。このため、ユーザに対して常に閲覧可能なデータのリンクを提供できる。
【００６７】
（他の実施形態）
以上、本発明の実施形態について詳述したが、本発明は、複数の機器から構成される文書検索システムに適用しても良いし、また、一つの機器からなる文書検索装置に適用しても良い。
【００６８】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムを読み出して実行することによっても達成され得る。上記実施形態では、図５から７、及び図９から１３のフローチャートに対応したプログラムである。その場合、プログラムの機能を有していれば、形態は、プログラムである必要はない。  従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明のクレームでは、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【００６９】
プログラムを供給するための記録媒体としては、様々なものが使用できる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などである。
【００７０】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページからハードディスク等の記録媒体にダウンロードすることによっても供給できる。その場合、ダウンロードされるのは、本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルであってもよい。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明のクレームに含まれるものである。
【００７１】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布する形態としても良い。その場合、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムが実行可能な形式でコンピュータにインストールされるようにする。
【００７２】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される形態以外の形態でも実現可能である。例えば、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【００７３】
更に、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれるようにしてもよい。この場合、その後で、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によって前述した実施形態の機能が実現される。
【図面の簡単な説明】
【００７４】
【図１】本発明の前提技術となるＰｕｒｅ型のＰ２Ｐのシステムを説明するための図で、（Ａ）はクライアントサーバシステムを示し、（Ｂ）は、Pure型のＰ２Ｐシステムを説明する図である。
【図２】従来のＰ２Ｐデータ共有システムを概念的に説明する図である。
【図３】本実施の形態に係るＰ２Ｐデータ共有システムを説明する図である。
【図４】本実施の形態に係る画像共有システムに接続している画像共有装置をＰＣ等のコンピュータシステムで構成した場合の構成を示すブロック図である。
【図５】本発明の一実施の形態に係る画像共有システムを構成する画像共有装置で実行されるアプリケーションモジュールを説明するブロック図である。
【図６】本実施の形態に係る画像共有装置において、画像管理部で画像とともに管理されるメタデータの一例を示す図である。
【図７】本実施の形態１に係る画像共有装置のＵＩ構築部によって構築されるユーザインタフェースの一例を示す図である。
【図８】本発明の実施の形態に係る画像共有システムを構成する画像共有装置による処理を説明するフローチャートである。
【図９】図８のＳ８０５のイベント受信処理を説明するフローチャートである。
【図１０】図９のステップＳ９０３のＵＩイベント処理を説明するフローチャートである
【図１１】図９のステップＳ９０４で示すネットワークイベント処理を説明するフローチャートである。
【図１２】本発明の実施の形態２に係るＵＩ構築部によって構築されるユーザインタフェースの一例を示す図である。
【図１３】本実施の形態２に係るＵＩイベント処理（Ｓ９０３）を説明するフローチャートである。
【図１】
2007128179.tif 000003
【図２】
2007128179.tif 000004
【図３】
2007128179.tif 000005
【図４】
2007128179.tif 000006
【図５】
2007128179.tif 000007
【図６】
2007128179.tif 000008
【図７】
2007128179.tif 000009
【図８】
2007128179.tif 000010
【図９】
2007128179.tif 000011
【図１０】
2007128179.tif 000012
【図１１】
2007128179.tif 000013
【図１２】
2007128179.tif 000014
【図１３】
2007128179.tif 000015