JP4125005B2 - メッセージの型を利用するオブジェクト連携装置 - Google Patents

メッセージの型を利用するオブジェクト連携装置 Download PDF

Info

Publication number
JP4125005B2
JP4125005B2 JP2001514664A JP2001514664A JP4125005B2 JP 4125005 B2 JP4125005 B2 JP 4125005B2 JP 2001514664 A JP2001514664 A JP 2001514664A JP 2001514664 A JP2001514664 A JP 2001514664A JP 4125005 B2 JP4125005 B2 JP 4125005B2
Authority
JP
Japan
Prior art keywords
message
action
message type
type
cooperation
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
JP2001514664A
Other languages
English (en)
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Application granted granted Critical
Publication of JP4125005B2 publication Critical patent/JP4125005B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/465Distributed object oriented systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • G06F9/548Object oriented; Remote method invocation [RMI]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Description

技術分野
本発明は、コンピュータ群もしくはオブジェクト群の対話・協調などの連携処理を実施するオブジェクト連携装置に関し、オブジェクト指向環境において複数のプロセスが作りだされ、コンピュータネットワークを通じて、環境の変化に柔軟に対応し、漸進的に変化するシステム構築のためのオブジェクト連携装置に関する。
背景技術
近年、ネットワーク化が進み、ネットワーク上に分散した複数のオブジェクトが互いに連携して処理を行うシステムが増大してきている。このような複数のオブジェクトが連携して処理を行うための技法として、オブジェクト指向型プログラミングやコンポーネント技術などの研究がなされている。
オブジェクト指向型プログラミング共通仕様としてCORBA(The Common Object Request Broker:Architecture and Specification)が知られている。図10に、CORBAに基づいたクライアント/サーバシステムにおけるオブジェクト連携の例を示す。このシステムは、クライアントアプリケーションとサーバ・アプリケーションとが連携、つまりオブジェクト連携により一連の処理を行うものである。
CORBAでは、クライアントおよびサーバそれぞれが提供するサービスのインターフェースをIDL(Interface Definition Language)で記述する。ここではオブジェクトに依頼可能なオペレーション群に関して、そのオペレーション名、パラメタの定義、戻り値の定義、エラー発生時の例外処理、付加情報などを定義する。IDLで定義された内容を専用のコンパイラでコンパイルすることにより、クライアント用のスタブとサーバ用のスケルトンを生成する。クライアントアプリケーションは、スタブで提供されるルーチンを呼び出すことにより、オペレーションを起動して利用する。このスタブおよびスケルトンは、対応するクライアントアプリケーションあるいはサーバ・アプリケーションが使用するプログラミング言語で生成される。このように、CORBAなどによりオブジェクト連携処理を構築することは、容易になってきている。しかし、実際にこのような連携処理を構築しようとすると、前述のCORBAであれば、CORBAそのものの理解とともに、CORBAの仕様に応じたオブジェクトの設計およびIDLによる定義が必要となる。つまりその利用方法を、システムを構築する者が熟知する必要がある。また、それぞれのオブジェクトの関係を強く意識する必要がある。つまり、それぞれのオブジェクトがどういう処理を行うのか、その処理を行うために必要となる受渡しのパラメタは何かなどを明確にしておかなければならない。
ここで、人をオブジェクトに置き換えた場合、流れてくる情報に対して、それぞれのオブジェクトが、流れてきた情報を受信する/受信しない、また、受信した情報に対してどのような処理を行うかが異なる、言わば、オブジェクトとオブジェクトの関係が自由な連携というのが望まれてくる。この問題を解決する技術として、オブジェクト連携装置がある。このオブジェクト連携装置の技術によれば、各オブジェクトが共有するコミュニケーション空間内にメッセージ(受け手のオブジェクトを特定しないもの)が流れ、各オブジェクトは当該オブジェクトを取り込む。各オブジェクトはメッセージ・アクション反応テーブルを備えており、保持しているメッセージ・アクション反応テーブル内に取り込んだメッセージに対するアクションが記述されているか否かを調べ、記述されている場合は対応するアクションを実行するものである。オブジェクトの働きに注目すれば、特定のメッセージに反応してアクションを起こし、その他のメッセージに対しては反応しないこととなる。このオブジェクト連携装置によれば、オブジェクト間はメッセージを介して緩やかかつ柔軟に連携しており、オブジェクト間の連携関係の構築も簡便に行なえ、その変更も容易である。このようにメッセージ・アクション反応テーブルを利用したオブジェクト連携装置は優れた技術である。上記のオブジェクト連携装置は、メッセージ・アクション反応テーブルを利用したオブジェクト連携装置の基本構成を開示するものであるが、以下に示す点についてさらなる応用技術を研究した。
第1に、多様なプラットフォームを用いてオブジェクト連携を行なう場合の各プラットフォームに適するメッセージ構造の違いを弾力的に扱う研究である。メッセージ受信が可能なあらゆるプラットフォーム、例えば、小型機器用のOSを搭載したPDA(Personal Digital Assistance)、パーソナルコンピュータ、UNIXワークステーション、大型機用のOSを搭載したメインフレームなど幅広いスケーラビリティを想定する場合には、それぞれのレンジのプラットフォームにとって扱いやすいメッセージ構造、メッセージ長は異なっていることが想定される。オブジェクト連携に参加しているすべてのオブジェクトのプラットフォームにおいて受信でき、さらに各レンジのプラットフォームにとって性能を十分引き出すことのできる仕組みが提供できれば便利である。
第2には、オブジェクト連携を行なうオブジェクト数、プラットフォーム数が大規模となり、通信路となるコアフィールドを流れるメッセージ数が大きくなった場合の処理効率の向上と高速化に関する研究である。
第3には、オブジェクト間の同期連携の構築に対する研究である。ここで、同期連携とは、特定のオブジェクト(連携元オブジェクト)のイベントに、特定のオブジェクト(連携先オブジェクト)のイベントが追従することを言う。典型的にはマウスの動きなど、連携元のオブジェクトのイベントに同期して連携先オブジェクトが同じイベントを実行するようなものである。
発明の開示
本発明は、従来のオブジェクト連携装置の特徴を十分活用し、さらに優れた技術的特徴を与えることを目的とする。
第1には、幅広いスケーラビリティを想定した多様なレンジのプラットフォームを用いて本発明のオブジェクト連携装置を構築し、それらプラットフォーム上で動作するオブジェクトが扱いやすいメッセージ構造、メッセージ長によるメッセージ処理を実現することを目的とする。
第2には、オブジェクト連携装置規模が大規模であってもオブジェクトのメッセージ照合処理などの負荷低減と高速化を図る仕組みを提供することを目的とする。
第3には、オブジェクト連携装置間の同期処理など、メッセージを発信したオブジェクト主体名の情報に関連したアクションが記述されている場合に、オブジェクト連携関係の簡便かつ柔軟な変更が可能となる仕組みを提供することを目的とする。
上記目的を達成するため、本発明の第1のオブジェクト連携装置は、各オブジェクトが、ネットワーク上に送信されるメッセージをモニタして取り込むメッセージ受信部と、メッセージに対する反応であるアクション内容を記憶するメッセージ・アクション反応関係記憶部と、前記アクション内容に従って処理を実行するアクション実行部を備え、前記メッセージ・アクション反応関係に従って動作するオブジェクト連携装置において、前記メッセージ・アクション反応関係記憶部が扱うメッセージ型を記憶保持し、受信したメッセージが持つメッセージ型を解析し、前記受信メッセージ型が前記メッセージ・アクション反応関係記憶部が扱うメッセージ型と一致するか否かの照合処理を行ない、一致した場合のみ前記メッセージ・アクション反応関係記憶部に渡すメッセージ型分類・照合部を備え、前記メッセージ・アクション反応関係記憶部に渡されたメッセージを基にメッセージ・アクション反応関係に従ったアクションを実行することを特徴とする。
上記構成により、メッセージ型分類を用いて受信メッセージを選別して取り込むことができ、オブジェクトの扱う型のメッセージのみに対して照合処理を実行できるので、プラットフォームごとに適したメッセージ構造、メッセージ長のメッセージを用いてオブジェクト連携関係を構築することができる。また、不必要な照合処理が省けるのでオブジェクトの負荷低減と照合処理の高速化を図ることが可能となる。
ここで、前記メッセージ型の分類が階層を持つことが好ましく、さらに、前記メッセージ型の分類階層がオブジェクト指向プログラミングにおける継承の概念を用いてクラス派生メッセージ型およびクラス派生元メッセージ型の分類階層を持つ構成とすれば、さらにオブジェクトの負荷低減と照合処理の高速化を図ることが可能となる。
次に、上記目的を達成するため、本発明の第2のオブジェクト連携装置は、各オブジェクトが、ネットワーク上に送信されるメッセージをモニタして取り込むメッセージ受信部と、メッセージに対する反応であるアクション内容を記憶するメッセージ・アクション反応関係記憶部と、前記アクション内容に従って処理を実行するアクション実行部を備え、前記メッセージ・アクション反応関係に従って動作するオブジェクト連携装置において、一のオブジェクト主体から受信したメッセージに対して、前記一のオブジェクト主体を表わすメッセージ中のオブジェクト主体名情報を、他のオブジェクト主体を表わすオブジェクト主体名情報に書き換えて、前記ネットワーク上に返す主体名書換オブジェクトを備えたことを特徴とする。
上記構成により、メッセージを発信したオブジェクト主体名の情報を他のオブジェクト主体名に書き換えることができ、オブジェクト連携関係を簡便かつ柔軟に構築・変更することが可能となる。例えば、同期処理のスレーブとなるオブジェクトのメッセージアクション反応関係記憶部において書き換え先となるオブジェクト主体名を用いて前記同期処理を行ないたいアクション内容を記述しておき、主体名書換オブジェクトにより書き換え先のオブジェクト主体名を同期処理のマスタオブジェクトとなるオブジェクト主体名と書き換えれば、オブジェクト間の同期処理を簡便かつ柔軟に実現することができる。
次に、上記目的を達成するため、本発明のメッセージ・アクション反応関係に従って動作するオブジェクト連携装置を実現する処理プログラムを記憶したコンピュータ装置読み取り可能な記録媒体は、各オブジェクトがネットワーク上に送信されるメッセージをモニタして取り込むメッセージ受信処理ステップと、メッセージに対する反応であるアクション内容を記憶するメッセージ・アクション反応関係記憶処理ステップと、前記アクション内容に従って処理を実行するアクション実行処理ステップと、前記メッセージ・アクション反応関係記憶処理ステップにおいて扱うメッセージ型を記憶保持する処理ステップと、受信したメッセージが持つメッセージ型を解析する処理ステップと、前記受信メッセージ型が前記メッセージ・アクション反応関係記憶部が扱うメッセージ型と一致するか否かの照合処理を行なう処理ステップと、一致した場合のみ前記メッセージ・アクション反応関係記憶部に渡す処理ステップとを備え、メッセージ型が一致するメッセージのみを取り込んでメッセージ・アクション反応関係に従ったアクションを実行するオブジェクト連携装置を実現する処理プログラムを記憶したことを特徴とする。
また、本発明のメッセージ・アクション反応関係に従って動作するオブジェクト連携装置を実現する処理プログラムを記憶したコンピュータ装置読み取り可能な記録媒体は、各オブジェクトがネットワーク上に送信されるメッセージをモニタして取り込むメッセージ受信処理ステップと、メッセージに対する反応であるアクション内容を記憶するメッセージ・アクション反応関係記憶処理ステップと、前記アクション内容に従って処理を実行するアクション実行処理ステップと、一のオブジェクト主体から受信したメッセージに対して前記一のオブジェクト主体を表わすメッセージ中のオブジェクト主体名情報を、他のオブジェクト主体を表わすオブジェクト主体名情報に書き換えて、前記ネットワーク上に返す主体名書換処理ステップとを備え、一のオブジェクトの発信したメッセージの主体名を他のオブジェクト主体名に書き換えるオブジェクト連携装置を実現する処理プログラムを記憶したことを特徴とする。
上記オブジェクト連携装置を実現する処理プログラムを、当該記録媒体を介してコンピュータに読み取ることにより、コンピュータ装置を利用して本発明のオブジェクト連携装置を構築することができ、利用者はオブジェクト連携関係をさらに容易かつ陽に把握することができるオブジェクト連携装置を構築できる。
発明を実施するための最良の形態
以下、本発明のオブジェクト連携装置の実施形態について、図面を参照しながら説明する。
(実施形態1)
本実施形態1として、メッセージパターンの型分類とメッセージパターン照合を利用したオブジェクト連携装置を説明する。
まず最初に、オブジェクト連携の基本原理を簡単に説明する。オブジェクト連携は、連携するオブジェクト同士の関係を、互いの内部状態や内部関数に依存し合うような密な関係とはしないで、連携するオブジェクトの疎な関係を規定したオブジェクト間の連携によって機能を動的に構成している。オブジェクト連携の原理理解には、人間同士のコミュニケーションや相互に連携した行動において見られるAwarenessモデルが役に立つ。分散オブジェクト間の連携において、オブジェクト間に、人間同士に介在するAwarenessと同様の情報処理を行い、検知したAwarenessに基づくオブジェクト同士の連携処理が前提となる。Awarenessアナロジーに基づく分散オブジェクトの連携もしくはコンピュータの連携は、以下のような構成によって実現することができる。
1.Awarenessメッセージは、共有もしくはBroadcastされている。
2.Awarenessメッセージを受信するオブジェクトは、メッセージとアクションとの対応関係をそれぞれ独自に持っている。
3.Awarenessメッセージを送信もしくは受信するオブジェクトにおいて、メッセージとアクションとの関係は分離されている。
Awarenessアナロジーにおけるメッセージとアクションとが分離されている、あるいは分離可能であるという性質を利用することによって、オブジェクト間の相互作用として参加と介入という二つの重要な要素を付け加えることができ、ネットワークに接続されたオブジェクトとオブジェクトの連携あるいはコンビュータとコンビュータの連携の自由度を高めることが可能となる。
図1は、Awarenessアナロジーにおけるオブジェクト間の疎な連携を模式的に示した図である。
図1において11はオブジェクトA,12はオブジェクトBであり、それぞれAwarenessメッセージを送受信する主体であるオブジェクトである。M1はメッセージであり、Awarenessメッセージを示す。a1はオブジェクトA(11)中に規定されたアクション、a2はオブジェクトB(12)中に規定されたアクションを示す。なお、図中の矢印は、起点がオブジェクトのときメッセージの送出を、終点がオブジェクトのときメッセージの受信を示している。またそれぞれのオブジェクトは内部状態としてのアクションをそれぞれ独自に持っているとする。
図1において、オブジェクトA(11)とオブジェクトB(12)の連携は、メッセージM1を介して行われる。AwarenessアナロジーにおいてオブジェクトA(11)は、オブジェクトB(12)についてもオブジェクトB(12)の持つ内部関数についても基本的には関知せずにメッセージを送出する。また、オブジェクトB(12)自体を特定してメッセージを送出する必要もなく、オブジェクトA(11)は自己の状態、処理内容に基づいてメッセージM1を送出する。オブジェクトB(12)は通信路上を流れるメッセージをモニタし、メッセージM1を検知すると反応してアクションa2を起動する。このようにオブジェクトAとオブジェクトBとは有為な連携を取り得るが、それはオブジェクトA(11)とオブジェクトB(12)の直接の結び付きによるものではなく、メッセージM1とオブジェクトB(12)のアクションa2とが結び付けられている帰結といえる。逆にメッセージがM1とは異なるものであれば、オブジェクトB(12)は他にメッセージM1と結び付けられているアクションがない限り反応しない。このようにオブジェクト間の連携が緩やかにメッセージを介して行われることにより、オブジェクト間の連携の自由度が増すこととなる。つまり、従来のコンピュータネットワーク通信のように通信相手のアドレスおよび処理依頼内容を特定する必要がなく、ネットワーク上に自らの状態、処理結果などを表わすAwarenessメッセージを流し、ネットワークをモニタしている各端末がそのメッセージを検知し、対応するアクションが規定されていれば自律的に反応を起こすものである。
なお、Awarenessアナロジーにおいて通信路は単にLANなどの物理的ネットワークだけではなく無線・音声・光などの共通に受信できる媒体を介在するものであれば特に限定する必要はない。また、共通に呼び出し可能なメモリ等の記録媒体であってもかまわない。さらに通信路のポートアドレスなどにより仮想的な存在であってもかまわない。
以上が、Awarenessアナロジーに基づくオブジェクト連携の基本概念である。
図2は、複数のオブジェクトが共通のコミュニケーション空間であるコアフィールド上に接続され、メッセージを介してオブジェクト連携を実現する様子を表わした図である。20(20a〜20d)はオブジェクトであり、受信したメッセージに対してアクション反応を起こし得るという役割に注目してリアクタとオブジェクトである。このオブジェクトを単位としてメッセージ・アクションの反応関係によるサービスを提供し、この単位のオブジェクトがメッセージを介して複数相互に連携し、オブジェクト連携装置を構成している。図2の例では、20a〜20dの4つが示されている。なお、1つのパソコンなどのプラットフォームごとに1つのオブジェクト20を構築する構成に限られず、1つのプラットフォーム内に多数のオブジェクト20が構築されていても良いことは言うまでもない。21はコアフィールドであり、コアフィールドでオブジェクト20間を結び、メッセージが流される基本単位となるコミュニケーション空間である。このコアフィールドは1つのプラットフォーム内の多数のオブジェクトを連結する仮想通信路であっても良く、また、複数のプラットフォームを連結するLANのような通信路であっても良い。図2に示した例ではオブジェクト20aがメッセージM1をコアフィールド21上に流し、当該メッセージM1がコアフィールドを介してオブジェクト20a〜20dにより受信されている様子を示している。メッセージM1を流したオブジェクト20a自身もコアフィールド21上のメッセージをモニタして取り込むのでメッセージM1をオブジェクト20a自身も受信する。この例では、オブジェクト20dは受信したメッセージM1に反応し、メッセージM1に対するアクションの1つとして新たなメッセージM2をコアフィールド上に流している。このメッセージM2もコアフィールドを介してオブジェクト20a〜20dにより受信される。
上記のような受信メッセージに対するアクションの反応関係は、後述するようにメッセージアクション関係記憶部が保持するメッセージアクション反応テーブル103による。取り込んだメッセージM1に対するアクションが当該反応テーブル103に記述されているか否かをチェックし、記述されているときは当該アクションをアクション実行部104により実行する。アクション内容には、アプリケーションなどが提供するサービス実行などの他、コアフィールド21上へのメッセージの送信もある。このアクションまたはアクションの一部として送信するメッセージにより、次段以降のメッセージ・アクション反応が起こされ、オブジェクト間のメッセージを介した緩やかかつ柔軟なオブジェクト連携が実現する。
以上がメッセージを介したオブジェクト連携の基本原理である。
本実施形態1のオブジェクト連携装置は、オブジェクト間の共通コミュニケーション空間に流されるメッセージのパターンを型分類し、オブジェクトが当該メッセージを受信した場合にまずメッセージパターン照合を行ない、自らが扱うメッセージパターンとパターンマッチしたメッセージのみを内部に取り込んで、メッセージ・アクション反応を実行するものである。
図3に本実施形態1のオブジェクト連携装置の基本構成例を示す。100は、オブジェクト連携装置を構成するプラットフォームである。本発明のオブジェクト連携装置は、多様なプラットフォームが混在しても実現できるので、パーソナルコンピュータ、ワークステーション、ホストコンピュータなど種類を特に限定しなくても良い。本実施形態1で示したオブジェクト連携装置はこのオブジェクトを単位としてメッセージ・アクションの反応関係によるサービスを提供し、この単位のオブジェクトがメッセージを介して複数相互に連携し、オブジェクト連携装置を構成している。なお、1つのパソコンなどのプラットフォームごとに1つのオブジェクトを構築する構成に限られず、1つのプラットフォーム100に多数のオブジェクトが構築されていても良いことは言うまでもない。
図3に示したオブジェクトの各要素について説明する。101は、ネットワーク上に送信されるメッセージをモニタして取り込むメッセージ受信部である。102は、メッセージに対する反応であるアクション内容を記憶するメッセージ・アクション反応関係記憶部であり、このメッセージ・アクション反応関係記憶部102は、メッセージ・アクション反応関係を保持するメッセージ・アクション反応テーブル(反応テーブル)103を備えている。このメッセージ・アクション反応テーブル103は前記した通り、1つのテーブルは、メッセージ型分類上の特定の型のみに対応している。なお、メッセージ型ごとに整理されていれば、メッセージアクション反応関係記憶部102中は、複数のメッセージ・アクション反応テーブル103を保持していても良く、図3の例では103aと103bの2つを備えている。
104は、指定されたアクション内容に従って処理を実行するアクション実行部である。105は、必要に応じてネットワーク上にメッセージを送信するメッセージ送信部、106は通信インタフェース、21はコアフィールドであり、前記した通り、コンピュータ間の通信などのネットワークも含む概念のものであり、オブジェクト間を結び、メッセージが流される基本単位となるコミュニケーション空間である。複数のプラットフォーム間を連結するLANであっても良く、また、1つのプラットフォーム内に存在する多数のオブジェクト同士を連結するプラットフォーム内の仮想通信路をも含む概念である。さらに、コアフィールド21上にインターネットワーキングのためルータ機能を持つゲートウェイを設けておけば、そのゲートウェイを介して他のコアフィールド上のオブジェクトとの連結も行なうことができる。
107は、メッセージ型分類・照合部である。メッセージ型分類・照合部107は、メッセージ・アクション反応関係記憶部102が扱うメッセージ型を記憶保持する。また、メッセージ受信部101を介して受信したメッセージが持つメッセージ型がどれであるかを解析し、当該受信メッセージのメッセージ型が、メッセージ・アクション反応関係記憶部102が扱うメッセージ型と一致するか照合処理を行なうものである。メッセージ型の分類は、システムの運用により適宜決めることができる。例えば、メッセージの記述がXML言語であるかテキストストリングタプルであるかによる分類、さらにタプルの数、テキスト構造による分類などがある。メッセージ型の分類例については後述する。このメッセージ型分類・照合部107を備えることにより、コアフィールド21に流れるメッセージを受信した後、メッセージ型を照合し、メッセージ型が合わないメッセージは破棄し、メッセージ型が合うメッセージのみ取り込み、メッセージアクション反応関係記憶部102に渡してメッセージアクション反応の照合処理を実行させることができる。このように、メッセージ型を利用したメッセージの選別を行なうことは、多様なプラットフォームが混在する環境でも、メッセージ型を固定する必要がなく、各プラットフォームが適する型によりメッセージ送受信を行なえば良く、当該メッセージ型を受け付けるいずれかのオブジェクトが反応することによりオブジェクト連携処理を運用させることができる。また、メッセージの選別受信により無駄なメッセージアクション照合処理を除去でき、リアクタとなるオブジェクトの負荷を低減し、照合処理を高速化することができる。連携するオブジェクトの数が多い大規模なシステムにおいて特に有利である。
次に、本実施形態1のオブジェクト連携装置で扱うメッセージ型の分類とメッセージ型照合処理について詳しく述べる。
図4は、本実施形態1のオブジェクト連携装置で扱うメッセージ構造の一例である。図4に示すように、メッセージ400は、メッセージ型401とメッセージ本体402からなる。オプションとして、メッセージ型401はさらにクラス派生元メッセージ型403とクラス派生メッセージ型404の階層構造を持っていても良い。メッセージ本体402は、メッセージの本体であり、メッセージ・アクション反応テーブル103に記述されたメッセージに対応し、アクションに必要なデータ、パラメタなどを含んでいる。メッセージ型401は、メッセージ型分類上の型を表わすもので、典型的にはメッセージストリングタプル型、XMLメッセージ型などがある。ここでメッセージストリングタプル型は、1又は複数のテキスト列の集合であり、テキスト列集合の数および意味の格づけによりさらに数パターンに分類することができる。その例を示すと、英語の構文のように、メッセージの表意として主格をS、アクションをV、目的をOとし、第1型(SV)第2型(SVO)、第3型(SVOO)である。なお、これは一例であって、SVOOOなど他の型を定義することも可能である。
クラス派生元メッセージ型403とクラス派生メッセージ型404の階層構造を持つ場合の例としては、ある特定のメッセージ型においてさらにメッセージの型を階層分類できる場合などがあり、上記の例で言えば、メッセージ型がメッセージストリングタプル型とし、クラス派生元メッセージ型をSVOとすれば、クラス派生メッセージ型としてSVO構造を含むSVO、SVOO、SVOOOなどを指定することができる。
オブジェクト連携装置は、メッセージ型、クラス派生メッセージ型、クラス派生元メッセージ型のメッセージ型ごとに、メッセージアクション反応テーブル103を1又は複数備えており、例えば、図3の例において、XMLメッセージ型のメッセージアクション反応テーブルを103a、メッセージストリングタプル型でSVOO構造のメッセージ型のメッセージアクション反応テーブルを103bとすることができる。この2つのメッセージアクション反応テーブル103aと103bを持つ場合には、メッセージ型分類・照合部107は、XMLメッセージ型と、メッセージストリングタプル型でSVOO構造のメッセージ型とを、取り込むメッセージ型として記憶保持することとなる。処理動作は以下のようになる。例えば、コアフィールド21上にメッセージ型がXMLメッセージ型であるメッセージ(クラス派生元メッセージ型403がXMLmsgと記述されているもの)が流れてきた場合、メッセージ受信部101が通信インタフェース106を介して当該メッセージを取り込む。取り込まれたメッセージはメッセージ型分類・照合部107に渡され、メッセージ型照合が行なわれる。クラス派生元メッセージ型403にXMLメッセージ型と記述されているのでメッセージ型分類・照合部107はメッセージ型が一致するものとして当該メッセージを取り込んで、XMLメッセージ型のメッセージである旨の情報を付してメッセージ本体402をメッセージアクション反応関係記憶部102に渡す。メッセージアクション反応関係記憶部102は、XMLメッセージ型に対応するメッセージアクション反応テーブル103aを用いてメッセージ本体402を検索キーとし、対応するアクションを探索する。メッセージ本体402に対するアクションが記述されていた場合には、当該アクションを実行(反応)する。次に、例えば、コアフィールド21上にメッセージ型がメッセージストリングタプル型でSVOOO構造型のメッセージ(クラス派生元メッセージ型403がSVO、クラス派生メッセージ型SVOOOと記述されているもの)が流れてきた場合、同様にメッセージ受信部101が通信インタフェース106を介して当該メッセージが取り込まれ、メッセージ型分類・照合部107においてメッセージ型照合が行なわれる。クラス派生元メッセージ型403にSVO型と記述されているのでメッセージ派生元クラスは一致するが、クラス派生メッセージ型がSVOOOであるのでメッセージ派生クラスは一致しない。メッセージ型分類・照合部107は当該受信メッセージのメッセージ型照合がフォールトである判断し、メッセージ本体402を破棄し、メッセージアクション反応関係記憶部102に渡さない。
このように、メッセージ型を用いた受信メッセージの選別を行なうことにより、メッセージ型の合致するメッセージのみを取り込んで、対応するアクションを検索し、さらに、メッセージ型別に分類されているメッセージアクション反応テーブルを用いることにより、オブジェクトの負荷の低減、メッセージアクション反応処理の高速化が実現できる。
上記したように、メッセージ型の導入は、オブジェクト指向プログラミングにおける継承の概念をメッセージ型の照合処理に導入することが可能となる。以下に参考として、メッセージ型の導入をオブジェクト指向プログラミングにおけるクラスの記法に基づいて行った具体例を示す。図5、図6は、それぞれは、メッセージストリングタプル型でSVOO形式に相当するメッセージ型とXMLMsgというXMLに準拠したメッセージ型を取り扱うものの例である。
図5において、記述の1行目には、当該 msg String Tupleというメッセージ型が msg ObjTypeというメッセージ型から派生していることが示されている。さらに、msg Srting Tupleはその変数としてString形式のsubject,verb,obj1,obj2の4つとisMatchというメッセージと型の照合を行う機能が含まれている。このisMatchは、メッセージと型の照合を行う機能であるが、送信されるメッセージの一部に含まれていることが一つの特徴である。受信オブジェクト側で当該メッセージと型の照合機能を持っていない場合でも当該オブジェクトに照合機能を動的に持たせることが可能となる。
図6の例では、XMLMsgというメッセージ型がmsgObjTtpeというメッセージ型から派生し、さらにその変数はParserという型として保持されることを示している。またXMLMsgはメッセージ型をセットするための関数SetPatternとメッセージとパターンとの照合を行うisMatchという関数を持つことを示している。
このように、メッセージ型の導入は、オブジェクト指向プログラミングにおける継承の概念をメッセージ型の照合処理に導入することが可能となり、このことによってたとえば、システム全体のバージョンアップに対して型照合の整合性を保つことが可能となる。また、同じ型を継承する型間の共通部分のみの照合も可能となる。さらに、メッセージ型の導入により、その型の照合ロジック自体を必要に応じて外部から動的に導入することが可能となり、照合ロジック自体を、あとからシステムに導入・入れ替えることが可能となる。
(実施形態2)
本実施形態2は、匿名の主体名を利用したメッセージ記述と主体名の書き換えを行なう主体名書換オブジェクトを利用したオブジェクトの同期連携を実現するオブジェクト連携装置の実施形態である。
本実施形態2のオブジェクト連携装置を構成する1のオブジェクト装置構成自体は、図3に示したものと同様で良く、各要素の説明はここでは適宜省略する。本実施形態2のオブジェクト連携装置は、複数のオブジェクト装置がコアフィールドを介して連携動作するものであるが、そのうちの1つのオブジェクト装置が主体名書換オブジェクトとして機能する。
以下、マウスイベントの同期連携処理を例として、各オブジェクト装置の仕組みおよびその連携処理を説明する。各オブジェクトが利用するメッセージ型はメッセージストリングタプル型でSVOOとする。
今、図7に示すようにコアフィールド21上に、マウスイベントの同期処理を実行するリアクタとなるオブジェクト70a、オブジェクト70b、オブジェクト70cを備えている。さらにコアフィールド21上には、主体名書換オブジェクト71が設けられている。オブジェクト70a〜70c、主体名書換オブジェクト71は、それぞれ別のプラットフォーム上に設けられても良く、また、複数のオブジェクトが同一のコンピュータプラットフォーム上に構築されていても良い。
リアクタなるオブジェクト70a、70b、70cのメッセージアクション反応テーブルにそれぞれ図8(a)〜(c)に示すメッセージとアクションの対応関係を登録する。つまり、メッセージのSVOO“Master”“MouseMove”“(X座標)”“(Y座標)”に対してアクション“Move”の対応づけを登録する。ここで、アクション“Move”はポインティングデバイスを制御するOSに対して、メッセージから得た“(X座標)”“(Y座標)”をあたかも自らのマシン上でマウスイベントが起こったものとして渡すものである。このように、各オブジェクト70a、70b、70cは、主体が“Master”であるオブジェクトが発したマウスイベントに同期するようにマウスの動作を行なうこととなる。
一方、主体名書換オブジェクト71には、図8(d)に示すメッセージとアクションの対応関係が登録されている。つまり、メッセージのSVOO“*”“MouseMove”“(X座標)”“(Y座標)”に対してアクション“MasterOut”が記述されている。ここでメッセージ中の“*”はワイルドカードを表わしており、主体名書換オブジェクト71がメッセージを受信しうるすべてのオブジェクトが該当する。つまり、コアフィールド上に流れるマウスイベント“MouseMove”“(X座標)”“(Y座標)”を表わすすべてのメッセージに反応する。アクション“MasterOut”は図8(e)に示すメッセージをコアフィールド21上に流すアクションである。このアクションは、図8(d)と(e)を対照して明らかなように、“*”“MouseMove”“(X座標)”“(Y座標)”として受信したメッセージに対して“Master”“MouseMove”“(X座標)”“(Y座標)”のメッセージを発信するものであり、主体名を“*”から“Master”に書き換える動作をしていることが分かる。この主体名書換オブジェクト71により主体名が書き換えられたメッセージは、オブジェクト70a、70b、70cにより受信され、各オブジェクト70a〜70c上で記述された座標に従ったマウスイベントの同期処理が行なわれる。
さらに、主体名書換オブジェクト71が保持するメッセージアクション反応テーブルを書き換えることにより、同期処理を柔軟かつ簡便に変更することが可能となる。例えば、主体名書換オブジェクト71のメッセージアクション反応テーブル“*”を“オブジェクト70a”と書き換えると、主体名書換オブジェクト71は、図8(d)に従い、オブジェクト70aの発したマウスイベントのみに反応し、オブジェクト70aの主体名を“Master”に書き換えてマウスイベント情報を含むメッセージをコアフィールド21上に流すこととなる。オブジェクト70a、70b、70cは図8(a)〜図8(c)に従い、主体名“Master”によるメッセージに反応してマウスイベントを同期させることとなる。結局オブジェクト70aの発したマウスイベントに同期してオブジェクト70a、70b、70cのマウスイベントが処理される。ここで、オブジェクト70a自身も図8(a)に従い、主体名“Master”によるメッセージに反応してマウスイベントを同期させている。この方法によれば、主体名“Master”に対する同期を保つという決まりが常に保てるので、主体名書換オブジェクト71が“*”を他の主体名に書き換えたときでもオブジェクト70aはすぐに書き換え後の主体名のマウスイベントに同期することができることとなる。このように、同期処理の変更が主体名書換オブジェクト71のメッセージアクション反応テーブルの書き換えのみで柔軟かつ簡便に行なうことができる。
以上、本発明のオブジェクト連携装置によれば、同期処理を行なうオブジェクトをマスタ権限を持つ主体に従って同期するという内容のメッセージアクション反応関係により緩やかに与えておき、主体名書換オブジェクトのメッセージアクション反応テーブルの内容書き換えのみによりマスタ権限を持つオブジェクト主体を任意のオブジェクトに変更することができ、オブジェクト間の同期処理を簡便、柔軟かつ動的に構築、変更することができる。
(実施形態3)
本発明のオブジェクト連携装置は、上記に説明した構成を実現する処理ステップを記述したプログラムをコンピュータ読み取り可能な記録媒体に記録して提供することにより、各種コンピュータを用いて構築することができる。本発明のオブジェクト連携装置を実現する処理ステップを備えたプログラムを記録した記録媒体は、図9に図示した記録媒体の例に示すように、CD−ROM902やフレキシブルディスク903等の可搬型記録媒体901だけでなく、ネットワーク上にある記録装置内の記録媒体900やコンピュータのハードディスクやRAM等の記録媒体905のいずれであっても良く、プログラム実行時にはプログラムはコンピュータ904上にローディングされ、主メモリ上で実行される。
さらに、ソースプログラムをコンパイルしたもののみならず、ネットワークを介してクライアントコンピュータにアプレットを送信し、クライアントコンピュータ上でインタープリタにより実行される構成であっても良い。
産業上の利用可能性
本発明のオブジェクト連携装置によれば、ネットワークに接続されたオブジェクト連携装置間の連携の自由度を高めることができ、コンピュータ群もしくはオブジェクト群の対話・協調などの連携処理を実施し、オブジェクト指向環境における環境の変化に柔軟に対応することができる。
本発明のオブジェクト連携装置によれば、メッセージ型を用いた受信メッセージの選別を行なうことにより、メッセージ型の合致するメッセージのみを取り込んで、対応するアクションを検索し、さらに、メッセージ型別に分類されているメッセージアクション反応テーブルを用いることができ、不要なメッセージアクション照合処理を除去し、オブジェクトの負荷の低減、メッセージアクション反応処理の高速化が実現できる。また、メッセージ型の導入は、オブジェクト指向プログラミングにおける継承の概念をメッセージ型の照合処理に導入することが可能となり、このことによってたとえば、システム全体のバージョンアップに対して型照合の整合性を保つことが可能となる。また、同じ型を継承する型間の共通部分のみの照合も可能となる。
本発明のオブジェクト連携装置によれば、同期処理を行なうオブジェクトをマスタ権限を持つ主体に従って同期するという内容のメッセージアクション反応関係により緩やかに与えておき、主体名書換オブジェクトのメッセージアクション反応テーブルの内容書き換えのみによりマスタ権限を持つオブジェクト主体を任意のオブジェクトに変更することができ、オブジェクト間の同期処理を簡便、柔軟かつ動的に構築、変更することができる。
【図面の簡単な説明】
第1図は、Awarenessアナロジーにおけるオブジェクト間の疎な連携を模式的に示した図である。
第2図は、複数のオブジェクトが共通のコミュニケーション空間であるコアフィールド上に接続され、メッセージを介してオブジェクト連携を実現する様子を表わした図である。
第3図は、本発明の実施形態1のオブジェクト連携装置の概略構成ブロック図である。
第4図は、本発明の本実施形態1のオブジェクト連携装置で扱うメッセージ構造の一例である。
第5図は、メッセージストリングタプル型でSVOO形式に相当するメッセージ型を取り扱うメッセージ構造の例を示す図である。
第6図は、XMLMsgというXMLに準拠したメッセージ型を取り扱うメッセージ構造の例を示す図である。
第7図は、本発明の実施形態2のリアクタオブジェクト70a〜70cと主体名書換オブジェクト71がコアフィールド21上に設けられ、同期処理を行なう概念を示す図である。
第8図は、本発明の実施形態2のリアクタオブジェクト70a〜70cと主体名書換オブジェクト71のメッセージアクション反応テーブルに含まれている情報の例を示す図である。
第9図は、本発明の実施形態3の記録媒体の例および当該記録媒体の処理プログラムを用いたシステム構成の例を示す図である。
第10図は、従来技術のCORBAに基づいたクライアント/サーバシステムにおけるオブジェクト連携の例を示す図である。

Claims (3)

  1. ネットワーク上に送信されるメッセージをモニタして取り込むメッセージ受信部と、
    特定のメッセージ型のメッセージと、当該特定のメッセージ型のメッセージに対する反応であるアクション内容とを対応づけるデータを、複数のメッセージ型別に分類して記憶し、前記メッセージ受信部が取り込んだメッセージに対する反応であるアクション内容を前記記憶したデータにおいて探索するメッセージ・アクション反応関係記憶部と、
    前記メッセージ・アクション反応関係記憶部が探索した前記アクション内容に従って処理を実行するアクション実行部と、
    メッセージ型分類・照合部とを各要素とするオブジェクトが少なくとも1つ構築されたプラットフォームにより構成されるオブジェクト連携装置であって、前記オブジェクトを単位として、前記メッセージ受信部が取り込んだメッセージを基にメッセージ・アクション反応関係に従ったアクションを可能に
    前記メッセージ型分類・照合部は、受信したメッセージが持つメッセージ型を解析し、前記受信メッセージ型が前記メッセージ・アクション反応関係記憶部に記憶されたメッセージのメッセージ型と一致するか否かの照合処理を行ない、一致した場合のみ前記メッセージ・アクション反応関係記憶部に前記受信したメッセージを渡し、
    前記メッセージ・アクション反応関係記憶部は、前記メッセージ型分類・照合部から渡されたメッセージのメッセージ型に対応するデータに対して、メッセージに対する反応であるアクション内容を探索することを特徴とするオブジェクト連携装置。
  2. 前記メッセージ型は階層分類可能であり、前記メッセージは、前記メッセージ型の階層を示す情報を含み、
    前記メッセージ型分類・照合部は、受信したメッセージが持つメッセージ型を解析し、前記受信メッセージ型が前記メッセージ・アクション反応関係記憶部に記憶されたメッセージのメッセージ型と一致するか否かの照合処理を、前記メッセージ型の階層を示す情報をもって行なう請求項1に記載のオブジェクト連携装置。
  3. 前記メッセージ型がオブジェクト指向プログラミングにおける継承の概念を用いて定義され、前記メッセージ型の階層が、クラス派生メッセージ型およびクラス派生元メッセージ型の階層を含む請求項2に記載のオブジェクト連携装置。
JP2001514664A 1999-07-29 1999-07-29 メッセージの型を利用するオブジェクト連携装置 Expired - Fee Related JP4125005B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP1999/004100 WO2001009718A1 (fr) 1999-07-29 1999-07-29 Dispositif de liaison d'objet a l'aide de types de messages

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2007160729A Division JP4550085B2 (ja) 2007-06-18 2007-06-18 メッセージの型を利用するオブジェクト連携装置

Publications (1)

Publication Number Publication Date
JP4125005B2 true JP4125005B2 (ja) 2008-07-23

Family

ID=14236356

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001514664A Expired - Fee Related JP4125005B2 (ja) 1999-07-29 1999-07-29 メッセージの型を利用するオブジェクト連携装置

Country Status (3)

Country Link
US (1) US7584252B2 (ja)
JP (1) JP4125005B2 (ja)
WO (1) WO2001009718A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002222145A (ja) * 2001-01-26 2002-08-09 Fujitsu Ltd 電子メール送信方法、コンピュータ・プログラム、および、記録媒体
US7769876B2 (en) * 2001-12-06 2010-08-03 International Business Machines Corporation Apparatus and method of using XML documents to perform network protocol simulation
JP2003186855A (ja) * 2001-12-20 2003-07-04 Fujitsu Ltd 型照合によるオブジェクト連携システムおよび方法
US7757210B1 (en) * 2002-06-28 2010-07-13 Sap Aktiengesellschaft Object framework
WO2004010289A2 (en) * 2002-07-19 2004-01-29 Mediatrix Telecom Inc. Distributed object-oriented messaging method and system
WO2004023300A2 (en) * 2002-09-06 2004-03-18 Eftia Oss Solutions Inc. System-to-system inter-operation interface
CN1301018C (zh) * 2003-04-02 2007-02-14 华为技术有限公司 一种通信系统中的消息处理方法
US20050108316A1 (en) * 2003-11-18 2005-05-19 Sbc Knowledge Ventures, L.P. Methods and systems for organizing related communications
US9489645B2 (en) 2004-05-13 2016-11-08 International Business Machines Corporation Workflow decision management with derived scenarios and workflow tolerances
US8458783B2 (en) * 2004-06-30 2013-06-04 Citrix Systems, Inc. Using application gateways to protect unauthorized transmission of confidential data via web applications
US20070100884A1 (en) * 2005-11-01 2007-05-03 Brown William A Workflow decision management with message logging
US20070100990A1 (en) 2005-11-01 2007-05-03 Brown William A Workflow decision management with workflow administration capacities
JP5515784B2 (ja) * 2010-01-27 2014-06-11 富士通株式会社 類似度算出プログラムおよび類似度算出装置
WO2012097702A2 (zh) * 2012-01-12 2012-07-26 华为终端有限公司 一种对消息中的数据进行处理的方法及移动终端

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5379426A (en) * 1991-01-25 1995-01-03 Sun Microsystems, Inc. Method and apparatus for object oriented interprocess message switching
JP3311540B2 (ja) * 1995-04-28 2002-08-05 富士ゼロックス株式会社 データ管理システム
US7146381B1 (en) * 1997-02-10 2006-12-05 Actioneer, Inc. Information organization and collaboration tool for processing notes and action requests in computer systems
JP4573917B2 (ja) 1997-09-24 2010-11-04 富士通株式会社 ネットワークシステムとその中におけるオブジェクト連携方法
US6678822B1 (en) * 1997-09-25 2004-01-13 International Business Machines Corporation Method and apparatus for securely transporting an information container from a trusted environment to an unrestricted environment
AU1421799A (en) * 1997-11-25 1999-06-15 Packeteer, Inc. Method for automatically classifying traffic in a packet communications network
US6513111B2 (en) * 1998-02-09 2003-01-28 Reuters, Ltd Method of controlling software applications specific to a group of users
US6324656B1 (en) * 1998-06-30 2001-11-27 Cisco Technology, Inc. System and method for rules-driven multi-phase network vulnerability assessment
US6442620B1 (en) * 1998-08-17 2002-08-27 Microsoft Corporation Environment extensibility and automatic services for component applications using contexts, policies and activators
US6401111B1 (en) * 1998-09-11 2002-06-04 International Business Machines Corporation Interaction monitor and interaction history for service applications
US6499107B1 (en) * 1998-12-29 2002-12-24 Cisco Technology, Inc. Method and system for adaptive network security using intelligent packet analysis
WO2000070531A2 (en) * 1999-05-17 2000-11-23 The Foxboro Company Methods and apparatus for control configuration
US6507866B1 (en) * 1999-07-19 2003-01-14 At&T Wireless Services, Inc. E-mail usage pattern detection

Also Published As

Publication number Publication date
US7584252B2 (en) 2009-09-01
WO2001009718A1 (fr) 2001-02-08
US20020029300A1 (en) 2002-03-07

Similar Documents

Publication Publication Date Title
US11171897B2 (en) Method and apparatus for composite user interface generation
JP4125005B2 (ja) メッセージの型を利用するオブジェクト連携装置
Cost et al. Using colored petri nets for conversation modeling
US6085233A (en) System and method for cellular network computing and communications
US20070157155A1 (en) System and method for software generation and execution
EP1435047A2 (en) Method and apparatus for intelligent data assimilation
JP2008544400A (ja) データセントリックワークフロー
WO2000020966A1 (fr) Dispositif de cooperation objets
CN111782262B (zh) 数据动态发布方法、装置、系统、设备及存储介质
JP4550085B2 (ja) メッセージの型を利用するオブジェクト連携装置
JP4573917B2 (ja) ネットワークシステムとその中におけるオブジェクト連携方法
JP4145477B2 (ja) オブジェクト連携装置
Guillen-Scholten et al. A channel-based coordination model for components
JP4363752B2 (ja) リバースプロキシーシステム
Jacquet et al. Blackboard rules: From a declarative reading to its application for coordinating context-aware applications in mobile ad hoc networks
CN100498833C (zh) 科学计算网格的远程可视化方法
JP4266507B2 (ja) オブジェクト連携モニタシステム
JP4434274B2 (ja) ネットワークシステムとその中におけるオブジェクト連携方法
Boreale et al. Analysis of distribution structures: state of the art
Simons et al. FastCGI the forgotten treasure
Todoran et al. Mobile objects and modern communication abstractions: design issues and denotational semantics
Reznik et al. Development of the intelligent sensor network anomaly detection system: problems and solutions
Delivering EDI and Orchestrations
Patzlaff et al. Development of a Scalable Agent Architecture for Constrained Devices
Beckner EDI and Orchestrations

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070417

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070618

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070911

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071109

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: 20080417

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: 20080507

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110516

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120516

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130516

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20140516

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees