(57)【要約】【課題】検索条件に指定可能なサービスの属性項目の変動に柔軟に対応できる。【解決手段】属性項目情報管理部４５は、サービス種別毎にサービスを検索するための属性名等が設定された属性項目情報を、同一サブネットワーク２内のサーバ及び他のサービス検索装置から収集し、属性項目情報データベース４８にて保持管理する。属性項目通知部４４は、クライアントからの検索要求に応じて検索式の中で検索条件として記述可能な属性項目の一覧を属性項目情報データベース４８を参照することにより取得し、返答する。サービス検索部４３は、属性項目の一覧の中から利用者により選択された属性項目が指定された検索式に基づきサービス検索を行う。そして、検索結果であるサービス情報の一覧を返答する。【選択図】        図４
2004199515.tif 000002
【特許請求の範囲】
【請求項１】
クライアントからのサービス検索要求に応じてネットワークに接続されているサーバが提供するサービスを検索し、その検索結果を返す検索サービスを提供するサービス検索装置において、
サービスの検索条件として指定可能な属性項目に関する属性項目情報を記憶する属性項目情報データベースと、
前記属性項目情報データベースを参照することにより生成した属性項目の一覧を検索可能属性項目として前記クライアントへ通知する属性項目通知手段と、
を有することを特徴とするサービス検索装置。
【請求項２】
請求項１記載のサービス検索装置において、
前記属性項目情報データベースは、サービスの種類を表すサービス種別に、当該サービスにおいて指定可能な属性項目を対応付けした形式にて属性項目情報を記憶しており、
前記属性項目通知手段は、前記クライアントからのサービス検索要求により特定されるサービスの属性項目のみによって一覧を生成することを特徴とするサービス検索装置。
【請求項３】
クライアントからのサービス検索要求に応じてネットワークに接続されているサーバが提供するサービスを検索し、その検索結果を返す検索サービスを提供するサービス検索装置において、
サービスの検索条件として指定可能な属性項目に関する属性項目情報を記憶する属性項目情報データベースと、
前記属性項目情報データベースを参照することにより前記クライアントにおいて検索条件を入力指定させるための検索条件入力インタフェースを生成する検索条件入力支援手段と、
を有することを特徴とするサービス検索装置。
【請求項４】
請求項３記載のサービス検索装置において、
前記検索条件入力支援手段は、ウェブ対応の検索条件入力インタフェースを生成することを特徴とするサービス検索装置。
【請求項５】
請求項１又は３記載のサービス検索装置において、
前記属性項目情報データベースに記憶された属性項目情報の管理を行う属性項目情報管理手段を有することを特徴とするサービス検索装置。
【請求項６】
請求項５記載のサービス検索装置において、
前記属性項目情報管理手段は、他の前記サービス検索装置が保持管理している属性項目情報を収集して前記属性項目情報データベースに登録することを特徴とするサービス検索装置。
【請求項７】
請求項５記載のサービス検索装置において、
前記属性項目情報管理手段は、前記サーバからサービスの属性定義情報を直接収集し、その属性定義情報に基づき属性項目情報を生成して前記属性項目情報データベースに登録することを特徴とするサービス検索装置。
【請求項８】
サービス検索要求に応じてネットワークに接続されているサーバが提供するサービスを検索し、その検索結果を返す検索サービスを提供するサービス検索装置に対して前記サービス検索要求を送るクライアント装置において、
前記サービス検索装置から送られてくるサービスの検索条件として指定可能な属性項目の一覧を受信する受信手段と、
前記受信手段が受信した属性項目の一覧に基づいて、ユーザに検索条件を入力指定させるための検索条件入力インタフェースを生成する検索条件入力インタフェース生成手段と、
を有することを特徴とするクライアント装置。
【請求項９】
請求項８記載のクライアント装置において、
前記検索条件入力インタフェース生成手段は、ウェブ対応の検索条件入力インタフェースを生成することを特徴とするクライアント装置。
【請求項１０】
請求項８記載のクライアント装置において、
前記サービス検索装置から送られてきた検索結果であるサービス情報の一覧に基づいて、ユーザに検索結果を示すための検索結果表示インタフェースを生成する検索結果表示インタフェース生成手段を有することを特徴とするクライアント装置。
【請求項１１】
請求項１０記載のクライアント装置において、
前記検索結果表示インタフェース生成手段は、ウェブ対応の検索結果表示インタフェースを生成することを特徴とするクライアント装置。
【請求項１２】
クライアントからのサービス検索要求に応じてネットワークに接続されているサーバが提供するサービスを検索し、その検索結果を返す検索サービスを提供するサービス検索方法において、
サービスの検索条件として指定可能な属性項目に関する属性項目情報を予め保持しておき、その保持しておいた属性項目情報を参照することにより生成した属性項目の一覧を検索可能属性項目として前記クライアントへ通知することにより、検索条件に指定可能な属性項目を利用者に提供可能にしたことを特徴とするサービス検索方法。
【請求項１３】
請求項１２記載のサービス検索方法において、
属性項目の一覧の中から検索条件を入力指定させるための検索条件入力インタフェースを生成して利用者に提供することを特徴とするサービス検索方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワークにおいていずれのサーバがどのようなサービスを提供しているかを示す情報を、サービスを受けようとしているクライアントに対して提供するサービス検索装置およびその方法に関する。
【０００２】
【従来の技術】
インターネットに代表される広域コンピュータネットワークは、均一なひとつのネットワークではない。運用主体が異なる多数のネットワークが相互接続され、かつ、論理的に階層化された集合体として構成されている。広域コンピュータネットワークを構成するネットワークには、ＩＰ（Internet Protocol）サブネット、ドメイン、企業イントラネット、インターネット接続業者（ＩＳＰ：Internet Service Provider）などの種類がある。各ネットワークは、それぞれ異なるネットワークシステム設計と運用ポリシーによって運用されている。ネットワークの相互接続は、ルータやファイアウォールなどのネットワーク中継装置によって行われるが、同時に、それらによってネットワークの相互干渉が防止されている。
【０００３】
ネットワークを介して適用業務を支援するために提供されるサービス（以下、「サービス」と呼ぶ。）は、一般にネットワークに接続されたサーバによって提供される。このため、サービスは、ネットワーク空間におけるサービスという側面と同時に、地理空間におけるサーバという側面とを有している。通常、あるサービスが位置するネットワークと、そのサービスを提供しているサーバが位置する地理的場所とは、直接的な依存関係は無い。ネットワークの相互接続関係は、ネットワークを運用する組織に依存している。従って、仮に、あるサービスを提供しているサーバがクライアントから地理的に近傍に位置していたとしても、それぞれが接続されているネットワークは異なっている場合がある。
【０００４】
サービスは、ネットワーク上の位置（ネットワークアドレス、ドメインネーム、ＵＲＬ（Uniform Resource Locator）など。以下、「サービスロケーション」と呼ぶ。）によって識別されているので、利用者やクライアント機器（例えば、スキャナ、デバイス制御装置）は、サービスロケーションを指定することによって個々のサービスを利用することになる。
【０００５】
サービスは、同種のサービス（例えば、プリントサービス）であっても、サービス又はサーバによってサービスの品質（例えば、解像度）、性能（例えば、排紙速度）、付加機能（例えば、ソータの有無）、通信プロトコル（例えば、各種プリントプロトコル）、使用許諾（例えば、アクセス権の有無）、費用などのサービス属性が異なる。従って、利用者は、所望のサービスを利用する際には、望ましい特定のサービス属性、すなわち制約条件（例えば、サポートされるプロトコル、使用される課金の種類）、または最小化または最大化する測定基準（例えば、費用、品質）など自己が要求すべき内容を明確にして、その要求する内容と各サービスのサービス属性とを比較検討し、要求を満足するひとつのサービスを選出し、そして、そのサービスを受けることのできるサービスロケーションを特定するという段階を経る。
【０００６】
サービス検索装置が提供する検索サービスというのは、各サーバが提供するサービスとは異なり、例えば、ネットワークに初めて接続した場合や、移動先などで一時的にネットワークに接続した場合など、利用者がサービスロケーションやサービス属性に関する知識を有さない場合に、この段階を支援するためのサービスである。つまり、サービス検索装置は、検索サービスを提供することによって利用者が所望するサービスを提供可能な１乃至複数のサーバを利用者に教えてあげることになるが、サービス検索装置がサーバを特定する際、サーバの地理情報、すなわち、サーバが位置する地理的場所がそのサービスを使用したい利用者やクライアント機器の制約条件となる場合がある。そのようなサービスの代表例はプリントサービスである。プリントサービスは、処理結果を紙などの物理的な媒体に出力するため、プリントサービスを提供するサーバを選択する上で、どこに排紙されるかという場所的な問題を考慮する必要がある。
【０００７】
ネットワークに接続されているサーバがそれぞれどのようなサービスを提供しているかという情報を、サービスを受けようとしている利用者に対して提供するための方法が、同一出願人により出願された特願２００１−２８４４８５号（以下、「先行出願」）に記載されている。この先行出願に記載されたサービス検索方法では、利用者が所望する機能や性能等の属性を指定した検索条件に基づきサービス検索を行い、その検索条件の少なくとも一部を満足するサービスに関する情報を利用者へ提供する。
【０００８】
ところで、利用者が検索条件として指定可能なサービスの種類やサービスの種類毎の属性項目は予め定義されており、その定義情報はサービス検索装置や各サーバ、あるいはクライアントに保持されている。そして、クライアントには、検索条件入力用の専用アプリケーションが搭載されており、利用者は、このアプリケーションを起動して検索条件入力画面を表示させ、その画面から属性項目を入力している。ここで、新しい種類のサービスが普及した場合や、既存のサービスに新たな機能が追加された場合、利用者にその新たなサービスや新たな機能が追加されたサービスを検索できるようにさせるには、それらのサービスの検索に必要な属性項目を検索条件入力画面から指定できるようにする必要がある。このような場合、従来においては、クライアントに搭載のアプリケーションを含む関連ソフトウェアのバージョンアップという方法で対応していた。なお、本願に関連した技術が特許文献１に記載されている。
【０００９】
【特許文献１】
特開２０００−３１２２２２号公報
【００１０】
【発明が解決しようとする課題】
このように、属性項目の追加、変更に対応するには、少なくともクライアントに搭載のアプリケーションを更新する必要があったため、クライアントは、サービスの新規追加や既存サービスの機能追加などの仕様変更に対して柔軟に対応することができなかった。検索サービスを提供する側からしてみれば、最新のサービスを提供したくてもバージョンアップを行う際には検索サービスの提供に支障を来してしまうので、サービスの種類を追加したり、既存サービスの仕様を変更したりすることが容易にできないということである。このサービスの追加、変更に伴う問題は、システム規模が大きくなるにつれ顕著になる。
【００１１】
本発明は以上のような問題を解決するためになされたものであり、その目的は、検索条件に指定可能なサービスの属性項目の変動に柔軟に対応できるサービス検索装置、クライアント装置を提供することにある。
【００１２】
【課題を解決するための手段】
以上のような目的を達成するために、本発明に係るサービス検索装置は、クライアントからのサービス検索要求に応じてネットワークに接続されているサーバが提供するサービスを検索し、その検索結果を返す検索サービスを提供するサービス検索装置において、サービスの検索条件として指定可能な属性項目に関する属性項目情報を記憶する属性項目情報データベースと、前記属性項目情報データベースを参照することにより生成した属性項目の一覧を検索可能属性項目として前記クライアントへ通知する属性項目通知手段とを有することを特徴とする。
【００１３】
また、前記属性項目情報データベースは、サービスの種類を表すサービス種別に、当該サービスにおいて指定可能な属性項目を対応付けした形式にて属性項目情報を記憶しており、前記属性項目通知手段は、前記クライアントからのサービス検索要求により特定されるサービスの属性項目のみによって一覧を生成することを特徴とする。
【００１４】
他の発明に係るサービス検索装置は、クライアントからのサービス検索要求に応じてネットワークに接続されているサーバが提供するサービスを検索し、その検索結果を返す検索サービスを提供するサービス検索装置において、サービスの検索条件として指定可能な属性項目に関する属性項目情報を記憶する属性項目情報データベースと、前記属性項目情報データベースを参照することにより前記クライアントにおいて検索条件を入力指定させるための検索条件入力インタフェースを生成する検索条件入力支援手段とを有することを特徴とする。
【００１５】
また、前記検索条件入力支援手段は、ウェブ対応の検索条件入力インタフェースを生成することを特徴とする。
【００１６】
また、前記属性項目情報データベースに記憶された属性項目情報の管理を行う属性項目情報管理手段を有することを特徴とする。
【００１７】
更に、前記属性項目情報管理手段は、他の前記サービス検索装置が保持管理している属性項目情報を収集して前記属性項目情報データベースに登録することを特徴とする。
【００１８】
また、前記属性項目情報管理手段は、前記サーバからサービスの属性定義情報を直接収集し、その属性定義情報に基づき属性項目情報を生成して前記属性項目情報データベースに登録することを特徴とする。
【００１９】
本発明に係るクライアント装置は、サービス検索要求に応じてネットワークに接続されているサーバが提供するサービスを検索し、その検索結果を返す検索サービスを提供するサービス検索装置に対して前記サービス検索要求を送るクライアント装置において、前記サービス検索装置から送られてくるサービスの検索条件として指定可能な属性項目の一覧を受信する受信手段と、前記受信手段が受信した属性項目の一覧に基づいて、ユーザに検索条件を入力指定させるための検索条件入力インタフェースを生成する検索条件入力インタフェース生成手段とを有することを特徴とする。
【００２０】
また、前記検索条件入力インタフェース生成手段は、ウェブ対応の検索条件入力インタフェースを生成することを特徴とする。
【００２１】
また、前記サービス検索装置から送られてきた検索結果であるサービス情報の一覧に基づいて、ユーザに検索結果を示すための検索結果表示インタフェースを生成する検索結果表示インタフェース生成手段を有することを特徴とする。
【００２２】
更に、前記検索結果表示インタフェース生成手段は、ウェブ対応の検索結果表示インタフェースを生成することを特徴とする。
【００２３】
本発明に係るサービス検索方法は、クライアントからのサービス検索要求に応じてネットワークに接続されているサーバが提供するサービスを検索し、その検索結果を返す検索サービスを提供するサービス検索方法において、サービスの検索条件として指定可能な属性項目に関する属性項目情報を予め保持しておき、その保持しておいた属性項目情報を参照することにより生成した属性項目の一覧を検索可能属性項目として前記クライアントへ通知することにより、検索条件に指定可能な属性項目を利用者に提供可能にしたことを特徴とする。
【００２４】
また、属性項目の一覧の中から検索条件を入力指定させるための検索条件入力インタフェースを生成して利用者に提供することを特徴とする。
【００２５】
【発明の実施の形態】
以下、図面に基づいて、本発明の好適な実施の形態について説明する。
【００２６】
実施の形態１．
図１は、本発明に係るサービス検索装置の一実施の形態を適用したサービス探索システムの概念図である。
【００２７】
サービスがネットワーク空間におけるサービスという側面と、地理空間におけるサーバという側面とを有していることは前述したが、図１では、各側面の対応関係を模式的に表している。なお、サーバは、複数のサービスを提供する場合もあるが、図１では便宜的に１対１に対応付けた。従って、「サーバ」と、当該サーバによって提供される「サービス」という語は、同義として用いることができる。図１において、広域コンピュータネットワーク１は、複数のサブネットワーク２に分割されている。サービス検索装置４は、サブネットワーク２毎に配設され、各サブネットワーク２を自己が行うサービス検索の検索範囲としている。各サブネットワーク２は、ルータなどのネットワーク中継装置６によって接続されており、各サービス検索装置４は、他のサービス検索装置４と情報交換を行うことができる。
【００２８】
また、サービス検索装置４は、管理対象となるサブネットワーク２に含まれているクライアント８ｂからの検索要求に応じて自己のサブネットワーク２に接続されているサーバ１０ａが提供するサービス１０ｂのみならず、他のサービス検索装置４と連係動作することによって他のサブネットワーク２に接続されているサーバ１０ａが提供するサービス１０ｂまでも間接的に検索し、その検索結果をクライアント８ｂに返す検索サービスを提供する。なお、サービス検索装置４は、サーバ１０ａと同一の装置であってもよい。サービス検索装置４は、クライアント装置８ａと同一の装置であってもよい。更に、サービス検索装置４は、ネットワーク中継装置６と同一の装置であってもよい。
【００２９】
更に、図１に示した各構成について詳述する。
【００３０】
最初に、広域コンピュータネットワーク１は、インターネットに相当するＩＰネットワークである。広域コンピュータネットワーク１は、複数のサブネットワーク２がネットワーク中継装置６によって接続されて構築される。各サブネットワーク２は、その内部においてＩＰマルチキャストによる同報通信を可能としている。ネットワーク中継装置６は、ＩＰマルチキャストを通過させないように設定されており、このため、同報通信は他のサブネットワーク２には到達しない。各サブネットワーク２は、その内部に別のネットワーク中継装置を備えることによって複数のサブネットワークを接続して構築されてもよい。しかし、その場合、サブネットワーク２内に配置するネットワーク中継装置は、ＩＰマルチキャストを通過させるように設定され、同報通信は、サブネットワーク２の内部のサブネットワーク全てに到達可能でなければならない。
【００３１】
クライアント装置８ａは、ユーザが検索の要求や処理結果の取得に用いるパーソナルコンピュータ、あるいはプリンタやスキャナ、デバイス制御装置などのネットワーク対応機器である。あるいは、動的にサブネットワーク２に接続されるモバイル対応の機器であってもよい。クライアント装置８ａは、サービス１０ｂのクライアント８ｂであるのと同時に、サービス検索装置４のクライアント８ｂとなる。
【００３２】
図２は、本実施の形態におけるクライアント装置のブロック構成図である。図２には、要求送信部８１、属性項目受信部８２、検索条件入力処理部８３、検索式送信部８４、検索結果受信部８５及び検索結果表示部８６が示されている。以下、この図を用いてクライアント装置８ａを構成する各構成要素の動作について説明する。
【００３３】
クライアント装置８ａは、ユーザインタフェースを備え、利用者からそのユーザインタフェースを介して検索サービスの利用要求が入力されると、要求送信部８１は、サービス検索要求を示す検索要求メッセージを同一サブネットワーク２に接続されたサービス検索装置４に送信する。属性項目受信部８２は、この要求に応じてサービス検索装置４から送られてくる検索可能属性項目を受信する。検索可能属性項目というのは、サービスの検索条件として指定可能な属性項目の一覧である。検索条件入力処理部８３は、属性項目受信部８２が受信した属性項目の一覧に基づいて、利用者に検索条件を入力指定させるための検索条件入力画面を生成し、表示する。利用者が検索条件入力画面からサービスの検索条件を入力すると、検索式送信部８４は、所定の構文で検索式を記述し、その検索式を含む検索要求メッセージをサービス検索装置４に送信する。検索結果受信部８５は、検索要求メッセージに対する返答としてサービス検索装置４から送られてきた検索結果メッセージを受信する。そして、検索結果表示部８６は、その検索結果メッセージから検索結果であるサービス情報の一覧を抽出し、検索結果表示画面を生成して利用者に提供する。
【００３４】
以上のように、本実施の形態においては、検索サービスを利用するときに、サービス検索装置４からサービスの検索条件として指定可能な属性項目を受け取り、利用者には、その指定可能な属性項目の中から検索条件として指定したい属性項目を指定させるようにした。
【００３５】
次に、サーバ１０ａは、少なくとも一つのサービス１０ｂが稼動可能な装置である。サービス１０ｂは、自身のサービス情報を保持している。サービス１０ｂは、サービスの起動時と起動中は一定期間毎に、自身が稼動していることをサービス検索装置４に同報通信によって通知する。本実施の形態では、この通知を「サービス公示」と呼ぶ。また、本実施の形態におけるサービス検索装置４は、サーバ１０ａに対してサービス情報要求メッセージを送信することでサービス情報の送信を要求することができる。従って、サーバ１０ａは、サービス検索装置４からサービス情報要求メッセージを受信すると、この送信要求に応じてサービス情報又はサービス情報の一部を含む応答メッセージを返信する。
【００３６】
ここで、本実施の形態におけるサービス情報について図３を用いて説明する。
【００３７】
サービス情報は、サービス名と、サービス種別と、設置属性と、基本属性と、から構成されている。サービス名は、サービスの固有名称であって、個々のサービスを利用者が識別するためのものである。サービス種別は、サービスが提供する適用業務の種類であって、例えば、プリントサービス、スキャンサービスなどがある。
【００３８】
設置属性は、サービスの設置時に管理者によって決められて設定される属性であって、ネットワーク情報と、地理情報と、組織情報と、課金情報と、使用許諾情報と、セキュリティ情報と、から構成される。ネットワーク情報は、広域コンピュータネットワーク１上でサービスを一意に識別するサービスロケーションであって、ＩＰアドレス、ＦＱＤＮ（Fully Qualified Domain Name）、ＵＲＩ（Universal Resource Identifier）などで記述される。地理情報は、例えば管理者によってサービス設置時に設定されるサーバ１０ａの地理的な位置を示す情報であって、緯度経度座標を必ず含んでいなければならない。また、同一座標における設置位置の移動を明確にするために設置されたビルの階数なども含めておくことが望ましい。組織情報は、そのサービスの運用主体である企業や部門、団体、個人などの名前と連絡方法などである。課金情報は、そのサービスの使用料とその支払い方法である。使用許諾情報は、そのサービスを公開する範囲を規定するもので、無制限、ネットワーク限定などがある。
【００３９】
セキュリティ情報は、そのサービスが対応しているセキュリティ・プロトコルのリストである。
【００４０】
基本属性は、サービスの基本的な属性であって、転送プロトコル情報と、機能情報と、性能情報と、から構成されている。転送プロトコル情報は、そのサービスを使用するための通信プロトコルやＡＰＩ（Application Program Interface）などである。例えば、プリンタでは、ＬＰＲ（Line Printer Daemon Protocol）、ＩＰＰ（Internet Printing Protocol）がその代表的なものである。機能属性は、サービスが提供する機能を表す属性であって、対応文書フォーマットのリスト、対応言語のリスト、対応文字セットのリスト、ドライバ入手先情報、付加機能の有無などが設定される。例えば、プリンタでは、カラー（白黒／４色）、用紙サイズ、両面印際機能の有無、ソーターの有無がその代表的なものである。性能属性は、サービスが提供する性能を表す属性であって、サービス固有の性能指標などが含まれる。例えば、プリンタでは、出力解像度［dpm］、出力速度［ppm （page per minit）］がその代表的なものである。
【００４１】
次に、サービス検索装置４は、サブネットワーク２毎に分散して配置される。各サービス検索装置４は、他の全てのサービス検索装置４のネットワーク上の位置（ネットワークアドレス）を保持している。これにより、各サービス検索装置４は、相互に通信を行うことができる。サービス検索装置４の連携ネットワークは、このようにして形成される。なお、サービス探索装置同士の通信は、ＨＴＴＰ（HyperText Transport Protocol）プロトコルに従いＸＭＬ（eXtendable Markup Language）によって記述されたメッセージを転送することによって行う。
【００４２】
サービス検索装置４は、対応サブネットワーク２に存在する各サーバ１０ａから１乃至複数のサービス情報を同報通信を用いて収集し、保持する。本実施の形態では、サーバ１０ａとサービス１０ｂとは１対１の関係にあると設定したので、各サーバ１０ａからはそれぞれ１つずつのサービス情報１０ｂを収集することになる。
【００４３】
サービス検索装置４は、クライアント８ｂからサービス検索要求を示す検索要求メッセージを受信すると、クライアント８ｂにおいて指定可能な属性項目の一覧を生成し、検索可能属性項目として返信する。また、サービス検索装置４は、クライアント８ｂから検索式を含むサービス検索要求メッセージを受信すると、その受信した検索式を解析し、検索範囲とする少なくとも一つのサブネットワーク２を決定する。そして、サービス検索装置４は、検索範囲として決定した１乃至複数のサブネットワーク２に、自身が接続されているサブネットワーク２が含まれていないときには、決定したサブネットワーク２に対応する各サービス検索装置４に対して、クライアント８ｂからのサービス検索要求メッセージを中継送信する。
【００４４】
サービス検索要求メッセージを受け取ったサービス検索装置４は、自らが保持するサービス情報を参照に、検索式を満足するサービスを抽出し、中間検索結果として中継元のサービス検索装置４に応答メッセージを返す。中継元のサービス検索装置４は、全ての中継先のサービス検索装置４から中間検索結果の応答メッセージを受け取ると、それらをマージして検索結果を生成し、クライアント８ｂへ返答する。また、検索式により指定された条件に合致するサービス情報が１つも存在しない場合には、「該当サービス無し」を意味するメッセージをクライアントへ返答する。
【００４５】
図４は、本実施の形態におけるサービス検索装置を示したブロック構成図である。以下、この図を用いてサービス検索装置の内部構成と各構成要素の動作について説明する。
【００４６】
本実施の形態におけるサービス検索装置４は、サービス情報収集部４１、検索範囲設定部４２、サービス検索部４３、属性項目通知部４４及び属性項目情報管理部４５と、更にサービス検索装置データベース４６、サービス情報データベース４７及び属性項目情報データベース４８とを有している。
【００４７】
サービス情報収集部４１は、各サブネットワーク２に散在しているサービスのサービス情報を同報通信によって収集し、サービス情報データベース４７に格納する。この本実施の形態におけるサービス情報収集部４１が行う処理について図５乃至図７を用いて説明する。
【００４８】
図５は、広域コンピュータネットワーク１にはじめて接続されたときなどに実施される初期化処理を示したフローチャートである。サービス情報収集部４１は、サービス検索装置４が広域コンピュータネットワーク１に存在することを一斉同報通信を行うことでサービス検索装置４の存在を公示する（ステップ１０１）。これに応じて、広域コンピュータネットワーク１に接続されているサーバ１０ａは、サービス情報収集部４１に対して自身のサービス情報を返信する。サービス情報収集部４１は、各サーバ１０ａから送られてきたサービス情報を受信し（ステップ１１２）、それをサービス情報データベース４７に登録する（ステップ１０３）。サービス情報収集部４１は、公示してから予め決められた一定期間内にこのデータベースへの登録処理を行う。
【００４９】
図６は、本実施の形態におけるサービス情報収集部４１のサービス情報収集処理を示したフローチャートである。サービス情報収集部４１は、サーバ１０ａからのサービス公示を受信すると（ステップ１１１）、そのサーバ１０ａに対してサービス情報送信要求としてサービス情報要求メッセージを送信する（ステップ１０２）。この要求に応じてサーバ１０ａからサービス情報又はサービス情報の一部を含む応答メッセージが送られてくると、それを受信する（ステップ１１３）。そして、受信したサービス情報がサービス情報データベース４７にすでに登録されていれば、受信した内容でサービス情報データベース４７を更新し（ステップ１１４，１１５）、登録されていなければ、サービス情報データベース４７に新規登録する（ステップ１１６）。
【００５０】
なお、各サービス情報は、サービス情報収集部４１へ各サーバ１０ａから直接送られてくるように説明したが、各サービス検索装置４は、対応サブネットワーク２内のサービス１０ｂのサービス情報を保持しているはずなので、他のサービス検索装置４から対応サブネットワーク２内のサービス１０ｂのサービス情報をまとめて送ってもらうようにしてもよい。
【００５１】
図７は、本実施の形態におけるサービス情報収集部４１のサービス情報削除処理を示したフローチャートである。サービス情報収集部４１は、図６に示した処理手順にてサービス情報データベース４７にサービス情報を登録し、また更新するが、各サービス情報に対してそのサービス情報を最後に登録、又は更新してから予め決められた一定時間経過したときには（ステップ１２１）、そのサービス情報をサービス情報データベース４７から削除する（ステップ１２２）。サービス情報収集部４１は、一定周期で送られてくるサービス公示をトリガにして当該サービス情報の更新を行うが、サービス公示が一定期間経過しても送られてこないということは、サービス公示を行っていたサーバ１０ａが停止したということである。従って、サービス情報収集部４１は、当該サーバ１０ａはサービス１０ｂの提供ができない状態であるとして当該サービス情報をサービス情報データベース４７から削除する。このような理由でサービス情報を削除するので、サービス情報を削除する期限とする一定期間と、サービス公示を送信する周期とは、相互に考慮しながら設定するのが望ましい。
【００５２】
以上のようにして、サービス情報収集部４１は、サービス情報を収集し、サービス情報データベース４７に登録することで保持管理する。サービス情報収集部４１は、また、サービス情報の収集のみならず、サービス検索部４３から送られてきたサービス条件に合致するサービス情報をサービス情報データベース４７を検索することによって取得し、サービス検索部４３へ返答する。
【００５３】
属性項目情報データベース４８には、サービスの検索条件として指定可能な属性項目に関する属性項目情報が記憶されている。属性項目情報管理部４５は、属性項目情報データベース４８への新規登録、属性項目情報データベース４８に記憶された属性項目情報の更新等、属性項目情報の管理を行う。属性項目情報管理部４５は、管理者用ユーザインタフェースを有しており、管理者に属性項目情報の各設定値を変更させたり、利用者によっていずれかの属性項目を検索条件に指定できないように設定させることができる。ここで、本実施の形態において用いる属性項目情報について図８を用いて説明する。
【００５４】
属性項目情報は、少なくとも一つのサービス種別名と、サービス種別名毎に少なくとも一つの属性名と、属性名毎に属性の説明と属性の種類と属性の属性型と属性の値の範囲と、から構成されている。サービス種別名は、サービスが提供する適用業務の種類の名前であって、例えば、プリントサービス、スキャンサービスなどがある。属性名は、属性項目の名称である。属性の説明は、その属性名を有する属性項目の説明であって、利用者が読んでその属性を理解することができるように記述される。属性の種類は、その属性名を有する属性項目の分類であって、設置属性と基本属性のいずれかの文字列が記述される。属性の属性型は、その属性名を有する属性項目の値の型であって、TextとNumericとBooleanとEnumのいずれかの文字列が記述される。Textは文字列、Numericは数値、Booleanは有無、Enumは予め決められた文字列の中からの選択、をそれぞれ意味する。属性の値の範囲は、その属性名を有する属性項目の値が取りうる範囲であって、属性型がTextの場合は最大文字数、属性型がNumericの場合は最小値と最大値、属性型がBooleanの場合は０と１、属性型がEnumの場合は選択肢の数と選択肢の文字列の列挙、がそれぞれ記述される。
【００５５】
本実施の形態においては、属性項目情報を、検索範囲設定部４２が他のサービス検索装置４から通知されることによって取得し、また、属性項目情報管理部４５が他のサービス検索装置４から取得することによって収集する。もちろん、属性項目情報管理部４５は、同一サブネットワーク２に接続された各サーバ１０ａからも収集する。属性項目情報管理部４５は、これら収集した属性項目情報をマージしてＸＭＬ（eXtedable Markup Language）形式にて属性項目情報データベース４８に保存する。
【００５６】
属性項目通知部４４は、サービス検索要求を発したクライアントに対して検索式の中で検索条件として記述可能な属性項目の一覧を検索可能属性項目として通知する。すなわち、属性項目通知部４４は、クライアント８ｂからサービス検索要求を示す検索要求メッセージを受信すると、属性項目情報データベース４８から属性項目情報を取得して属性項目の一覧を生成し、その属性項目の一覧を検索可能属性項目としてクライアント８ｂに応答する。これにより、クライアント８ｂを使用する利用者は、前述したようにサービス検索装置４から送られてきた検索可能属性項目の中からサービス検索のための属性項目を指定することができる。また、クライアント８ｂから送られてくるサービス検索要求を示す検索要求メッセージに、検索対象とするサービス種別など属性項目情報データベース４８から取り出す属性項目を絞り込むための情報が含まれていれば、属性項目通知部４４は、その情報に該当する属性項目のみによって一覧を生成し、クライアント８ｂに応答する。このようにすれば、利用者は、必要な属性項目のみ得ることができる。
【００５７】
検索範囲設定部４２は、広域コンピュータネットワーク１においてサービスを検索する際の検索範囲を設定する。具体的には、検索範囲は、１乃至複数のサブネットワーク２によって設定されるので、検索範囲設定部４２は、検索範囲に含まれるサブネットワーク２に対応するサービス検索装置４（自身を含む）を決定すればよい。サービス検索装置４は、クライアントからの検索要求に指定された検索条件に該当する検索範囲内においてサービス１０ｂを検索することになるので、検索範囲設定部４２は、そのために全てのサービス検索装置４の位置情報を把握していなければならない。ところで、各サービス検索装置４は、管理者から設定されて、設置位置情報として設置場所の緯度経度座標を含む地理情報、アドレス情報としてネットワーク情報を少なくとも保持している。そこで、検索範囲設定部４２は、他のサービス検索装置４の検索範囲設定部と情報交換をすることで各サービス検索装置４から前述した情報を収集し、サービス検索装置データベース４６に登録する。また、この際、検索範囲設定部４２は、ネットワーク中継装置６のホップ数などを計測し、相手のサービス検索装置４とのネットワーク上における距離を合わせて保持する。更に、検索範囲設定部４２は、他のサービス検索装置４に位置情報を問い合わせる際に、属性項目情報データベース４８に記憶されている属性項目情報を他のサービス検索装置４の検索範囲設定部へ送信する。また、他のサービス検索装置４の検索範囲設定部からの位置情報の問合せと共に送られてきた属性項目情報を受信する。受信した属性項目情報は、属性項目情報管理部４５を介して属性項目情報データベース４８に記憶される。
【００５８】
検索範囲設定部４２は、サービス検索部４３により検索条件が指定された検索範囲設定要求を受け付ける。クライアントからの検索要求に対して最初の検索範囲設定要求であれば、サービス検索部４３から送られてきた検索条件は、クライアントからの検索条件と同じである。送られてくる検索条件は、利用者によって検索式中で指定されたサービス種別、検索対象地域、検索対象ネットワークを含む。但し、検索対象地域、検索対象ネットワークは省略可能である。
【００５９】
検索条件に検索対象地域が指定されていた場合、その地域に含まれるサービス検索装置４をサービス検索装置データベース４６から検索し、該当するサービス検索装置４のネットワークアドレスのリストをサービス検索部４３に返す。また、検索条件に検索対象ネットワークが指定されていた場合、そのネットワークに含まれるサービス検索装置４をサービス検索装置データベース４６から検索し、該当するサービス検索装置４のネットワークアドレスのリストをサービス検索部４３に返す。検索条件に検索対象地域、検索対象ネットワークともに省略されていた場合、検索範囲設定部４２は、まずサービス種別から、検索するサービスが地理的な条件が重要な制約条件になるサービスか否かを判別する。例えば、プリントサービスはこれに該当する。判別の結果、地理的な条件が重要な制約条件になるサービスであれば、検索範囲設定部４２は、地理的に近傍の検索範囲を設定する。すなわち、検索範囲設定部４２は、自らの設置場所の緯度経度座標を中心とし、所定の値を半径とする円を定め、設置場所の緯度経度座標がその円の内部に含まれるサービス検索装置４をサービス検索装置データベース４６から検索する。そうでないサービスでは、ホップ数などを参考にネットワーク的に近傍の検索範囲を設定する。地理的に近傍の検索範囲を設定する場合、検索範囲設定部４２は、該地域に含まれるサービス検索装置４をサービス検索装置データベース４６から検索し、該当するサービス検索装置４のネットワークアドレスのリストをサービス検索部４３に返す。ネットワーク的に近傍の探索範囲を設定する場合、検索範囲設定部４２は、自らのネットワークアドレスと、近隣のサービス検索装置４のネットワークアドレスのリストをサービス検索部４３に返す。
【００６０】
サービス検索部４３は、サービス検索装置４が提供する検索サービス全体の処理制御を行う。サービス検索部４３は、サービス検索を実行するには、クライアント８ｂからの検索要求を受信する場合と、他のサービス検索装置４から検索中継要求を受信する場合とがある。図９は、前者に相当する処理を示したフローチャートであり、図１０は、後者に相当する処理を示したフローチャートである。
【００６１】
図９において、サービス検索部４３は、クライアント８ｂから検索要求を受信すると（ステップ２０１）、その内容を解析し（ステップ２０２）、検索条件を生成する。そして、その検索条件を指定して検索範囲設定要求を検索範囲設定部４２へ送る（ステップ２０３）。この要求に応じて設定された検索範囲が検索範囲設定部４２から返答されてくるが、この返答には、検索範囲を構成するサービス検索装置４のネットワークアドレスのリストが含まれている（ステップ２０４）。
【００６２】
サービス検索部４３は、このリストの順に以下の処理を行う。まず、リストから取り出したネットワークアドレスが自己のであれば、検索条件に合致するサービスを抽出するために検索条件に基づきサービス条件を生成し、サービス情報収集部４１へ送ることでサービス情報検索を要求する（ステップ２０５，２０６）。そして、この要求に応じてサービス情報収集部４１から送られてくるサービス情報を取得する（ステップ２０７）。
【００６３】
一方、リストから取り出したネットワークアドレスが自己のでないとき、サービス検索部４３は、そのネットワークアドレスが設定されているサービス検索装置４に検索要求を中継する（ステップ２０８）。他のサービス検索装置４へ検索要求を送信する場合、この検索要求を特に「検索中継要求」と称することにする。
【００６４】
図１０において、サービス検索部４３は、他のサービス検索装置４からの検索中継要求を受信すると（ステップ２２１）、その内容を解析し（ステップ２２２）、ステップ２０６，２０７と同様にしてサービス条件を生成した後、サービス情報収集部４１へ通知する（ステップ２２３）。そして、サービス検索部４３は、検索結果としてサービス情報収集部４１から得られたサービス情報を検索中継結果として応答する（ステップ２２４，２２５）。
【００６５】
図９において、検索中継要求を送信したサービス検索部４３は、その検索中継要求に応じて他のサービス検索装置４から送られてきたサービス情報を受信する（ステップ２０９）。リストに含まれている全てのネットワークアドレスに対して上記処理を行う（ステップ２１０）。そして、サービス検索部４３は、ステップ２０５〜２１０の処理によりサービス情報収集部４１から取得したサービス情報と、他のサービス検索装置４から取得したサービス情報とをマージすることで検索結果を生成し、検索要求をしたクライアント８ｂへ返答する（ステップ２１１）。
【００６６】
本実施の形態によれば、利用者が検索条件として指定可能なサービスの種類やサービスの種類毎の属性項目の一覧をサービス検索装置４において生成し、また、必要に応じて変更し、その属性項目の一覧を利用者が使用するクライアント８ｂへ送信するようにしたので、サービスが新規に追加されたときやサービスに機能が追加されたときでも、検索サービスに関わるソフトウェアを更新することなくその追加に対応することができる。
【００６７】
また、サービス検索装置４において利用者が指定可能な属性項目の一覧を管理できるようにしたので、特定の属性項目を条件としたサービス検索を禁じるような運用ポリシーを採ることができる。
【００６８】
実施の形態２．
各サービス検索装置４は、対応サブネットワーク２に接続されているサーバ１０ａが提供するサービスに対応した属性項目情報を保持しているので、上記実施の形態１におけるサービス検索装置４は、サーバ１０ａからではなく他のサービス検索装置４から属性項目情報を取得するようにした。図１１は、本発明に係るサービス検索装置の実施の形態２を適用したサービス探索システムの概念図である。なお、実施の形態１と同じ構成要素には、同じ符号を付ける。本実施の形態におけるサービス検索装置４は、実施の形態１と同様の構成を有している。ただ、本実施の形態におけるサービス情報収集部４１には、実施の形態１において説明した機能に加えて、各サーバ１０ａからサービス情報と共に当該サーバが提供するサービスの属性定義情報を収集し、その属性定義情報を属性項目情報管理部４５に通知する機能が付加されている。また、属性項目情報管理部４５は、サービス情報収集部４１から通知された属性定義情報をマージして属性項目情報を生成し、この属性項目情報を既存の属性項目情報にマージして属性項目情報データベース４８を保存する。なお、サービス検索装置４に搭載されたその他の構成要素は実施の形態１と同じなので説明を省略する。
【００６９】
一方、本実施の形態におけるサーバ１０ａは、前述したサービス情報収集部４１に対応し、サービス検索装置４からサービス情報の送信を要求されたとき、そのサービス情報にと共に属性定義情報を返信する。
【００７０】
本実施の形態によれば、実施の形態１と異なる経路にて属性項目情報を取得することができる。特に、本実施の形態においては、一定周期で行われるサービス公示と共に属性項目情報を収集できるので、サービス検索装置４は、属性項目情報を定期的に最新の状態にすることができる。
【００７１】
実施の形態３．
図１１は、本発明に係るサービス検索装置の実施の形態２を適用したサービス探索システムの概念図である。なお、実施の形態１と同じ構成要素には、同じ符号を付ける。本実施の形態におけるサービス検索装置４は、実施の形態１における属性項目通知部４４を有しておらず、新たにユーザインタフェース部４９を設けた構成を有している。ユーザインタフェース部４９は、クライアントからのサービス検索要求に応じて、利用者に検索条件を入力指定させるための検索条件入力インタフェースを生成する。更に、ユーザインタフェース部４９は、利用者によって指定された検索条件を入力し、また検索結果をクライアントへ返す。
【００７２】
一方、本実施の形態におけるクライアント８ｂは、ウェブブラウザと呼ばれるアプリケーションソフトウェアを備え、ＨＴＴＰプロトコルによってサービス検索装置４にアクセスし、サービス検索装置４におけるユーザインタフェース部４９が提供するウェブユーザインタフェースを利用する。
【００７３】
以下に、本実施の形態における動作について説明する。
【００７４】
クライアント８ｂは、利用者から検索サービスの利用要求が入力されると、サービス検索要求を示す検索要求メッセージを同一サブネットワーク２に接続されたサービス検索装置４に送信する。本実施の形態におけるサービス検索装置４は、このメッセージをユーザインタフェース部４９によって受信する。ユーザインタフェース部４９は、このメッセージを受信すると、属性項目情報データベース４８から属性項目情報を取得し、属性項目を一覧表示し、検索条件を入力するためのウェブユーザインタフェース（検索条件入力画面）をＨＴＭＬ（HyperText Markup Language）で生成する。この生成されたウェブユーザインタフェースは、利用者によってクライアント８ｂのウェブブラウザからアクセスされる。利用者は、この一覧の中から検索条件とする属性項目を選択すると共に属性項目毎に属性値を設定する。ユーザインタフェース部４９は、利用者が検索条件を入力すると所定の構文の検索式を生成し、サービス検索部４３に通知することによってサービス検索を要求する。この要求に応じてサービス検索部４３などによって実行されるサービス検索は、実施の形態１と同じなので説明を省略する。
【００７５】
ユーザインタフェース部４９は、サービス検索部４３からサービス検索の結果が送られてくると、その検索結果に基づいて検索結果画面をＨＴＭＬで生成し、クライアントに送信する。
【００７６】
本実施の形態によれば、検索条件を入力する画面及び検索結果を表示するための画面をサービス検索装置４側において生成するようにしたので、クライアント８ｂにウェブブラウザを搭載させておけば、サービス検索装置４が提供する検索サービスを利用させることができる。
【００７７】
実施の形態４．
クライアント８ｂは、利用者により入力された検索条件に基づき検索式を生成し、サービス検索装置４に送信すると共に、送信した検索要求に応じてサービス検索装置４から返答された検索結果を表示して利用者に提供する。上記実施の形態１では、前述した検索条件の入力と検索式の生成と検索結果の表示という処理を１台のクライアント８ｂにおいて実現したが、本実施の形態においては、異なるクライアントで実施できるようにした。このために、本実施の形態におけるクライアント８ｂの検索条件入力処理部は、送信したサービス検索要求を示す検索要求メッセージに応じてサービス検索装置４から返信されてきた検索可能属性項目に基づいて、検索条件を入力するためのウェブユーザインタフェース（検索条件入力画面）をＨＴＭＬで生成する。利用者は、別のクライアントのウェブブラウザを用いてこの生成したウェブユーザインタフェースにアクセスすることにより、別のクライアントから検索条件を入力することができる。そして、検索式送信部は、別のクライアントから入力された検索条件に基づき検索式を記述し、その検索式を含む検索要求メッセージをサービス検索装置４に送信する。そして、検索結果表示部は、サービス検索装置４から送られてきた検索結果メッセージから検索結果であるサービス情報の一覧を抽出し、検索結果を表示するためのウェブユーザインタフェース（検索結果表示画面）をＨＴＭＬで生成する。利用者は、別のクライアントのウェブブラウザを用いてこの生成したウェブユーザインタフェースにアクセスすることにより、別のクライアントから検索結果を参照することができる。
【００７８】
以上のように、上記各実施の形態によれば、サービスの検索に指定可能な属性項目を他のサービス検索装置４から、あるいは各サーバ１０ａから直接収集し、サービス検索装置データベース４６で保持管理するようにした。そして、利用者からの検索要求に応じて検索条件として指定可能な属性項目の一覧を、サービス検索装置データベース４６を参照することにより生成して利用者に提供するようにした。これにより、利用者は、検索サービスに関わるアプリケーションソフトウェアを更新しなくても、新たに追加された属性項目を検索条件に指定することができる。ところで、利用者がサービス検索装置４に提供する検索条件を入力するには、例えば、次の３つの方法がある。
【００７９】
第１の方法は、検索式を記述する構文がサービス検索システムによって規定されていて、利用者は、その構文に基づいて検索式を記述し、サービス検索装置４へ通知するという方法である。この方法は、上記実施の形態１，２において採用されている。
【００８０】
第２の方法は、利用者が指定可能な属性項目の一覧を表示し、利用者に検索条件とする属性項目を選択させると共に選択した属性項目毎に所望の属性値を指定させるウェブユーザインタフェースをサービス検索装置側のアプリケーションソフトウェアを搭載する方法である。この方法は、上記実施の形態３において採用されている。
【００８１】
第３の方法は、第２の方法で説明したアプリケーションソフトウェアをクライアント側に搭載する方法である。この方法は、上記実施の形態４において採用されている。
【００８２】
【発明の効果】
本発明によれば、利用者が検索条件として指定可能なサービスの種類やサービスの種類毎の属性項目を動的に変更可能とすることによって、検索サービスに関わるソフトウェアを更新することなくその追加に対応することができる。
【００８３】
また、本発明によれば、サービスの検索条件として利用者が指定可能な属性項目の一覧を管理者が管理することによって、特定の属性項目を条件としたサービス検索を禁じるような運用ポリシーを採ることができる。
【００８４】
また、利用者が検索条件として指定可能なサービスの種類やサービスの種類毎の属性項目だけを利用者が指定できるように構成でき、利用者が自らその属性項目を指定可能か否か判断する手間を省くことができる。
【図面の簡単な説明】
【図１】本発明に係るサービス検索装置の実施の形態１を適用したサービス探索システムの概念図である。
【図２】実施の形態１におけるクライアント装置のブロック構成図である。
【図３】実施の形態１におけるサービス情報のデータ構成例を示した図である。
【図４】実施の形態１におけるサービス検索装置を示したブロック構成図である。
【図５】実施の形態１におけるサービス情報収集部の初期化処理を示したフローチャートである。
【図６】実施の形態１におけるサービス情報収集部のサービス情報収集処理を示したフローチャートである。
【図７】実施の形態１におけるサービス情報収集部のサービス情報削除処理を示したフローチャートである。
【図８】実施の形態１における属性項目情報のデータ構成例を示した図である。
【図９】実施の形態１におけるサービス検索部がクライアントからの検索要求に応じて実行する処理を示したフローチャートである。
【図１０】実施の形態１におけるサービス検索部が他のサービス探索装置からの検索中継要求に応じて実行する処理を示したフローチャートである。
【図１１】本発明に係るサービス検索装置の実施の形態２を適用したサービス探索システムの概念図である。
【図１２】本発明に係るサービス検索装置の実施の形態３を適用したサービス探索システムの概念図である。
【符号の説明】
１  広域コンピュータネットワーク、２  サブネットワーク、４  サービス検索装置、６  ネットワーク中継装置、８ａ  クライアント装置、８ｂ  クライアント、１０ａ  サーバ、１０ｂ  サービス、４１  サービス情報収集部、４２  検索範囲設定部、４３  サービス検索部、４４  属性項目通知部、４５  属性項目情報管理部、４６  サービス検索装置データベース、４７  サービス情報データベース、４８  属性項目情報データベース、４９  ユーザインタフェース部、８１  要求送信部、８２  属性項目受信部、８３  検索条件入力処理部、８４  検索式送信部、８５  検索結果受信部、８６  検索結果表示部。
【図１】
2004199515.tif 000003
【図２】
2004199515.tif 000004
【図３】
2004199515.tif 000005
【図４】
2004199515.tif 000006
【図５】
2004199515.tif 000007
【図６】
2004199515.tif 000008
【図７】
2004199515.tif 000009
【図８】
2004199515.tif 000010
【図９】
2004199515.tif 000011
【図１０】
2004199515.tif 000012
【図１１】
2004199515.tif 000013
【図１２】
2004199515.tif 000014