JP2003006196A - データ検索装置、方法、プログラム及びデータ構造 - Google Patents
データ検索装置、方法、プログラム及びデータ構造Info
- Publication number
- JP2003006196A JP2003006196A JP2001193973A JP2001193973A JP2003006196A JP 2003006196 A JP2003006196 A JP 2003006196A JP 2001193973 A JP2001193973 A JP 2001193973A JP 2001193973 A JP2001193973 A JP 2001193973A JP 2003006196 A JP2003006196 A JP 2003006196A
- Authority
- JP
- Japan
- Prior art keywords
- search
- data
- condition
- tree structure
- relation
- 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.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
【課題】 木構造のデータの特定要素検索。
【解決手段】 木構造の関係の要素からなるデータの特
定要素を検索するデータ検索において、木構造上の要素
に対して各々の要素と木構造上の他の各々の要素との関
係を示す関係条件情報を各々の要素に対して保持して管
理し、検索条件のうち要素の属性や種類によって要素を
特定する検索属性条件により該データの要素を検索し、
検索条件のうちの該位置関係要素によって要素を特定す
るための検索関係条件を該検索により検索された要素の
前記管理された関係条件情報から検索することを特徴と
する。
定要素を検索するデータ検索において、木構造上の要素
に対して各々の要素と木構造上の他の各々の要素との関
係を示す関係条件情報を各々の要素に対して保持して管
理し、検索条件のうち要素の属性や種類によって要素を
特定する検索属性条件により該データの要素を検索し、
検索条件のうちの該位置関係要素によって要素を特定す
るための検索関係条件を該検索により検索された要素の
前記管理された関係条件情報から検索することを特徴と
する。
Description
【0001】
【発明の属する技術分野】本発明は、データの要素が木
構造となるXML(eXtensible Markup Language)等で
書かれたデータについて、要素の属性及び木構造の関係
を条件として要素の検索を行う技術に関する。
構造となるXML(eXtensible Markup Language)等で
書かれたデータについて、要素の属性及び木構造の関係
を条件として要素の検索を行う技術に関する。
【0002】
【従来の技術】従来、要素の検索方法として、要素自身
の属性や種類によって要素を特定する第1の条件と、こ
の第1の条件で特定された要素に対し木構造上の関係、
すなわちその要素の兄弟要素あるいは親、先祖要素、子
供、子孫要素などの要素間の関係によって要素を特定す
る第2の条件と、第2の条件で特定された要素に対し第
1の条件と同様に要素自身の属性や種類によって要素を
特定する第3の条件によって、要素を検索することが知
られている。従来の技術の第1の例としては、上述の手
順どおりに要素の特定を行い検索結果を得る方法が知ら
れている。
の属性や種類によって要素を特定する第1の条件と、こ
の第1の条件で特定された要素に対し木構造上の関係、
すなわちその要素の兄弟要素あるいは親、先祖要素、子
供、子孫要素などの要素間の関係によって要素を特定す
る第2の条件と、第2の条件で特定された要素に対し第
1の条件と同様に要素自身の属性や種類によって要素を
特定する第3の条件によって、要素を検索することが知
られている。従来の技術の第1の例としては、上述の手
順どおりに要素の特定を行い検索結果を得る方法が知ら
れている。
【0003】従来の第2の例としては、特開平7−22
5770「データ検索装置」がある。この例では同様な
検索方法で検索を行う場合、第1の条件と第3の条件で
それぞれ要素の特定を行い二つの要素群を得ておき、最
後に二つの要素群について第2の条件を満たす関係を調
査することによって要素の検索を実施する方法が知られ
ている。
5770「データ検索装置」がある。この例では同様な
検索方法で検索を行う場合、第1の条件と第3の条件で
それぞれ要素の特定を行い二つの要素群を得ておき、最
後に二つの要素群について第2の条件を満たす関係を調
査することによって要素の検索を実施する方法が知られ
ている。
【0004】
【発明が解決しようとする課題】従来の技術の第1の例
では第1の条件で特定された各要素に関し、第2の条件
の特定で木構造の探索を毎回行うため、木構造が複雑に
なるほど探索に時間がかかり検索時間が遅くなる不都合
がある。
では第1の条件で特定された各要素に関し、第2の条件
の特定で木構造の探索を毎回行うため、木構造が複雑に
なるほど探索に時間がかかり検索時間が遅くなる不都合
がある。
【0005】また従来の技術の第2の例の場合、すでに
第3の条件を特定した要素がわかっているため、木構造
の探索は第1の例よりも簡単になる。しかしそのかわり
第3の条件判定は第一の例と異なり、要素全てに対して
行わなければならない。また、第2の条件の判定を最後
に行っているため、第3の条件として、例えば定義順で
先頭から2番目といったような、第2の条件の結果がわ
からないと特定できないような条件には対応できない不
都合がある。
第3の条件を特定した要素がわかっているため、木構造
の探索は第1の例よりも簡単になる。しかしそのかわり
第3の条件判定は第一の例と異なり、要素全てに対して
行わなければならない。また、第2の条件の判定を最後
に行っているため、第3の条件として、例えば定義順で
先頭から2番目といったような、第2の条件の結果がわ
からないと特定できないような条件には対応できない不
都合がある。
【0006】以上のように、従来の検索手法では木構造
が複雑になると検索に時間がかかり、また木構造の探索
を簡単にするような検索処理で検索を行う場合は、第3
の条件が処理不可能な場合がある等の欠点がある。
が複雑になると検索に時間がかかり、また木構造の探索
を簡単にするような検索処理で検索を行う場合は、第3
の条件が処理不可能な場合がある等の欠点がある。
【0007】本発明はこれらの欠点を解決するもので、
木構造で管理された要素に対し、要素自身の属性を指定
する検索条件と要素間の関係を指定する検索条件を含ん
だ要素検索において、検索時間の短縮と前記検索条件の
順序制約が不要な検索方法、検索装置、検索プログラ
ム、並びに木構造データのデータ構造を提供することを
目的とする。
木構造で管理された要素に対し、要素自身の属性を指定
する検索条件と要素間の関係を指定する検索条件を含ん
だ要素検索において、検索時間の短縮と前記検索条件の
順序制約が不要な検索方法、検索装置、検索プログラ
ム、並びに木構造データのデータ構造を提供することを
目的とする。
【0008】
【課題を解決するための手段】上記問題を解決するため
本発明は、あらかじめ各要素について第2の条件で考え
られるすべての木構造の関係で、特定されるべき対象要
素をリストアップしてテーブルとして管理し、実際の検
索処理では第1の条件で要素を特定した後、特定した各
要素に対応するテーブルを参照し、第3の条件で判定す
べき要素を木構造の探索を行うことなく抽出して検索を
実行する。このように処理することで従来の処理で行う
第2の条件による木構造の探索がテーブル作成時の最初
の一度ですみ、検索時には木構造の探索の代わりにテー
ブルを参照するだけとなるので処理を高速化される。ま
た木構造の各要素に対して、要素間の関係をテーブルと
して持たせるため、従来の技術の第2の例のように、第
2の条件による検索結果が出ないと次の検索ができない
場合でも検索が可能になる。なお、本発明の説明では前
述の3つの条件の組み合わせにより要素の検索を行う
が、要素の種類や属性によって要素を特定する属性条件
と、木構造上の要素間の関係によって要素を特定する関
係条件を複数組み合わせる様々な検索に関しても、同様
の手続きで検索可能である。
本発明は、あらかじめ各要素について第2の条件で考え
られるすべての木構造の関係で、特定されるべき対象要
素をリストアップしてテーブルとして管理し、実際の検
索処理では第1の条件で要素を特定した後、特定した各
要素に対応するテーブルを参照し、第3の条件で判定す
べき要素を木構造の探索を行うことなく抽出して検索を
実行する。このように処理することで従来の処理で行う
第2の条件による木構造の探索がテーブル作成時の最初
の一度ですみ、検索時には木構造の探索の代わりにテー
ブルを参照するだけとなるので処理を高速化される。ま
た木構造の各要素に対して、要素間の関係をテーブルと
して持たせるため、従来の技術の第2の例のように、第
2の条件による検索結果が出ないと次の検索ができない
場合でも検索が可能になる。なお、本発明の説明では前
述の3つの条件の組み合わせにより要素の検索を行う
が、要素の種類や属性によって要素を特定する属性条件
と、木構造上の要素間の関係によって要素を特定する関
係条件を複数組み合わせる様々な検索に関しても、同様
の手続きで検索可能である。
【0009】また、テーブル作成前に条件2の内容を確
認し、条件2で使用されている要素関係の条件に対して
のみテーブルの作成を行えば、更なる処理の高速化が可
能である。
認し、条件2で使用されている要素関係の条件に対して
のみテーブルの作成を行えば、更なる処理の高速化が可
能である。
【0010】作成したテーブルの内容は別途データ化し
て保存し、再度検索を行うときに読み込んでテーブルを
再構成すれば、検索を再度行う時にテーブル作成の処理
を行わなくても良い。データ化の方法としては検索対象
となるデータと別にテーブルを記録するためのデータを
用意しても良いし、検索対象のデータがXMLのような
マークアップ言語で表現されていれば、データの記述に
用いられるタグとは別にテーブル記述用のタグを定義す
れば、検索対象のデータの中にテーブルのデータを記述
することができる。
て保存し、再度検索を行うときに読み込んでテーブルを
再構成すれば、検索を再度行う時にテーブル作成の処理
を行わなくても良い。データ化の方法としては検索対象
となるデータと別にテーブルを記録するためのデータを
用意しても良いし、検索対象のデータがXMLのような
マークアップ言語で表現されていれば、データの記述に
用いられるタグとは別にテーブル記述用のタグを定義す
れば、検索対象のデータの中にテーブルのデータを記述
することができる。
【0011】
【発明の実施の形態】本発明の一実施の形態を図に基づ
いて説明する。図2は本発明一実施の形態の検索対象と
なる木構造を持ったデータを示している。図2中で、9
〜15はデータの要素をそれぞれ示し、各要素は要素タ
イプとしてE0〜E2のいずれかを持ち、更に属性とし
てAという属性を持っている。属性Aは、ここでは0も
しくは1の値を持つ。本データでは要素9はE0という
要素タイプであり、属性Aの値は0である。要素9は子
供要素として要素10、11、12の3つの要素を持っ
ている。また同様に要素11は子供要素として要素1
3,14を持ち、要素12は要素15を子供要素として
持っている。
いて説明する。図2は本発明一実施の形態の検索対象と
なる木構造を持ったデータを示している。図2中で、9
〜15はデータの要素をそれぞれ示し、各要素は要素タ
イプとしてE0〜E2のいずれかを持ち、更に属性とし
てAという属性を持っている。属性Aは、ここでは0も
しくは1の値を持つ。本データでは要素9はE0という
要素タイプであり、属性Aの値は0である。要素9は子
供要素として要素10、11、12の3つの要素を持っ
ている。また同様に要素11は子供要素として要素1
3,14を持ち、要素12は要素15を子供要素として
持っている。
【0012】図1は本発明の一実施の形態のデータ検索
装置の機能ブロック図を示す。図1中、1は、検索対象
要素管理部を示し、検索を行う対象となる木構造を持っ
た要素データを登録、管理している。
装置の機能ブロック図を示す。図1中、1は、検索対象
要素管理部を示し、検索を行う対象となる木構造を持っ
た要素データを登録、管理している。
【0013】2は、検索条件管理部を示し、要素の検索
を行う際の条件を登録、管理する。要素を特定するため
の条件としては、要素の種類もしくは属性を指定する条
件(属性条件)と要素の位置関係を指定する条件(関係
条件)がある。属性条件は図2のデータの場合、要素タ
イプが何か、要素の属性が何で、値がいくつかという特
長を利用して検索を行う。例えば属性条件として要素タ
イプE0の要素という指定で検索を行った場合、図2の
データでは要素9、10、13が検索結果に該当する要
素である。また関係条件は要素間の親子、兄弟、先祖、
子孫関係などの関係の違いを利用して検索を行う。図2
のデータの場合、例えば要素11の子孫の要素は要素1
3,14であり、先祖の要素は要素9、前方要素は要素
10、後方要素は要素12,15である。検索条件管理
部2では以上のような要素を特定するための条件とし
て、属性条件である条件1、関係条件である条件2、属
性条件である条件3の三つの条件を管理する。この3つ
の条件によって複雑な木構造を持ったデータでも要素の
特定が可能になる。
を行う際の条件を登録、管理する。要素を特定するため
の条件としては、要素の種類もしくは属性を指定する条
件(属性条件)と要素の位置関係を指定する条件(関係
条件)がある。属性条件は図2のデータの場合、要素タ
イプが何か、要素の属性が何で、値がいくつかという特
長を利用して検索を行う。例えば属性条件として要素タ
イプE0の要素という指定で検索を行った場合、図2の
データでは要素9、10、13が検索結果に該当する要
素である。また関係条件は要素間の親子、兄弟、先祖、
子孫関係などの関係の違いを利用して検索を行う。図2
のデータの場合、例えば要素11の子孫の要素は要素1
3,14であり、先祖の要素は要素9、前方要素は要素
10、後方要素は要素12,15である。検索条件管理
部2では以上のような要素を特定するための条件とし
て、属性条件である条件1、関係条件である条件2、属
性条件である条件3の三つの条件を管理する。この3つ
の条件によって複雑な木構造を持ったデータでも要素の
特定が可能になる。
【0014】3は、属性条件検索部を示し、前記検索対
象要素管理部1から検索条件管理部2の属性条件を参照
して条件に合致する要素を抽出する。4は、関係条件テ
ーブル作成部を示し、もう一つの条件である関係条件を
要素別にテーブルに展開する。
象要素管理部1から検索条件管理部2の属性条件を参照
して条件に合致する要素を抽出する。4は、関係条件テ
ーブル作成部を示し、もう一つの条件である関係条件を
要素別にテーブルに展開する。
【0015】5は、関係条件テーブル管理部を示し、前
記関係テーブル作成部4で作成されたテーブルを保持、
管理する。6は、関係条件検索部を示し、テーブルを参
照して関係条件による要素の特定を行なう。実際の検索
では要素を特定する3つの検索条件で、最初の条件1の
検索結果に対し、条件2で示した関係にある要素を特定
し、その中から条件3に合う要素を取り出すため、各検
索結果を次の検索に使用する。
記関係テーブル作成部4で作成されたテーブルを保持、
管理する。6は、関係条件検索部を示し、テーブルを参
照して関係条件による要素の特定を行なう。実際の検索
では要素を特定する3つの検索条件で、最初の条件1の
検索結果に対し、条件2で示した関係にある要素を特定
し、その中から条件3に合う要素を取り出すため、各検
索結果を次の検索に使用する。
【0016】7は、検索処理コンテキストを示し、現在
の検索処理の結果を次の検索に渡すため、現在検索済み
の検索結果要素を管理する。8は、検索結果管理部を示
し、全ての検索処理が完了したら、特定した要素が登録
される。
の検索処理の結果を次の検索に渡すため、現在検索済み
の検索結果要素を管理する。8は、検索結果管理部を示
し、全ての検索処理が完了したら、特定した要素が登録
される。
【0017】図3は、本発明の一実施の形態の動作を示
すフローチャートである。
すフローチャートである。
【0018】
【動作】この様な構成で、本一実施の形態の特徴ある動
作を説明する。本一実施の形態の図2のデータを検索対
象とし、検索条件として次の3つの条件で検索を行う場
合を示す。
作を説明する。本一実施の形態の図2のデータを検索対
象とし、検索条件として次の3つの条件で検索を行う場
合を示す。
【0019】条件1(属性条件) : 要素タイプE1
条件2(関係条件) : 子孫指定
条件3(属性条件) : 属性Aの値が0
検索動作の前提として、検索を行うデータは前記検索対
象要素管理部1に、検索条件は前記検索条件管理部2に
すでに登録されているものとする。
象要素管理部1に、検索条件は前記検索条件管理部2に
すでに登録されているものとする。
【0020】検索を開始すると、関係条件に関する関係
条件テーブルが前記関係条件テーブル作成部4で作成さ
れる(図3、ステップ1、以下単に、「S1」と言
う)。図4に、関係条件テーブルの一例を示す。関係条
件テーブルは、図4の様な構造を持っており、ある特定
の要素に対し条件2で指定される可能性のある関係条件
の候補全てにおいて、対応する要素がどれかをリストア
ップする。図4は図2のデータの要素11における関係
条件テーブルを示したもので、関係条件の候補としては
現在の要素の先祖要素を指定する「先祖指定」、現在の
要素の子孫要素を指定する「子孫指定」、現在の要素よ
りも登録順が前方にあるツリーの要素を指定する「前方
指定」、現在の要素よりも登録順が後方にあるツリーの
要素を指定する「後方指定」の4つを挙げている。
条件テーブルが前記関係条件テーブル作成部4で作成さ
れる(図3、ステップ1、以下単に、「S1」と言
う)。図4に、関係条件テーブルの一例を示す。関係条
件テーブルは、図4の様な構造を持っており、ある特定
の要素に対し条件2で指定される可能性のある関係条件
の候補全てにおいて、対応する要素がどれかをリストア
ップする。図4は図2のデータの要素11における関係
条件テーブルを示したもので、関係条件の候補としては
現在の要素の先祖要素を指定する「先祖指定」、現在の
要素の子孫要素を指定する「子孫指定」、現在の要素よ
りも登録順が前方にあるツリーの要素を指定する「前方
指定」、現在の要素よりも登録順が後方にあるツリーの
要素を指定する「後方指定」の4つを挙げている。
【0021】ここで、本一実施の形態では、上記の4つ
の条件で説明を行うが、本発明は要素の関係を特定でき
る条件であれば、どのような条件にも対応可能である。
図4の関係条件テーブルでは、要素11を基準として列
で指定されている各関係条件に関し、行に指定された各
要素が条件を満たすかどうか○×で記述している。例え
ば要素11で関係条件が「先祖指定」の場合は要素9が
条件を満たす要素となる。このようなテーブルを全ての
要素について用意する。関係条件テーブル作成部4で各
要素の数だけ作成された関係条件テーブルは関係条件テ
ーブル管理部5に登録され、管理される。
の条件で説明を行うが、本発明は要素の関係を特定でき
る条件であれば、どのような条件にも対応可能である。
図4の関係条件テーブルでは、要素11を基準として列
で指定されている各関係条件に関し、行に指定された各
要素が条件を満たすかどうか○×で記述している。例え
ば要素11で関係条件が「先祖指定」の場合は要素9が
条件を満たす要素となる。このようなテーブルを全ての
要素について用意する。関係条件テーブル作成部4で各
要素の数だけ作成された関係条件テーブルは関係条件テ
ーブル管理部5に登録され、管理される。
【0022】関係条件テーブルの作成・登録が終了する
と、属性条件検索部3で条件1の検索が行なわれる(S
2)。本一実施の形態では、条件1は要素タイプがE1
の要素であので、要素タイプE1に属する要素11(図
2)が検索され、この要素11を前記検索処理コンテキ
スト7に登録し、次のステップに進む(S3yes)。
と、属性条件検索部3で条件1の検索が行なわれる(S
2)。本一実施の形態では、条件1は要素タイプがE1
の要素であので、要素タイプE1に属する要素11(図
2)が検索され、この要素11を前記検索処理コンテキ
スト7に登録し、次のステップに進む(S3yes)。
【0023】一方、検索で要素が見つからなかった場合
は、特定可能な要素が0個という結果を検索結果管理部
8に登録し、処理を終了する(S3no,S7)。次の
ステップでは、条件1で特定した各々の要素(本一実施
の形態では要素11)について、条件2に対応する要素
を特定する(S4)。
は、特定可能な要素が0個という結果を検索結果管理部
8に登録し、処理を終了する(S3no,S7)。次の
ステップでは、条件1で特定した各々の要素(本一実施
の形態では要素11)について、条件2に対応する要素
を特定する(S4)。
【0024】本一実施の形態では、条件2は子孫指定で
あるので、条件1で特定できた要素11に対応する関係
条件テーブルを関係条件テーブル管理部5から参照し、
子孫指定に対応する要素を特定する。要素11の関係条
件テーブルは図4の関係条件テーブルであり、子孫指定
の列を見ると対応する要素は13,14の二つであるの
で、検索結果である要素13、14を前記検索処理コン
テキスト7に登録し、次のステップに進む(S5ye
s)。
あるので、条件1で特定できた要素11に対応する関係
条件テーブルを関係条件テーブル管理部5から参照し、
子孫指定に対応する要素を特定する。要素11の関係条
件テーブルは図4の関係条件テーブルであり、子孫指定
の列を見ると対応する要素は13,14の二つであるの
で、検索結果である要素13、14を前記検索処理コン
テキスト7に登録し、次のステップに進む(S5ye
s)。
【0025】一方、検索で要素が見つからなかった場合
は、検索結果が0個であることを前記検索結果管理部8
に登録し、処理を終了する(S5no,S7)。次のス
テップでは、条件3の検索を、ステップ4、5で特定し
た要素13,14に対して実行する(S6)。
は、検索結果が0個であることを前記検索結果管理部8
に登録し、処理を終了する(S5no,S7)。次のス
テップでは、条件3の検索を、ステップ4、5で特定し
た要素13,14に対して実行する(S6)。
【0026】条件3は属性Aの値が0という条件であ
り、これを満たすのは要素13であり、この検索結果で
ある要素13を前記検索結果管理部8に登録して検索作
業を完了する(S7)。
り、これを満たすのは要素13であり、この検索結果で
ある要素13を前記検索結果管理部8に登録して検索作
業を完了する(S7)。
【0027】ここで、上記一実施の形態では、説明を簡
単化するために条件2に対応する関係条件テーブルを、
あらかじめすべての関係条件について準備する場合の処
理を説明したが、テーブルの作成前に条件2の内容を調
査し、条件2で指定された関係条件についてのみテーブ
ルの作成を行うようにすれば、上述の実施の形態の処理
よりも処理を高速化でき、使用メモリを少なくする事が
可能になる。
単化するために条件2に対応する関係条件テーブルを、
あらかじめすべての関係条件について準備する場合の処
理を説明したが、テーブルの作成前に条件2の内容を調
査し、条件2で指定された関係条件についてのみテーブ
ルの作成を行うようにすれば、上述の実施の形態の処理
よりも処理を高速化でき、使用メモリを少なくする事が
可能になる。
【0028】また、検索処理で作成したテーブルを別途
データとして登録し、次にまた検索を行う時にテーブル
を再利用する手順について説明する。図5は図2のデー
タを要素11に対応する関係条件テーブルを含めてXM
Lデータとして記述した一例を示す。
データとして登録し、次にまた検索を行う時にテーブル
を再利用する手順について説明する。図5は図2のデー
タを要素11に対応する関係条件テーブルを含めてXM
Lデータとして記述した一例を示す。
【0029】XMLのデータ定義に必要なDTD(文書
型定義、Document Type Difinition)は説明を簡単化す
るためにここでは省略する。各要素はタグと呼ばれる括
弧<>で囲まれた定義で表現され、タグの中に属性定義
が行われる。タグは開始タグと終了タグに分けることが
でき、二つのタグの中に定義している要素の子供要素を
定義することで木構造を定義できる。
型定義、Document Type Difinition)は説明を簡単化す
るためにここでは省略する。各要素はタグと呼ばれる括
弧<>で囲まれた定義で表現され、タグの中に属性定義
が行われる。タグは開始タグと終了タグに分けることが
でき、二つのタグの中に定義している要素の子供要素を
定義することで木構造を定義できる。
【0030】図5では、要素タイプであるE0〜E2で
タグが定義され、各要素の属性としてAとその値が定義
されていることがわかる。更に上から3行目から始まる
要素11の定義では、要素11の関係条件テーブルを要
素11の属性として記述している。ここでは、先祖関係
をancestor、子孫関係をdescendant、前方関係を follo
wing、後方関係を precedingという属性名で表し、各要
素との関係を表の○×を1ビットとして考え記述順に並
べて2進数に見立てた数値を属性の値として10進数で
割り当てている。例えばancestor="64"は2進数で10000
00となり、記録順の先頭である要素9のみ表の○、すな
わち先祖関係で対象にすべき要素という意味になる。
タグが定義され、各要素の属性としてAとその値が定義
されていることがわかる。更に上から3行目から始まる
要素11の定義では、要素11の関係条件テーブルを要
素11の属性として記述している。ここでは、先祖関係
をancestor、子孫関係をdescendant、前方関係を follo
wing、後方関係を precedingという属性名で表し、各要
素との関係を表の○×を1ビットとして考え記述順に並
べて2進数に見立てた数値を属性の値として10進数で
割り当てている。例えばancestor="64"は2進数で10000
00となり、記録順の先頭である要素9のみ表の○、すな
わち先祖関係で対象にすべき要素という意味になる。
【0031】この様に、木構造のデータの中にテーブル
のデータを埋め込むことで、データ読み込み時にテーブ
ルを再度生成する必要がなく、検索処理の高速化が可能
になる。なお本実施例で説明したXMLデータの記述方
法は説明を行うための例であって、他の記述方法でテー
ブルを表してもかまわない。また、XMLのデータとし
て埋め込むだけでなく、検索対象の要素とは別のデータ
としてテーブルのデータを作成し、それぞれを組として
管理し、検索時に両方のデータを読み込んでテーブルを
再構築する方法でも同様の効果が得られる。
のデータを埋め込むことで、データ読み込み時にテーブ
ルを再度生成する必要がなく、検索処理の高速化が可能
になる。なお本実施例で説明したXMLデータの記述方
法は説明を行うための例であって、他の記述方法でテー
ブルを表してもかまわない。また、XMLのデータとし
て埋め込むだけでなく、検索対象の要素とは別のデータ
としてテーブルのデータを作成し、それぞれを組として
管理し、検索時に両方のデータを読み込んでテーブルを
再構築する方法でも同様の効果が得られる。
【0032】
【発明の効果】以上説明したように、木構造の関係の要
素からなるデータの特定要素を検索するデータ検索にお
いて、木構造上の要素に対して各々の要素と木構造上の
他の各々の要素との関係を示す関係条件情報を各々の要
素に対して保持及び管理し、検索条件のうち要素の属性
や種類によって要素を特定する検索属性条件により該デ
ータの要素を検索し、検索条件のうちの関係条件によっ
て要素を特定するための検索関係条件を該検索により検
索された要素の前記管理された関係条件情報から検索す
ることを特徴とする。
素からなるデータの特定要素を検索するデータ検索にお
いて、木構造上の要素に対して各々の要素と木構造上の
他の各々の要素との関係を示す関係条件情報を各々の要
素に対して保持及び管理し、検索条件のうち要素の属性
や種類によって要素を特定する検索属性条件により該デ
ータの要素を検索し、検索条件のうちの関係条件によっ
て要素を特定するための検索関係条件を該検索により検
索された要素の前記管理された関係条件情報から検索す
ることを特徴とする。
【0033】従って、本発明ではあらかじめ各要素につ
いて第2の条件で考えられるすべての木構造の関係で、
特定されるべき対象要素をリストアップしてテーブルと
して管理し、実際の検索処理では第1の条件で要素を特
定した後、特定した各要素に対応するテーブルを参照し
て、第3の条件で判定すべき要素を木構造の関係の探索
を行うことなく抽出することで、従来の処理で行う第2
の条件による木構造の探索を省略でき、処理を高速化で
きる。
いて第2の条件で考えられるすべての木構造の関係で、
特定されるべき対象要素をリストアップしてテーブルと
して管理し、実際の検索処理では第1の条件で要素を特
定した後、特定した各要素に対応するテーブルを参照し
て、第3の条件で判定すべき要素を木構造の関係の探索
を行うことなく抽出することで、従来の処理で行う第2
の条件による木構造の探索を省略でき、処理を高速化で
きる。
【0034】また、木構造の各要素に対して、要素間の
関係をテーブルとして持たせるため、従来の技術の第2
の例のように、条件によって処理不可能になる場合、例
えば特定した要素の記録順で先頭といったような第2の
条件による検索結果がわからないと処理不可能な条件に
も対応できる。
関係をテーブルとして持たせるため、従来の技術の第2
の例のように、条件によって処理不可能になる場合、例
えば特定した要素の記録順で先頭といったような第2の
条件による検索結果がわからないと処理不可能な条件に
も対応できる。
【0035】また、テーブルデータを作成する前に、あ
らかじめ条件2の内容を調査して必要な関係のみテーブ
ルデータを作成するようにすれば処理の高速化が可能で
ある。
らかじめ条件2の内容を調査して必要な関係のみテーブ
ルデータを作成するようにすれば処理の高速化が可能で
ある。
【0036】更に、作成したテーブルデータを検索対象
となるデータに埋め込む、あるいは別のデータとして要
素データと共に管理し、再度検索が必要な際にテーブル
も読み込むことで、要素の木構造を探索してテーブルを
生成する処理についても最初の検索以降は省略すること
が可能になる。
となるデータに埋め込む、あるいは別のデータとして要
素データと共に管理し、再度検索が必要な際にテーブル
も読み込むことで、要素の木構造を探索してテーブルを
生成する処理についても最初の検索以降は省略すること
が可能になる。
【図1】 本発明一実施の形態の要部機能ブロック図。
【図2】 本発明一実施の形態の検索対象となる木構造
を持ったデータを示す説明図。
を持ったデータを示す説明図。
【図3】 本発明一実施の形態の動作を示すフローチャ
ート。
ート。
【図4】 本発明一実施の形態の関係条件テーブルの一
例を示す説明図。
例を示す説明図。
【図5】 図2のデータを要素11に対応する関係条件
テーブルを含めてXMLデータとして記述した一例を示
す説明図。
テーブルを含めてXMLデータとして記述した一例を示
す説明図。
1 検索対象要素管理部
2 検索条件管理部
3 属性条件検索部
4 関係条件テーブル作成部
5 関係条件テーブル管理部
6 関係条件テーブル検索部
7 検索処理コンテキスト
8 検索結果管理部
9〜15 検索対象要素
Claims (11)
- 【請求項1】 木構造の関係の要素からなるデータの特
定要素を検索するデータ検索装置において、 木構造上の要素に対して各々の要素と木構造上の他の各
々の要素との関係を示す関係条件情報を各々の要素に対
して保持する管理部と、 検索条件のうち要素の属性や種類によって要素を特定す
る検索属性条件により該データの要素を検索し、検索条
件のうちの関係条件によって要素を特定するための検索
関係条件を該検索により検索された要素の前記管理部に
保持された関係条件情報から検索する検索部と、 を備えたことを特徴とするデータ検索装置。 - 【請求項2】 前記管理部に保持される前記関係条件情
報が、データ検索に使用される検索関係条件情報である
ことを特徴とする請求項1に記載のデータ検索装置。 - 【請求項3】 前記管理部に保持される関係条件情報
が、前記データを登録したフィルとは別のファイルに登
録されたことを特徴とする請求項1または2に記載のデ
ータ検索装置。 - 【請求項4】 木構造の関係の要素からなるデータの特
定要素を検索するデータ検索装置で検索されるデータの
データ構造において、 各々の要素に、該データ検索装置が各々の要素の属性や
種類によって要素を特定する属性条件を定義する第1の
情報と、該データ検索装置が各々の要素の木構造の関係
によって要素を特定する木構造上における関係条件と該
関係条件に合致する要素を記述する第2の情報とが記述
された、 ことを特徴とする木構造のデータ構造。 - 【請求項5】 各々の要素に、データ検索装置が各々の
要素の属性や種類によって要素を特定する属性条件を定
義する第1の情報と、該データ検索装置が各々の要素の
木構造の関係によって要素を特定する木構造上における
関係条件と該関係条件に合致する要素を記述する第2の
情報とが記述されたことを特徴とする木構造データを記
録したコンピュータ読み取り可能な記録媒体。 - 【請求項6】 木構造の関係の要素からなるデータの特
定要素を検索するコンピュータを、 木構造上の要素に対して各々の要素と木構造上の他の各
々の要素との関係を示す関係条件情報を各々の要素に対
して保持する管理手段と、 検索条件のうち要素の属性や種類によって要素を特定す
る検索属性条件により該データの要素を検索し、検索条
件のうちの関係条件によって要素を特定するための検索
関係条件を該検索により検索された要素の前記管理手段
に保持された関係条件情報から検索する検索手段と、 して機能させるデータ検索プログラム。 - 【請求項7】 前記管理手段に保持される前記関係条件
情報が、データ検索に使用される検索関係条件情報であ
ることを特徴とする請求項6に記載のデータ検索プログ
ラム。 - 【請求項8】 前記管理手段に保持される関係条件情報
が、前記データを登録したフィルとは別のファイルに登
録されたことを特徴とする請求項6または7に記載のデ
ータ検索プログラム。 - 【請求項9】 木構造の関係の要素からなるデータの特
定要素を検索するデータ検索方法において、 木構造上の要素に対して各々の要素と木構造上の他の各
々の要素との関係を示す関係条件情報を各々の要素に対
して保持する管理ステップと、 検索条件のうち要素の属性や種類によって要素を特定す
る検索属性条件により該データの要素を検索し、検索条
件のうちの関係条件によって要素を特定するための検索
関係条件を該検索により検索された要素の前記管理手段
に保持された関係条件情報から検索する検索ステップ
と、 備えたことを特徴とするデータ検索方法。 - 【請求項10】 前記管理ステップに保持される前記関
係条件情報が、データ検索に使用される検索関係条件情
報であることを特徴とする請求項9に記載のデータ検索
方法。 - 【請求項11】 前記管理ステップに保持される関係条
件情報が、前記データを登録したフィルとは別のファイ
ルに登録されたことを特徴とする請求項9または10に
記載のデータ検索方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001193973A JP2003006196A (ja) | 2001-06-27 | 2001-06-27 | データ検索装置、方法、プログラム及びデータ構造 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001193973A JP2003006196A (ja) | 2001-06-27 | 2001-06-27 | データ検索装置、方法、プログラム及びデータ構造 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2003006196A true JP2003006196A (ja) | 2003-01-10 |
Family
ID=19032168
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001193973A Pending JP2003006196A (ja) | 2001-06-27 | 2001-06-27 | データ検索装置、方法、プログラム及びデータ構造 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2003006196A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010009156A (ja) * | 2008-06-25 | 2010-01-14 | Fuji Xerox Co Ltd | 情報処理装置及び情報処理プログラム |
-
2001
- 2001-06-27 JP JP2001193973A patent/JP2003006196A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010009156A (ja) * | 2008-06-25 | 2010-01-14 | Fuji Xerox Co Ltd | 情報処理装置及び情報処理プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3887867B2 (ja) | 構造化文書の登録方法 | |
JP3554459B2 (ja) | テキストデータ登録検索方法 | |
JP4141556B2 (ja) | 構造化文書管理方法及びその実施装置並びにその処理プログラムを記録した媒体 | |
US20050165852A1 (en) | System and method for tracking annotations of data sources | |
JP2006024179A (ja) | 構造化文書処理装置、構造化文書処理方法、及びプログラム | |
JP2005070911A (ja) | 構造化文書のデータを検索する装置および方法 | |
JP3028738B2 (ja) | 文書共通論理情報編集装置 | |
JP2005190163A (ja) | 構造化データ検索方法、構造化データ検索装置およびプログラム | |
JP3632643B2 (ja) | 構造化文書管理装置 | |
JP2003006196A (ja) | データ検索装置、方法、プログラム及びデータ構造 | |
JP2003248690A (ja) | 文書処理装置および方法 | |
JP2000048024A (ja) | 構造化文書処理装置 | |
JP2925042B2 (ja) | 情報リンク生成方法 | |
JP2000003366A (ja) | 文書登録方法と文書検索方法及びその実施装置並びにその処理プログラムを記録した媒体 | |
JP2000090093A (ja) | 全文検索方法及び全文検索システム並びに全文検索プログラムを記録した記録媒体 | |
JPH06309365A (ja) | 文書処理装置 | |
JPH08190571A (ja) | 文書検索方法 | |
JP3555181B2 (ja) | 構造化文書検索方法 | |
JP2004102887A (ja) | 文書作成支援装置、文書作成支援方法、プログラムおよび記録媒体 | |
JP4255538B2 (ja) | 構造化文書蓄積検索装置 | |
JP3395362B2 (ja) | 文書処理装置 | |
JP5169505B2 (ja) | 文書合成システム及びプログラム | |
US7139971B1 (en) | Method of searching for and retrieving information from structure documents | |
JPH1153400A (ja) | 構造化文書検索装置及びプログラムを記録した機械読み取り可能な記録媒体 | |
JP3239845B2 (ja) | 全文検索装置および方法 |