JP4886693B2 - 情報処理方法、情報処理装置および情報処理プログラム - Google Patents
情報処理方法、情報処理装置および情報処理プログラム Download PDFInfo
- Publication number
- JP4886693B2 JP4886693B2 JP2007530961A JP2007530961A JP4886693B2 JP 4886693 B2 JP4886693 B2 JP 4886693B2 JP 2007530961 A JP2007530961 A JP 2007530961A JP 2007530961 A JP2007530961 A JP 2007530961A JP 4886693 B2 JP4886693 B2 JP 4886693B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- tree
- array
- parent
- identifier
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9027—Trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/81—Indexing, e.g. XML tags; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/84—Mapping; Conversion
- G06F16/86—Mapping to a database
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
あるツリーから、特定のノードである頂点ノードおよびその子孫ノードからなる部分ツリーを削除し、かつ、当該部分ツリー削除後のツリーのツリー型データ構造について、前記記憶装置中に親子関係定義配列を生成する情報処理方法であって、
前記部分ツリーを削除すべきツリーの親子関係定義配列を、前記記憶装置から読み出すステップと、
前記部分ツリーにおいて最もルート・ノードに近い位置にある頂点ノードのノード識別子、および、前記親子関係定義配列を参照して、記憶装置に生成された、前記親子関係定義配列と同一サイズの消去フラグ配列中、前記部分ツリーを構成するノードのノード識別子について、当該フラグをセットするステップと、
前記消去フラグ配列を参照して、前記部分ツリーの削除後のツリーについて、それぞれのノードに、親子関係にあるノードについて、親ノードのノード識別子は、子ノードのノード識別子より小さいという関係を満たす連続する整数であるノード識別子を付与し、付与された新たなノード識別子を、削除前のツリーのノードのノード識別子と関連付けて格納した新規ノード識別子配列を、記憶装置に生成するステップと、
前記親子関係定義配列および前記新規ノード識別子配列に基づいて、前記新たなノード識別子に関連付けて、当該ノード識別子をもつノードの親ノードのノード識別子を格納した、部分ツリー削除後の親子関係定義配列を、前記記憶装置に生成するステップと、
を備えたことを特徴とする情報処理方法により達成される。
前記新規ノード識別子配列を生成するステップが、前記それぞれのノードに、子ノードより同じ世代のノードを優先して付与された連続する整数であるノード識別子を付与するステップを含む。
前記新規ノード識別子配列を生成するステップが、前記それぞれのノードに、同じ世代のノードより子ノードを優先して付与された整数であるノード識別子を付与するステップを含んでいてもよい。
前記新規ノード識別子配列を参照して、もとのノード識別子と新たなノード識別子との関連付けにしたがって、前記ノード値格納配列を更新するステップを備えている。
前記新規ノード識別子配列を参照して、もとのノード識別子と新たなノード識別子との関連付けにしたがって、新たなノード識別子の各々と関連付けて、前記ノード値を格納した、新たなノード値格納配列を生成するステップを備えている。
前記親子関係定義配列と同一のサイズの新規ノード識別子配列のための領域を、前記記憶装置中に確保するステップと、
新たなノード識別子を一時的に記憶するカレントノード識別子領域を、前記記憶装置中に確保して、その初期値を格納するステップと、
前記消去フラグ配列を参照して、前記消去フラグ配列の値がセットされていない場合には、当該新規ノード識別子配列の値として、前記カレントノード識別子領域の値を格納し、その後、前記カレントノード識別子領域の値を増分し、その一方、消去フラグ配列の値がセットされている場合には、当該新規ノード識別子配列の値として無効値を格納するステップと、を備えている。
前記親子関係定義配列と同一サイズの格納アドレス配列のための領域を、前記記憶装置中に確保するステップと、
前記新規ノード識別子配列中、前記親子関係定義配列の値の格納位置と同じ位置の値を参照して、値が無効値である場合を除き、前記格納アドレス配列に、前記新規ノード識別子配列中の値を格納するステップと、
前記親子関係定義配列と同一サイズの親ノード識別子配列のための領域を、前記記憶装置中に確保するステップと、
前記新規ノード識別子配列中、前記親子関係定義配列の値が示す位置の値を参照して、前記親ノード識別子配列中、前記親子関係定義配列の値の位置と同じ位置に、前記新規ノード識別子配列の値を格納するステップと、
前記格納アドレス配列中の値に関連付けて、前記親ノード識別子配列の値を格納した親子関係定義配列を生成するステップと、を含む。
あるツリーを被挿入側ツリーとして、当該被挿入側ツリーの特定のノードに、他のツリーである挿入側ツリーのルート・ノードを連結することにより、当該挿入側ツリーを追加し、当該挿入後のツリーのツリー型データ構造について、前記記憶装置中に親子関係定義配列を生成する情報処理方法であって、
被挿入側ツリーの第1の親子関係定義配列、および、挿入側ツリーの第2の親子関係定義配列を記憶装置から読み出すステップと、
前記挿入側ツリーのルート・ノードを、被挿入側ツリーの部分ツリー中、最もルート・ノードに近い位置にある頂点ノードとして、当該頂点ノードが挿入される位置の情報に基づいて、挿入側ツリーのそれぞれのノードに隣接する、被挿入側ツリーのノードを特定し、当該被挿入側ツリーのノードの情報を、前記記憶装置に記憶するステップと、
前記被挿入側ツリーのノードの情報を参照して、前記挿入側ツリーの挿入後の前記被挿入側ツリーについて、それぞれのノードに、子ノードよりも同じ世代のノードを優先して付与された連続する整数であるノード識別子を付与し、付与された新たなノード識別子を、挿入前の被挿入側ツリーのノードのノード識別子と関連付けて格納した第1の新規ノード識別子配列を、前記記憶装置に生成するとともに、前記挿入側ツリーの頂点ノードが挿入される位置の情報に基づいて、前記挿入側ツリーの挿入後の前記挿入側ツリーについて、それぞれのノードに、子ノードよりも同じ世代のノードを優先して付与された連続する整数であるノード識別子を付与し、付与された新たなノード識別子を、挿入前の挿入側ツリーのノードのノード識別子と関連付けて格納した第2の新規ノード識別子配列を、前記記憶装置に生成するステップと、
前記第1および第2の親子関係定義配列、および、前記第1および第2の新規ノード識別子配列に基づいて、前記新たなノード識別子に関連付けて、当該ノード識別子をもつノードの親ノードのノード識別子を格納した、挿入後のツリーの親子関係定義配列を、前記記憶装置に生成するステップと、
を備えたことを特徴とする情報処理方法により達成される。
前記第1および第2の新規ノード識別子配列を参照して、被挿入側ツリーおよび挿入側ツリーのそれぞれのもとのノード識別子と、挿入後のツリーの新たなノード識別子との関連付けにしたがって、前記第1のノード値格納配列および第2のノード配列の少なくとも一方を更新するステップを備えている。
前記第1および第2の新規ノード識別子配列を参照して、被挿入側ツリーおよび挿入側ツリーのそれぞれのもとのノード識別子と、挿入後のツリーの新たなノード識別子との関連付けにしたがって、新たなノード識別子の各々と関連付けて、前記ノード値を格納した、新たなノード値格納配列を生成するステップを備えている。
前記挿入側ツリーの頂点ノードが挿入される位置の情報に基づいて、前記第1の親子関係定義配列と同一のサイズの挿入マーク配列中、前記挿入される位置の直後のノードおよび前記直後のノードを先祖とするノードについて、当該挿入位置であることを示す値を格納するステップを含む。
前記第1のレベル配列中、前記挿入側ツリーの頂点ノードの挿入位置に相当するレベル値を参照して、前記挿入側ツリーの各ノードの、前記被挿入側ツリーの頂点ノードからの深さのレベルを表すレベル値を格納した第2のレベル配列を、前記記憶装置に生成するステップと、を備え、
前記第1および第2の新規ノード識別子配列を生成するステップが、
前記第1および第2の親子関係定義配列と、それぞれ、同一のサイズの第1および第2の新規ノード識別子配列のための領域を、前記記憶装置中に確保するステップと、
新たなノード識別子を一時的に記憶するカレントノード識別子領域を、前記記憶装置中に確保して、その初期値を格納するステップと、を含み、
前記挿入マーク配列中、その値が、挿入位置であることを示す値に変化している位置以外の位置においては、
(a)前記第1の新規ノード識別子配列中、当該位置の値として、前記カレントノード識別子領域の値を格納し、
(b)その後、前記カレントノード識別子領域の値を増分する
ステップをさらに含み、
前記挿入マーク配列中、当該挿入マーク配列の値が、挿入位置であることを示す値に変化する位置においては、
(a)前記第1のレベル配列中、当該位置のレベル値を参照し、かつ、前記第2のレベル配列中、同一のレベル値を有する範囲を特定し、
(b)前記第2の新規ノード識別子配列中、当該範囲の先頭位置から順次、カレントノード識別子領域の値を格納し、
(c)その後、前記カレントノード識別子領域の値を増分し、
(d)前記第2の新規ノード識別子配列中、前記同一のレベル値を有する範囲への値の格納が終了すると、第1の新規ノード識別子配列の値として、前記カレントノード識別子領域の値を格納し、
(e)その後、前記カレントノード識別子領域の値を増分する
ステップを、さらに含む。
前記第1の親子関係定義配列と同一サイズの、第1の親ノード識別子配列のための領域を、前記記憶装置中に確保するステップと、
前記第1の新規ノード識別子配列中、前記第1の親子関係定義配列の値が示す位置の値を参照して、前記第1の親ノード識別子配列中、前記親子関係定義配列の値の位置と同じ位置に、前記第1の新規ノード識別子配列の値を格納するステップと、
前記第1の新規ノード識別子配列の値と、前記第1の親ノード識別子配列の値とを関連付けるステップと、
前記第2の親子関係定義配列と同一サイズの、第2の親ノード識別配列のための領域を、前記記憶装置中に確保するステップと、
前記第2の新規ノード識別子配列中、先頭の値として、前記挿入側ノードの頂点ノードの親ノードとなるノードのノード識別子を格納するともに、他の値として、前記第2の親子関係定義配列の値が示す位置の値を参照して、前記第2の親ノード識別子配列中、前記親子関係定義配列の値の位置と同じ位置に、前記第2の新規ノード識別子配列の値を格納するステップと、
前記第2の新規ノード識別子配列の値と、前記第2の親ノード識別子配列の値とを関連付けるステップと、
前記第1の新規ノード識別子配列の値および前記第2の新規ノード識別子配列の値のそれぞれに関連付けられた、前記第1の親ノード識別子配列の値および第2の親ノード識別子配列の値を、挿入後の親子関係定義配列に格納するステップと、を含む。
前記部分ツリーを削除すべきツリーの親子関係定義配列を、前記記憶装置から読み出すデータ読み出し手段と、
前記部分ツリーにおいて最もルート・ノードに近い位置にある頂点ノードのノード識別子、および、前記親子関係定義配列を参照して、記憶装置に生成された、前記親子関係定義配列と同一サイズの消去フラグ配列中、前記部分ツリーを構成するノードのノード識別子について、当該フラグをセットする消去フラグ配列生成手段と、
前記消去フラグ配列を参照して、前記部分ツリーの削除後のツリーについて、それぞれのノードに、親子関係にあるノードについて、親ノードのノード識別子は、子ノードのノード識別子より小さいという関係を満たす連続する整数であるノード識別子を付与し、付与された新たなノード識別子を、削除前のツリーのノードのノード識別子と関連付けて格納した新規ノード識別子配列を、記憶装置に生成する新規ノード識別子配列生成手段と、
前記親子関係定義配列および前記新規ノード識別子配列に基づいて、前記新たなノード識別子に関連付けて、当該ノード識別子をもつノードの親ノードのノード識別子を格納した、部分ツリー削除後の親子関係定義配列を、前記記憶装置に生成する削除後親子関係配列生成手段と、
を備えたことを特徴とする情報処理装置により達成される。
前記新規ノード識別子生成手段が、前記それぞれのノードに、子ノードより同じ世代のノードを優先して付与された連続する整数であるノード識別子を付与するように構成されている。
前記新規ノード生成手段が、前記それぞれのノードに、同じ世代のノードより子ノードを優先して付与された連続する整数であるノード識別子を付与するように構成されている。
前記新規ノード識別子配列を参照して、もとのノード識別子と新たなノード識別子との関連付けにしたがって、前記ノード値格納配列を更新するノード値格納配列更新手段を備えている。
前記新規ノード識別子配列を参照して、もとのノード識別子と新たなノード識別子との関連付けにしたがって、新たなノード識別子の各々と関連付けて、前記ノード値を格納した、新たなノード値格納配列を生成するノード値格納配列生成手段を備えている。
前記親子関係定義配列と同一のサイズの新規ノード識別子配列のための領域を、前記記憶装置中に確保し、
新たなノード識別子を一時的に記憶するカレントノード識別子領域を、前記記憶装置中に確保して、その初期値を格納し、
前記消去フラグ配列を参照して、前記消去フラグ配列の値がセットされていない場合には、当該新規ノード識別子配列の値として、前記カレントノード識別子領域の値を格納し、その後、前記カレントノード識別子領域の値を増分し、その一方、消去フラグ配列の値がセットされている場合には、当該新規ノード識別子配列の値として無効値を格納するように構成されている。
前記親子関係定義配列と同一サイズの格納アドレス配列のための領域を、前記記憶装置中に確保し、
前記新規ノード識別子配列中、前記親子関係定義配列の値の格納位置と同じ位置の値を参照して、値が無効値である場合を除き、前記格納アドレス配列に、前記新規ノード識別子配列中の値を格納し、
前記親子関係定義配列と同一サイズの親ノード識別子配列のための領域を、前記記憶装置中に確保し、
前記新規ノード識別子配列中、前記親子関係定義配列の値が示す位置の値を参照して、前記親ノード識別子配列中、前記親子関係定義配列の値の位置と同じ位置に、前記新規ノード識別子配列の値を格納し、
前記格納アドレス配列中の値に関連付けて、前記親ノード識別子配列の値を格納した親子関係定義配列を生成するように構成されている。
被挿入側ツリーの第1の親子関係定義配列、および、挿入側ツリーの第2の親子関係定義配列を記憶装置から読み出すデータ読み出し手段と、
前記挿入側ツリーのルート・ノードを、被挿入側ツリーの部分ツリー中、最もルート・ノードに近い位置にある頂点ノードとして、当該頂点ノードが挿入される位置の情報に基づいて、挿入側ツリーのそれぞれのノードに隣接する、被挿入側ツリーのノードを特定し、当該被挿入側ツリーのノードの情報を、前記記憶装置に記憶する挿入位置情報生成手段と、
前記被挿入側ツリーのノードの情報を参照して、前記挿入側ツリーの挿入後の前記被挿入側ツリーについて、それぞれのノードに、子ノードよりも同じ世代のノードを優先して付与された連続する整数であるノード識別子を付与し、付与された新たなノード識別子を、挿入前の被挿入側ツリーのノードのノード識別子と関連付けて格納した第1の新規ノード識別子配列を、前記記憶装置に生成するとともに、前記挿入側ツリーの頂点ノードが挿入される位置の情報に基づいて、前記挿入側ツリーの挿入後の前記挿入側ツリーについて、それぞれのノードに、子ノードよりも同じ世代のノードを優先して付与された連続する整数であるノード識別子を付与し、付与された新たなノード識別子を、挿入前の挿入側ツリーのノードのノード識別子と関連付けて格納した第2の新規ノード識別子配列を、前記記憶装置に生成する新規ノード識別子配列生成手段と、
前記第1および第2の親子関係定義配列、および、前記第1および第2の新規ノード識別子配列に基づいて、前記新たなノード識別子に関連付けて、当該ノード識別子をもつノードの親ノードのノード識別子を格納した、挿入後のツリーの親子関係定義配列を、前記記憶装置に生成する挿入後親子関係定義配列生成手段と、
を備えたことを特徴とする情報処理装置によっても達成される。
前記第1および第2の新規ノード識別子配列を参照して、被挿入側ツリーおよび挿入側ツリーのそれぞれのもとのノード識別子と、挿入後のツリーの新たなノード識別子との関連付けにしたがって、前記第1のノード値格納配列および第2のノード配列の少なくとも一方を更新するノード値格納配列更新手段を備えている。
前記第1および第2の新規ノード識別子配列を参照して、被挿入側ツリーおよび挿入側ツリーのそれぞれのもとのノード識別子と、挿入後のツリーの新たなノード識別子との関連付けにしたがって、新たなノード識別子の各々と関連付けて、前記ノード値を格納した、新たなノード値格納配列を生成するノード値格納配列生成手段を備えている。
前記挿入側ツリーの頂点ノードが挿入される位置の情報に基づいて、前記第1の親子関係定義配列と同一のサイズの挿入マーク配列中、前記挿入される位置の直後のノードおよび前記直後のノードを先祖とするノードについて、当該挿入位置であることを示す値を格納するように構成されている。
前記第1のレベル配列中、前記挿入側ツリーの頂点ノードの挿入位置に相当するレベル値を参照して、前記挿入側ツリーの各ノードの、前記被挿入側ツリーの頂点ノードからの深さのレベルを表すレベル値を格納した第2のレベル配列を、前記記憶装置に生成する第2のレベル配列生成手段と、を備え、
前記新規ノード識別子配列生成手段が、
前記第1および第2の親子関係定義配列と、それぞれ、同一のサイズの第1および第2の新規ノード識別子配列のための領域を、前記記憶装置中に確保し、
新たなノード識別子を一時的に記憶するカレントノード識別子領域を、前記記憶装置中に確保して、その初期値を格納するように構成され、
前記挿入マーク配列中、その値が、挿入位置であることを示す値に変化している位置以外の位置においては、
(a)前記第1の新規ノード識別子配列中、当該位置の値として、前記カレントノード識別子領域の値を格納するとともに、
(b)その後、前記カレントノード識別子領域の値を増分するように構成され、
前記挿入マーク配列中、当該挿入マーク配列の値が、挿入位置であることを示す値に変化する位置においては、
(a)前記第1のレベル配列中、当該位置のレベル値を参照し、かつ、前記第2のレベル配列中、同一のレベル値を有する範囲を特定し、
(b)前記第2の新規ノード識別子配列中、当該範囲の先頭位置から順次、カレントノード識別子領域の値を格納し、
(c)その後、前記カレントノード識別子領域の値を増分し、
(d)前記第2の新規ノード識別子配列中、前記同一のレベル値を有する範囲への値の格納が終了すると、第1の新規ノード識別子配列の値として、前記カレントノード識別子領域の値を格納し、
(e)その後、前記カレントノード識別子領域の値を増分するように構成されている。
前記第1の親子関係定義配列と同一サイズの、第1の親ノード識別子配列のための領域を、前記記憶装置中に確保し、
前記第1の新規ノード識別子配列中、前記第1の親子関係定義配列の値が示す位置の値を参照して、前記第1の親ノード識別子配列中、前記親子関係定義配列の値の位置と同じ位置に、前記第1の新規ノード識別子配列の値を格納し、
前記第1の新規ノード識別子配列の値と、前記第1の親ノード識別子配列の値とを関連付け、
前記第2の親子関係定義配列と同一サイズの、第2の親ノード識別配列のための領域を、前記記憶装置中に確保し、
前記第2の新規ノード識別子配列中、先頭の値として、前記挿入側ノードの頂点ノードの親ノードとなるノードのノード識別子を格納するともに、他の値として、前記第2の親子関係定義配列の値が示す位置の値を参照して、前記第2の親ノード識別子配列中、前記親子関係定義配列の値の位置と同じ位置に、前記第2の新規ノード識別子配列の値を格納し、
前記第2の新規ノード識別子配列の値と、前記第2の親ノード識別子配列の値とを関連付け、
前記第1の新規ノード識別子配列の値および前記第2の新規ノード識別子配列の値のそれぞれに関連付けられた、前記第1の親ノード識別子配列の値および第2の親ノード識別子配列の値を、挿入後の親子関係定義配列に格納するように構成されている。
あるツリーから、特定のノードである頂点ノードおよびその子孫ノードからなる部分ツリーを削除し、かつ、当該部分ツリー削除後のツリーのツリー型データ構造について、前記記憶装置中に親子関係定義配列を生成するために、前記コンピュータにより読み出し可能な情報処理プログラムであって、前記コンピュータに、
前記部分ツリーを削除すべきツリーの親子関係定義配列を、前記記憶装置から読み出すステップと、
前記部分ツリーにおいて最もルート・ノードに近い位置にある頂点ノードのノード識別子、および、前記親子関係定義配列を参照して、記憶装置に生成された、前記親子関係定義配列と同一サイズの消去フラグ配列中、前記部分ツリーを構成するノードのノード識別子について、当該フラグをセットするステップと、
前記消去フラグ配列を参照して、前記部分ツリーの削除後のツリーについて、それぞれのノードに、親子関係にあるノードについて、親ノードのノード識別子は、子ノードのノード識別子より小さいという関係を満たす連続する整数であるノード識別子を付与し、付与された新たなノード識別子を、削除前のツリーのノードのノード識別子と関連付けて格納した新規ノード識別子配列を、記憶装置に生成するステップと、
前記親子関係定義配列および前記新規ノード識別子配列に基づいて、前記新たなノード識別子に関連付けて、当該ノード識別子をもつノードの親ノードのノード識別子を格納した、部分ツリー削除後の親子関係定義配列を、前記記憶装置に生成するステップと、
を実行させることを特徴とする情報処理プログラムにより達成される。
前記新規ノード識別子配列を生成するステップにおいて、前記コンピュータに、
前記それぞれのノードに、子ノードより同じ世代のノードを優先して付与された連続する整数であるノード識別子を付与するステップを実行させる。
前記新規ノード識別子配列を生成するステップにおいて、前記コンピュータに、
前記それぞれのノードに、同じ世代のノードより子ノードを優先して付与された整数であるノード識別子を付与するステップを実行させる。
前記新規ノード識別子配列を参照して、もとのノード識別子と新たなノード識別子との関連付けにしたがって、前記ノード値格納配列を更新するステップを実行させる。
前記新規ノード識別子配列を参照して、もとのノード識別子と新たなノード識別子との関連付けにしたがって、新たなノード識別子の各々と関連付けて、前記ノード値を格納した、新たなノード値格納配列を生成するステップを実行させる。
前記親子関係定義配列と同一のサイズの新規ノード識別子配列のための領域を、前記記憶装置中に確保するステップと、
新たなノード識別子を一時的に記憶するカレントノード識別子領域を、前記記憶装置中に確保して、その初期値を格納するステップと、
前記消去フラグ配列を参照して、前記消去フラグ配列の値がセットされていない場合には、当該新規ノード識別子配列の値として、前記カレントノード識別子領域の値を格納し、その後、前記カレントノード識別子領域の値を増分し、その一方、消去フラグ配列の値がセットされている場合には、当該新規ノード識別子配列の値として無効値を格納するステップと、を実行させる。
前記親子関係定義配列と同一サイズの格納アドレス配列のための領域を、前記記憶装置中に確保するステップと、
前記新規ノード識別子配列中、前記親子関係定義配列の値の格納位置と同じ位置の値を参照して、値が無効値である場合を除き、前記格納アドレス配列に、前記新規ノード識別子配列中の値を格納するステップと、
前記親子関係定義配列と同一サイズの親ノード識別子配列のための領域を、前記記憶装置中に確保するステップと、
前記新規ノード識別子配列中、前記親子関係定義配列の値が示す位置の値を参照して、前記親ノード識別子配列中、前記親子関係定義配列の値の位置と同じ位置に、前記新規ノード識別子配列の値を格納するステップと、
前記格納アドレス配列中の値に関連付けて、前記親ノード識別子配列の値を格納した親子関係定義配列を生成するステップと、を実行させる。
あるツリーを被挿入側ツリーとして、当該被挿入側ツリーの特定のノードに、他のツリーである挿入側ツリーのルート・ノードを連結することにより、当該挿入側ツリーを追加し、当該挿入後のツリーのツリー型データ構造について、前記記憶装置中に親子関係定義配列を生成するために、前記コンピュータにより読み出し可能な情報処理プログラムであって、前記コンピュータに、
被挿入側ツリーの第1の親子関係定義配列、および、挿入側ツリーの第2の親子関係定義配列を記憶装置から読み出すステップと、
前記挿入側ツリーのルート・ノードを、被挿入側ツリーの部分ツリー中、最もルート・ノードに近い位置にある頂点ノードとして、当該頂点ノードが挿入される位置の情報に基づいて、挿入側ツリーのそれぞれのノードに隣接する、被挿入側ツリーのノードを特定し、当該被挿入側ツリーのノードの情報を、前記記憶装置に記憶するステップと、
前記被挿入側ツリーのノードの情報を参照して、前記挿入側ツリーの挿入後の前記被挿入側ツリーについて、それぞれのノードに、子ノードよりも同じ世代のノードを優先して付与された連続する整数であるノード識別子を付与し、付与された新たなノード識別子を、挿入前の被挿入側ツリーのノードのノード識別子と関連付けて格納した第1の新規ノード識別子配列を、前記記憶装置に生成するとともに、前記挿入側ツリーの頂点ノードが挿入される位置の情報に基づいて、前記挿入側ツリーの挿入後の前記挿入側ツリーについて、それぞれのノードに、子ノードよりも同じ世代のノードを優先して付与された連続する整数であるノード識別子を付与し、付与された新たなノード識別子を、挿入前の挿入側ツリーのノードのノード識別子と関連付けて格納した第2の新規ノード識別子配列を、前記記憶装置に生成するステップと、
前記第1および第2の親子関係定義配列、および、前記第1および第2の新規ノード識別子配列に基づいて、前記新たなノード識別子に関連付けて、当該ノード識別子をもつノードの親ノードのノード識別子を格納した、挿入後のツリーの親子関係定義配列を、前記記憶装置に生成するステップと、
を実行させることを特徴とする情報処理プログラムにより達成される。
前記第1および第2の新規ノード識別子配列を参照して、被挿入側ツリーおよび挿入側ツリーのそれぞれのもとのノード識別子と、挿入後のツリーの新たなノード識別子との関連付けにしたがって、前記第1のノード値格納配列および第2のノード配列の少なくとも一方を更新するステップを実行させる。
前記第1および第2の新規ノード識別子配列を参照して、被挿入側ツリーおよび挿入側ツリーのそれぞれのもとのノード識別子と、挿入後のツリーの新たなノード識別子との関連付けにしたがって、新たなノード識別子の各々と関連付けて、前記ノード値を格納した、新たなノード値格納配列を生成するステップを実行させる。
前記挿入側ツリーの頂点ノードが挿入される位置の情報に基づいて、前記第1の親子関係定義配列と同一のサイズの挿入マーク配列中、前記挿入される位置の直後のノードおよび前記直後のノードを先祖とするノードについて、当該挿入位置であることを示す値を格納するステップを実行させる。
前記第1のレベル配列中、前記挿入側ツリーの頂点ノードの挿入位置に相当するレベル値を参照して、前記挿入側ツリーの各ノードの、前記被挿入側ツリーの頂点ノードからの深さのレベルを表すレベル値を格納した第2のレベル配列を、前記記憶装置に生成するステップと、を実行させ、
前記第1および第2の新規ノード識別子配列を生成するステップにおいて、前記コンピュータに、
前記第1および第2の親子関係定義配列と、それぞれ、同一のサイズの第1および第2の新規ノード識別子配列のための領域を、前記記憶装置中に確保するステップと、
新たなノード識別子を一時的に記憶するカレントノード識別子領域を、前記記憶装置中に確保して、その初期値を格納するステップと、を実行させ、
前記挿入マーク配列中、その値が、挿入位置であることを示す値に変化している位置以外の位置においては、前記コンピュータに、
(a)前記第1の新規ノード識別子配列中、当該位置の値として、前記カレントノード識別子領域の値を格納し、
(b)その後、前記カレントノード識別子領域の値を増分する
ステップを、さらに実行させ、
前記挿入マーク配列中、当該挿入マーク配列の値が、挿入位置であることを示す値に変化する位置においては、前記コンピュータに、
(a)前記第1のレベル配列中、当該位置のレベル値を参照し、かつ、前記第2のレベル配列中、同一のレベル値を有する範囲を特定し、
(b)前記第2の新規ノード識別子配列中、当該範囲の先頭位置から順次、カレントノード識別子領域の値を格納し、
(c)その後、前記カレントノード識別子領域の値を増分し、
(d)前記第2の新規ノード識別子配列中、前記同一のレベル値を有する範囲への値の格納が終了すると、第1の新規ノード識別子配列の値として、前記カレントノード識別子領域の値を格納し、
(e)その後、前記カレントノード識別子領域の値を増分するステップを、さらに実行させる。
前記第1の親子関係定義配列と同一サイズの、第1の親ノード識別子配列のための領域を、前記記憶装置中に確保するステップと、
前記第1の新規ノード識別子配列中、前記第1の親子関係定義配列の値が示す位置の値を参照して、前記第1の親ノード識別子配列中、前記親子関係定義配列の値の位置と同じ位置に、前記第1の新規ノード識別子配列の値を格納するステップと、
前記第1の新規ノード識別子配列の値と、前記第1の親ノード識別子配列の値とを関連付けるステップと、
前記第2の親子関係定義配列と同一サイズの、第2の親ノード識別配列のための領域を、前記記憶装置中に確保するステップと、
前記第2の新規ノード識別子配列中、先頭の値として、前記挿入側ノードの頂点ノードの親ノードとなるノードのノード識別子を格納するともに、他の値として、前記第2の親子関係定義配列の値が示す位置の値を参照して、前記第2の親ノード識別子配列中、前記親子関係定義配列の値の位置と同じ位置に、前記第2の新規ノード識別子配列の値を格納するステップと、
前記第2の新規ノード識別子配列の値と、前記第2の親ノード識別子配列の値とを関連付けるステップと、
前記第1の新規ノード識別子配列の値および前記第2の新規ノード識別子配列の値のそれぞれに関連付けられた、前記第1の親ノード識別子配列の値および第2の親ノード識別子配列の値を、挿入後の親子関係定義配列に格納するステップと、を実行させる。
図1は、本発明の実施の形態にかかるツリー型データ構造を取り扱う情報処理装置のハードウェア構成を示すブロックダイヤグラムである。図1に示すように、この情報処理装置10は、通常のコンピュータと同様の構成であり、プログラムを実行することにより装置全体および個々の構成部分を制御するCPU12、ワークデータなどを記憶するRAM(Random Access Memory)14、プログラム等を記憶するROM(Read Only Memory)16、ハードディスク装置18、CD−ROM19をアクセスするためのドライバ20、ドライバ20や外部ネットワーク(図示せず)と接続された外部端子との間に設けられたインタフェース(I/F)22、キーボードやマウスからなる入力装置24、表示装置26を備えている。CPU12、RAM14、ROM16、ハードディスク装置18、I/F22、入力装置24および表示装置26は、バス28を介して相互に接続されている。上記実施の形態では、コンピュータシステム10は、ドライバ20により、CD−ROM19に格納されたデータを読み出すように構成されているが、これに限定されるものではなく、CD−R/W、DVD−ROM,DVD−RAMなどに格納されたデータを読み出し可能に構成しても良い。
図2A、Bは、ツリー型データの一例であるPOSデータの説明図であり、図2Aは、このツリー型データのデータ構造(即ち、トポロジー)及びデータ値を視覚的に表現した一例であり、図2Bは、同じツリー型データをXML形式で表現した一例である。図2A、Bに示されるようにツリー型データ構造は、ルート・ノード(本例では、POSデータ)から始めて、各ノードで枝分かれしてリーフ・ノード(端点)に至るノードとアークの組み合わせによって表現される。各ノードには、項目名情報、すなわち、ノードのタイプと、項目値情報、すなわち、ノードの値が関連付けられ、図2Bの例では、XML形式の
<shopName>フランス店</shopName>
に対応したノードは、「shopName(=店名)」というノードタイプと「フランス店」というノード値が関連付けられている。この関連付けは、例えば、ノードタイプ及びノード値を記述する情報が格納されたノード情報格納領域へのポインタを、ノード識別子に随伴させることによって実現することができる。しかし、本発明は、ツリー型データ構造の実体的な値の取り扱い方によって限定されないことに注意する必要がある。
図3A〜Cの例では、アークリストは、親ノードに子ノードを対応付ける「親→子」関係に基づいて記述されている。そのため、一つの親ノード、例えば、ルート・ノード0には、3個の子ノード10、60及び80が存在するため、アークリストのFrom−IDには、同じノードIDの「0」が3回出現している。つまり、親ノードを特定しても子ノードを特定することができないので、アークリストは、要素From−IDの配列と要素To−IDの配列により構成される。アークリストを使用する場合、あるノードは、From−IDの配列と、To−IDの配列の両方の配列に出現する。
好ましい一実施例によれば、ノード定義ステップはノード識別子として数値を使用し、より好ましくは、連続する整数を使用し、更に好ましくは、「0」又は「1」からの整数連番を使用する。これにより、ノード識別子から、そのノードに対応する親ノードのノード識別子が格納されているアドレスを簡単に取得することができるので、子ノードのノード識別子から親ノードのノード識別子を引く処理を高速化することができる。
本発明の一実施例によれば、図6Cに示されるような深さ優先に基づくツリー型データ構造は、図1に示されたコンピュータシステム10に、
同じ世代のノードよりも子ノードを優先して、ルート・ノードを含むノードに固有の連続する整数を付与するノード定義ステップと、
ルート・ノード以外のノードである非ルート・ノードの各々に付与された整数の順に、非ルート・ノードの各々の親ノードに付与された整数を並べることにより形成される配列を前記記憶装置に格納する親子関係定義ステップと、
を実行させることによって、記憶装置上に構築される。これにより、ノードは深さ優先で連続整数が付与され、ノード間の親子関係は「子→親」関係の配列によって表現される。
最初にルート・ノードに番号を付与するステップ801と、
既に番号が付与されたあるノードに唯一の子ノードが存在する場合には、当該子ノードに当該あるノードに付与された前記番号の次の番号を付与するステップ802と、
既に番号が付与されたあるノードに複数の子ノードが存在する場合には、当該複数の子ノードの間の兄弟関係に従って、弟ノードは直上の兄ノードの全ての子孫ノードに番号が付与された後に次の番号が付与されるように、一番上の兄ノードから一番下の弟ノードまで番号を付与するステップ803と、
を実行させる。これにより、深さ優先モードで同一の親ノードから派生した複数の子ノードの間に兄弟関係が定義される。
(1)ノードの番号が配列P→Cの最大の添字(=11)と一致する場合、このノードに属する子ノードは存在しない。したがって、処理は継続されない。
(2)同図に太字で表された親ノードの番号からAggr値を求める。このAggr値は、配列P→Cの開始点を表す。
(3)太字で表された親ノード番号+1に対応するAggr値を求める。このAggr値−1が配列P→Cの終了点である。
本発明の一実施例によれば、図7Cに示されるような幅優先に基づくツリー型データ構造は、図1に示されたコンピュータシステム10に、
子ノードよりも同じ世代のノードを優先して、ルート・ノードを含むノードに固有の連続する整数を付与するノード定義ステップと、
前記ルート・ノード以外のノードである非ルート・ノードの各々に付与された整数の順に、前記非ルート・ノードの各々の親ノードに付与された整数を並べることにより形成される配列を前記記憶装置に格納する親子関係定義ステップと、
を実行させることによって、記憶装置上に構築される。これにより、ノードは幅優先モードで連続整数が付与され、ノード間の親子関係は「子→親」関係の配列によって表現される。
各ノードが前記ルート・ノードから何世代目のノードであるか、及び、各世代に含まれるノード数を算出するステップ1101と、
最初に前記ルート・ノードに番号を付与するステップ1102と、
ある世代に含まれる全てのノードに番号が付与されたならば、当該ある世代の次の世代にノードが存在しなくなるまで、当該次の世代に含まれる全てのノードに対して、親ノードが異なる場合には、当該親ノードに番号が付与された順番に当該ノードに番号を付与し、当該親ノードが同一である場合には、当該親ノードから派生した複数の子ノードの間に兄弟関係を定義し、一番上の兄ノードから一番下の弟ノードまで直前に付与された番号の次の番号から連続的に変化する固有の整数を順に付与するステップ1013と、
を実行させる。これにより、幅優先モードで同一の親ノードから派生した複数の子ノードの間に兄弟関係が定義される。
(1)ノードの番号が配列P→Cの最大の添字(=11)と一致する場合、このノードに属する子ノードは存在しない。したがって、処理は継続されない。
(2)同図に太字で表された親ノードの番号からAggr値を求める。このAggr値は、配列P→Cの開始点を表す。
(3)太字で表された「親ノード番号+1」に対応するAggr値を求める。この「Aggr値−1」が配列P→Cの終了点である。
上述のように、ノードに連続番号を付与するための深さ優先モード及び幅優先モードは、それぞれ、固有の優れた性質を備えている。本発明の一実施例による情報処理装置10は、詳細な説明は省略するが、図14に示すように、深さ優先に基づく「子→親」表現形式と、幅優先に基づく「子→親」表現形式と、「親→子」表現形式と、の間で相互に表現形式を変換することができる。
次に、ツリー型データ構造のトポロジーを編集する操作の一つであるツリー削除について説明する。本発明にかかる「ツリー削除」は、ツリー型データ構造において、全体のツリーから、ある特定のノードおよびそのノードの子孫ノード(つまり、部分ツリー)を取り除くことを意味する。実際には、ツリー型データ構造を表す、メモリ中に格納されている「子→親」表現による親子関係定義配列(以下、「C−P配列」と称する。また、図においては、「C->P」、或いは、「C-P」と表記される。)から、部分ツリーに相当するノードの情報が削除され、かつ、残りのノードに対して、たとえば幅優先モードにしたがって付された新たなノード識別子を格納したC−P配列をメモリ中に生成することである。なお、全体のツリーから削除される部分ツリーには、単一のノードから構成されるものも含まれる。また、本明細書において、上記ツリー型データ構造において、あるノードおよびそのノードから枝分かれしてリーフ・ノードに至るまでのノード群を、部分ツリーと称する。また、部分ツリーにおいて、ルート・ノードに最も近いノードを頂点ノードと称する。
次に、ツリー型データ構造のトポロジーを編集する操作であるツリー挿入について説明する。本発明にかかる「ツリー挿入」は、ツリーの特定ノードに、あるノードをルート・ノードとする他のツリーを追加すること(つまり、ルート・ノードを頂点ノードとして、頂点ノードおよびその子孫ノードを追加すること)を意味する。ここで、前者のツリーを被挿入側ツリー、後者を挿入側ツリーと称する。実際には、被挿入側のツリー型データ構造を表す、メモリ上に格納されたC−P配列、および、挿入側のツリー型データ構造を表す、メモリ上に格納されたC−P配列から、挿入側ツリーが挿入された状態で、それぞれのノードのノード識別子が、幅優先モードにしたがって付されたようなC−P配列をメモリ中に生成することである。なお、被挿入側ツリーおよび/または挿入側ツリーが、単一のノードのみで構成されていても良い。
上述したように、本実施の形態によれば、幅優先モードの下で、ツリー型データ構造が表現されている場合に、被挿入側ツリーに挿入側ツリーを挿入した状態においても、幅優先モードの下で、ツリー型データ構造が表現されるように、C−P配列を生成している。この処理では、それぞれのノードのノード識別子が変更される。実際には、図2A、Bを参照して説明したように、ツリー型データ構造においては、一つのツリーを構成するノードのそれぞれにノードタイプおよびノード値が関連付けられている。ノードタイプは必須ではないが、当該ノードの値の意味を表すため(たとえば、図2Bにおいては、値「フランス店」が、「店名」であることを表している。)に存在する。
図44は、本発明の実施の形態にかかるツリー型データ構造を構築する情報処理装置の機能ブロックダイヤグラムであるである。図44に示すように、情報処理装置4400は、ツリー型データ構造を表現するデータを記憶する記憶部4401と、本実施の形態にかかる、ツリー型データ構造を表現するためのC−P配列を生成して記憶装置中に記憶するツリー定義部4402、ツリー挿入処理部4403と、ツリー削除処理部4404と、を有する。
(1)初期値より連続する整数であり、
(2)親子関係のあるノードについて、親ノードのノード識別子は子ノードのノード識別子より小さいように、
ノードにノード識別子が付与され、記憶装置に、各ノードの親ノードのノード識別子を格納した親子関係定義配列(C−P配列)を保持しておけば、本発明にかかるツリー削除方法を適用することができる。
12 CPU
14 RAM
16 ROM
18 固定記憶装置
20 ドライバ
22 I/F
24 入力装置
26 表示装置
4400 情報処理装置
4401 記憶部
4402 ツリー定義部
4403 ツリー挿入処理部
4404 ツリー削除処理部
Claims (18)
- ツリー型データ構造を形成するすべてのノードに固有のノード識別子が付与され、前記ノード識別子が、ルート・ノードから始めて、子ノードよりも同じ世代のノードを優先して付与された連続する整数であり、前記ルート・ノード以外の非ルート・ノードの各々のノード識別子に関連付けられた親ノードのノード識別子が格納された親子関係定義配列を記憶する記憶装置を備えた情報処理装置において、
第1のツリーの所定のノードの子孫ノード群として第2のツリーを挿入することにより形成された第3のツリーのツリー型データ構造について、前記記憶装置中に新たな親子関係定義配列を生成する情報処理方法であって、
前記第1のツリーの第1の親子関係定義配列および前記第2のツリーの第2の親子関係定義配列を前記記憶装置から読み出すステップと、
前記第2のツリーのルート・ノードを前記第1のツリーの前記所定のノードの所定の順位の子ノードとして連結することにより形成される前記第3のツリーの世代毎に、前記第2のツリーに属するノードに隣接する前記第1のツリーに属するノードを特定し、前記第1のツリーに属する前記特定されたノードの情報を前記記憶装置に記憶するステップと、
前記記憶装置に記憶された前記第1のツリーに属する前記特定されたノードの情報を参照して、前記第3のツリーのすべてのノードに、ルート・ノードから始めて、子ノードよりも同じ世代のノードを優先して連続する整数である新たなノード識別子を付与し、前記第1のツリーに属するノードに付与された前記新たなノード識別子を前記第1のツリーのノードのノード識別子に関連付けて格納した第1の新規ノード識別子配列、および、前記第2のツリーに属するノードに付与された前記新たなノード識別子を前記第2のツリーのノード識別子に関連付けて格納した第2の新規ノード識別子配列を前記記憶装置に生成するステップと、
前記第1の親子関係定義配列および第2の親子関係定義配列と前記第1の新規ノード識別子配列および前記第2の新規ノード識別子配列に基づいて、前記第3のツリーの非ルート・ノードの前記新たなノード識別子に関連付けて前記第3のツリーの前記非ルート・ノードのノード識別子を格納することにより、前記新たな親子関係定義配列を前記記憶装置に生成するステップと、
を備えたことを特徴とする情報処理方法。 - 前記記憶装置に、前記第1のツリーのノードのノード識別子の各々に関連付けて、当該ノードの少なくともノード値を格納した第1のノード値格納配列が記憶され、前記第2のツリーのノードのノード識別子の各々に関連付けて、当該ノードの少なくともノード値を格納した第2のノード値格納配列が記憶され、
前記第1および第2の新規ノード識別子配列を参照して、前記第1のツリーおよび前記第2のツリーのそれぞれのノード識別子と、前記第3のツリーの新たなノード識別子との関連付けにしたがって、前記第1のノード値格納配列および第2のノード配列の少なくとも一方を更新するステップを備えたことを特徴とする請求項1に記載の情報処理方法。 - 前記記憶装置に、前記第1のツリーのノードのノード識別子の各々に関連付けて、当該ノードの少なくともノード値を格納した第1のノード値格納配列が記憶され、前記第2のツリーのノードのノード識別子の各々に関連付けて、当該ノードの少なくともノード値を格納した第2のノード値格納配列が記憶され、
前記第1および第2の新規ノード識別子配列を参照して、前記第1のツリーおよび前記第2のツリーのそれぞれのノード識別子と、前記第3のツリーの新たなノード識別子との関連付けにしたがって、前記新たなノード識別子の各々と関連付けて前記ノード値を格納した新たなノード値格納配列を生成するステップをさらに備えたことを特徴とする請求項1に記載の情報処理方法。 - ツリー型データ構造を形成するすべてのノードに固有のノード識別子が付与され、前記ノード識別子が、ルート・ノードから始めて、親子関係のある親ノードと子ノードとの間では前記親ノードのノード識別子が前記子ノードのノード識別子より小さいという関係を満たす連続する整数であり、前記ルート・ノード以外の非ルート・ノードの各々のノード識別子に関連付けられた親ノードのノード識別子が格納された親子関係定義配列を記憶する記憶装置を備えた情報処理装置において、
第1のツリーから、前記第1のツリーの特定のノードと当該特定のノードの子孫ノードとからなる部分ツリーを削除する情報処理方法であって、
前記第1のツリーの親子関係定義配列を前記記憶装置から読み出すステップと、
初期値がセットされた消去フラグ配列を前記記憶装置に格納し、前記特定のノードのノード識別子および前記親子関係定義配列と前記消去フラグ配列とを参照して、前記部分ツリーの前記特定のノードおよびその子孫のノードに付与されたノード識別子に対応する前記消去フラグ配列中のフラグをセットするステップと、
前記第1のツリーから前記部分ツリーを削除したツリーである第2のツリーのすべてのノードに新たなノード識別子を付与し、前記新たなノード識別子が前記第1のツリーの前記ノード識別子に関連付けて格納された新規ノード識別子配列を前記記憶装置に生成するステップと、
前記親子関係定義配列および前記新規ノード識別子配列に基づいて、前記第2のツリーの非ルート・ノードの各々の前記新たなノード識別子に関連付けられた親ノードの各々の前記新たなノード識別子が格納された前記第2のツリーの新たな親子関係定義配列を前記記憶装置に生成するステップと、
を備えることを特徴とする情報処理方法。 - 前記記憶装置に、前記ツリーのノードのノード識別子の各々に関連付けて、当該ノードの少なくともノード値を格納したノード値格納配列が記憶され、
前記新規ノード識別子配列を参照して、もとのノード識別子と新たなノード識別子との関連付けにしたがって、前記ノード値格納配列を更新するステップを備えたことを特徴とする請求項4に記載の情報処理方法。 - 前記記憶装置に、前記ツリーのノードのノード識別子の各々に関連付けて、当該ノードの少なくともノード値を格納したノード値格納配列が記憶され、
前記新規ノード識別子配列を参照して、もとのノード識別子と新たなノード識別子との関連付けにしたがって、新たなノード識別子の各々と関連付けて、前記ノード値を格納した、新たなノード値格納配列を生成するステップを備えたことを特徴とする請求項4に記載の情報処理方法。 - ツリー型データ構造を形成するすべてのノードに固有のノード識別子が付与され、前記ノード識別子が、ルート・ノードから始めて、子ノードよりも同じ世代のノードを優先して付与された連続する整数であり、前記ルート・ノード以外の非ルート・ノードの各々のノード識別子に関連付けられた親ノードのノード識別子が格納された親子関係定義配列を記憶する記憶装置を備え、
第1のツリーの所定のノードの子孫ノード群として第2のツリーを挿入することにより形成された第3のツリーのツリー型データ構造について、前記記憶装置中に新たな親子関係定義配列を生成するように構成された情報処理装置であって、
前記第1のツリーの第1の親子関係定義配列および前記第2のツリーの第2の親子関係定義配列を前記記憶装置から読み出すデータ読み出し手段と、
前記第2のツリーのルート・ノードを前記第1のツリーの前記所定のノードの所定の順位の子ノードとして連結することにより形成される前記第3のツリーの世代毎に、前記第2のツリーに属するノードに隣接する前記第1のツリーに属するノードを特定し、前記第1のツリーに属する前記特定されたノードの情報を前記記憶装置に記憶する挿入位置情報生成手段と、
前記記憶装置に記憶された前記第1のツリーに属する前記特定されたノードの情報を参照して、前記第3のツリーのすべてのノードに、ルート・ノードから始めて、子ノードよりも同じ世代のノードを優先して連続する整数である新たなノード識別子を付与し、前記第1のツリーに属するノードに付与された前記新たなノード識別子を前記第1のツリーのノードのノード識別子に関連付けて格納した第1の新規ノード識別子配列、および、前記第2のツリーに属するノードに付与された前記新たなノード識別子を前記第2のツリーのノード識別子に関連付けて格納した第2の新規ノード識別子配列を前記記憶装置に生成する新規ノード識別子配列生成手段と、
前記第1の親子関係定義配列および第2の親子関係定義配列と前記第1の新規ノード識別子配列および前記第2の新規ノード識別子配列に基づいて、前記第3のツリーの非ルート・ノードの前記新たなノード識別子に関連付けて前記第3のツリーの前記非ルート・ノードのノード識別子を格納することにより、前記新たな親子関係定義配列を前記記憶装置に生成する親子関係定義配列生成手段と、
を備えたことを特徴とする情報処理装置。 - 前記記憶装置に、前記第1のツリーのノードのノード識別子の各々に関連付けて、当該ノードの少なくともノード値を格納した第1のノード値格納配列が記憶され、前記第2のツリーのノードのノード識別子の各々に関連付けて、当該ノードの少なくともノード値を格納した第2のノード値格納配列が記憶され、
前記第1および第2の新規ノード識別子配列を参照して、前記第1のツリーおよび前記第2のツリーのそれぞれのノード識別子と、前記第3のツリーの新たなノード識別子との関連付けにしたがって、前記第1のノード値格納配列および第2のノード配列の少なくとも一方を更新するノード値格納配列更新手段を備えたことを特徴とする請求項7に記載の情報処理装置。 - 前記記憶装置に、前記第1のツリーのノードのノード識別子の各々に関連付けて、当該ノードの少なくともノード値を格納した第1のノード値格納配列が記憶され、前記第2のツリーのノードのノード識別子の各々に関連付けて、当該ノードの少なくともノード値を格納した第2のノード値格納配列が記憶され、
前記第1および第2の新規ノード識別子配列を参照して、前記第1のツリーおよび前記第2のツリーのそれぞれのノード識別子と、前記第3のツリーの新たなノード識別子との関連付けにしたがって、前記新たなノード識別子の各々と関連付けて前記ノード値を格納した新たなノード値格納配列を生成するノード値格納配列生成手段をさらに備えたことを特徴とする請求項7に記載の情報処理装置。 - ツリー型データ構造を形成するすべてのノードに固有のノード識別子が付与され、前記ノード識別子が、ルート・ノードから始めて、親子関係のある親ノードと子ノードとの間では前記親ノードのノード識別子が前記子ノードのノード識別子より小さいという関係を満たす連続する整数であり、前記ルート・ノード以外の非ルート・ノードの各々のノード識別子に関連付けられた親ノードのノード識別子が格納された親子関係定義配列を記憶する記憶装置を備え、
第1のツリーから、前記第1のツリーの特定のノードと当該特定のノードの子孫ノードとからなる部分ツリーを削除するように構成された情報処理装置であって、
前記第1のツリーの親子関係定義配列を前記記憶装置から読み出すデータ読み出し手段と、
初期値がセットされた消去フラグ配列を前記記憶装置に格納し、前記特定のノードのノード識別子および前記親子関係定義配列と前記消去フラグ配列とを参照して、前記部分ツリーの前記特定のノードおよびその子孫のノードに付与されたノード識別子に対応する前記消去フラグ配列中のフラグをセットする消去フラグ配列生成手段と、
前記第1のツリーから前記部分ツリーを削除したツリーである第2のツリーのすべてのノードに新たなノード識別子を付与し、前記新たなノード識別子が前記第1のツリーの前記ノード識別子に関連付けて格納された新規ノード識別子配列を前記記憶装置に生成する新規ノード識別子配列生成手段と、
前記親子関係定義配列および前記新規ノード識別子配列に基づいて、前記第2のツリーの非ルート・ノードの各々の前記新たなノード識別子に関連付けられた親ノードの各々の前記新たなノード識別子が格納された前記第2のツリーの新たな親子関係定義配列を前記記憶装置に生成する親子関係配列生成手段と、
を備えたことを特徴とする情報処理装置。 - 前記記憶装置に、前記ツリーのノードのノード識別子の各々に関連付けて、当該ノードの少なくともノード値を格納したノード値格納配列が記憶され、
前記新規ノード識別子配列を参照して、もとのノード識別子と新たなノード識別子との関連付けにしたがって、前記ノード値格納配列を更新するノード値格納配列更新手段を備えたことを特徴とする請求項10に記載の情報処理装置。 - 前記記憶装置に、前記ツリーのノードのノード識別子の各々に関連付けて、当該ノードの少なくともノード値を格納したノード値格納配列が記憶され、
前記新規ノード識別子配列を参照して、もとのノード識別子と新たなノード識別子との関連付けにしたがって、新たなノード識別子の各々と関連付けて、前記ノード値を格納した、新たなノード値格納配列を生成するノード値格納配列生成手段を備えたことを特徴とする請求項10に記載の情報処理装置。 - ツリー型データ構造を形成するすべてのノードに固有のノード識別子が付与され、前記ノード識別子が、ルート・ノードから始めて、子ノードよりも同じ世代のノードを優先して付与された連続する整数であり、前記ルート・ノード以外の非ルート・ノードの各々のノード識別子に関連付けられた親ノードのノード識別子が格納された親子関係定義配列を記憶する記憶装置を備えたコンピュータにおいて、
第1のツリーの所定のノードの子孫ノード群として第2のツリーを挿入することにより形成された第3のツリーのツリー型データ構造について、前記記憶装置中に新たな親子関係定義配列を生成するために、前記コンピュータにより読み取り可能な情報処理プログラムであって、前記コンピュータに、
前記第1のツリーの第1の親子関係定義配列および前記第2のツリーの第2の親子関係定義配列を前記記憶装置から読み出すステップと、
前記第2のツリーのルート・ノードを前記第1のツリーの前記所定のノードの所定の順位の子ノードとして連結することにより形成される前記第3のツリーの世代毎に、前記第2のツリーに属するノードに隣接する前記第1のツリーに属するノードを特定し、前記第1のツリーに属する前記特定されたノードの情報を前記記憶装置に記憶するステップと、
前記記憶装置に記憶された前記第1のツリーに属する前記特定されたノードの情報を参照して、前記第3のツリーのすべてのノードに、ルート・ノードから始めて、子ノードよりも同じ世代のノードを優先して連続する整数である新たなノード識別子を付与し、前記第1のツリーに属するノードに付与された前記新たなノード識別子を前記第1のツリーのノードのノード識別子に関連付けて格納した第1の新規ノード識別子配列、および、前記第2のツリーに属するノードに付与された前記新たなノード識別子を前記第2のツリーのノード識別子に関連付けて格納した第2の新規ノード識別子配列を前記記憶装置に生成するステップと、
前記第1の親子関係定義配列および第2の親子関係定義配列と前記第1の新規ノード識別子配列および前記第2の新規ノード識別子配列に基づいて、前記第3のツリーの非ルート・ノードの前記新たなノード識別子に関連付けて前記第3のツリーの前記非ルート・ノードのノード識別子を格納することにより、前記新たな親子関係定義配列を前記記憶装置に生成するステップと、
を実行させることを特徴とする情報処理プログラム。 - 前記記憶装置に、前記第1のツリーのノードのノード識別子の各々に関連付けて、当該ノードの少なくともノード値を格納した第1のノード値格納配列が記憶され、前記第2のツリーのノードのノード識別子の各々に関連付けて、当該ノードの少なくともノード値を格納した第2のノード値格納配列が記憶され、前記コンピュータに、
前記第1および第2の新規ノード識別子配列を参照して、前記第1のツリーおよび前記第2のツリーのそれぞれのノード識別子と、前記第3のツリーの新たなノード識別子との関連付けにしたがって、前記第1のノード値格納配列および第2のノード配列の少なくとも一方を更新するステップを実行させることを特徴とする請求項13に記載の情報処理プログラム。 - 前記記憶装置に、前記第1のツリーのノードのノード識別子の各々に関連付けて、当該ノードの少なくともノード値を格納した第1のノード値格納配列が記憶され、前記第2のツリーのノードのノード識別子の各々に関連付けて、当該ノードの少なくともノード値を格納した第2のノード値格納配列が記憶され、前記コンピュータに、
前記第1および第2の新規ノード識別子配列を参照して、前記第1のツリーおよび前記第2のツリーのそれぞれのノード識別子と、前記第3のツリーの新たなノード識別子との関連付けにしたがって、前記新たなノード識別子の各々と関連付けて前記ノード値を格納した新たなノード値格納配列を生成するステップを実行させることを特徴とする請求項13に記載の情報処理プログラム。 - ツリー型データ構造を形成するすべてのノードに固有のノード識別子が付与され、前記ノード識別子が、ルート・ノードから始めて、親子関係のある親ノードと子ノードとの間では前記親ノードのノード識別子が前記子ノードのノード識別子より小さいという関係を満たす連続する整数であり、前記ルート・ノード以外の非ルート・ノードの各々のノード識別子に関連付けられた親ノードのノード識別子が格納された親子関係定義配列を記憶する記憶装置を備えたコンピュータにおいて、
第1のツリーから、前記第1のツリーの特定のノードと当該特定のノードの子孫ノードとからなる部分ツリーを削除するために、前記コンピュータにより読み出し可能な情報処理プログラムであって、前記コンピュータに、
前記第1のツリーの親子関係定義配列を前記記憶装置から読み出すステップと、
初期値がセットされた消去フラグ配列を前記記憶装置に格納し、前記特定のノードのノード識別子および前記親子関係定義配列と前記消去フラグ配列とを参照して、前記部分ツリーの前記特定のノードおよびその子孫のノードに付与されたノード識別子に対応する前記消去フラグ配列中のフラグをセットするステップと、
前記第1のツリーから前記部分ツリーを削除したツリーである第2のツリーのすべてのノードに新たなノード識別子を付与し、前記新たなノード識別子が前記第1のツリーの前記ノード識別子に関連付けて格納された新規ノード識別子配列を前記記憶装置に生成するステップと、
前記親子関係定義配列および前記新規ノード識別子配列に基づいて、前記第2のツリーの非ルート・ノードの各々の前記新たなノード識別子に関連付けられた親ノードの各々の前記新たなノード識別子が格納された前記第2のツリーの新たな親子関係定義配列を前記記憶装置に生成するステップと、
を実行させることを特徴とする情報処理プログラム。 - 前記記憶装置に、前記ツリーのノードのノード識別子の各々に関連付けて、当該ノードの少なくともノード値を格納したノード値格納配列が記憶され、前記コンピュータに、
前記新規ノード識別子配列を参照して、もとのノード識別子と新たなノード識別子との関連付けにしたがって、前記ノード値格納配列を更新するステップを実行させることを特徴とする請求項16に記載の情報処理プログラム。 - 前記記憶装置に、前記ツリーのノードのノード識別子の各々に関連付けて、当該ノードの少なくともノード値を格納したノード値格納配列が記憶され、前記コンピュータに、
前記新規ノード識別子配列を参照して、もとのノード識別子と新たなノード識別子との関連付けにしたがって、新たなノード識別子の各々と関連付けて、前記ノード値を格納した、新たなノード値格納配列を生成するステップを実行させることを特徴とする請求項16に記載の情報処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007530961A JP4886693B2 (ja) | 2005-08-12 | 2006-08-09 | 情報処理方法、情報処理装置および情報処理プログラム |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005234464 | 2005-08-12 | ||
JP2005234464 | 2005-08-12 | ||
PCT/JP2006/315739 WO2007020850A1 (ja) | 2005-08-12 | 2006-08-09 | 情報処理方法、情報処理装置および情報処理プログラム |
JP2007530961A JP4886693B2 (ja) | 2005-08-12 | 2006-08-09 | 情報処理方法、情報処理装置および情報処理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2007020850A1 JPWO2007020850A1 (ja) | 2009-02-26 |
JP4886693B2 true JP4886693B2 (ja) | 2012-02-29 |
Family
ID=37757512
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007530961A Expired - Fee Related JP4886693B2 (ja) | 2005-08-12 | 2006-08-09 | 情報処理方法、情報処理装置および情報処理プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20090106298A1 (ja) |
JP (1) | JP4886693B2 (ja) |
WO (1) | WO2007020850A1 (ja) |
Families Citing this family (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006080268A1 (ja) * | 2005-01-25 | 2006-08-03 | Turbo Data Laboratories Inc. | ツリーの検索、集計、ソート方法、情報処理装置、および、ツリーの検索、集計、ソートプログラム |
JP4369471B2 (ja) * | 2006-12-27 | 2009-11-18 | 富士通株式会社 | ミラーリングプログラム、ミラーリング方法、情報記憶装置 |
US8176084B2 (en) * | 2007-11-26 | 2012-05-08 | International Business Machines Corporation | Structure based storage, query, update and transfer of tree-based documents |
US8484256B2 (en) * | 2010-01-13 | 2013-07-09 | International Business Machines Corporation | Transformation of logical data objects for storage |
US9769016B2 (en) | 2010-06-07 | 2017-09-19 | Brocade Communications Systems, Inc. | Advanced link tracking for virtual cluster switching |
US8867552B2 (en) | 2010-05-03 | 2014-10-21 | Brocade Communications Systems, Inc. | Virtual cluster switching |
US9716672B2 (en) | 2010-05-28 | 2017-07-25 | Brocade Communications Systems, Inc. | Distributed configuration management for virtual cluster switching |
US9270486B2 (en) | 2010-06-07 | 2016-02-23 | Brocade Communications Systems, Inc. | Name services for virtual cluster switching |
US9608833B2 (en) | 2010-06-08 | 2017-03-28 | Brocade Communications Systems, Inc. | Supporting multiple multicast trees in trill networks |
US9806906B2 (en) | 2010-06-08 | 2017-10-31 | Brocade Communications Systems, Inc. | Flooding packets on a per-virtual-network basis |
US9628293B2 (en) | 2010-06-08 | 2017-04-18 | Brocade Communications Systems, Inc. | Network layer multicasting in trill networks |
US9807031B2 (en) | 2010-07-16 | 2017-10-31 | Brocade Communications Systems, Inc. | System and method for network configuration |
CN102402545B (zh) * | 2010-09-14 | 2015-09-02 | 腾讯科技(深圳)有限公司 | 一种存储数据的方法及装置 |
US9736085B2 (en) | 2011-08-29 | 2017-08-15 | Brocade Communications Systems, Inc. | End-to end lossless Ethernet in Ethernet fabric |
US9699117B2 (en) | 2011-11-08 | 2017-07-04 | Brocade Communications Systems, Inc. | Integrated fibre channel support in an ethernet fabric switch |
US9450870B2 (en) | 2011-11-10 | 2016-09-20 | Brocade Communications Systems, Inc. | System and method for flow management in software-defined networks |
US9742693B2 (en) | 2012-02-27 | 2017-08-22 | Brocade Communications Systems, Inc. | Dynamic service insertion in a fabric switch |
US9154416B2 (en) | 2012-03-22 | 2015-10-06 | Brocade Communications Systems, Inc. | Overlay tunnel in a fabric switch |
US9009155B2 (en) * | 2012-04-27 | 2015-04-14 | Sap Se | Parallel set aggregation |
US10277464B2 (en) | 2012-05-22 | 2019-04-30 | Arris Enterprises Llc | Client auto-configuration in a multi-switch link aggregation |
US9256593B2 (en) * | 2012-11-28 | 2016-02-09 | Wal-Mart Stores, Inc. | Identifying product references in user-generated content |
US9548926B2 (en) | 2013-01-11 | 2017-01-17 | Brocade Communications Systems, Inc. | Multicast traffic load balancing over virtual link aggregation |
US9413691B2 (en) | 2013-01-11 | 2016-08-09 | Brocade Communications Systems, Inc. | MAC address synchronization in a fabric switch |
US9565099B2 (en) | 2013-03-01 | 2017-02-07 | Brocade Communications Systems, Inc. | Spanning tree in fabric switches |
US9912612B2 (en) | 2013-10-28 | 2018-03-06 | Brocade Communications Systems LLC | Extended ethernet fabric switches |
US9548873B2 (en) | 2014-02-10 | 2017-01-17 | Brocade Communications Systems, Inc. | Virtual extensible LAN tunnel keepalives |
US10581758B2 (en) | 2014-03-19 | 2020-03-03 | Avago Technologies International Sales Pte. Limited | Distributed hot standby links for vLAG |
US10476698B2 (en) | 2014-03-20 | 2019-11-12 | Avago Technologies International Sales Pte. Limited | Redundent virtual link aggregation group |
US10063473B2 (en) | 2014-04-30 | 2018-08-28 | Brocade Communications Systems LLC | Method and system for facilitating switch virtualization in a network of interconnected switches |
US9800471B2 (en) | 2014-05-13 | 2017-10-24 | Brocade Communications Systems, Inc. | Network extension groups of global VLANs in a fabric switch |
US10616108B2 (en) | 2014-07-29 | 2020-04-07 | Avago Technologies International Sales Pte. Limited | Scalable MAC address virtualization |
US9807007B2 (en) | 2014-08-11 | 2017-10-31 | Brocade Communications Systems, Inc. | Progressive MAC address learning |
US9699029B2 (en) | 2014-10-10 | 2017-07-04 | Brocade Communications Systems, Inc. | Distributed configuration management in a switch group |
US9626255B2 (en) | 2014-12-31 | 2017-04-18 | Brocade Communications Systems, Inc. | Online restoration of a switch snapshot |
US9628407B2 (en) * | 2014-12-31 | 2017-04-18 | Brocade Communications Systems, Inc. | Multiple software versions in a switch group |
US9942097B2 (en) | 2015-01-05 | 2018-04-10 | Brocade Communications Systems LLC | Power management in a network of interconnected switches |
US10003552B2 (en) | 2015-01-05 | 2018-06-19 | Brocade Communications Systems, Llc. | Distributed bidirectional forwarding detection protocol (D-BFD) for cluster of interconnected switches |
US10038592B2 (en) | 2015-03-17 | 2018-07-31 | Brocade Communications Systems LLC | Identifier assignment to a new switch in a switch group |
US9807005B2 (en) | 2015-03-17 | 2017-10-31 | Brocade Communications Systems, Inc. | Multi-fabric manager |
US10579406B2 (en) | 2015-04-08 | 2020-03-03 | Avago Technologies International Sales Pte. Limited | Dynamic orchestration of overlay tunnels |
US10439929B2 (en) | 2015-07-31 | 2019-10-08 | Avago Technologies International Sales Pte. Limited | Graceful recovery of a multicast-enabled switch |
US10171303B2 (en) | 2015-09-16 | 2019-01-01 | Avago Technologies International Sales Pte. Limited | IP-based interconnection of switches with a logical chassis |
US9411706B1 (en) * | 2015-09-30 | 2016-08-09 | Semmle Limited | Suggesting candidate removable software dependencies |
US9912614B2 (en) | 2015-12-07 | 2018-03-06 | Brocade Communications Systems LLC | Interconnection of switches based on hierarchical overlay tunneling |
US10237090B2 (en) | 2016-10-28 | 2019-03-19 | Avago Technologies International Sales Pte. Limited | Rule-based network identifier mapping |
US10685079B2 (en) * | 2017-09-12 | 2020-06-16 | Sap Se | Parsing nested javascript object notation requests |
US11366810B2 (en) * | 2020-04-27 | 2022-06-21 | Salesforce.Com, Inc. | Index contention under high concurrency in a database system |
CN116303405B (zh) * | 2023-05-12 | 2023-11-10 | 深圳竹云科技股份有限公司 | 一种数据查重方法、装置、计算机设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000348038A (ja) * | 1999-06-02 | 2000-12-15 | Fujitsu Ltd | 半構造データベースのためのデータ格納装置および方法 |
JP2001209656A (ja) * | 2000-01-26 | 2001-08-03 | Nec Corp | 検索用データ構造構築方法、その装置、機械可読データ記録媒体及び機械可読プログラム記録媒体 |
US20030177443A1 (en) * | 2001-11-16 | 2003-09-18 | Christoph Schnelle | Maintenance of a markup language document in a database |
JP2004120657A (ja) * | 2002-09-27 | 2004-04-15 | Internatl Business Mach Corp <Ibm> | 木構造文書送受システム、木構造文書送信装置、木構造文書受信装置、木構造文書送受方法、木構造文書送信方法、木構造文書受信方法、及びプログラム |
US20050028091A1 (en) * | 2003-07-30 | 2005-02-03 | International Business Machines Corporation | Method, system and recording medium for maintaining the order of nodes in a heirarchical document |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7937413B2 (en) * | 2004-05-04 | 2011-05-03 | International Business Machines Corporation | Self-adaptive prefix encoding for stable node identifiers |
-
2006
- 2006-08-09 WO PCT/JP2006/315739 patent/WO2007020850A1/ja active Application Filing
- 2006-08-09 US US12/063,596 patent/US20090106298A1/en not_active Abandoned
- 2006-08-09 JP JP2007530961A patent/JP4886693B2/ja not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000348038A (ja) * | 1999-06-02 | 2000-12-15 | Fujitsu Ltd | 半構造データベースのためのデータ格納装置および方法 |
JP2001209656A (ja) * | 2000-01-26 | 2001-08-03 | Nec Corp | 検索用データ構造構築方法、その装置、機械可読データ記録媒体及び機械可読プログラム記録媒体 |
US20030177443A1 (en) * | 2001-11-16 | 2003-09-18 | Christoph Schnelle | Maintenance of a markup language document in a database |
JP2004120657A (ja) * | 2002-09-27 | 2004-04-15 | Internatl Business Mach Corp <Ibm> | 木構造文書送受システム、木構造文書送信装置、木構造文書受信装置、木構造文書送受方法、木構造文書送信方法、木構造文書受信方法、及びプログラム |
US20050028091A1 (en) * | 2003-07-30 | 2005-02-03 | International Business Machines Corporation | Method, system and recording medium for maintaining the order of nodes in a heirarchical document |
Also Published As
Publication number | Publication date |
---|---|
US20090106298A1 (en) | 2009-04-23 |
WO2007020850A1 (ja) | 2007-02-22 |
JPWO2007020850A1 (ja) | 2009-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4886693B2 (ja) | 情報処理方法、情報処理装置および情報処理プログラム | |
JP4681544B2 (ja) | 配列の生成方法、情報処理装置、及び、プログラム | |
JP4537391B2 (ja) | ツリー型データ構造を取り扱う方法、情報処理装置、及び、プログラム | |
JP4712718B2 (ja) | 配列の生成方法、及び、配列生成プログラム | |
US7937399B2 (en) | Method, information processing apparatus, and program of searching for, aggregating and sorting trees | |
US7664773B2 (en) | Structured data storage method, structured data storage apparatus, and retrieval method | |
JP5241738B2 (ja) | 表からツリー構造データを構築する方法及び装置 | |
JP4796970B2 (ja) | ツリーデータの検索・集計・ソート方法及びプログラム | |
JP4398988B2 (ja) | 構造化文書を管理する装置、方法およびプログラム | |
JP4681555B2 (ja) | ノード挿入方法、情報処理装置、および、ノード挿入プログラム | |
JP4247108B2 (ja) | 構造化文書検索方法、構造化文書検索装置、及びプログラム | |
JP2011154653A (ja) | データモデリング方法及び装置及びプログラム | |
JP2006031377A (ja) | 構造化文書管理装置、検索装置、記憶方法、検索方法及びプログラム | |
JP2001290801A (ja) | 構造文書化システム,構造文書化プログラム,及び、コンピュータ可読格納媒体 | |
JP3824956B2 (ja) | 識別番号付与装置、識別番号管理方法、識別番号管理プログラム及び同プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP3843574B2 (ja) | 文書変換規則生成装置、文書変換規則生成方法及び文書変換規則生成プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP2795110B2 (ja) | 有向グラフ作成装置 | |
JP2001134596A (ja) | 構造化文書管理装置および構造化文書検索方法 | |
JP4334450B2 (ja) | 構造化文書検索装置及び構造化文書検索方法 | |
JP2022070523A (ja) | 意味表現解析システム及び意味表現解析方法 | |
JP2009169850A (ja) | 系列パタン抽出装置及び方法 | |
JP2012073706A (ja) | 構造化文書格納装置、構造化文書格納方法及び構造化文書格納プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090717 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090717 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20110815 |
|
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: 20111206 |
|
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: 20111209 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141216 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |