ノードとエッジを含むグラフデータの少なくとも一部の写像の像であるオブジェクトに対して行った操作を、前記グラフデータに反映するための方法であって、前記操作によって変更されるオブジェクトに関連するグラフデータのノードのうち、他のオブジェクトにも関連し得るノードである共有ノードを特定するステップと、前記共有ノードが変更されないように前記グラフデータに前記操作を反映するステップと、を含む、方法。前記オブジェクトに対応するグラフマッチングパターンを提供するステップをさらに含む、請求項1に記載の方法。前記変更されたオブジェクトに対応するグラフマッチングパターンを特定するステップと、特定されたグラフマッチングパターンに基づいて、共有ノードを特定するためのクエリを生成するステップと、を含む、請求項2に記載の方法。前記操作を反映するステップが、前記グラフマッチングパターンに含まれるノード変数とそれにマッチするグラフデータ内のノードとの対応関係をエントリとして含むテーブルを用いて、前記グラフデータに前記操作を反映するステップを含む、請求項2に記載の方法。前記操作がオブジェクトの生成であり、前記操作を反映するステップが、ノードを新たに生成することなく、前記特定された共有ノードに対してリンクを形成することによって、前記グラフデータに前記操作を反映するステップを含む、請求項1に記載の方法。前記操作がオブジェクトの生成であり、生成されたオブジェクトに対応する前記テーブルを新たに生成するステップをさらに含む、請求項4に記載の方法。特定された前記共有ノードに対応するエントリを前記テーブルに追加するステップを含む、請求項6に記載の方法。前記グラフマッチングパターンに含まれる代表ノード変数に対応するエントリを前記新たに生成されたテーブルに追加するステップをさらに含む、請求項6に記載の方法。前記グラフマッチングパターンに含まれる代表ノード変数および共有ノード変数以外のノードに対応するエントリが前記生成されたテーブルに追加され、当該テーブルがすべて充填されたことを条件に、前記グラフデータに前記操作が反映される、請求項6に記載の方法。前記操作がオブジェクトの更新であり、前記変更されたオブジェクトに対応する前記テーブルを特定するステップと、特定された前記テーブルにオブジェクトに対して前記実行されたオブジェクトの更新を反映するステップと、を含む、請求項4に記載の方法。前記操作がオブジェクトの削除であり、前記操作を反映するステップが、前記特定された共有ノードが削除されないように前記グラフデータに前記操作を反映するステップを含む、請求項1に記載の方法。前記操作がオブジェクトの削除であり、前記変更されたオブジェクトに対応する前記テーブルを特定するステップと、前記テーブルに含まれる前記共有ノードの情報以外の情報に基づいて、共有ノードが削除されないように前記グラフデータに前記操作を反映するステップと、を含む、請求項4に記載の方法。請求項1ないし12のいずれかに記載の方法のすべてのステップをコンピュータに実行させることができる、プログラム。ノードとエッジを含むグラフデータの少なくとも一部の写像の像であるオブジェクトに対して行った操作を、前記グラフデータに反映するためのプログラムであって、前記操作によって変更されるオブジェクトに関連するグラフデータのノードのうち、他のオブジェクトにも関連し得るノードである共有ノードを特定するステップと、前記共有ノードが変更されないように前記グラフデータに前記操作を反映するステップと、をコンピュータに実行させる、プログラム。ノードとエッジを含むグラフデータの少なくとも一部の写像の像であるオブジェクトに対して行った操作を、前記グラフデータに反映するための装置であって、前記グラフデータを記憶するグラフリポジトリにアクセスする手段と、前記操作によって変更されるオブジェクトに関連するグラフデータのノードのうち、他のオブジェクトにも関連し得るノードである共有ノードを特定する手段と、前記共有ノードが変更されないように前記グラフデータに前記操作を反映させる手段と、を備える、装置。あるアプリケーションがグラフリポジトリに記憶されたグラフデータを利用する場合、当該アプリケーションの観点からグラフデータが複雑過ぎたり、不要な詳細まで含まれていたりすることがある。そのため、直接グラフデータ全体にアクセスするのではなく、グラフデータの写像の像であるアプリケーションの目的に応じたオブジェクトを介してグラフデータの一部または全部を利用したいという要請がある。この場合、アプリケーションの目的に応じたオブジェクトに対する操作を元のグラフデータに効果的に反映することができることが好ましい。アプリケーションの目的に応じたオブジェクトのすべての部分がグラフデータの準同型写像homomorphismの像である場合、前者に対する操作と後者に対する操作を一対一で対応させることができる。しかし、オブジェクトの一部がグラフデータからの準同型写像となっていない場合がある。そのような場合、オブジェクトに対する操作をグラフデータに反映することについて、注意を要する場合がある。例えば、複数のオブジェクトに関連し得るノードがグラフデータ内に存在するものとする。この場合に、当該グラフデータ内のノードに関連するあるオブジェクトに対して追加削除等の操作をすると、グラフデータにおいても当該ノードが追加削除等されてしまう可能性がある。その結果、当該グラフデータ内のノードに関連する他のオブジェクトに関連して不適切な影響が生じる場合がある。したがって、本発明の目的の1つは、グラフデータにオブジェクトに対する操作を効果的に反映するための方法、プログラム、および、システムを提供することである。上記の目的を達成するために、ノードとエッジを含むグラフデータの少なくとも一部の写像の像であるオブジェクトに対して行った操作を、グラフデータに反映するための方法を提供する。方法は、操作によって変更されるオブジェクトに関連するグラフデータのノードのうち、他のオブジェクトにも関連し得るノードである共有ノードを特定するステップと、共有ノードが変更されないようにグラフデータに操作を反映するステップを含む。好ましくは、方法は、データ構造に含まれるオブジェクトに対応するグラフマッチングパターンを提供するステップをさらに含む。さらに好ましくは、変更されたオブジェクトに対応するグラフマッチングパターンを特定するステップと、特定されたグラフマッチングパターンに基づいて、共有ノードを特定するためのクエリを生成するステップを含む。好ましくは、操作を反映するステップが、グラフマッチングパターンに含まれるノード変数とそれにマッチするグラフデータ内のノードとの対応関係をエントリとして含むテーブルを用いて、グラフデータに操作を反映するステップを含む。好ましくは、操作がオブジェクトの生成であり、操作を反映するステップが、ノードを新たに生成することなく、特定された共有ノードに対してリンクを形成することによって、グラフデータに操作を反映するステップを含む。好ましくは、操作がオブジェクトの生成であり、生成されたオブジェクトに対応するテーブルを新たに生成するステップをさらに含む。特定された共有ノードに対応するエントリをテーブルに追加するステップか、および/または、グラフマッチングパターンに含まれる代表ノード変数に対応するエントリを新たに生成されたテーブルに追加するステップをさらに含む。また、グラフマッチングパターンに含まれる代表ノード変数および共有ノード変数以外のノードに対応するエントリが生成されたテーブルに追加され、当該テーブルがすべて充填されたことを条件に、グラフデータに操作が反映されるようにすることができる。好ましくは、操作がオブジェクトの更新であり、変更されたオブジェクトに対応するテーブルを特定するステップと、特定されたテーブルにオブジェクトに対して実行されたオブジェクトの更新を反映するステップを含む。好ましくは、操作がオブジェクトの削除であり、操作を反映するステップが、特定された共有ノードが削除されないようにグラフデータに操作を反映するステップを含む。操作がオブジェクトの削除であり、変更されたオブジェクトに対応するテーブルを特定するステップと、テーブルに含まれる共有ノードの情報以外の情報に基づいて、共有ノードが削除されないようにグラフデータに操作を反映するステップを含むようにすることができる。以上、データ構造を変換する方法として本発明の概要を説明したが、本発明は、プログラム、プログラム製品、ソフトウェア、ソフトウェア製品、システム、装置などとして把握することもできる。プログラム製品ないしソフトウェア製品は、例えば、前述のプログラム、ソフトウェアを格納した記憶媒体を含め、あるいはプログラム、ソフトウェアを伝送する媒体を含めることができる。上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの構成要素のコンビネーションまたはサブコンビネーションもまた、発明となり得ることに留意すべきである。以下、本発明を実施するための形態を図面に基づいて詳細に説明するが、以下の実施形態は特許請求の範囲に記載された発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。また、本発明は多くの異なる態様で実施することが可能であり、実施の形態の記載内容に限定して解釈されるべきものではない。実施の形態の説明の全体を通じて同じ要素には同じ番号を付している。図1は、本発明の実施形態おけるデータ処理システムの全体像の一例を示した図である。データ処理システムは第1のユーザが操作する第1の端末100、第2のユーザが操作する第2の端末105、および、グラフデータを記憶するグラフリポジトリを備えるサーバ110を含む。これらの各端末100、105およびサーバ110はネットワーク115で相互に接続され、電子データである情報のやり取りをすることができる。典型的には、ネットワーク115はインターネットないしイントラネットである。本発明の実施形態では、ユーザが操作する端末100、105にはオブジェクトハンドリングソフトウェアがインストールされている。本発明の実施の形態による端末100、105は、ユーザが操作し、また情報を提示されるための入出力デバイスであるキーボード、マウスのような入力デバイス、および表示装置を備える。本発明の実施形態では、ユーザは、端末100、105の表示装置に作業状況の情報などを視覚的に提示するウィンドウベースのグラフィカルユーザインターフェースを通じて、キーボード、マウスなどの入力デバイス用いてアプリケーションプログラムを操作する。各ユーザは自己が操作する端末100、105において実行されるアプリケーションプログラムを用いて操作するグラフデータをサーバ110にネットワーク115を介して要求することができ、サーバ110はグラフリポジトリに記憶されたグラフデータのサブセット一部分を要求されたグラフデータとしてネットワーク115を介して返送する。本発明の実施形態では、それぞれの端末には、グラフリポジトリに格納されたグラフデータを操作するということでは共通するが、その目的が異なるアプリケーションプログラムが導入されているものとする。本発明の実施形態では、グラフリポジトリから受信したグラフデータに関して、準同型写像の像であるデータ構造に変換できる部分と、それ以外の部分とが区別される。本発明の実施形態では、前者について、各端末はグラフリポジトリから受信したグラフデータの少なくとも一部をその準同型写像homomorphismの像imageに変換してオブジェクトデータを生成する。ここで、準同型homomorphicとは、複数の構造の間の類似性を表す概念であり、ある構造が他の構造の準同型写像の像である場合、前者に対する操作と後者に対する操作を一対一で対応させることができる。この性質について、準同型写像は、構造を保存structurepreservingする、構造と両立compatiblewithstructureする、などと表現される。グラフデータは、あらかじめユーザが定義したグラフマッチングパターンの一種以下、カーネルパターンと称することがあるにマッチしたグラフデータのサブセットを、あらかじめユーザが定義したオブジェクトのクラス定義以下、単にオブジェクト定義と称することがあるに従ってインスタンス化することによって、そのユーザが使用するアプリケーションプログラムの目的に適したオブジェクトデータに変換される。次いで、本発明の実施形態ではユーザはオブジェクトデータを端末に導入されたアプリケーションプログラム上で操作する。本発明の実施形態では、オブジェクトデータに対する操作は、上述したオブジェクトデータの準同型的性質を利用してサーバ110のグラフリポジトリに格納された元のグラフデータに反映される。本発明の実施形態では、このグラフデータへの反映は、操作がされた後のオブジェクトと、その操作を反映したグラフデータから写像して得られるオブジェクトが同じになるように正しく実施されることとなる。図2は、本発明の実施形態のユーザ端末100およびサーバ110を含むデータ処理システムの機能ブロック図である。なお、図2の機能ブロック図に示す各要素は、図18に例示したハードウェア構成を有する情報処理装置において、ハードディスク装置13などに格納されたオペレーティングシステムやオブジェクトハンドリングソフトウェアなどのコンピュータプログラムをメインメモリ4にロードした上でCPU1に読み込ませ、ハードウェア資源とソフトウェアを協働させることによって実現することができる。本発明の実施形態のサーバ110は、グラフリポジトリ275を含む。本発明の実施形態のグラフリポジトリ275は、グラフデータを記憶する機能を備える。本発明の実施形態のグラフデータは、ノードとノード間の連結関係を表す有向または無向のエッジを含み、それぞれのノードおよびエッジに対して属性値を付与することができる。本発明の実施形態では、グラフデータはW3CWorldWideWebConsotium勧告として標準化されたRDFResourceDescriptionFrameworkフォーマットにしたがって記述されるものとする。また、グラフリポジトリ275は、ユーザ端末100のリポジトリアクセス部205からW3CWorldWideWebConsotium勧告として標準化されたSPARQLSPARQLProtocolandRDFQueryLanguage言語に従うクエリを受信し、クエリに記述された条件に合致したグラフデータの全部または一部をリポジトリアクセス部205に返送する機能をも有する。返送されたグラフデータの一例は、図13等を用いて後で詳細に説明される。なお、そのようなグラフデータを格納するためのグラフリポジトリ275は、本明細書を読んだ当業者が適宜実装することができるので、これ以上の詳細は本明細書では説明されない。本発明の実施形態の端末100は、リポジトリアクセス部205、パターンマッチング部210、正規化部215、オブジェクトデータ生成部220、オブジェクト定義記憶部225、カーネルパターン記憶部230、データバインディングテーブルDBT記憶部235、オブジェクトデータ記憶部240、オブジェクトデータ操作部245、グラフデータ変更部250、操作ログ記憶部255、アプリケーション部260、および、入出力部265を備える。本発明の実施形態のリポジトリアクセス部205は、後述するグラフデータ変更部250を介して受けたアプリケーション部260からの命令に従って、サーバ110のグラフリポジトリ275に記憶されたグラフデータを照会するクエリを生成する機能を備える。リポジトリアクセス部205は、生成したクエリをグラフリポジトリ275にネットワーク115を介して送信し、クエリの結果であるグラフデータを受領することができる。本発明の実施形態では、リポジトリアクセス部205は、グラフリポジトリに記憶されたグラフデータにアクセスし、少なくともグラフデータの問合せ、グラフデータの変更をする機能を有するものとする。本発明の実施形態では、グラフリポジトリへのアクセスのためのクエリは、SPARQL言語に従うものとして実装されるが、他の任意のグラフデータ問合せ言語を採用することが可能であることは当然である。本発明の実施形態のリポジトリアクセス部205は、グラフデータの問合せの結果としてグラフリポジトリ275から得たグラフデータをパターンマッチング部210に引き渡す。本発明の実施形態のパターンマッチング部210は、リポジトリアクセス部205から引き渡されたグラフデータを、カーネルパターン記憶部235に記憶されたカーネルパターンとマッチングする。カーネルパターンの例は、図11を用いて後で詳細に説明される。マッチングは、カーネルパターンごとに用意され、または、カーネルパターンに基づいて生成されたSPARQL言語に従うクエリを対象となるグラフデータに関して問い合わせることで実施する。カーネルパターンに対応するクエリの例は図13を用いて後で詳細に説明される。また、パターンマッチング部210は、カーネルパターンごとのクエリの結果を用いて初期データバインディングテーブルinitialDBTsを形成し、データバインディングテーブルDBT記憶部235に記憶させる。なお、初期DBTの例は、図14を用いて後で詳細に説明される。本発明の実施形態の正規化部215は、パターンマッチング部210が生成し、DBT記憶部240に記憶させた初期DBTに処理を施して、後でDBTを参照して生成されるオブジェクトデータがグラフデータの準同型写像homomorphismの像imageとなるようにされる。かかるDBTに対する処理を本明細書では正規化と称し、図5を用いて後で詳細に説明される。本発明の実施形態のオブジェクトデータ生成部220は、DBT記憶部235に格納されたDBT、および、オブジェクト定義記憶部330に記憶されたオブジェクト定義を参照して、リポジトリアクセス部205によって取得されたグラフデータをオブジェクトデータに変換する。グラフデータは、ユーザが使用するアプリケーションプログラムの目的に適した形となるように変換され、生成されたオブジェクトデータは、オブジェクトデータ記憶部240に格納される。本発明の実施形態のオブジェクト定義記憶部225は、ユーザによって定義されたオブジェクトのクラス定義すなわち、オブジェクト定義を記憶する。オブジェクト定義はオブジェクトデータ生成部220がグラフデータをオブジェクトデータに変換するために参照される。オブジェクト定義の例は、図12を用いて後で詳細に説明される。本発明の実施形態のパターン記憶部230は、パターンマッチング部210によるマッチングに使用されるカーネルパターンを記憶する。データバインディングテーブルDBT記憶部235は、パターンマッチング部210によって生成されたDBT等を記憶する。既に述べた通り、DBT記憶部240に記憶されたDBTは正規化部215などによって処理され、また、オブジェクトデータ生成部によって参照される。本発明の実施形態のオブジェクトデータ記憶部240は、オブジェクトデータ生成部220によってグラフデータを変換することによって生成されたオブジェクトデータを記憶する。オブジェクトデータ記憶部240に記憶されるオブジェクトデータは、ユーザが定義したオブジェクト定義をインスタンス化して生成されるので、それぞれのユーザが操作するアプリケーションプログラムの目的に適したデータ構造となっている。オブジェクトデータ記憶部240に記憶されたオブジェクトデータはアプリケーション部260から直接、または、オブジェクトデータ操作部245を介して操作され得る。本発明の実施形態のグラフデータ変更部250は、アプリケーション部260におけるユーザのアプリケーションプログラムの操作、または、操作ログ記憶部255に記憶されたアプリケーション部260におけるアプリケーションプログラムの操作ログに基づいて、グラフリポジトリ275に記憶されたグラフデータの問合せ、グラフデータの変更を実施するようにリポジトリアクセス部205に命令する。本発明の実施形態の操作ログ記憶部255は、アプリケーション部260におけるアプリケーションの操作ログを記憶する。アプリケーション部260は、ユーザが操作するアプリケーションが実行されている。入出力部265は、ユーザから受けた操作をアプリケーション部260に引渡し、また、アプリケーション部260から受領したオブジェクトデータの表示等をユーザに提供する。図3は、本発明の実施形態におけるデータ処理システムの動作を表現するフローチャート300である。処理はステップ305でスタートし、ステップ310でカーネルパターンがユーザによって定義される。カーネルパターンは、グラフデータとのマッチング処理をするために参照されるグラフマッチングパターンの一種である。本発明の実施形態では、カーネルパターンの定義は、ユーザがカーネルパターン定義機能を備えるアプリケーションプログラムを対話的に操作することによって実施され、または事前にユーザにより用意されるものとする。図11は、本発明の実施形態におけるカーネルパターンのデータセットの一例である。この例では、4種類のカーネルパターン1105、1110、1115、1120が定義されている。本発明の実施形態では、これらのカーネルパターンは、それぞれα、β、γ、δというラベルが付されて識別されているものとする。それぞれのカーネルパターンは、複数のノードパターンとそれらを相互に繋ぐエッジを含む。本発明の実施形態では、エッジは有向エッジであるものとする。また、異なるカーネルパターンに属するノードパターンの間でもエッジが存在する場合がある。本明細書では、かかる異なるカーネルパターンに属する要素の間のエッジをインターリンクと称する。例えば、図10に示す例では、カーネルパターンα、βの要素AとBを繋ぐインターリンク1125が示されている。それぞれのノードパターンおよびエッジには属性値が付されることができる。カーネルパターンのノード変数の一部には後で詳細に説明するカーネルパターンのマッチング結果具体的には、初期DBTの一部を除去するために使用される制約条件が記述される。本発明の実施形態では、以下の2種類の制約条件が存在する。第1の制約条件は、それぞれのカーネルパターンのノード変数の種類のうち一つだけに付される。なお、第1の制約条件を付されたカーネルパターンのノード変数を代表ノード変数と呼び、代表ノード変数にマッチするノードを代表ノードと称することがある。第1の制約条件の内容は、代表ノード変数にマッチしたグラフデータのノードが高々1つで、かつ他のカーネルのノード変数にマッチすることが禁止される、というものであるただし、そのカーネルパターンと他のカーネルのパターンが継承関係にある場合は除く。また、本発明の実施形態では、代表ノード変数にマッチしたノードは、他のカーネルに属するノードとの間のインターリンクの端点となり得るものとする。本発明の実施形態では、カーネルパターンのノード変数の名前にという接頭辞を付することによって、当該ノード変数を代表ノード変数として設定するものとする。また、第2の制約条件は、カーネルパターンの任意のノード変数に付され得るが、カーネルパターンは、必ずしも第2の制約条件が付されたノードを含む必要はない。なお、第2の制約条件を付されたカーネルパターンのノード変数をユニークノード変数と称することがある。第2の制約条件の内容は、第2の制約条件が付されたユニークノード変数にマッチするグラフデータのノードは、カーネルの代表ノードにユニークに対応しなければならない、というものである。本発明の実施形態では、ユニークノード変数にマッチしたノードは、他のカーネルに属するノードとの間のインターリンクの端点となり得るものとする。本発明の実施形態では、カーネルパターンのノード変数の名前にという接頭辞を付することによって、当該ノードをユニークノード変数として設定するものとする。上述の代表ノード変数およびユニークノード変数にマッチするグラフデータのノードは、準同型写像の像であるデータ構造に変換できる部分であり、上述の第1および第2の制約条件は準同型写像の像であるデータ構造への変換を可能とするために使用される。また、本発明の実施形態では、カーネルパターンは、代表ノード変数およびユニークノード変数以外に、グラフデータ内のノードをURL等の識別子により直接指定する直接指定ノード、値そのものが付されたリテラルノード、ノードに制約無くマッチするノード変数である一般ノード変数を含み得る。直接指定ノードは、ノードの名前としてグラフデータ内のノードの識別子を直接指定することによって設定するものとする。また、リテラルノードは、ノードの名前をダブルクオートで囲んだ値とすることによって設定するものとする。一般ノード変数は、ノード変数の名前の前にという接頭辞を付することによって設定するものとする。なお、本発明の実施形態では、リテラルノードは単一のノードとのみエッジによって接続されるものする。このようにして、本発明の実施形態では、グラフリポジトリから受信したグラフデータに関して、準同型写像の像であるデータ構造に変換できる部分と、それ以外の部分とが区別される。次に、処理はステップ315に進み、ユーザが端末を操作することによってオブジェクト定義が設定される。本発明の実施形態では、オブジェクト定義は、ユーザがオブジェクト定義機能を備えるアプリケーションプログラムを対話的に操作することによって実施され、または事前にユーザにより用意されるものとする。本発明の実施形態におけるオブジェクト定義とは、カーネルパターンにマッチングしたグラフのサブセットをオブジェクトデータに変換するために参照されるクラスを定義したものである。すなわち、オブジェクト定義は各オブジェクトの構造を表現し、カーネルパターンにマッチングしたグラフのサブセット部分を、対応するオブジェクト定義をインスタンス化することによってグラフデータがオブジェクトデータへと変換されることとなる。図12は、本発明の実施形態におけるオブジェクト定義のセットの一例である。オブジェクト定義のセットは、カーネルパターンに対応するオブジェクト定義1205、1210、1215、1220を含み、これらは図11に示されているカーネルパターン1105、1110、1115、1120にそれぞれ対応する。また、本発明の実施形態の例では、インターリンクに対応するオブジェクト定義1225をも含み、これは、図11に示されているインターリンク1125に対応する。具体的には、オブジェクト定義1205は、その名称がMemberであり、カーネルパターンαにマッチングしたときにインスタンス化され、カーネルパターン内のノード変数N1にマッチしたノードに付された文字列Stringを属性値とするnameという属性を有することが示されている。モデル1210は、その名称がGroupであり、カーネルパターンβにマッチングしたときにインスタンス化され、カーネルパターン内のノード変数Jにマッチしたノードに付された整数値Intを属性値とするbudgetという属性を有することが示されている。なお、オブジェクト定義1210がオブジェクト定義1205を継承したクラスであることが継承関係を表現するエッジ1235によって表現されている。オブジェクト定義1210とオブジェクト定義1205の間にはmembersという関連1225が存在し、それはインターリンク1125に対応する。関連1225に付された記号1230は当該関連の許容多重度何本まで関連を形成することが許されるかであり、は多重度に制限がないことを意味している。オブジェクト定義1215は、その名称がCであり、カーネルパターンγにマッチしたときにインスタンス化され、カーネルパターン内のノード変数Xにマッチしたノードに付された文字列Stringを属性値とするxという属性を有することが示されている。オブジェクト定義1220は、その名称がDであり、カーネルパターンδにマッチしたときにインスタンス化され、カーネルパターン内のノード変数Yにマッチしたノードに付された文字列Stringを属性値とするyという属性を有することが示されている。これらのモデル定義がどのようにオブジェクトデータの生成に使用されるかは後で詳述される。処理はステップ320へ進み、ユーザは、アプリケーションプログラムを操作することによって、データ処理システム上のアプリケーション部260からグラフデータ変更部250、リポジトリアクセス部205を介して作業対象のグラフデータの問合せをグラフリポジトリ275に対して行う。かかるグラフデータの問合せはアプリケーションプログラム上のグラフデータ問合せ操作を検出して解釈し、SPARQL言語に従うクエリを生成し、グラフリポジトリ275に送信することによって実行される。次いで、ステップ325においてリポジトリアクセス部205が入手したグラフデータが当該ユーザの操作するアプリケーションプログラムの目的に適した形式となるように、パターン記憶部230に記憶されたカーネルパターン、オブジェクト定義記憶部225に記憶されたオブジェクト定義を用いて、グラフデータがオブジェクトデータへ変換される。既述の通り、変換され生成されたオブジェクトデータは、オブジェクトデータ記憶部240に記憶される。当該オブジェクトデータへの変換は、図4、図5を用いて後で詳細に説明される。処理はステップ330に進み、ステップ325において得られ、オブジェクトデータ記憶部240に記憶されたオブジェクトデータに対する操作が実行される。本発明の実施形態では、オブジェクトデータに対する操作は、オブジェクトデータの有する準同型的性質を利用してグラフリポジトリ270に記憶されたグラフデータに反映されることとなる。かかる処理は、図6、7、8、9、10を用いて後で詳述される。次いで、ステップ335において作業対象のオブジェクトデータに対する操作が完了したかどうかが判断される。ステップ335において作業対象のオブジェクトデータに対する操作が完了していないと判断された場合、処理はNOの矢印を通じてステップ330へ戻り、オブジェクトデータに対する操作が継続される。ステップ335において作業対象のオブジェクトデータに対する操作が完了したと判断された場合、処理はYESの矢印を通じてステップ340へ進む。ステップ340においては、他のグラフデータに対する操作を行うかどうかが判定される。ステップ340で他のグラフデータに対する操作を行うと判断された場合、処理はYESの矢印を介してステップ320に戻り、当該他のグラフデータの部分がグラフリポジトリ275から読み出され、以降同様の処理が繰り返される。ステップ340で他のグラフデータに対する操作を行わないと判断された場合、処理はNOの矢印を介してステップ345に進み終了する。次に、図4のフローチャート320を使用して、図4のステップ320におけるグラフデータからオブジェクトデータへの変換処理の一例をより詳細に説明する。図4は、本発明の実施形態におけるデータ処理システムのオブジェクトデータ生成動作を表現するフローチャート320である。処理は、ステップ405でスタートし、ステップ410でグラフレポジトリ275にSPARQL言語に従うクエリを用いてグラフデータの問い合わせを行う。図13は、本発明の実施形態におけるグラフレポジトリから読み出され返送されたグラフデータ1300である。本発明の実施形態では、かかる一例としてのグラフデータ1300がグラフレポジトリに記憶されており、SPARQL言語に従うクエリを用いて作業対象として読み出されて、オブジェクトデータに変換されるものとする。次に、処理はステップ415に進み、ステップ410において得られたグラフデータ1200に対して、カーネルパターン記憶部230に記憶されたカーネルパターンを用いてパターンマッチングを行う。本発明の実施形態では、このパターンマッチングは、ユーザが操作する端末上でカーネルパターンごとに用意されたSPARQL言語に従うクエリを作業対象となるグラフデータに関して実行することで実施する。図14は、本発明の実施形態におけるカーネルパターンごとに用意されたSPARQL言語に従うグラフクエリのセット1400である。グラフクエリのセット1400に含まれるクエリ1405、1410、1415、1420、1425は、それぞれ図10に示すカーネルパターン1105、1110、1115、1120およびインターリンク1125に対応する。このクエリをそれぞれステップ410において得られたグラフデータに対して実行することによってそれぞれのカーネルパターンにマッチするグラフデータ1300のサブセットに関する情報が得られることとなる。処理はステップ420に進み、ステップ415で得られたカーネルパターンにマッチするグラフデータ1200のサブセットに関する情報としてデータバインディングテーブルDBTと称されるテーブル構造のデータが形成される。DBTは、対応するカーネルパターンに含まれるノードとそれにマッチしたグラフデータ内のノードとの対応関係をエントリとして含む。図15は、本発明の実施形態における、カーネルパターンに対応するSPARQL言語に従うグラフクエリによる照会結果である初期DBTsの一例である。本発明の実施形態では、カーネルパターンαに関しては、グラフデータのサブセットが5つマッチングに成功しているテーブル1505、1510、1515、1525。カーネルパターンβに関しては、1つマッチングに成功しているテーブル1530。カーネルパターンγについては、1つマッチングに成功しているテーブル1535。カーネルパターンδについては、グラフデータのサブセットはマッチせず、DBTは形成されていない。インターリンクmembersについては、2つのエッジがマッチングに成功しているテーブル1540、1545。処理はステップ425に進み、正規化の処理が実施される。ここで、図5のフローチャート425を使用して、図5のステップ425におけるDBTの正規化の処理の一例をより詳細に説明する。まず、処理はステップ505でスタートし、ステップ510でステップ420において得られた初期DBTをスキャンし、複数のDBTにおいて代表ノードカーネルパターンにおいての接頭辞が付されたノードとマッチしたグラフデータ内のノードを特定する。本発明の実施形態では、ノードb1DBT1510およびDBT1530おいて代表ノードとマッチしているおよびノードu1DBT1505およびDBT1535において代表ノードにマッチしているが特定される。次いで、ステップ515において、ステップ510で特定されたノードが含まれないDBT、すなわち、そのDBTの代表ノードにマッチしたグラフデータのノードが他のDBTにおいて代表ノードにマッチしていないDBTに関して、代表ノードに対応するオブジェクト定義が割り当てられる。その結果、DBT1515、1520、1525の代表ノードすなわち、a1、a2、a3にはそれぞれオブジェクト定義1205名称:Memberが割り当てられる。処理はステップ520に進み、ステップ510において特定されたノードが含まれているDBT複数存在するについて、当該DBTに対応するオブジェクト定義の間に継承関係にある場合に、継承された側のオブジェクト定義に対応するDBTを除去したうえで、継承をした側のオブジェクト定義に対応するDBTに対応するオブジェクト定義を代表ノードに割り当てる。本発明の実施形態では、DBT1510とDBT1530について、それぞれに対応するオブジェクト定義1205、1210は継承関係にあるので、継承された側であるDBT1510が除去され、継承した側であるDBT1530が残され、代表ノードすなわち、b1対応するオブジェクト定義1210名称:Groupが割り当てられる。次いでステップ525において、ステップ510特定されたノードが含まれているDBTについて、当該DBTに対応するオブジェクト定義の間に継承関係にない場合に、当該DBTのすべてが除去される。本発明の実施形態では、DBT1505、DBT1535が除去される。上述したステップ510ないし525が実行されることによって、第1の制約条件を用いたDBTの除去および代表ノードへのオブジェクト定義の割り当てが実現する。その結果、本発明の実施形態では、DBT1505、1510、1535が除去され、DBT1515、1520、1525、1530、DBT1540、DBT1545がDBT記憶部235に残されることとなる。なお、本発明の実施形態では、上述のDBTの除去およびオブジェクト定義の割り当ては、図16に示すオブジェクト定義割り当てテーブル1600を生成し、処理することによって実施される。処理はステップ530に進み、上述したカーネルパターン内の第2の制約条件を用いたDBTの除去が実行される。本発明の実施形態では、カーネルパターン1105の第2の制約条件を表す接頭辞が付されているユニークノードN1について、DBT1515、1520でノードn1が対応している。ユニークノードであるN1はカーネルパターン1105の代表ノードAにマッチするノードにユニークに対応していなければならないので、DBT1515およびDBT1420が除去されることとなる。その結果として、DBT1525、DBT1530、DBT1540、DBT1545がDBT記憶部235に残されることとなる。次いで、ステップ535において、インターリンクに対応するDBTの除去が実行される。具体的には、それまでのカーネルパターンに対応するDBTの正規化処理ステップ505~530を実行した結果としてDBT記憶部235に残っているDBTを参照し、それらの内容と整合しないインターリンクに対応するDBTを除去する。本発明の実施形態では、DBT1540がDBT1525、DBT1530に対応しないので除去される。その結果、DBT1525、1530、1545がDBT記憶部235に残ることとなる。処理はステップ540に進み、インターリンクの多重度がオブジェクト定義に記述された許容多重度を満たしているかどうかが判定される。また、ステップ540では、許容多重度を満たしていなかった場合の処理も実施される。かかる処理は、たとえば、ユーザに警告を提示してどのインターリンクをインスタンス化するかを選択させる、あるいは、そこで処理を停止するなど様々なやり方が考えられるが、当業者は適宜かかる処理を実施することができるのでここでは詳細な説明は省略する。次いでステップ545において、インターリンクに対応するDBTの内容が、当該インターリンクの参照元であるオブジェクトに対応するDBTに反映される。具体的には、当該インターリンクの名称と参照先ノードの名称の対応を含むエントリが参照元であるオブジェクトに対応するDBTに追加される。本発明の実施形態では、DBT1545の内容がDBT1530に追加される。処理はステップ544に進み終了する。本発明の実施形態における正規化処理が実施されたDBTの内容を図17に示す。図4に説明を戻し、ステップ430において、ステップ425で正規化されたDBT記憶部240に記憶されたDBTと、オブジェクト定義記憶部230に記憶されたオブジェクト定義を参照し、グラフデータをオブジェクトデータに変換する、つまり、オブジェクト定義をインスタンス化することによって、オブジェクトデータを生成してオブジェクトデータ記憶部245に記憶する。図18に、本発明の実施形態における生成されたオブジェクトデータの例を示す。次いで処理はステップ435に進み、オブジェクトデータがアプリケーション部260のアプリケーションプログラムに送られ、入出力部270を介してユーザに視覚的に提示される。そして、ステップ440において処理は終了する。次に、図6のフローチャート330を使用して、図3のステップ330におけるオブジェクトデータの操作処理およびそれに伴うグラフリポジトリ内のグラフデータへの反映処理の一例をより詳細に説明する。図5は、本発明の実施形態におけるデータ処理システムのオブジェクトを操作した場合の動作を表現するフローチャートである。処理は、ステップ605からスタートし、ステップ610において操作ログ記憶部255が、ユーザがアプリケーションプログラムにおいて実行したオブジェクトデータ操作のログ本明細書において、単に操作ログというをアプリケーション部260から受け取り、記憶する。処理はステップ615に進み、ステップ610において操作ログ記憶部255に記憶された操作ログから1つ操作を読み込む。次いで処理はステップ520に進み、読み込んだ操作がオブジェクトの生成CREATE、オブジェクトの更新UPDATE、オブジェクトの削除DELETEのいずれであるかを判定する。本発明の実施形態において、オブジェクトの生成CREATE操作は、新たにオブジェクトを追加することを含む。また、オブジェクトの更新UPDATE操作は、既に存在するオブジェクトの属性値の変更、オブジェクト間の関連の追加または削除を含む。さらに、オブジェクトの削除DELETE操作は、既に存在するオブジェクトを削除することを含む。ステップ620において、ステップ615で読み込んだ操作がオブジェクトの生成CREATEであると判定された場合、処理はCREATEのラベルが付された矢印を介してステップ625へ進み、ステップ615で読み込んだ操作の対象であるオブジェクトに対応するDBTに対してCREATE操作に対応するDBT処理が実行され、次いでステップ640に進む。このCREATE操作に対応するDBT処理は、図7のフローチャートを用いて後で詳細に説明される。ステップ620において、ステップ515で読み込んだ操作がオブジェクトの更新UPDATEであると判定された場合、処理はUPDATEのラベルが付された矢印を介してステップ630へ進み、ステップ615で読み込んだ操作の対象であるオブジェクトに対応するDBTに対してUPDATE操作に対応するDBT処理が実行され、次いでステップ640に進む。このUPDATE操作に対応するDBT処理は、図8のフローチャートを用いて後で詳細に説明される。ステップ620において、ステップ615で読み込んだ操作がオブジェクトの削除DELETEであると判定された場合、処理はDELETEのラベルが付された矢印を介してステップ635に進み、ステップ615で読み込んだ操作の対象であるオブジェクトに対応するDBTに対してDELETE操作に対応するDBT処理が実行され、次いでステップ640に進む。このDELETE操作に対応するDBT処理は、図9のフローチャートを用いて後で詳細に説明される。ステップ640では、ステップ615で読み込まれた操作の対象であるオブジェクトに対応するDBTのエントリがすべて埋まっているかどうかが判定される。ステップ640でDBTのエントリが埋まっていると判定されなかった場合、処理はNOの矢印を介してステップ650に進む。ステップ640でDBTのエントリが埋まっていると判定された場合、処理はステップ645に進み、DBTを用いたグラフリポジトリ275内のグラフデータの変更が実施される。このグラフデータの変更処理は、図10のフローチャートを用いて後で詳細に説明される。処理はステップ650に進み、操作ログにまだ操作が残っているかどうかが判定される。ステップ650で残っていると判定された場合は、処理はYESの矢印からステップ615に戻り、操作ログ内の次の一つの操作について同様の処理を繰り返す。ステップ650で残っていないと判定された場合、処理はNOの矢印からステップ655へ進み終了する。次に、図7のフローチャート625を使用して、図6のステップ625におけるオブジェクトデータ内のオブジェクトの生成CREATE操作に対応するDBT処理の一例をより詳細に説明する。図6は、本発明の実施形態におけるデータ処理システムのオブジェクトの生成CREATE操作に対応するDBT処理の動作を表現するフローチャートである。処理はステップ705からスタートし、ステップ710においてステップ615で読み込んだ生成CREATE操作の対象となるオブジェクトに対応するカーネルパターンを特定する。次いで、ステップ715において、対象オブジェクトに対応するカーネルパターンの代表ノードにマッチするノードのための識別子を決定する。次に、ステップ720において当該カーネルパターンに対応するDBTを新規に生成し、ステップ725において新規に生成されたDBTにカーネルパターンの代表ノードと、当該代表ノードにマッチするグラフデータ内のノードステップ715で生成した識別子によって表されるのエントリを追加する。処理はステップ730において共有ノードを問い合わせるためのSPARQL言語に従うクエリをカーネルパターンから生成する。共有ノードとは、あるオブジェクトに関連するグラフデータのノードのうち、他のオブジェクトにも関連し得るノードをいうものとする。すなわち、共有ノードは、グラフデータの準同型写像の像であるデータ構造に変換できない部分である。本発明の実施形態では、一般ノード変数、直接指定ノード、リテラルノードのみから成るパターンにマッチするノードが共有ノードとなり得る。本発明の実施形態では、グラフリポジトリ275には2つのノードとそれらを接続するエッジの組の集合としてRDFフォーマットに従うグラフデータが記憶されているものとする。したがって、共有ノードを問い合わせるためのクエリは、カーネルパターン内の12つの一般ノード変数とそれらを接続するエッジの組2一般ノード変数と直接指定ノードおよびそれらを接続するエッジの組3一般ノード変数とリテラルノードおよびそれらを接続するエッジの組42つの直接指定ノードとそれらを接続するエッジの組5直接指定ノードとリテラルノードおよびそれらを接続するエッジの組、を抽出して、これらの条件を満たすノードを問い合わせるようなクエリを生成するとよい。次いでステップ735において、ステップ730で生成したクエリをグラフリポジトリ275に送信し、返送されてきた共有ノードの情報に基づいて、ステップ725において生成したDBTに共有ノードに対応するエントリを追加する。そして、処理はステップ740に進み、終了する。この時点で、代表ノードと共有ノード存在する場合についてのみエントリが存在し、残余のノード等については空のエントリとなっているDBTが形成されることとなる。図8のフローチャート630を使用して、図6のステップ630におけるオブジェクトデータ内のオブジェクトの更新UPDATE操作に対応するDBT処理の一例をより詳細に説明する。図7は、本発明の実施形態におけるデータ処理システムのオブジェクトの更新UPDATE操作に対応するDBT処理の動作を表現するフローチャートである。処理はステップ805からスタートし、ステップ810においてステップ615で読み込んだ更新UPDATE操作の対象となるオブジェクトに対応するDBTを特定する。次いで、ステップ815においてステップ615で読み込んだ更新UPDATE操作の内容に応じて、ステップ810において特定したDBTのエントリを更新する。処理はステップ820に進み、ステップ815において更新したエントリに更新マークが付けられ、ステップ825にて処理が終了する。図9のフローチャート635を使用して、図6のステップ625におけるオブジェクトデータ内のオブジェクトの削除DELETE操作に対応するDBT処理の一例をより詳細に説明する。図8は、本発明の実施形態におけるデータ処理システムのオブジェクトの削除DELETE操作に対応するDBT処理の動作を表現するフローチャートである。処理はステップ905からスタートし、ステップ910においてステップ615で読み込んだ削除DELETE操作の対象となるオブジェクトに対応するDBTを特定する。次いで、ステップ915においてステップ910で特定されたDBTに削除マークが付され、ステップ920にて処理が終了する。次に、図10のフローチャート645を使用して、図6のステップ645におけるDBTに基づくグラフリポジトリ内のグラフデータの変更処理の一例をより詳細に説明する。図10は、本発明の実施形態におけるデータ処理システムのグラフデータ変更処理の動作を表現するフローチャートである。処理はステップ1005からスタートし、ステップ1010で、ステップ615で読み込んだ操作の対象となるオブジェクトに対応するカーネルパターンを特定する。処理はステップ1015に進み、ステップ615で読み込んだ操作の対象となるオブジェクトに対応するDBTに削除マークが付されているかどうかが判定される。ステップ1015においてにDBTに削除マークが付されていると判定された場合、処理はYESの矢印からステップ1020に進む。ステップ1020では、ステップ1010において特定されたカーネルパターンを用いて、操作対象のオブジェクトに含まれるグラフデータのノードのうち、共有ノードではないノードを特定する。具体的には、ステップ730とともに説明した共有ノードを問い合わせるクエリを生成してグラフリポジトリ275に送信して、共有ノードを特定し、操作対象のオブジェクトに含まれるグラフデータのノードから特定された共有ノードを除外するとよい。次いで、ステップ1025において、ステップ1020で特定された共有ノードでないノードの集合からノードを一つ取り出し、処理はステップ1030に進む。ステップ1030においては、ステップ1025で取り出されたノードに関連するグラフデータのノードおよび/またはエッジを、グラフリポジトリに問合せを行うことによって削除する。ステップ1035において、ステップ1020で特定されたノードがまだ残っているかどうかが判定される。残っていると判定された場合は、YESの矢印を介してステップ1025に戻り、同様の処理が繰り返される。残っていないと判定された場合は、NOの矢印からステップ1060に進み、処理は終了する。ステップ1015においてにDBTに削除マークが付されていると判定されなかった場合、処理はNOの矢印からステップ1040に進む。ステップ1040では、ステップ615で読み込んだ操作の対象となるオブジェクトに対応するDBT内の更新マークが付けられたエントリが特定される。次いで、ステップ1045において、ステップ1040で特定された更新マークが付けられたエントリの集合からエントリを一つ取り出し、処理はステップ1050に進む。ステップ1050においては、ステップ1045で取り出されたエントリの内容に従って、グラフリポジトリ内のグラフデータのノードおよび/またはエッジを更新する。ステップ1055において、ステップ1040で特定されたエントリがまだ残っているかどうかが判定される。残っていると判定された場合は、YESの矢印を介してステップ1045に戻り、同様の処理が繰り返される。残っていないと判定された場合は、NOの矢印からステップ1060に進み、処理は終了する。以上、オブジェクトデータの操作処理およびそれに伴うグラフリポジトリ内のグラフデータへの反映処理を説明したが、以下に2つの例によってオブジェクト操作とそれに伴うDBTの処理等を示す。図19は、オブジェクト操作の流れの第1の例である。この第1の例では、図18に示されたオブジェクトデータに新たにオブジェクト1905Memberが生成CREATEされ、次いで、生成されたオブジェクト1905に属性値Yamadaが入力されUPDATE、次いで、オブジェクト1810およびオブジェクト1905の間に関連1915が追加されたUPDATEものとする。図20は、オブジェクト操作の流れの第1の例の操作ログである。上述のオブジェクト生成操作、属性値の入力操作、関連の追加操作がそれぞれ操作ログ2005、2010、2015として記録されている。図21は、オブジェクト操作の流れの第1の例に応じて変化するDBTを示している。まず、オブジェクト1905の生成に対応する操作ログ2005を読み込んでDBT処理をすることによって、代表ノード変数Aと一般ノード変数S1のエントリのみが存在するDBT2105が生成される。次いで、属性値Yamadaの入力に対応する操作ログ2010を読み込んでDBT処理を行うことによって、DBT2105のユニークノードNのエントリが更新される。そして、すべてのエントリが存在することとなったDBT2105に基づいて、グラフリポジトリ275内のグラフデータの変更が実施される。次いで、関連1915の追加に対応する操作ログ2015を読み込んでDBT処理をすることによって、DBT1530のインターリンクmembersのエントリに関連1915に対応する情報2110が追加される。そして、DBT1530に基づいて、グラフリポジトリ275内のグラフデータの変更が実施される。これらの変更がされた結果のグラフリポジトリ275内のグラフデータを図22に示す。図23は、オブジェクト操作の流れの第2の例である。この第2の例では、図22に示された第1の例の操作が施された後のオブジェクトデータに対して、まず既存のオブジェクト2305の属性値をSuzukiからSuzutaに変更UPDATEし、次いで、関連1915の削除UPDATEおよびオブジェクト1905の削除DELETEを行ったものとする図24は、オブジェクト操作の流れの第2の例の操作ログである。上述のオブジェクト属性値の変更操作、関連の削除捜査、オブジェクトの削除操作がそれぞれ操作ログ2405、2410、2415として記録されている。図25は、オブジェクト操作の流れの第2の例に応じて変化するDBTを示している。まず、オブジェクト2305の属性値変更に対応する操作ログ2405を読み込んでDBT処理をすることによって、DBT1525の属性値2505が変更される。そして、DBT1525に基づいて、グラフリポジトリ275内のグラフデータの変更が実施される。次いで、関連1915の削除に対応する操作ログ2410を読み込んでDBT処理をすることによって、DBT1530のインターリンクmembersのエントリに関連1915に対応する情報2110が削除される。そして、DBT1530に基づいて、グラフリポジトリ275内のグラフデータの変更が実施される。さらに、オブジェクト1905の削除操作に対応する操作ログ2415を読み込んでDBT処理をすることによって、DBT2105に削除マーク2510が付される。この削除マーク2510が付されたDBT2105に基づいて、グラフリポジトリ275内のグラフデータの変更が実施される。これらの変更がされた結果のグラフリポジトリ275内のグラフデータを図26に示す。図27は、本発明の実施の形態による端末100、105、サーバ110等を実現するのに好適な情報処理装置のハードウェア構成の一例を示した図である。情報処理装置は、バス2に接続されたCPU中央処理装置1とメインメモリ4を含んでいる。ハードディスク装置13、30、およびCD-ROM装置26、29、フレキシブルディスク装置20、MO装置28、DVD装置31のようなリムーバブルストレージ記録メディアを交換可能な外部記憶システムがフロッピーディスクコントローラ19、IDEコントローラ25、SCSIコントローラ27などを経由してバス2へ接続されている。フレキシブルディスク、MO、CD-ROM、DVD-ROMのような記憶メディアが、リムーバブルストレージに挿入される。これらの記憶メディアやハードディスク装置13、30、ROM14には、オペレーティングシステムと協働してCPU等に命令を与え、本発明を実施するためのコンピュータプログラムのコードを記録することができる。メインメモリ4にロードされることによってコンピュータプログラムは実行される。コンピュータプログラムは圧縮し、また複数に分割して複数の媒体に記録することもできる。情報処理装置は、キーボード/マウスコントローラ5を経由して、キーボード6やマウス7のような入力デバイスからの入力を受ける。情報処理装置は、視覚データをユーザに提示するための表示装置11にDAC/LCDC10を経由して接続される。情報処理装置は、ネットワークアダプタ18イーサネットRカードやトークンリングカード等を介してネットワークに接続し、他のコンピュータ等と通信を行うことが可能である。図示はされていないが、パラレルポートを介してプリンタと接続することや、シリアルポートを介してモデムを接続することも可能である。以上の説明により、本発明の実施の形態によるデータ処理システムを実現するのに好適な情報処理装置は、通常のパーソナルコンピュータ、ワークステーション、メインフレームなどの情報処理装置、または、これらの組み合わせによって実現されることが容易に理解されるであろう。ただし、これらの構成要素は例示であり、そのすべての構成要素が本発明の必須構成要素となるわけではない。本発明の実施の形態において使用される情報処理装置の各ハードウェア構成要素を、複数のマシンを組み合わせ、それらに機能を配分し実施する等の種々の変更は当業者によって容易に想定され得ることは勿論である。それらの変更は、当然に本発明の思想に包含される概念である。本発明の実施の形態のデータ処理システムは、マイクロソフトコーポレーションが提供するWindowsRオペレーティングシステム、アップルコンピュータインコーポレイテッドが提供するMacOSR、XWindowSystemを備えるUNIXR系システムたとえば、インターナショナルビジネスマシーンズコーポレーションが提供するAIXRのような、GUIグラフィカルユーザーインターフェースマルチウインドウ環境をサポートするオペレーティングシステムを採用する。以上から、本発明の実施の形態において使用されるデータ処理システムは、特定のマルチウインドウオペレーティングシステム環境に限定されるものではないことを理解することができる。以上、本発明の実施形態によれば、グラフデータを各種アプリケーションによる操作を元のグラフデータに反映することができるデータ構造に変換する、効率的なシステム、ソフトウェア、および方法が実現される。従って、オブジェクトハンドリングシステムを操作してオブジェクトデータを操作することによってグラフリポジトリに格納されたグラフデータを編集するユーザの生産性を高めることができることが容易に理解できる。また、本発明は、ハードウェア、ソフトウェア、またはハードウェア及びソフトウェアの組み合わせとして実現可能である。ハードウェアとソフトウェアの組み合わせによる実行において、所定のプログラムを有するデータ処理システムにおける実行が典型的な例として挙げられる。かかる場合、該所定プログラムが該データ処理システムにロードされ実行されることにより、該プログラムは、データ処理システムを制御し、本発明にかかる処理を実行させる。このプログラムは、任意の言語コード表記によって表現可能な命令群から構成される。そのような命令群は、システムが特定の機能を直接、または1.他の言語コード表記への変換、2.他の媒体への複製、のいずれか一方もしくは双方が行われた後に、実行することを可能にするものである。もちろん、本発明は、そのようなプログラム自体のみならず、プログラムを記録した媒体もその範囲に含むものである。本発明の機能を実行するためのプログラムは、フレキシブルディスク、MO、CD-ROM、DVD、ハードディスク装置、ROM、MRAM、RAM等の任意のコンピュータ読み取り可能な記録媒体に格納することができる。かかるプログラムは、記録媒体への格納のために、通信回線で接続する他のデータ処理システムからダウンロードしたり、他の記録媒体から複製したりすることができる。また、かかるプログラムは、圧縮し、または複数に分割して、単一または複数の記録媒体に格納することもできる。また、様々な形態で、本発明を実施するプログラム製品を提供することも勿論可能であることにも留意されたい。上記の実施の形態に、種々の変更または改良を加えることが可能であることが当業者に明らかである。例えば、そのような変更または改良を加えた形態も当然に本発明の技術的範囲に含まれる。