(57)【要約】  コンピュータだけではなく、多様なデバイスでウェブサービスについて効果的な処理を行うことができるように、ウェブサービス使用構造を拡張させたものであり、特定イベント、該イベントが満足しなければならない条件、及び該条件満足時に実行するアクションを記述する規則を保存し、該規則のアクションを実行するデバイスを提供する。また、該規則の保存及び実行時に該規則の有効性を検査する広域規則管理者を提供する。この結果、該ウェブサービスをユビキタス環境でさらに効率的に活用することができる。
2010511955.tif 000002
【特許請求の範囲】
【請求項１】
特定イベント、前記イベントが満足しなければならない条件、及び前記条件満足時に実行するアクションを記述する規則が保存される規則保存所と、
イベントが発生すれば、前記規則保存所に保存された規則から、前記イベントを記述する規則を検索する規則エンジンと、
前記イベントが前記検索された規則に記述された条件を満足するか否かを検査する条件検査器と、
前記イベントが前記条件を満足するならば、前記検索された規則に記述されたアクションを実行するアクション実行器と
を含むことを特徴とするウェブサービス基盤の規則処理のためのデバイス。
【請求項２】
サービス要請者から前記規則の登録を要請され、および前記登録を要請された規則が他の規則と同じイベント及び条件を記述するが、同時に実行されえないアクションを記述する静的衝突を起こす場合ではなければ、前記登録を要請された規則を保存する地域規則管理者をさらに含むことを特徴とする請求項１に記載のウェブサービス基盤の規則処理のためのデバイス。
【請求項３】
前記地域規則管理者は、前記登録を要請された規則が有効期間内であるならば、前記登録を要請された規則を保存することを特徴とする請求項２に記載のウェブサービス基盤の規則処理のためのデバイス。
【請求項４】
前記地域規則管理者は、前記登録を要請された規則が前記静的衝突を起こすならば、前記サービス要請者に、前記登録を要請した規則が前記静的衝突を起こすことを知らせることを特徴とする請求項２に記載のウェブサービス基盤の規則処理のためのデバイス。
【請求項５】
前記アクション実行器は、前記イベントが前記条件を満足し、および前記検索された規則が現在実行されている他の規則に記述されたアクションと同時に実行されえないアクションを記述する動的衝突を起こす場合ではなければ、前記検索された規則のアクションを実行することを特徴とする請求項１に記載のウェブサービス基盤の規則処理のためのデバイス。
【請求項６】
前記地域規則管理者は、前記登録を要請された規則が前記静的衝突を起こさないが、他の規則に記述されたアクションと同時に実行されえないアクションを記述する動的衝突が発生する可能性がある場合、前記動的衝突を解決する動的衝突解決規則が登録された後、前記登録を要請された規則を保存し、
前記アクション実行器は、前記イベントが前記条件を満足するが、前記検索された規則が現在実行されている他の規則に記述されたアクションと同時に実行されえないアクションを記述する動的衝突を起こす場合、前記動的衝突解決規則によって前記動的衝突を解決することを特徴とする請求項２に記載のウェブサービス基盤の規則処理のためのデバイス。
【請求項７】
前記規則保存所に保存された規則によって時間イベントを生成する時間イベント生成器と、
前記時間イベント生成器で生成されたイベント、イベントソースから受信されるイベント伝達メッセージ、及び前記アクション実行器で生成されたイベントを前記規則エンジンに伝達する複合イベント検査器と
をさらに含み、
前記複合イベント検査器は、前記生成されたイベントを記述する規則が現在受信されたイベントに加えて他のイベントをさらに記述するならば、前記他のイベントの受信のために待機し、
前記条件検査器は、前記生成されたイベントを記述する規則が現在受信されたイベントに加えて他のイベントをさらに記述するならば、前記イベントを記述する規則の条件を検査することを特徴とする請求１に記載のウェブサービス基盤の規則処理のためのデバイス。
【請求項８】
サービス要請者から、前記規則を登録、変更、もしくは削除する、前記規則の適用を一時的に中止する、または一時的に適用が中止された規則の適用を再開するメッセージを受信し、前記サービス要請者に、前記メッセージに対する応答を伝達することを特徴とする請求項１に記載のウェブサービス基盤の規則処理のためのデバイス。
【請求項９】
特定イベント、前記イベントが満足しなければならない条件、及び前記条件満足時に実行するアクションを記述する規則が他の規則と同じイベント及び条件を記述するが、同時に実行されえないアクションを記述する静的衝突が発生するか否か、および前記規則が前記静的衝突は起こさないが、他の規則に記述されたアクションと同時に実行されえないアクションを記述する動的衝突が発生する可能性があるか否か、から設計時有効性を検証する設計時有効性検証器と、
イベント発生時に、前記イベントを記述する規則が現在実行されている他の規則に記述されたアクションと同時に実行されえないアクションを記述する動的衝突を起こすか否か、から実行時有効性を検証する実行時有効性検証器と
を含むことを特徴とするウェブサービス基盤の規則処理のための広域規則管理者。
【請求項１０】
前記規則の前記静的衝突を感知するアルゴリズムを遂行する静的衝突感知器と、
前記規則の前記動的衝突が発生する可能性を感知し、前記発生したイベントを記述する規則の前記動的衝突を感知するアルゴリズムを遂行する動的衝突感知器と
をさらに含み、
前記設計時有効性検証器は、前記規則が前記静的衝突感知器によって静的衝突が発生しないと判定され、および前記動的衝突感知器によって動的衝突が発生する可能性がないと判定されるならば、設計時有効性を認め、
前記実行時有効性検証器は、前記動的衝突感知器によって動的衝突が発生しないと判定されるならば、実行時有効性を認めることを特徴とする請求項９に記載のウェブサービス基盤の規則処理のための広域規則管理者。
【請求項１１】
管理する一つ以上のデバイスに保存された規則を保存する広域規則保存所と、
同時に発生しえない二つ以上のアクションを指定した実行制限規則保存所と
をさらに含み、
前記静的衝突感知器は、前記広域規則保存所に保存された規則、及び前記実行制限規則保存所に保存された規則を基に、静的衝突を感知するアルゴリズムを遂行し、
前記動的衝突感知器は、前記広域規則保存所に保存された規則、及び前記実行制限規則保存所に保存された規則を基に、動的衝突を感知するアルゴリズムを遂行することを特徴とする請求項１０に記載のウェブサービス基盤の規則処理のための広域規則管理者。
【請求項１２】
前記設計時有効性検証器は、前記登録を要請された規則が静的衝突を起こさず、および動的衝突を起こす可能性があれば、前記動的衝突発生時に前記動的衝突を解決する動的衝突解決規則が保存された後、前記登録を要請された規則を保存し、
前記実行時有効性検証器は、前記イベントを記述する規則が前記動的衝突を起こすならば、前記動的衝突解決規則による解決方策をデバイスに伝達することを特徴とする請求項９に記載のウェブサービス基盤の規則処理のための広域規則管理者。
【請求項１３】
前記動的衝突解決規則を保存する動的衝突解決規則保存所と、
前記動的衝突解決規則保存所に保存された動的衝突解決規則を基に、動的衝突を解決するアルゴリズムを遂行する動的衝突解決器
をさらに含み、
前記実行時有効性検証器は、前記動的衝突解決器が遂行した動的衝突解決方策を前記デバイスに伝達することを特徴とする請求項１２に記載のウェブサービス基盤の規則処理のための広域規則管理者。
【請求項１４】
サービス詳細情報を得るために、サービス提供者にサービス詳細情報要請メッセージを伝達し、前記サービス提供者から前記サービス詳細情報要請メッセージに対する応答を受信することを特徴とする請求項９に記載のウェブサービス基盤の規則処理のための広域規則管理者。
【請求項１５】
イベント詳細情報を得るために、イベントソースにイベント詳細情報要請メッセージを伝達し、前記イベントソースから前記イベント詳細情報要請メッセージに対する応答を受信することを特徴とする請求項９に記載のウェブサービス基盤の規則処理のための広域規則管理者。
【請求項１６】
サービス要請者から、現在提供可能なサービスの目録を要請するサービス目録要請メッセージを受信し、前記サービス要請者に、前記サービス目録要請メッセージに対する応答を伝達することを特徴とする請求項９に記載のウェブサービス基盤の規則処理のための広域規則管理者。
【請求項１７】
サービス要請者から、現在提供可能なイベントの目録を得るためのイベント目録要請メッセージを受信し、前記サービス要請者に、前記イベント目録要請メッセージに対する応答を伝達することを特徴とする請求項９に記載のウェブサービス基盤の規則処理のための広域規則管理者。
【請求項１８】
サービス提供者に、サービス状態を知るためのサービス状態確認メッセージを伝達し、前記サービス提供者から受信された前記サービス状態確認メッセージに対する応答から、サービス状態が変更されたと判定されるならば、サービス状態が変更されたことを示すメッセージをサービス要請者に知らせることを特徴とする請求項９に記載のウェブサービス基盤の規則処理のための広域規則管理者。
【請求項１９】
イベントソースに、イベント状態を知るためのイベント状態確認メッセージを伝達し、前記イベントソースから受信された前記イベント状態確認メッセージに対する応答から、イベント状態が変更されたと判定されるならば、イベント状態が変更されたことを示すメッセージをサービス要請者に知らせることを特徴とする請求項９に記載のウェブサービス基盤の規則処理のための広域規則管理者。
【請求項２０】
前記登録を要請された規則を保存するデバイスから、前記登録を要請された規則の保存前に、前記登録を要請された規則が前記静的衝突を起こすか否か、および前記動的衝突が発生する可能性があるかに対する感知を要請するメッセージを受信し、前記メッセージに対する応答を前記デバイスに伝達し、前記デバイスから、前記動的衝突発生時に前記動的衝突を解決する動的衝突解決規則を受信すれば、前記動的衝突解決規則に対する応答を前記デバイスに伝達することを特徴とする請求項９に記載のウェブサービス基盤の規則処理のための広域規則管理者。
【請求項２１】
（ａ）特定イベント、前記イベントが満足しなければならない条件、及び前記条件満足時に実行するアクションを記述する規則を保存するステップと、
（ｂ）イベントが発生すれば、前記規則保存所に保存された規則から、前記イベントを記述する規則を検索するステップと、
（ｃ）前記イベントが前記検索された規則に記述された条件を満足するか否かを検査するステップと、
（ｄ）前記イベントが前記条件を満足するならば、前記検索された規則に記述されたアクションを実行するステップと
を含むことを特徴とするウェブサービス基盤での規則使用方法。
【請求項２２】
前記（ａ）ステップは、サービス要請者から前記規則の登録を要請され、および前記登録を要請された規則が他の規則と同じイベント及び条件を記述するが、同時に実行されえないアクションを記述する静的衝突を起こす場合ではなければ、前記登録を要請された規則を保存することを特徴とする請求項２１に記載のウェブサービス基盤での規則使用方法。
【請求項２３】
前記（ａ）ステップは、前記登録を要請された規則が有効期間内であるならば、前記登録を要請された規則を保存することを特徴とする請求項２２に記載のウェブサービス基盤での規則使用方法。
【請求項２４】
前記（ａ）ステップは、前記登録を要請された規則が前記静的衝突を起こすならば、前記サービス要請者に、前記登録を要請した規則が前記静的衝突を起こすことを知らせることを特徴とする請求項２２に記載のウェブサービス基盤での規則使用方法。
【請求項２５】
前記（ｄ）ステップは、前記イベントが前記条件を満足し、および前記検索された規則が現在実行されている他の規則に記述されたアクションと同時に実行されえないアクションを記述する動的衝突を起こす場合ではなければ、前記検索された規則のアクションを実行することを特徴とする請求項２１に記載のウェブサービス基盤の規則使用方法。
【請求項２６】
前記（ａ）ステップは、前記登録を要請された規則が前記静的衝突を起こさないが、他の規則に記述されたアクションと同時に実行されえないアクションを記述する動的衝突が発生する可能性がある場合、前記動的衝突を解決する動的衝突解決規則が登録された後、前記登録を要請された規則を保存し、
前記（ｄ）ステップは、前記イベントが前記条件を満足するが、前記検索された規則が現在実行されている他の規則に記述されたアクションと同時に実行されえないアクションを記述する動的衝突を起こす場合、前記動的衝突解決規則によって前記動的衝突を解決することを特徴とする請求項２２に記載のウェブサービス基盤の規則使用方法。
【請求項２７】
前記（ｂ）ステップは、
（ｂ１）前記保存された規則によって生成された時間イベント、イベントソースから受信されるイベント伝達メッセージ、及び前記（ｄ）ステップで生成されたイベントを受信するステップと、
（ｂ２）前記（ｂ１）ステップで受信されたイベントを記述する規則を検索するステップと、
（ｂ３）前記検索された規則が現在受信されたイベントに加えて他のイベントをさらに記述するならば、前記他のイベントの受信のために待機するステップと
を含み、
前記（ｃ）ステップは、前記検索された規則が現在受信されたイベントに加えて他のイベントをさらに記述するものではなければ、前記イベントを記述する規則の条件を検査することを特徴とする請求項２１に記載のウェブサービス基盤の規則使用方法。
【請求項２８】
（ａ）特定イベント、前記イベントが満足しなければならない条件、及び前記条件満足時に実行するアクションを記述する規則が、他の規則と同じイベント及び条件を記述するが、同時に実行されえないアクションを記述する静的衝突を起こすか否かを判定するステップと、
（ｂ）前記規則が前記静的衝突を起こすものではなければ、他の規則に記述されたアクションと同時に実行されえないアクションを記述する動的衝突が発生する可能性があるか否かを判定するステップと、
（ｃ）イベント発生時に、前記イベントを記述する規則が現在実行されている他の規則に記述されたアクションと同時に実行されえないアクションを記述する動的衝突を起こすか否かを判定するステップと
を含むことを特徴とするウェブサービス基盤の規則使用方法。
【請求項２９】
サービス要請者が登録を要請した前記規則が動的衝突を起こすならば、前記サービス要請者から、前記動的衝突発生時に前記動的衝突を解決する動的衝突解決規則を受信して保存した後、前記登録を要請された規則を保存するステップと、
前記登録を要請された規則が前記動的衝突を起こすならば、前記動的衝突解決規則による解決方策を前記規則のアクションを実行するデバイスに伝達するステップと
を含むことを特徴とする請求項２８に記載のウェブサービス基盤の規則使用方法。
【請求項３０】
前記（ｂ）ステップは、前記動的衝突が発生する可能性がある規則に動的衝突が発生する可能性があることを示すマーキングを行い、
前記（ｃ）ステップは、前記イベントを記述する規則がマーキングされた場合、動的衝突を起こすか否かを判定することを特徴とする請求項２８に記載のウェブサービス基盤の規則使用方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はウェブサービスに係り、さらに詳細には、ウェブサービス基盤の規則処理のための装置及びその方法に関する。
【背景技術】
【０００２】
図１は、従来技術によるウェブサービスの基本構成図である。
【０００３】
図１を参照すると、ウェブサービスは、ウェブサービス・レジストリ１００、サービス要請者１１０、サービス提供者１２０から構成される。
【０００４】
サービス提供者１２０は、提供するサービスに対して、ＷＳＤＬ（Web Services Description Language）を含んだインターフェース情報をウェブサービス・レジストリ１００に公開する。サービス要請者１１０は、所望のウェブサービスのためにウェブサービス・レジストリ１００を検索し、サービスを利用するのに必要なインターフェース情報を受ける。サービス要請者１１０は、当該インターフェース情報を利用し、サービス提供者１２０から所望のサービスを受ける。このとき、サービス要請者１１０、ウェブサービス・レジストリ１００、サービス提供者１２０間のメッセージは、ＳＯＡＰ（Simple Object Access Protocol）メッセージ形態を使用する。サービス要請者１１０とサービス提供者１２０との間には、多くの相互作用が必要であり、このときに交換するメッセージもまたＳＯＡＰを基盤とする。
【０００５】
ユビキタス・コンピュータ環境では、数多くのデバイスがさまざまなところに位置し、相互協力的に一定の目標を遂行する。分散デバイスが増加し、ネットワーク効率が重要になるにつれて、デバイスは、互いに簡素なメッセージを介して一定の規則によって、能動的に反応することが非常に重要な機能であるが、現在のウェブサービスでは、このような機能を提供できずにいる。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ウェブサービス基盤のイベント交換を介して、分散デバイスが相互協力できるように、ウェブサービス基盤の規則処理方式を提供することであり、ウェブサービスの活用方式を、イベント、条件、行動などの規則に分けて記述し、これらの組み合わせで１つの規則を定義することで、ウェブサービスが、一般コンピュータに加えて小型端末、すなわちユビキタス環境でも、自動的であって効率的に利用できるようにすることである。
【課題を解決するための手段】
【０００７】
本発明によるウェブサービス基盤の規則処理のためのデバイスの一実施形態として、特定イベント、前記イベントが満足しなければならない条件、及び前記条件満足時に実行するアクションを記述する規則が保存される規則保存所と、イベントが発生すれば、前記規則保存所に保存された規則から、前記イベントを記述する規則を検索する規則エンジンと、前記イベントが前記検索された規則に記述された条件を満足するか否かを検査する条件検査器と、前記イベントが前記条件を満足するならば、前記検索された規則に記述されたアクションを実行するアクション実行器（executor）とを含む。
【０００８】
本発明によるウェブサービス基盤の規則処理のための広域規則管理者の一実施形態として、特定イベント、前記イベントが満足しなければならない条件、及び前記条件満足時に実行するアクションを記述する規則が他の規則と同じイベント及び条件を記述するが、同時に実行されえないアクションを記述する静的衝突（static conflict）が発生するか否か、および前記規則が前記静的衝突は起こさないが、他の規則に記述されたアクションと同時に実行されえないアクションを記述する動的衝突（dynamic conflict）が発生する可能性があるか否か、から設計時有効性を検証する設計時有効性検証器（build-time rule verifier）と、イベント発生時に、前記イベントを記述する規則が現在実行されている他の規則に記述されたアクションと同時に実行されえないアクションを記述する動的衝突を起こすか否か、から実行時有効性を検証する実行時有効性検証器（run-time rule verifier）とを含む。
【０００９】
本発明によるウェブサービス基盤での規則使用方法の一実施形態として、（ａ）特定イベント、前記イベントが満足しなければならない条件、及び前記条件満足時に実行するアクションを記述する規則を保存するステップと、（ｂ）イベントが発生すれば、前記規則保存所に保存された規則から、前記イベントを記述する規則を検索するステップと、（ｃ）前記イベントが前記検索された規則に記述された条件を満足するか否かを検査するステップと、（ｄ）前記イベントが前記条件を満足するならば、前記検索された規則に記述されたアクションを実行するステップとを含む。
【００１０】
本発明によるウェブサービス基盤での規則使用方法の一実施形態として、（ａ）特定イベント、前記イベントが満足しなければならない条件、及び前記条件満足時に実行するアクションを記述する規則が他の規則と同じイベント及び条件を記述するが、同時に実行されえないアクションを記述する静的衝突を起こすか否かを判定するステップと、（ｂ）前記規則が前記静的衝突を起こすものではなければ、他の規則に記述されたアクションと同時に実行されえないアクションを記述する動的衝突が発生する可能性があるか否かを判定するステップと、（ｃ）イベント発生時に、前記イベントを記述する規則が現在実行されている他の規則に記述されたアクションと同時に実行されえないアクションを記述する動的衝突を起こすか否かを判定するステップとを含む。
【発明の効果】
【００１１】
本発明によるウェブサービス基盤の規則処理のためのデバイス、広域規則管理者及びウェブサービス基盤の規則処理方法によって、一般コンピュータに加えて小型端末、すなわちユビキタス環境でも、簡単であって効率的にウェブサービスが利用できる。
【図面の簡単な説明】
【００１２】
【図１】従来技術によるウェブサービスの基本構成図である。
【図２】本発明によるウェブサービスの一実施形態の構成図である。
【図３】本発明によるデバイスの一実施形態の構成図である。
【図４】本発明による広域規則管理者の一実施形態の構成図である。
【図５】本発明によるウェブサービス基盤の規則使用方法の一実施形態のフローチャートである。
【図６】本発明による規則サービス／イベント詳細情報要請プロトコルの一実施形態を示すブロック図である。
【図７】本発明によるサービス／イベント目録要請プロトコルの一実施形態を示すブロック図である。
【図８】本発明によるイベント規則登録、変更、削除、中止及び再開のプロトコルの一実施形態を示すブロック図である。
【図９】本発明によるサービス／イベント状態確認及び通知プロトコルの一実施形態を示すブロック図である。
【図１０】本発明による規則登録前の衝突確認要請プロトコルの一実施形態を示すブロック図である。
【発明を実施するための形態】
【００１３】
以下、添付された図面を参照しつつ、本発明の望ましい実施形態について詳細に説明する。
【００１４】
図２は、本発明によるウェブサービスの一実施形態の構成図である。
【００１５】
図２を参照すると、本発明によるウェブサービスを提供するために、デバイス２００、サービス要請者２１０、サービス提供者２２０、広域規則管理者２３０及びイベントソース２４０が提供される。
【００１６】
本発明によるウェブサービスでは、伝統的なイベント−条件−アクション（ＥＣＡ：Event、Condition、Action）の規則（以下、「規則」という）をウェブサービス方式で処理する。
【００１７】
イベント伝送のために、ウェブサービス基盤のイベンティング・メッセージを介して、デバイスの間にウェブサービスを基にイベント交換が行われる。規則は、このようなウェブサービス基盤のイベンティング・メッセージに対して反応し、デバイスに保存された規則をトリガし、条件を充足すれば、定義されたアクションを行う。
【００１８】
定義されたアクションは、デバイス内もしくはデバイス外のサービスを呼び出したり、または他のイベントを生成して内部もしくは外部にそのイベントを伝達する。このようなイベント伝達とサービス呼び出しとを介して、多数の分散デバイスが相互協力して作動する。
【００１９】
サービス要請者２１０は、ウェブサービスを使用しようとするウェブサービス・クライアントであり、デバイス２００にイベント規則を伝達する。サービス提供者２２０は、一般的なウェブサービスを意味し、これは、従来のウェブサービス活用構造でのサービス提供者１２０と同じ役割を行う。
【００２０】
イベントソース２４０は、ウェブサービスのうちでも、イベントソース２４０の状態変化をイベントお知らせメッセージ（event notification message）を介して伝達し、デバイス２００と広域規則管理者２３０とはイベント規則を保存し、イベントソース２４０からイベントお知らせメッセージを受け、当該イベントに合う規則を実行する役割を行う。
【００２１】
デバイス２００はそれぞれ各自の規則を有しており、イベントが発生するたびに該当する規則を検査し、要求されるアクションを行う一般的なイベント規則の実行器の役割を行う。広域規則管理者２３０は、それぞれのデバイス２００が規則を実行しつつ発生しうる矛盾または衝突が起こりうる規則を発見し、問題を解決するオペレーションを行う。
【００２２】
図３は、本発明によるデバイスの一実施形態の構成図である。
【００２３】
図３を参照すると、本発明によるデバイスは、地域規則管理者３１５、規則保存所３２０、規則エンジン３２５、時間イベント生成器３３０、複合イベント検査器３３５、条件検査器３４０及びアクション実行器３４５を含む。
【００２４】
地域規則管理者３１５は、デバイスに保存される規則を管理する役割を行う。規則をデバイスに登録するよう要請されれば、地域規則管理者３１５は、その規則の有効期間を検査した後、広域規則管理者にその規則を伝達し、その規則に定義されている規則が、地域規則管理者３１５または他のデバイスが有している規則と矛盾する部分があるか否かを判定する。その規則が有効であるならば、規則は規則保存所３２０に保存され、地域規則管理者３１５は、その後、規則の有効性と、その規則に関連するユーザの要請とを処理する。
【００２５】
時間イベント生成器３３０は、規則に定義された時間イベント（temporal event）を生成し、複合イベント検査器３３５に伝達する。複合イベント検査器３３５は、内部または外部で発生するイベントを受け、当該イベントが規則に記述されているか否かを判定する。複合イベント検査器３３５に伝えられるメッセージには、ＷＳ−Eventingのような標準を利用し、外部ウェブサービスから伝えられるイベント伝達メッセージ、時間イベント生成器３３０が発生させる時間イベント、アクション実行器３４５で発生させる内部イベントがある。イベントを受ければ、複合イベント検査器３３５は、規則エンジン３２５から現在有効な規則についての情報を受け、当該規則で現在受けたイベントが有効であるか否か、または複合イベント検査器３３５は他のイベントを待たなければならないか否かなどを判定する。１つのイベントが発生したとするならば、このイベントを規則エンジン３２５に伝達し、その後のオペレーションを行わせる。
【００２６】
規則エンジン３２５は、複合イベント検査器３３５から、いかなる規則が発生したイベントに関連するかを伝達され、その規則の条件式を条件検査器３４０に伝達する。条件検査器３４０は、伝達された条件式を検査した後、真か偽かを規則エンジン３２５に伝達する。
【００２７】
規則エンジン３２５は、発生したイベントに関連し、条件が真である規則のアクションをアクション実行器３４５に伝達し、アクション実行器３４５は、記述されたアクションを行う。
【００２８】
規則エンジン３２５は、地域規則管理者３１５からの現在有効な規則の情報を使用して、複合イベント検査器３３５、条件検査器３４０及びアクション実行器３４５が規則に対応する適切なオペレーションを行うことができるように、関連情報を提供する役割を行う。より具体的には、規則エンジン３２５は、複合イベント検査器３３５には、どの規則が規則エンジン３２５で検査したイベントに関連するか、及びその規則に記述されたイベントの内容を伝達し、複合イベント検査器３３５が他のイベントを待たなければならないか否か、または当該イベントの内容を処理しなければならないか否かを決定させる。規則エンジン３２５は、条件検査器３４０には、現在発生するイベントに関連する規則の条件式を伝達し、アクションを行うか否かを決定させる。規則エンジン３２５は、アクション実行器３４５には、発生したイベントに関連し、条件式を満足する規則で行うべきオペレーションの情報を伝達する。
【００２９】
また、複合イベント検査器３３５によって特定の規則のイベントが発見され、その規則が、他の規則との動的衝突の可能性があるならば、規則エンジン３２５は広域規則処理者３８０にその状況を知らせ、衝突を解決した後で規則を実行する。
【００３０】
図４は、本発明による広域規則管理者の一実施形態の構成図である。
【００３１】
図４を参照すると、本発明による広域規則管理者は、二つの有効性検証器４２０、４２５、その要請を処理する衝突感知器４３０、４３５及び衝突解決器４４０、並びにそれらを検証して処理するための規則と基準とを保存する三つの保存所４５０、４５５、４６０からなる。
【００３２】
広域規則管理者の役割は、二つに分けられる。一つは、設計時（build-time）の間に規則の静的衝突を検証して、動的衝突が発生する条件か否かを確認する役割であり、他の一つは、実行時（run-time）の間に規則の動的衝突が発生するか否かを確認して、動的衝突を解決する役割である。
【００３３】
有効性検証器４２０、４２５は、それぞれ設計時と実行時との間に実行される規則に対する検証器である。
【００３４】
設計時有効性検証器４２０は、新たな規則登録時に呼び出される。設計時有効性検証器４２０は、新たな規則が他の規則との静的衝突はないか否か、または動的衝突が発生する可能性はないか否かを検証した後で、ユーザに知らせる。静的衝突が発生するならば、サービス要請者は規則を修正しなければならず、動的衝突が発生する可能性があるならば、サービス要請者は、動的衝突を解決する方法を表現した動的衝突解決規則（dynamic conflict resolution rule）を定義しなければならない。
【００３５】
実行時有効性検証器４２５は、他の規則との動的衝突が発生する可能性を有する規則が実行される直前に呼び出される。実行時有効性検証器４２５は、動的衝突が発生するか否かを検証した後、衝突が発生するならば、あらかじめ定義された動的衝突解決規則によって、解決方策をデバイスに伝達する。
【００３６】
次に、広域規則管理者は、衝突感知器４３０、４３５及び動的衝突解決器４４０も含む。静的衝突感知器４３０及び動的衝突感知器４３５は、広域規則保存所４５０及び実行制限規則保存所（action constraints storage）４５５に保存された規則を基に、それぞれ静的衝突と動的衝突とを感知するアルゴリズムを行う。動的衝突解決器４４０は、動的衝突解決規則保存所４６０に保存された動的衝突解決規則を基に、動的衝突を解決するアルゴリズムを行う。
【００３７】
広域規則管理者は、前述のオペレーションを処理するために、三つの保存所を保有している。広域規則保存所（global rule storage）４５０は、広域規則管理者が管理しているあらゆるデバイスに登録された規則を保有している。実行制限規則保存所４５５は、同時に発生しえない二つ以上のデバイスアクションを指定した実行制限規則を保存している。実行制限規則は、同じイベントによって発生するアクションの静的衝突や動的衝突を判定する基準として使われる。動的衝突解決規則保存所４６０は、規則実行時に発生する可能性がある動的衝突を解決する基準を保存した動的衝突解決規則（dynamic conflict resolution rule）を保存している。
【００３８】
図５は、本発明によるウェブサービス基盤の規則使用方法の一実施形態のフローチャートである。
【００３９】
図５を参照すると、実行時の間にユーザが規則を新規に生成する（５１０）。生成された規則は、広域規則管理者に伝えられ、静的衝突が発生するか否かを実行制限規則に基づいて判定する（５２０）。もし静的衝突が発生するならば、該規則を、デバイスに登録することはできないため、ユーザに通知し、規則を修正するように命令する（５２５）。静的衝突が発生しないならば、動的衝突がイベント規則の実行中に発生する可能性があるか否かを確認する（５３０）。もし可能性が存在するならば、ユーザに通知し、動的衝突が発生しうる状況（特定イベント及び条件）とアクション（衝突した規則及び実行条件）とについて知らせ、該状況でいかように振る舞うかを判定する動的衝突解決規則を定義するように命令する（５３５）。該解決規則がいずれも定義されれば、規則と共に登録する（５４０、５５０）。このとき、他の規則と衝突する可能性がある規則にはマーキングを施し（５４５）、デバイス実行時の間に規則を処理する前に、動的衝突が発生するか否かを確認すべく広域規則管理者に知らせる。
【００４０】
静的衝突が発生せず、動的衝突が発生する可能性について解決方策を指定された規則はデバイスに登録され、イベントを待機する（５６０）。もしイベントでトリガされる規則があるならば（５６５）、条件が満足されて活性化されているか否かを検証する（５７０）。活性化された規則に他の規則との動的衝突が発生する可能性が全くないならば、デバイスは、規則に指定されたアクションを処理する。しかし、動的衝突が発生しうるとマーキングされた規則については（５７５）、広域規則管理者が、動的衝突が発生するか否かを判定する（５８０）。このとき、動的衝突が発生しなければ、デバイスは規則を処理し（５９０）、もし発生するならば、あらかじめ定義された動的衝突解決規則を実行し（５８３）、いかように衝突を解決するかを表す解決規則に従って、デバイスに規則を実行するか否か（５８５）を知らせる（５８７）。
【００４１】
図６は、本発明による規則サービス／イベント詳細情報要請プロトコルの一実施形態を示すブロック図である。
【００４２】
図６を参照すると、サービス提供者６２０とイベントソース６４０とで提供するサービスとイベントとの情報は、規則衝突及び誤り処理などの規則管理を支援するため、またはサービス要請者が、規則をさらに容易に作成することを支援するために、広域規則管理者６３０によって管理される。ウェブサービスは、ウェブサービスが提供するサービスを記述し、これをサービスのクライアント・アプリケーションに知らせるために、ＷＳＤＬ（Web Services Description Language）を利用する。ＷＳＤＬには、ウェブサービスが因子及びリターン値で使用する複合タイプの定義、他のウェブサービスとやり取りするメッセージ、ウェブサービスが提供する遠隔プロシージャ、ウェブサービスを呼び出すのに使用されるプロトコル、ウェブサービス・システムのエンドポイント情報などを記述する。しかし該情報は、ウェブサービスのクライアント・アプリケーションが呼び出すプロシージャを中心に記述されるために、イベントソース６４０は、イベントソース６４０が提供するイベントお知らせメッセージ情報を記述することができない。該プロトコルで提供されるオペレーションは、次の通りである。
【００４３】
GetServiceDescription：広域規則管理者がサービス提供者に伝達するサービス詳細情報要請メッセージ
【００４４】
GetServiceDescriptionResponse：サービス提供者が広域規則管理者に応答するサービス提供者のサービスについての情報の応答メッセージ
【００４５】
GetEventDescription：広域規則管理者がイベントソースにイベント情報を要請するメッセージ
【００４６】
GetEventDescriptionResponse：イベントソースが提供するイベントの情報応答メッセージ
【００４７】
図７は、本発明によるサービス／イベント目録要請プロトコルの一実施形態を示すブロック図である。
【００４８】
図７を参照すると、サービス要請者７１０が規則を作成するためには、サービス要請者７１０が接続しているネットワークにいかなるサービスとイベントとが存在するかを知っていなければならない。該情報を得るために、サービス要請者７１０は、それぞれ、サービス提供者６２０及びイベントソース６４０にGetServiceDescriptionメッセージ及びGetEventDescriptionメッセージを送り、応答メッセージを受けることができる。しかし該方法は、サービス要請者７１０がネットワーク内のあらゆるコンポーネントの位置を知らなければならず、同じ内容のメッセージを多数伝えなければならないので、ネットワークの効率性も落ちる。従って、この方法は推薦されない。
【００４９】
そのため、その代案として、広域規則管理者７３０とサービス要請者７１０との情報交換メカニズムを活用する。広域規則管理者７３０は、それぞれ、サービス提供者６２０及びイベントソース６４０に、GetServiceDescriptionメッセージ及びGetEventDescriptionメッセージを送り、それぞれが提供するサービス及びイベントについての情報を得る。サービス要請者７１０は、広域規則管理者７３０に該情報を要請することによって、サービス要請者７１０が使用できるあらゆる情報を得ることができる。該プロトコルで使われるオペレーションは、次の通りである。
【００５０】
GetServiceList：サービス要請者７１０が広域規則管理者７３０にサービスリストを要請するメッセージ
【００５１】
GetServiceListResponse：広域規則管理者７３０が、サービス要請者７１０が要請したサービスリストの結果を伝達するメッセージ
【００５２】
GetEventList：サービス要請者７１０が広域規則管理者７３０にイベントリストを要請するメッセージ
【００５３】
GetEventListResponse：広域規則管理者７３０が、サービス要請者７１０が要請したイベントリストの結果を伝達するメッセージ
【００５４】
図８は、本発明によるイベント規則登録、変更、削除、中止及び再開のプロトコルの一実施形態を示すブロック図である。
【００５５】
図８を参照すると、サービス要請者８１０は、サービス要請者８１０が作成した規則をデバイス８００に伝達し、デバイス８００が規則に従って他のサービス提供者２２０、イベントソース２４０と動的に関係を結ぶことを期待する。該過程でサービス要請者８１０は、規則をデバイス８００に伝達しなければならず、必要によって規則を変更もしくは削除、または規則の適用を中止もしくは再開させることができなければならない。該プロトコルで使用するオペレーションは、次の通りである。
【００５６】
RegisterRule：サービス要請者８１０が、サービス要請者８１０が使用するイベント規則を文法に合うように作成し、これをデバイス８００に配布するメッセージ
【００５７】
ChangeRule：サービス要請者８１０が、以前にデバイス８００に伝達した規則を変更するメッセージ
【００５８】
DeleteRule：サービス要請者８１０が、すでに配布されたイベント規則を削除する必要がある場合に伝達するメッセージ
【００５９】
SuspendRule：デバイス８００に配布された規則を一時的に使用したくない場合に、サービス要請者８１０がデバイス８００に伝達するメッセージ
【００６０】
ResumeRule：サービス要請者８１０が、デバイス８００に規則の使用を中止することを要請した後、再びその規則を使用しなければならない場合、すなわち、SuspendRuleメッセージに使用中止期間を明示していない場合、またはSuspendRuleメッセージに記述した使用中止期間よりさらに早く規則を使用し始める場合に送るメッセージ
【００６１】
図９は、本発明によるサービス／イベント状態確認及び通知プロトコルの一実施形態を示すブロック図である。
【００６２】
図９を参照すると、デバイス２００に配布された規則は、サービス提供者９２０によって提供されるサービス、あるいはイベントソース９４０から伝達されるイベントお知らせメッセージの内容を参照して定義される。しかし、ユビキタス環境で初めに規則が配布されるときに使用可能であったサービス及びイベントが、持続的に使用可能であると仮定できない。基本的にユビキタス環境では、多様な環境でのアドホックネットワークが可能であるために、サービス及びイベントは、必要によってネットワークから除去され、または一時的に使用可能ではなくなることもある。このような状況を処理するために、新たなサービス提供者がネットワークに進入するとき（advertise）、またはサービス提供者がネットワークから除去されるときの諸般事項を、サービス要請者に知らせるように処理している。
【００６３】
しかし、このような処理事項は、特定のネットワークに限定されるため、かかる機能をあらゆるネットワークで提供しているわけではない。
【００６４】
よって本発明では、広域規則管理者９３０がサービス提供者９２０及びイベントソース９４０の状態を検査できるプロトコルを提供し、該情報を基に、サービス要請者９１０が定義した規則に記述されたサービス及びイベントが有効ではないならば、サービス要請者９１０に該事実を知らせて規則を修正することができる。該プロトコルで利用されるオペレーションは、次の通りである。
【００６５】
GetServiceStatus：広域規則管理者９３０が、サービスの状態を確認するためにサービス提供者９２０に伝達する状態確認要請メッセージ
【００６６】
GetServiceStatusResponse：GetServiceStatusに対する応答メッセージ
【００６７】
GetEventStatus：広域規則管理者９３０が、イベントソース９４０が提供するイベントの状態を確認するために、イベントソース９４０に伝達するイベント状態確認要請メッセージ
【００６８】
GetEventStatusResponse：GetEventStatusに対する応答メッセージ
【００６９】
RuleInfoChanged：広域規則管理者９３０がサービス及びイベントの状態を確認した後、状態が変更されて規則が正しく実行されえない場合、該事実をサービス要請者９１０に伝達するメッセージ
【００７０】
RuleInfoChangedResponse：RuleInfoChangedの応答メッセージ
【００７１】
図１０は、本発明による規則登録前の衝突確認要請プロトコルの一実施形態を示すブロック図である。
【００７２】
図１０を参照すると、デバイス１０００が、規則登録前に広域規則管理者１０３０に静的衝突及び動的衝突の感知を要請するプロトコルとして必要ならば、動的解決規則を登録する。該プロトコルで使用するオペレーションは、次の通りである。
【００７３】
RequestConflictDetection：デバイス１０００が広域規則管理者１０３０に衝突に対する感知を要請するメッセージ
【００７４】
RequestConflictDetectionResponse：RequestConflictDetectionの応答メッセージ
【００７５】
RegisterResolutionRule：デバイス１０００が広域規則管理者１０３０に動的衝突解決規則を要請するメッセージ
【００７６】
RegisterResolutionRuleResponse：RegisterResolutionRuleの応答メッセージ
【００７７】
本発明は、コンピュータで実行されうるプログラムで作成可能であり、コンピュータで読み取り可能な記録媒体を利用し、前記プログラムを動作させる汎用デジタル・コンピュータで具現されうる。前記コンピュータで読み取り可能な記録媒体の例としては、磁気記録媒体（例えば、ＲＯＭ、フロッピー（登録商標）ディスク、ハードディスクなど）、光記録媒体（例えば、ＣＤ−ＲＯＭまたはＤＶＤなど）及びキャリアウェーブ（例えば、インターネットを介した伝送）などの記録蔵媒体がある。
【００７８】
本発明は、例示的な実施形態に関して特に図示及び説明してきたが、特許請求の範囲で定義されている本発明の趣旨及び範囲を逸脱することなく、様々な形式の変更及び詳細な変更が可能であることが、当業者に理解されよう。
【図１】
2010511955.tif 000003
【図２】
2010511955.tif 000004
【図３】
2010511955.tif 000005
【図４】
2010511955.tif 000006
【図５】
2010511955.tif 000007
【図６】
2010511955.tif 000008
【図７】
2010511955.tif 000009
【図８】
2010511955.tif 000010
【図９】
2010511955.tif 000011
【図１０】
2010511955.tif 000012
【国際調査報告】
2010511955.tif 000013
2010511955.tif 000014