JP4334253B2 - データ整合プログラム及びシステム並びに方法 - Google Patents

データ整合プログラム及びシステム並びに方法 Download PDF

Info

Publication number
JP4334253B2
JP4334253B2 JP2003070705A JP2003070705A JP4334253B2 JP 4334253 B2 JP4334253 B2 JP 4334253B2 JP 2003070705 A JP2003070705 A JP 2003070705A JP 2003070705 A JP2003070705 A JP 2003070705A JP 4334253 B2 JP4334253 B2 JP 4334253B2
Authority
JP
Japan
Prior art keywords
data
consistency
local
public
rule
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003070705A
Other languages
English (en)
Other versions
JP2004280447A (ja
Inventor
純一 山本
正隆 山田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2003070705A priority Critical patent/JP4334253B2/ja
Publication of JP2004280447A publication Critical patent/JP2004280447A/ja
Application granted granted Critical
Publication of JP4334253B2 publication Critical patent/JP4334253B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、Webサービスに関するデータの検索結果を提供する複数のレジストリ間で、データの整合性を確保するためのデータ整合プログラム及びシステム並びに方法に関する。
【0002】
【従来の技術】
インターネット上で柔軟に企業間システムを連携する技術への要望が高まっている。激化するグローバル競争の下で、企業グループは統合や再編を繰り返している。各企業は自社の得意分野に集中し、他分野では他社と連携を図る傾向にある。
【0003】
提携企業間では、単なる物の売買に限らず、例えば部品会社と組み立て会社が設計段階から協調するなどのように、より密なコラボレーションが求められる。
【0004】
このため、企業間のシステムを迅速に連携させ、かつビジネス環境の変化に柔軟に対応するための技術が求められ、このような技術の一つとしてWebサービスが注目されている。
【0005】
Webサービスの一例として、インターネットなどのようなネットワーク上でXML(Extensible Markup Language)形式のメッセージを送受信してシステムを連携させる技術がある。
【0006】
図14は、一般的なWebシステムの構成の一例を示すブロック図である。
【0007】
一般的なWebシステムでは、Webアプリケーション1aによるサービスやホームページ1bがWebサーバ1からネットワーク2を経由してWebブラウザ3に通知され、利用者4に提供される。
【0008】
一方、図15は、Webサービスの一例を示すブロック図である。
【0009】
Webサービスでは、一方のシステム5aのサービスアプリケーション6aと他方のシステム5bのサービスアプリケーション6bとがXMLデータ(XMLメッセージ)7を送受信し、直接連携して動作する。
【0010】
XMLデータ7は、システム5aとシステム5bとの間で、例えばHTTPなどのようなインターネット標準プロトコルにしたがって送受信されるため、ファイアウォールも容易に通過可能である。
【0011】
Webサービスでは、ネットワーク2として例えばインターネットが利用されるため、従来から企業間のデータ交換に使われてきたEDI(Electronic Data Interchange)よりも構築コストがかからない。
【0012】
Webサービスによって企業間システムを迅速かつ柔軟に連携させるために、様々な標準化が進んでいる。
【0013】
主な標準として、企業間で交換するXMLデータの形式、ビジネスプロセスの標準、XMLデータを送受信するためのメッセージングプロトコル標準、サービス登録又は検索するためのレジストリ標準などがある。
【0014】
これらの標準が実装され、適切な運用体制が整うと、第1にオープンかつダイナミックな企業間システム連携機構が構築可能となる。第2にインターネット上のサービスを部品として利用するシステム開発パラダイムが実現可能となる。
【0015】
図16は、Webサービスに関するレジストリの適用例を示す図である。
【0016】
ホテルや航空会社などのWebサービスの提供者は、自社のシステム7a〜7dによって提供されるサービスをWebサービスとしてインターネットなどのネットワーク2上に公開する。サービス提供者は、自社のWebサービスをレジストリ8に登録する。
【0017】
Webサービスの利用者である旅行代理店のシステム9は、レジストリ8を検索してWebサービスを選択し、標準ビジネスプロセスにしたがって選択されたWebサービスを利用する。
【0018】
Webサービスのレジストリ標準として、UDDI(Universal Description Discovery, and Integration)がある。
【0019】
UDDIとは、Webサービスの記述、発見、統合を実現するためのレジストリ仕様である。
【0020】
図17は、UDDIにしたがったレジストリの一例を示す図である。レジストリ8は、Webサービスの電話帳としてもディレクトリサービスを提供する。
【0021】
複数の会社が共同でパブリックレジストリを運営する場合がある。Webサービスの提供者は、自己のWebサービスに関するデータをパブリックレジストリに登録し、Webサービスの利用者は、自己の利用したいWebサービスに関するデータをパブリックレジストリから検索し、Webサービスを利用する。
【0022】
【非特許文献1】
ユーディーディーアイ・バージョン3.0(UDDI Version 3.0 published Specification), [online], 2002年7月19日、インターネット<URL: http://uddi.org/pubs/uddi-v3.00-published-20020719.pdf>
【0023】
【非特許文献2】
ウェブ・サービスズ・ディスクリプション・ランゲージ(ダブリューエスディーエル)1.1(Web services Description Language (WSDL) 1.1), ダブリュースリーシー・ノート(W3C Note), [online], 2001年3月15日、インターネット<http://www.w3.org/TR/wsdl>
【0024】
【非特許文献3】
川村隆浩、長谷川哲夫、大須賀昭彦、山本純一(T. Kawamura, T. Hasegawa, A Ohsuga, J. Yamamoto): プロポーザル・オブ・セマンティックス−ベースト・ウェブ・サービス・マッチメーキング(Proposal of Semantics-based Web Service Matchmaking),プロシーディングス・オブ・インターナショナル・コンファレンス・オン・コンピューショナル・インテリジェンス・アンド・マルチメディア・アプリケーションズ 2001(アイシーシーアイエムエー)(Proceedings of International Conference on Computational intelligence and Multimedia Applications 2001 (ICCIMA 01)), アイトリプルイー(IEEE), pp.87-92, Nov, 2001.
【0025】
【非特許文献4】
ダブリューエスエムイー・ウェブ・サービスズ・マッチメーキング・エンジン(WSME Web Services Matchmaking Engine), [online], 2002年7月16日、インターネット<http://dwdemos.alphaworks.ibm.com/wstk/common/wstkdoc/services/demos/wsme/wsme.pdf>
【0026】
【発明が解決しようとする課題】
パブリックレジストリには、誰でも自由にWebサービスを登録できる。したがって、登録されたWebサービスについての品質や信頼性は補償されない。パブリックレジストリから検索されたWebサービスの品質や信頼性のチェックは、サービス利用者に委ねられている。
【0027】
しかしながら、サービス利用者にとって検索のたびにWebサービスの品質や信頼性をチェックすることは困難である。
【0028】
登録自由なパブリックレジストリとは対象的に、ある特定の業界や特定の企業のポリシーにしたがって、登録されるWebサービスを統制するローカルレジストリがある。
【0029】
図18は、ローカルレジストリとパブリックレジストリとの関係の一例を示す図である。
【0030】
例えば、旅行代理店は、企業内にローカルレジストリ10を所有している。この旅行代理店の従業者やシステム9は、原則としてパブリックレジストリ11ではなく、ローカルレジストリ10を用いてWebサービスに関するデータを検索する。
【0031】
新たなWebサービスをローカルレジストリ10に登録したい旅行代理店の従業者は、その旨をローカルレジストリ10の管理者に申請する。
【0032】
ローカルレジストリ10の管理者は、ローカルレジストリ10に新規登録候補のWebサービスを登録する前に、この新規登録候補のWebサービスの品質や信頼性を調査して所定の基準を満たす場合に登録を許可する。
【0033】
登録する場合には、調査結果なども補足データとしてローカルレジストリ10に登録する。
【0034】
このような手順で登録作業が行われることで、ローカルレジストリ10の利用者(企業の従業者や自社システム)は、品質や信頼性の保証されたWebサービスに関するデータのみを検索できる。
【0035】
ローカルレジストリ10とパブリックレジストリ11とが実現される場合、図19に示すように双方の整合性の確保が必要になる場合がある。
【0036】
この図19において、ホテル業者が自社予約サービスをパブリックレジストリ11に登録する。旅行代理店におけるローカルレジストリ10の管理者は、パブリックレジストリ11に登録されている予約サービスに関するデータを検索し、この予約サービスに関するデータを自社のローカルレジストリ10に登録する。
【0037】
次に、ホテル業者は、パブリックレジストリ11内の自社の登録内容を更新したとする。例えば、ホテル業者は、予約サービスへのアクセスURL(Uniform Resource Locators)を変更する。
【0038】
この時点で、パブリックレジストリ11にはホテル業者の更新後の予約サービスに関するデータが登録されているのに対し、旅行代理店のローカルレジストリ10にはホテル業者の更新前の予約サービスに関するデータが登録されている。したがって、ローカルレジストリ10とパブリックレジストリ11の登録内容に不整合が生じる。
【0039】
本発明は、以上のような実情に鑑みてなされたもので、ローカルレジストリとパブリックレジストリとの登録内容を整合させるデータ整合プログラム及びシステム並びに方法を提供することを目的とする。
【0040】
【課題を解決するための手段】
本発明を実現するにあたって講じた具体的手段について以下に説明する。
【0041】
本発明の一態様のデータ整合プログラムは、コンピュータに、ローカルレジストリ記録装置から、「データ項目についての値」「整合性をチェックする対象のパブリックデータを指定するパブリックデータ指定情報」「整合性をチェックする項目の指定、当該項目について整合性がないと判断された場合に実行される複数の整合性確保処理のうちのいずれかの整合性確保処理の設定を含む整合性確保ルール、を指定するルール指定情報」を含むローカルデータを取得するローカルデータ取得機能と、ローカルレジストリ記録装置から取得されたローカルデータに含まれているパブリックデータ指定情報に基づいて、パブリックレジストリ記録装置から、データ項目についての値を持ちローカルデータとの間で整合性をチェックする対象であるパブリックデータを取得するパブリックデータ取得機能と、ルール記録装置から、ローカルレジストリ記録装置から取得されたローカルデータに含まれているルール指定情報で指定されている整合性確保ルールを取得し、この取得された整合性確保ルールで指定されている整合性をチェックする項目について、ローカルデータとパブリックデータとの間で値が整合しているか否か判断する比較機能と、比較機能によって、整合性をチェックする項目についてローカルデータとパブリックデータとの間で値が整合していないと判断された場合に、整合性確保ルールで設定されている整合性確保処理を実行する処理機能とを実現させる。
【0042】
これにより、ローカルレジストリ記録装置のローカルデータとパブリックレジストリ記録装置のパブリックデータとの間でデータを整合させることができる。
【0043】
なお、本発明において、複数の整合性確保処理は、不整合の生じたデータ項目の値として前記パブリックデータの値を返す処理を含むとしてもよい。複数の整合性確保処理は、前記パブリックデータの不整合の生じたデータ項目の値で、前記ローカルデータの不整合の生じたデータ項目の値を更新する処理を含むとしてもよい。これにより、パブリックレジストリ記録装置の登録内容を変更するのみでローカルレジストリ記録装置の登録内容も変更できる。複数の整合性確保処理は、不整合が発生したことを通知する処理を含むとしてもよい。
【0045】
また、本発明において、ローカルレジストリ記録装置は特定の条件を満たすデータのみが登録されるローカルレジストリであり、パブリックレジストリ記録装置は特定の条件を満たさないデータであっても登録されるパブリックレジストリであるとしてもよい。これにより、ローカルレジストリとパブリックレジストリとの間でWebサービスに関するデータを整合させることができる。
【0046】
なお、本発明のデータ整合プログラム又はこのプログラムを記録した記録媒体を用いることによって、上記各機能を有していないコンピュータ、コンピュータシステム、サーバ、クライアントに対しても、簡単にこれらの機能を付加することができる。
【0047】
本発明で実現される機能と同様の動作を実現する手段をデータ整合システムに具備することにより、同様の作用効果を得ることができる。
【0048】
本発明のデータ整合プログラム又はこのプログラムを記録した記録媒体をコンピュータに適用することによって、Webサービスに関するデータを複数の記録装置間で整合させるデータ整合方法がコンピュータ上で実施される。
【0049】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施の形態について説明する。
【0050】
以下の各図において同一の部分については同一の符号を付してその説明を省略し、異なる部分についてのみ詳しく説明する。
【0051】
本実施の形態においては、ローカルレジストリに登録されたWebサービスに関するデータ(以下、「ローカルデータ」という)がパブリックレジストリに登録されたWebサービスに関するデータ(以下、「パブリックデータ」という)と不整合になった場合に、ローカルデータを更新し、双方のレジストリを整合させるデータ整合システムについて説明する。
【0052】
図1は、本実施の形態に係るデータ整合システムの構成の一例を示すブロック図である。
【0053】
データ整合プログラム12は、記録媒体13に記録されており、ローカルレジストリ14としての機能を実現する計算機システムに読み込まれ、起動することにより、データ整合システム15として動作する。
【0054】
ローカルレジストリ14は、サービスデータ記録部16、サービス管理部17、サービス検索部18、データ整合システム15を具備する。
【0055】
本実施の形態においては、WebサービスA〜Cのうち、WebサービスA、Cに関するデータがローカルレジストリ14に登録されている。ローカルレジストリ12に登録されているWebサービスA、Cに関するデータは、それぞれローカルデータ19a、19cである。
【0056】
ローカルデータ19a、19cは、サービス管理部17を介してサービスデータ記録部16に登録される。サービスデータ記録部16に登録されたローカルデータ19a、19cは、サービス検索部18による検索対象となる。
【0057】
パブリックレジストリ11は、サービスデータ記録部20、サービス管理部21、サービス検索部22を具備する。
【0058】
本実施の形態においては、WebサービスA、Bに関するデータがパブリックレジストリ11に登録されている。パブリックレジストリ11に登録されているWebサービスA、Bに関するデータは、それぞれパブリックデータ23a、23bである。
【0059】
ローカルレジストリ14とパブリックレジストリ11において、同じWebサービスに関するデータが登録されている場合、このWebサービスに関するローカルデータとパブリックデータとは対応関係を持つ。対応関係を持つローカルデータとパブリックデータとは、データ整合システム15による整合性確保の対象となる。
【0060】
上記図1の例では、ローカルレジストリ14とパブリックレジストリ11の双方に登録されているWebサービスAに関するローカルデータ19aとパブリックデータ23aについては整合性確保の対象となり、ローカルレジストリ14とパブリックレジストリ11とのうち一方にのみ登録されているWebサービスBに関するパブリックデータ23bとWebサービスCに関するローカルデータ19cについては整合性確保の対象外となる。
【0061】
整合性確保の対象となっているWebサービスAに関するローカルデータ19aには、ローカルレジストリ14とパブリックレジストリ11との間でWebサービスAに関する登録内容に不整合が発生した場合に、対処方法を定めた整合性確保ルールを指定するルール指定データが含まれている。
【0062】
さらに、整合性確保の対象となっているWebサービスAに関するローカルデータ19aには、対応関係にあるパブリックデータ23aを指定する関係データが含まれている。
【0063】
データ整合システム15は、不整合が発生した場合に、指定されている整合性確保ルールにしたがって整合性確保処理を実行する。
【0064】
なお、不整合の発生したローカルデータにルール指定データが含まれていない場合、データ整合システム15は、デフォルトの整合性確保ルールにしたがって整合性確保処理を実行する。
【0065】
本実施の形態においては、UDDI Version1.0 仕様(以下、「UDDI仕様」という)に基づくパブリックレジストリ11とローカルレジストリ14との間で整合性を確保する機構について説明する。
【0066】
UDDI仕様では、サービスの登録、更新、削除、検索の4種類のAPI(Application Programming Interface)がXML形式で規定される。また、UDDI仕様では、この4種類のAPIにしたがってやり取りされるデータ形式も規定されている。
【0067】
データ整合システム15は、主に、ローカルデータ取得部15a、パブリックデータ取得部15b、比較部15c、処理部15dとを具備する。また、比較部15c、処理部15dは、整合性確保ルールR1〜Rnの記録されている整合性確保ルール記録部24をアクセスする。
【0068】
ローカルデータ取得部15aは、サービス検索部18を介してローカルレジストリ14のサービスデータ記録部16を検索し、検索されたローカルデータを取得する。
【0069】
本実施の形態においては、ローカルデータには関係データが含まれている場合があるため、ローカルデータ取得部15aは、関係データの取得機能も実現する。
【0070】
パブリックデータ取得部15bは、パブリックレジストリを検索し、検索されたパブリックデータを取得する。
【0071】
比較部15cは、取得されたローカルデータに含まれているルール指定データによって指定された整合性確保ルールにしたがって、同一のWebサービスに関するローカルデータとパブリックデータとを比較し、不整合の有無を判定する。
【0072】
なお、整合性確保ルールには、ローカルデータとパブリックデータとの間で整合性を確保する項目についても指定されている。
【0073】
処理部15dは、不整合が発生した場合に、整合性確保ルールにしたがった整合性確保処理を実行する。
【0074】
図2は、本実施の形態においてローカルレジストリ及びパブリックレジストリとで扱われるデータの構造の一例を示す図である。
【0075】
ローカルレジストリ14及びパブリックレジストリ11は、UDDI仕様のレジストリとする。
【0076】
ローカルレジストリ14及びパブリックレジストリ11では、businessEntry、businessService、bindingTemplate、tModelという4種類のデータが扱われる。
【0077】
会社名、業種などの各企業に関するデータは、businessEntryという単位で表現される。
【0078】
各企業についてのbusinessEntryには、この企業の提供するWebサービスを表現するbusinessServiceが少なくとも一つ含まれる。一つのbusinessServiceは、互いに関連するWebサービスの集合を表現する。なお、一つのbusinessServiceが一つのWebサービスを表現するとしてもよい。
【0079】
例えば、ある旅行代理店を表すbusinessEntryには、ホテル予約サービスを表すbusinessServiceやレンタカー予約サービスを表すbusinessServiceなどが含まれる。
【0080】
そして、ホテル予約サービスを表すbusinessServiceは、空き部屋照合サービス、部屋予約サービス、キャンセルサービスなどの互いに関連するWebサービスから構成される。
【0081】
各bindingTemplateには、businessServiceを構成する各Webサービスのアクセス先、アクセス方法などの詳細データが記述されている。なお、一つのbusinessServiceは、例えばインターネットからのアクセス、FAXによるアクセスなどのように複数のアクセス方法を持つ場合もある。このため、一つのbusinessServiceが複数のbindingTemplateを持つ場合がある。
【0082】
tModelには、各Webサービスの厳密なインタフェース仕様が規定されている。
【0083】
本実施の形態においては、bindingTemplateの整合性を確保する場合について説明するが、businessEntry、businessService、tModelなどの他の種類のデータの整合性を確保する場合も同様である。
【0084】
なお、UDDI仕様では、APIと論理的なデータ構造が規定されているが、レジストリの実装方法については規定されていない。すなわち、APIにしたがってやり取りされるXMLデータの論理的な形式は規定されているが、実際にデータをレジストリに記録する方法については規定されていない。
【0085】
そこで本実施の形態においては、論理的なデータ構造について説明し、この論理的なデータ構造を実装する方法は問わないものとして説明する。例えば、実装の方法としては、リレーショナルデータベースを使った実装、オブジェクト指向データベースを使った実装などがある。
【0086】
以下に、Webサービスに関する論理的なデータ構造について説明する。なお、本実施の形態においてはUDDI仕様で定義されているデータ種類のうちbindingTemplateの構造と処理手順を例として説明するが、businessEntry、businessService、tModelなどの他の種類のデータの構造と処理手順についても同様である。
【0087】
表1に、UDDI仕様で規定されているbindingTemplateのデータ構造を示す。
【0088】
【表1】
Figure 0004334253
【0089】
表1中のbindingKeyは、各bindingTemplateのIDである。accessPointはこのWebサービスへのアクセスポイント(URLなど)を記述するためのオプション属性である。
【0090】
hostingRedirector属性には、別のbindingTemplateのbindingKeyが記述される。このhostingRedirectorは、accessPointにアクセスポイントを記述することなく、別のbindingTemplateを参照することを目的として用意されている。
【0091】
bindingTemplateでは、accessPointとhostingRedirectorとのうち少なくとも一方に値が設定される必要がある。
【0092】
description属性は、Webサービスに関するデータを文字列で記述するために用意されている。このdescriptionには、255文字以内の文字列が設定され、例えば言語毎に説明を記述できる。
【0093】
図3は、UDDI仕様で規定されているbindingTemplateのデータ構造を用いた本実施の形態に係るローカルデータとパブリックデータの一例を示すブロック図である。この図3においては、上記図1のWebサービスAがホテル予約サービスに対応し、ローカルデータ19aがローカルレジストリ14に登録されたホテル予約サービスに関するbindingTemplate25に対応し、パブリックデータ23aがパブリックレジストリ11に登録されたホテル予約サービスに関するbindingTemplate26に対応する。ローカルデータ19aは、パブリックデータ23aとの間の関係データを含む。この場合、ローカルデータ19aと関係データとはともに記録装置に記録され、関係データを含むローカルデータ19aが記録装置から読み出される。
【0094】
本実施の形態においては、整合性確保を目的として上記の属性を以下のように利用する。
【0095】
ローカルレジストリ14に登録されたbindingTemplate25からパブリックレジストリ11に登録されたbindingTemplate26を参照するために、bindingTemplate25のhostingRedirector属性に、対応関係にあるbindingTemplate26を識別するためのデータが与えられる。このhostingRedirector属性に設定される値は、関係データに対応する。
【0096】
ホテル予約サービスに関するbindingTemplate26は、パブリックレジストリ11に登録されており、このbindingTemplate26のID、すなわちbindingKey属性の値は、publickey_123である。
【0097】
ホテル予約サービスに関するbindingTemplate25は、ローカルレジストリ14に登録されている。bindingTemplate25のIDは、localkey_001である。
【0098】
bindingTemplate25は、bindingTemplate26を参照している。すなわち、buindingTemplate25のhostingRedirector属性には、bindingTemplate26のIDであるpublickey_123が設定されている。
【0099】
本実施の形態において、bindingTemplate25のdescription属性には、整合性確保ルールを識別するためのデータが設定される。例えば、bindingTemplate25のdescription属性には、rule:rule_1が設定されている。この設定により、bindingTemplate25はrule_1で指定される整合性確保ルールR1にしたがって整合性が確保される。
【0100】
本実施の形態においては、ローカルデータのbindingTemplate25とパブリックデータのbindingTemplate26との間で整合性を確保するが、bindingTemplate25とbindingTemplate26とは、全ての属性(データ項目)で値が一致している必要はない。
【0101】
この図3の例では、accessPoint属性の値は双方とも「http://www.abc.com/efg」で一致しているがdescription属性の値は異なる。この例において、bindingTemplate25のdescription属性には、「部屋の質は高い」というコメントが設定されており、bindingTemplate26のdescription属性には、「部屋予約のサービス」というコメントが設定されている。
【0102】
bindingTemplateにおけるどの属性が整合性確保の対象となるかについては、rule_1で指定される整合性確保ルールR1で定義されている。
【0103】
図4は、XML形式で記述されたローカルデータであるbuindingTemplate25の一例を示す図である。
【0104】
この図4の例に示すように、hostingRedirector属性に値が設定されているbindingTemplateが整合性確保の対象となるローカルデータである。
【0105】
hostingRedirector属性に値が設定されているbindingTemplateに対しては、description属性で指定されている整合性確保ルールに基づいて整合性確保処理が実行される。
【0106】
処理部15dは、整合性確保ルールにおける定義内容によって異なる整合性確保処理を実行する。具体的な整合性確保処理を実行するまでの処理の流れについて以下に説明する。
【0107】
図5は、データ整合システム15の動作の例を示すシーケンス図である。この図5における縦線は上記図1、3に示す構成要素とシステム外部アクタ(ローカルレジストリ14の管理者と利用者)を表し、上から下に向かって時間の流れを表す。特に説明がない限り、図5に示す構成要素はローカルレジストリ14に具備されている要素であるとする。
【0108】
UDDI仕様をベースとしたサービス検索部18には、いくつかのタイプの検索機能が備わっている。この図5では、キーワードによりローカルレジストリ14に登録されているbindingTemplateが検索される場合を例として示している。
【0109】
ローカルレジストリ14の利用者(ローカルレジストリ14にアクセスする人間又はシステム)は、キーワード「ホテル予約」を引数としてbindingTemplateの検索を試みる。
【0110】
サービス検索部18は、サービスデータ記録部16からキーワード「ホテル予約」にマッチしたbindingTemplateの一覧を求める。
【0111】
ローカルレジストリ14の利用者は、キーワード「ホテル予約」に適合したbindingTemplateの一覧を取得する。このbindingTemplateの一覧には、この一覧を構成する各bindingTemplateの概要(サービス名、bindingKey属性の値など)のリストが含まれる。
【0112】
一覧を構成する各bindingTemplateの詳細データを取得するために、さらにbindingKeyを引数として詳細データを取得する必要がある。
【0113】
この図5の例では、利用者は、あるWebサービスのbindingKey属性の値localkey_001を引数として詳細データの取得を試みている。
【0114】
サービス検索部18は、利用者からの詳細データの取得要求をデータ整合システム15に転送する。
【0115】
データ整合システム15は、サービスデータ記録部16からbindingKey属性の値がlocalkey_001であるbindingTemplate25を取り出す。
【0116】
ここから先の整合性確保処理の内容は、整合性確保ルールに応じた内容となる。
【0117】
例えば、ある整合性確保ルールで定義された内容にしたがって、データ整合システム15は、bindingTemplate25と対応関係にあるbindingTemplate26をパブリックレジストリ11から取り出し、bindingTemplate25とbindingTemplate26と比較し、比較項目について不整合があったらパブリックレジストリ11のbindingTemplate26の内容でローカルレジストリ14のbindingTemplate25の内容を更新するとしてもよい。
【0118】
また、例えば別の整合性確保ルールで定義された内容にしたがって、データ整合システム15は、不整合があってもローカルレジストリ14のbindingTemplate25を更新することなく、不整合がある旨をローカルレジストリ14の管理者に通知するとしてもよい。
【0119】
このように、整合性確保処理の具体的な内容は整合性確保ルールに依存するが、整合性確保処理を実行するまでの動作は全整合性確保ルールで共通化することができる。
【0120】
図6は、詳細データ取得要求を受け付けた後におけるデータ整合システム15の動作の一例を示すフローチャートである。
【0121】
ステップS1において、データ整合システム15は、ローカルレジストリ14に登録されているローカルデータ(例えばbindingTemplate)を取得する。
【0122】
ステップS2において、データ整合システム25は、ローカルデータに含まれている関係データ(例えばbindingTemplateのhostingRedirector属性の値)を調べる。
【0123】
hostingRedirector属性に値が設定されていない場合、データ整合システム15は、ローカルデータと対応関係のあるパブリックデータはないと判断し、ステップS3において、データ整合システム15は、ローカルデータを返却する。
【0124】
hostingRedirector属性に値が設定されている場合、ステップS4において、データ整合システム15は、その値をキー(bindingKey)としてパブリックレジストリ11の検索を要求し、パブリックレジストリ11に公開されているパブリックデータ(例えばbindingTemplate)を取得する。
【0125】
ステップS5において、データ整合システム15は、ローカルデータに含まれているルール指定データ(例えばbindingTemplateのdescription属性の値)に基づいて、整合性確保ルールを取得する。
【0126】
ステップS6において、データ整合システム15は、取得した整合性確保ルールに基づいて、ローカルデータとパブリックデータを比較する。
【0127】
不整合がない場合、上記ステップS3と同様に、データ整合システム15は、ローカルデータを返却する。
【0128】
不整合がある場合、ステップS7において、データ整合システム15は、取得した整合性確保ルールに基づいて整合性確保処理を実行し、ステップS8において、処理後のローカルデータ又はパブリックデータを返却する。
【0129】
以下に、整合性確保ルールR1〜Rnについて説明する。
【0130】
上述したように、整合性確保処理の内容は、整合性確保ルールR1〜Rnに依存する。
【0131】
図7は、本実施の形態に係る整合性確保ルールR1〜Rnの一例を示す図である。
【0132】
本実施の形態において各整合性確保ルールR1〜Rnには、整合性確保の処理内容と比較項目とが設定される。
【0133】
整合性確保の処理内容としては、例えば「不整合が生じたらローカルデータを即座に更新する」旨の命令、「不整合が生じたらローカルレジストリの管理者に通知する」旨の命令などが記述されている。
【0134】
比較項目では、ローカルデータとパブリックデータとが整合しているか否かの判定対象となる項目が特定されている。
【0135】
この図7の例では、bindingTemplateのaccessPoint属性の値が比較され、整合性が判定される。
【0136】
本実施の形態に係る整合性確保の処理内容は、汎用のプログラミング言語で実装してもよく、処理内容を記述するための特定のスクリプト言語を定義し、そのスクリプト言語を使って処理内容を記述してもよい。
【0137】
また、本実施の形態において、比較項目は、XML形式で記述されているが、他の形式で記述されてもよい。
【0138】
また、本実施の形態において、整合性確保ルールR1〜Rnでは、処理内容と比較項目が設定されているが、他の事項が設定されるとしてもよい。例えば、一日一回整合性を調査する旨などの整合性確保処理の実行タイミングが設定されてもよい。
【0139】
以下に、整合性確保ルールR1〜Rnにおいて定義されている整合性確保処理の内容について3つの例を挙げて説明する。
【0140】
第1の例は、「ローカルデータを無視し、パブリックデータのみを参照する」旨を定めた整合性確保ルールである。
【0141】
図8は、この第1の例に係る整合性確保ルールにしたがって実行される整合性確保処理を示すシーケンス図である。
【0142】
データ整合システム15は、検索したローカルデータと対応関係にあるパブリックデータの取得をパブリックレジストリ11のサービス検索部22に依頼し、パブリックデータを取得する。
【0143】
データ整合システム15は、検索したローカルデータを無視して、取得したパブリックデータをローカルレジストリ14のサービス検索部18に返す。
【0144】
サービス検索部18は、データ整合システム15から取得したパブリックデータを利用者に提供する。
【0145】
図9は、第1の例に係る整合性確保ルールとローカルデータとパブリックデータの関係の例を示す図である。
【0146】
ローカルデータであるbindingTemplate25には、rule_1で指定される整合性確保ルールR1を使用する旨が記述されており、hostingRedirector属性に値publickey_123が設定されている。
【0147】
この場合、データ整合システム15は、bindingKey属性の値がpublickey_123のbindingTemplate26をパブリックレジストリ11で検索し、整合性確保ルールR1にしたがって、ローカルデータは無視して検索したパブリックデータを返却する。
【0148】
第2の例は、「ローカルデータとパブリックデータとの間で比較項目に不整合が発生した場合に、パブリックデータにあわせてローカルデータを即座に更新し、更新後のローカルデータを返却する」旨を定めた整合性確保ルールである。
【0149】
図10は、この第2の例に係る整合性確保ルールにしたがって実行される整合性確保処理を示すシーケンス図である。
【0150】
データ整合システム15は、検索したローカルデータと対応関係にあるパブリックデータの取得をパブリックレジストリ11のサービス検索部22に依頼し、パブリックデータを取得する。
【0151】
データ整合システム15は、検索したローカルデータとパブリックデータとの比較項目について、整合性の有無を判定し、整合性がない場合は、パブリックデータにおける比較項目の値でローカルデータにおける比較項目の値を更新する。
【0152】
そして、データ整合システム15は、更新後のローカルデータをサービス検索部18に返す。
【0153】
サービス検索部18は、データ整合システム15から取得した更新後のローカルデータを利用者に提供する。
【0154】
図11は、第2の例に係る整合性確保ルールとローカルデータとパブリックデータの関係の例を示す図である。
【0155】
ローカルデータであるbindingTemplate25には、rule_2で指定される整合性確保ルールR2を使用する旨が記述されており、hostingRedirector属性に値publickey_123が設定されている。
【0156】
この場合、データ整合システム15は、bindingKey属性の値がpublickey_123のbindingTemplate26をパブリックレジストリ11で検索する。
【0157】
次に、データ整合システム15は、整合性確保ルールR2の比較項目で指定されているaccessPoint属性に関して、bindingTemplate25とbindingTemplate26との間で値を比較する。
【0158】
この例では、bindingTemplate25のaccessPoint属性には「http://www.abc.com/efg」が設定されており、bindingTemplate26のaccessPoint属性には「http://www.abc.com/hij」が設定されているため、比較項目であるaccessPoint属性の値が異なっている。
【0159】
そこで、データ整合システム15は、bindingTemplate25におけるaccessPoint属性の値をbindingTemplate26におけるaccessPoint属性の値で更新し、更新されたbindingTemplate25を返却する。
【0160】
なお、比較項目で指定されていない属性に関しては、比較対象外である。例えば、この例において、bindingKey属性、description属性の値もローカルデータとパブリックデータとで異なるが、この値については整合性確保の対象外である。
【0161】
第3の例は、「ローカルデータとパブリックデータとの間で比較項目に不整合が発生した場合に、ローカルデータを更新することなく、不整合が発生した旨の通知をローカルレジストリの管理者に通知する」旨を定めた整合性確保ルールである。
【0162】
図12は、この第3の例に係る整合性確保ルールにしたがって実行される整合性確保処理を示すシーケンス図である。
【0163】
データ整合システム15は、検索したローカルデータと対応関係にあるパブリックデータの取得をパブリックレジストリ11のサービス検索部22に依頼し、パブリックデータを取得する。
【0164】
データ整合システム15は、検索したローカルデータをサービス検索部18に返す。
【0165】
サービス検索部18は、データ整合システム15から取得したローカルデータを利用者に提供する。
【0166】
また、データ整合システム15は、検索したローカルデータとパブリックデータとの比較項目について、整合性の有無を判定し、整合性がない場合は、その旨をローカルレジストリ管理者に通知する。
【0167】
図13は、第3の例に係る整合性確保ルールとローカルデータとパブリックデータの関係の例を示す図である。
【0168】
ローカルデータであるbindingTemplate25には、rule_3で指定される整合性確保ルールR3に使用する旨が記述されており、hostingRedirector属性に値publickey_123が設定されている。
【0169】
この場合、データ整合システム15は、bindingKey属性の値がpublickey_123のbindingTemplate26をパブリックレジストリ11で検索する。
【0170】
次に、データ整合システム15は、整合性確保ルールR3の比較項目で指定されているaccessPoint属性に関して、bindingTemplate25とbindingTemplate26との間で値を比較する。
【0171】
比較項目であるaccessPointの値が異なっている場合、データ整合システム15は、この時点ではbindingTemplate25を更新することなく、検索されたbindingTemplate25をそのまま返却する。
【0172】
また、データ整合システム25は、不整合が発生している旨をローカルレジストリ管理者に通知する。
【0173】
以上説明した本実施の形態においては、ローカルデータとパブリックデータとの間で不整合が発生した場合に、予め定められた整合性確保ルールにしたがって整合性確保処理が実行される。したがって、ローカルレジストリ管理者にとってローカルデータとパブリックデータとの間の整合性の確保が容易になる。
【0174】
例えば、パブリックデータの内容にしたがってローカルデータを更新する整合性確保処理を適用することにより、パブリックデータのみを新規の内容に変更すれば、ローカルデータまでも自動的に変更可能であり、ローカルレジストリの管理者の管理労力が低減される。
【0175】
また、整合性確保ルールによっては、利用者がローカルレジストリ14にアクセスした時点でリアルタイムにローカルデータとパブリックデータとの間で整合性が確保されるため、利用者が不整合の影響を受けることを防止できる。
【0176】
また、利用者がローカルデータにアクセスしたときに整合性をチェックすることにより、例えば定期的にローカルレジストリ14とパブリックレジストリ11の全データの整合性を調査する必要がなく、装備と保守作業とを簡略化できる。
【0177】
なお、本実施の形態に係るデータ整合システム15の各構成要素は、同様の動作を実現可能であれば配置を変更させてもよく、また各構成要素を自由に組み合わせてもよく、各構成要素を自由に分割してもよい。
【0178】
例えば、ローカルデータ取得部15aから関係データを取得する部分を独立させてもよい。また、ローカルデータを記録する記録部と関係データを記録する記録部とを別構造としてもよい。
【0179】
また、本実施の形態において、データ整合システム15は複数の計算機により構成され、データ整合プログラム12は複数の計算機に分散して配置され、互いに連携を取りつつ処理を実行するとしてもよい。
【0180】
本実施の形態に係るデータ整合プログラム12は、例えば磁気ディスク(フレキシブルディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリなどの記録媒体に書き込んでコンピュータに適用可能である。またデータ整合プログラム12は、通信媒体により伝送してコンピュータに適用することも可能である。コンピュータは、記録媒体に記録されたデータ整合プログラム12を読み込み、データ整合プログラム12によって動作が制御されることにより、上記の機能を実現する。
【0181】
【発明の効果】
以上詳記したように本発明においては、複数の記録装置に記録され、互いに対応関係にあるWebサービスに関するデータを容易かつ適切に整合させることができる。
【図面の簡単な説明】
【図1】本発明の実施の形態に係るデータ整合システムの構成の一例を示すブロック図。
【図2】同実施の形態においてローカルレジストリ及びパブリックレジストリとで扱われるデータの構造の一例を示す図。
【図3】UDDI仕様で規定されているbindingTemplateのデータ構造を用いた同実施の形態に係るローカルデータとパブリックデータの一例を示すブロック図。
【図4】XML形式で記述されたローカルデータであるbuindingTemplateの一例を示す図。
【図5】同実施の形態に係るデータ整合システムの動作の例を示すシーケンス図。
【図6】同実施の形態に係る詳細データ取得要求を受け付けた後におけるデータ整合システムの動作の一例を示すフローチャート。
【図7】同実施の形態に係る整合性確保ルールの一例を示す図。
【図8】同実施の形態に係る整合性確保ルールの第1の例にしたがって実行される整合性確保処理を示すシーケンス図。
【図9】整合性確保ルールの第1の例とローカルデータとパブリックデータの関係の例を示す図。
【図10】同実施の形態に係る整合性確保ルールの第2の例にしたがって実行される整合性確保処理を示すシーケンス図。
【図11】整合性確保ルールの第2の例とローカルデータとパブリックデータの関係の例を示す図。
【図12】同実施の形態に係る整合性確保ルールの第3の例にしたがって実行される整合性確保処理を示すシーケンス図。
【図13】整合性確保ルールの第3の例とローカルデータとパブリックデータの関係の例を示す図。
【図14】一般的なWebシステムの構成の一例を示すブロック図。
【図15】Webサービスの一例を示すブロック図。
【図16】Webサービスに関するレジストリの適用例を示す図。
【図17】UDDIにしたがったレジストリの一例を示す図。
【図18】ローカルレジストリとパブリックレジストリとの関係の一例を示す図。
【図19】ローカルレジストリとパブリックレジストリとの間で不整合が発生する一例を示す図。
【符号の説明】
11…パブリックレジストリ
12…データ整合プログラム
13…記録媒体
14…ローカルレジストリ
15…データ整合システム
15a…ローカルデータ取得部
15b…パブリックデータ取得部
15c…比較部
15d…処理部
16、20…サービスデータ記録部
17、21…サービス管理部
18、22…サービス検索部
19a、19c…ローカルデータ
23a、23b…パブリックデータ
24…整合性確保ルール記録部
25、26…bindingTemplate

Claims (7)

  1. コンピュータに、
    ローカルレジストリ記録装置から、「データ項目についての値」「整合性をチェックする対象のパブリックデータを指定するパブリックデータ指定情報」「整合性をチェックする項目の指定、当該項目について整合性がないと判断された場合に実行される複数の整合性確保処理のうちのいずれかの整合性確保処理の設定を含む整合性確保ルール、を指定するルール指定情報」を含むローカルデータを取得するローカルデータ取得機能と、
    前記ローカルレジストリ記録装置から取得された前記ローカルデータに含まれている前記パブリックデータ指定情報に基づいて、パブリックレジストリ記録装置から、データ項目についての値を持ち前記ローカルデータとの間で整合性をチェックする対象であるパブリックデータを取得するパブリックデータ取得機能と、
    ルール記録装置から、前記ローカルレジストリ記録装置から取得された前記ローカルデータに含まれている前記ルール指定情報で指定されている整合性確保ルールを取得し、この取得された整合性確保ルールで指定されている前記整合性をチェックする項目について、前記ローカルデータと前記パブリックデータとの間で値が整合しているか否か判断する比較機能と、
    前記比較機能によって、前記整合性をチェックする項目について前記ローカルデータと前記パブリックデータとの間で値が整合していないと判断された場合に、前記整合性確保ルールで設定されている整合性確保処理を実行する処理機能と
    を実現させるためのデータ整合プログラム。
  2. 請求項1記載のデータ整合プログラムにおいて、
    前記複数の整合性確保処理は、不整合の生じたデータ項目の値として前記パブリックデータの値を返す処理、前記パブリックデータの不整合の生じたデータ項目の値で前記ローカルデータの不整合の生じたデータ項目の値を更新する処理、不整合が発生したことを通知する処理のうちの少なくとも一つを含むことを特徴とするデータ整合プログラム。
  3. 請求項1又は請求項記載のデータ整合プログラムにおいて、
    前記ローカルレジストリ記録装置は、特定の条件を満たすデータのみが登録されるローカルレジストリであり、
    前記パブリックレジストリ記録装置は、前記特定の条件を満たさないデータであっても登録されるパブリックレジストリである
    ことを特徴とするデータ整合プログラム。
  4. ローカルレジストリ記録装置から、「データ項目についての値」「整合性をチェックする対象のパブリックデータを指定するパブリックデータ指定情報」「整合性をチェックする項目の指定、当該項目について整合性がないと判断された場合に実行される複数の整合性確保処理のうちのいずれかの整合性確保処理の設定を含む整合性確保ルール、を指定するルール指定情報」を含むローカルデータを取得するローカルデータ取得手段と、
    前記ローカルレジストリ記録装置から取得された前記ローカルデータに含まれている前記パブリックデータ指定情報に基づいて、パブリックレジストリ記録装置から、データ項目についての値を持ち前記ローカルデータとの間で整合性をチェックする対象であるパブリックデータを取得するパブリックデータ取得手段と、
    ルール記録装置から、前記ローカルレジストリ記録装置から取得された前記ローカルデータに含まれている前記ルール指定情報で指定されている整合性確保ルールを取得し、この取得された整合性確保ルールで指定されている前記整合性をチェックする項目について、前記ローカルデータと前記パブリックデータとの間で値が整合しているか否か判断する比較手段と、
    前記比較手段によって、前記整合性をチェックする項目について前記ローカルデータと前記パブリックデータとの間で値が整合していないと判断された場合に、前記整合性確保ルールで設定されている整合性確保処理を実行する処理手段と
    を具備するデータ整合システム
  5. 請求項4記載のデータ整合システムにおいて、
    前記複数の整合性確保処理は、不整合の生じたデータ項目の値として前記パブリックデータの値を返す処理、前記パブリックデータの不整合の生じたデータ項目の値で前記ローカルデータの不整合の生じたデータ項目の値を更新する処理、不整合が発生したことを通知する処理のうちの少なくとも一つを含むことを特徴とするデータ整合システム
  6. コンピュータシステムに実行させるデータ整合方法において、
    前記コンピュータシステムは、ローカルレジストリ記録装置から、「データ項目についての値」「整合性をチェックする対象のパブリックデータを指定するパブリックデータ指定情報」「整合性をチェックする項目の指定、当該項目について整合性がないと判断された場合に実行される複数の整合性確保処理のうちのいずれかの整合性確保処理の設定を含む整合性確保ルール、を指定するルール指定情報」を含むローカルデータを取得し、
    前記コンピュータシステムは、前記ローカルレジストリ記録装置から取得された前記ローカルデータに含まれている前記パブリックデータ指定情報に基づいて、パブリックレジストリ記録装置から、データ項目についての値を持ち前記ローカルデータとの間で整合性をチェックする対象であるパブリックデータを取得し、
    前記コンピュータシステムは、ルール記録装置から、前記ローカルレジストリ記録装置から取得された前記ローカルデータに含まれている前記ルール指定情報で指定されている整合性確保ルールを取得し、この取得された整合性確保ルールで指定されている前記整合性をチェックする項目について、前記ローカルデータと前記パブリックデータとの間で値が整合しているか否か判断し、
    前記コンピュータシステムは、前記整合性をチェックする項目について前記ローカルデータと前記パブリックデータとの間で値が整合していないと判断された場合に、前記整合性確保ルールで設定されている整合性確保処理を実行する
    ことを特徴とするデータ整合方法
  7. 請求項6記載のデータ整合方法において、
    前記複数の整合性確保処理は、不整合の生じたデータ項目の値として前記パブリックデータの値を返す処理、前記パブリックデータの不整合の生じたデータ項目の値で前記ローカルデータの不整合の生じたデータ項目の値を更新する処理、不整合が発生したことを通知する処理のうちの少なくとも一つを含むことを特徴とするデータ整合方法
JP2003070705A 2003-03-14 2003-03-14 データ整合プログラム及びシステム並びに方法 Expired - Fee Related JP4334253B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003070705A JP4334253B2 (ja) 2003-03-14 2003-03-14 データ整合プログラム及びシステム並びに方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003070705A JP4334253B2 (ja) 2003-03-14 2003-03-14 データ整合プログラム及びシステム並びに方法

Publications (2)

Publication Number Publication Date
JP2004280447A JP2004280447A (ja) 2004-10-07
JP4334253B2 true JP4334253B2 (ja) 2009-09-30

Family

ID=33287386

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003070705A Expired - Fee Related JP4334253B2 (ja) 2003-03-14 2003-03-14 データ整合プログラム及びシステム並びに方法

Country Status (1)

Country Link
JP (1) JP4334253B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100558038C (zh) * 2006-03-31 2009-11-04 国际商业机器公司 服务注册器以及相关系统和方法
US20090083441A1 (en) 2007-09-24 2009-03-26 Microsoft Corporation Synchronization of web service endpoints in a multi-master synchronization environment

Also Published As

Publication number Publication date
JP2004280447A (ja) 2004-10-07

Similar Documents

Publication Publication Date Title
CN1703048B (zh) 网络服务应用协议和soap处理模型
US7370075B2 (en) Method and apparatus for managing web services within a computer network system
US7634728B2 (en) System and method for providing a runtime environment for active web based document resources
US6895586B1 (en) Enterprise management system and method which includes a common enterprise-wide namespace and prototype-based hierarchical inheritance
US7428597B2 (en) Content-based routing system and method
US6574655B1 (en) Associative management of multimedia assets and associated resources using multi-domain agent-based communication between heterogeneous peers
JP5277251B2 (ja) モデル・ベースのコンポジット・アプリケーション・プラットフォーム
US8112424B2 (en) Flexible and resilient information collaboration management infrastructure
CN100527684C (zh) 用于管理多主机环境下的公共信息模型的方法和系统
US20040230667A1 (en) Loosely coupled intellectual capital processing engine
US20080104258A1 (en) System and method for dynamic data discovery in service oriented networks with peer-to-peer based communication
US20030101194A1 (en) System and method for loading hierarchical data into relational database systems
RU2453916C1 (ru) Способ поиска информационных ресурсов с использованием переадресаций
US7698479B2 (en) User interface to a data storage system and rule store
US7428756B2 (en) Access control over dynamic intellectual capital content
US20070256083A1 (en) Systems and methods of accessing information across distributed computing components
US20040230982A1 (en) Assembly of business process using intellectual capital processing
US20040163037A1 (en) System and method for invoking WebDAV methods via non-WebDAV protocols
Aktas et al. XML metadata services
Pastore The service discovery methods issue: A web services UDDI specification framework integrated in a grid environment
CN115811546A (zh) 用于科技服务实现网络协同分布式处理的系统及其方法
US20100241688A1 (en) Transmitting information about distributed group memberships
US20030115243A1 (en) Distributed process execution system and method
EP1695243A2 (en) Distributed knowledge management system
US20050234923A1 (en) Method and apparatus for translating a web services address

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090413

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090602

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090623

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120703

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4334253

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120703

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130703

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees