(57)【特許請求の範囲】
【請求項１】
データベースに、当該データベースにアクセス可能なコンピュータを用いて新規の構造化文書を追加格納する方法であって、
前記構造化文書は、参照情報部及び内容部からなり、参照情報部は継承親となる参照先の構造化文書を指定する情報として個々の構造化文書に対応する一意の文書識別情報を零または１つのみ含み、内容部は当該構造化文書の内容情報を含み、
前記データベースは、前記構造化文書を格納する文書カラムと、該構造化文書に対応する文書識別情報を格納する文書識別情報カラムとからなるレコードを少なくとも１つ含むメインテーブルと、継承親となる構造化文書に対応する文書識別情報を格納する親情報カラムと、継承子となる構造化文書に対応する文書識別情報を格納する子情報カラムとからなるレコードを少なくとも１つ含む継承関係テーブルとを格納しており、
前記コンピュータが、
前記追加対象の構造化文書に対応する文書識別情報を作成するステップと、
前記データベースのメインテーブルに、文書カラムに追加対象の構造化文書を有し、文書識別情報カラムに該追加対象の構造化文書の文書識別情報を有するレコードを追加するステップと、
追加対象の構造化文書の参照情報部に参照先文書識別情報が含まれるか否かを判断するステップと、
参照情報部に参照先文書識別情報が含まれない場合には、
前記データベースの継承関係テーブルに、親情報カラムと子情報カラムの双方に追加対象の構造化文書の文書識別情報を有するレコードを追加するステップと、
参照情報部に参照先文書識別情報が含まれる場合には、
前記データベースの継承関係テーブルから、子情報カラムに該参照先の文書識別情報を有するレコードの集合を検索して取得するステップと、
前記データベースの継承関係テーブルに、取得した集合のレコード毎に、親情報カラムに前記レコードの親情報カラムに含まれる文書識別情報を有し、子情報カラムに追加対象の構造化文書の文書識別情報を有するレコードを追加するステップと、
前記データベースの継承関係テーブルに、親情報カラムと子情報カラムの双方に追加対象の構造化文書の文書識別情報を有するレコードを追加するステップとを実行する
ことを特徴とする構造化文書格納方法。
【請求項２】
請求項１記載の構造化文書格納方法において、
継承関係テーブルの各レコードは、前記に加え、親情報カラムの文書識別情報に対応する構造化文書と子情報カラムの文書識別情報に対応する構造化文書との相対的な継承段数を格納する相対段数カラムを有し、
請求項１記載のステップに代えて、
前記コンピュータが、
参照情報部に参照先文書識別情報が含まれない場合には、
前記データベースの継承関係テーブルに、親情報カラムと子情報カラムの双方に追加対象の構造化文書の文書識別情報を有し、相対段数カラムに値０を有するレコードを追加するステップと、
参照情報部に参照先文書識別情報が含まれる場合には、
前記データベースの継承関係テーブルから、子情報カラムに該参照先の文書識別情報を有するレコードの集合を検索して取得するステップと、
前記データベースの継承関係テーブルに、取得した集合のレコード毎に、親情報カラムに前記レコードの親情報カラムに含まれる文書識別情報を有し、子情報カラムに追加対象の構造化文書の文書識別情報を有し、相対段数カラムに前記レコードの相対段数カラムに含まれる値に１を加算した値を有するレコードを追加するステップと、
前記データベースの継承関係テーブルに、親情報カラムと子情報カラムの双方に追加対象の構造化文書の文書識別情報を有し、相対段数カラムに値０を有するレコードを追加するステップとを実行する
ことを特徴とする構造化文書格納方法。
【請求項３】
データベースから、当該データベースにアクセス可能なコンピュータを用いて検索条件に対応する構造化文書を検索する構造化文書検索方法であって、
前記構造化文書は、参照情報部及び内容部からなり、参照情報部は継承親となる参照先の構造化文書を指定する情報として個々の構造化文書に対応する一意の文書識別情報を零または１つのみ含み、内容部は当該構造化文書の内容情報を含み、
前記データベースは、前記構造化文書を格納する文書カラムと、該構造化文書に対応する文書識別情報を格納する文書識別情報カラムとからなるレコードを少なくとも１つ含むメインテーブルと、継承親となる構造化文書に対応する文書識別情報を格納する親情報カラムと、継承子となる構造化文書に対応する文書識別情報を格納する子情報カラムとからなるレコードを少なくとも１つ含む継承関係テーブルとを格納しており、
前記コンピュータが、
前記検索条件として文書識別情報を指定するステップと、
前記データベースの継承関係テーブルから、親情報カラムに前記指定された文書識別情報を有するレコードの集合を検索して取得するステップと、
該集合に含まれるレコードの子情報カラムに記述された文書識別情報を検索結果とするステップとを実行する
ことを特徴とする構造化文書検索方法。
【請求項４】
請求項１又は２記載の構造化文書格納方法において、
前記データベースは、文書識別情報を格納する識別情報カラムと、予め指定された内容情報の一部分である検索対象領域についてその領域に記述された値を格納する少なくとも１つの検索対象領域カラムとからなるレコードを少なくとも１つ含む検索インデックステーブルを併せて格納し、
請求項１または２に記載のステップの外に、
前記コンピュータが、
追加対象の構造化文書から検索対象領域に記述された値を取得するステップと、
参照情報部に参照先文書識別情報が含まれない場合には、
前記データベースの検索インデックステーブルに、識別情報カラムに追加対象の構造化文書の文書識別情報を有し、各検索対象領域カラムに前記取得した各検索対象領域の値をそれぞれ有するレコードを追加するステップと、
参照情報部に参照先文書識別情報が含まれる場合には、
前記データベースの検索インデックステーブルから、該参照先の文書識別情報を識別情報カラムに有するレコードを検索して取得するステップと、
前記データベースの検索インデックステーブルに、識別情報カラムに追加対象の構造化文書の文書識別情報を有し、各検索対象領域カラムのうち、前記レコードに値が格納されているカラムについてはその値を有し、前記レコードに値が格納されていないカラムについては前記取得した検索対象領域の値を有するレコードを追加するステップとを含む
ことを特徴とする構造化文書格納方法。
【請求項５】
データベースから、当該データベースにアクセス可能なコンピュータを用いて検索条件に対応する構造化文書を検索する構造化文書検索方法であって、
前記構造化文書は、参照情報部及び内容部からなり、参照情報部は継承親となる参照先の構造化文書を指定する情報として個々の構造化文書に対応する一意の文書識別情報を零または１つのみ含み、内容部は当該構造化文書の内容情報を含み、
前記データベースは、前記構造化文書を格納する文書カラムと、該構造化文書に対応する文書識別情報を格納する文書識別情報カラムとからなるレコードを少なくとも１つ含むメインテーブルと、継承親となる構造化文書に対応する文書識別情報を格納する親情報カラムと、継承子となる構造化文書に対応する文書識別情報を格納する子情報カラムとからなるレコードを少なくとも１つ含む継承関係テーブルと、文書識別情報を格納する識別情報カラムと、予め指定された内容情報の一部分である検索対象領域についてその領域に記述された値を格納する少なくとも１つの検索対象領域カラムとからなるレコードを少なくとも１つ含む検索インデックステーブルとを格納しており、
前記コンピュータが、
前記検索条件として文書識別情報、または検索対象領域のうちのいくつかとその検索対象領域に記述された値との組によるＡＮＤ条件、もしくは検索対象領域のうちのいくつかとその検索対象領域に記述された値との組と文書識別情報とによるＡＮＤ条件を指定するステップと、
前記検索条件に文書識別情報のみ指定された場合には、
前記データベースの継承関係テーブルから、親情報カラムに前記指定された文書識別情報を有するレコードの集合を検索して取得するステップと、
該集合に含まれるレコードの子情報カラムに記述された文書識別情報を検索結果とするステップと、
前記検索条件に検索対象領域のうちのいくつかとその検索対象領域に記述された値との組によるＡＮＤ条件のみを指定された場合には、
前記データベースの検索インデックステーブルから、前記指定された検索対象領域カラムに前記指定された値を有するレコードの集合を検索して取得するステップと、
該集合に含まれるレコードの識別情報カラムに記述された文書識別情報を検索結果とするステップと、
前記検索条件に検索対象領域のうちのいくつかとその検索対象領域に記述された値との組と文書識別情報とによるＡＮＤ条件を指定された場合には、
前記データベースの継承関係テーブルから、親情報カラムに前記指定された文書識別情報を有するレコードの集合を検索して取得するステップと、
前記データベースの検索インデックステーブルから、識別情報カラムに前記集合に含まれるレコードの子情報に記述された文書識別情報を有し、前記指定された検索対象領域カラムに前記指定された値を有するレコードの集合を検索して取得するステップと、
該集合に含まれるレコードの識別情報カラムに記述された文書識別情報を検索結果とするステップとを含む
ことを特徴とする構造化文書検索方法。
【請求項６】
請求項１又は２記載の構造化文書格納方法において、
前記データベースは、文書識別情報を格納する識別情報カラムと、予め指定された内容情報の一部分である検索対象領域についてその領域に記述された値を格納する少なくとも１つの検索対象領域カラムと、各検索対象領域カラム毎に該カラム内の値が当該構造化文書の内容部で初めて記述されている場合は真値を取り、それ以外の場合は偽値を取る出現フラグを格納する出現フラグカラムとからなるレコードを少なくとも１つ含む検索インデックステーブルを併せて格納し、
請求項１または２に記載のステップの外に、
前記コンピュータが、
追加対象の構造化文書から検索対象領域に記述された値を取得するステップと、
参照情報部に参照先文書識別情報が含まれない場合には、
前記データベースの検索インデックステーブルに、識別情報カラムに追加対象の構造化文書の文書識別情報を有し、各検索対象領域カラムに前記取得した各検索対象領域の値をそれぞれ有し、各出現フラグカラムのうち、前記取得した検索対象領域の値を有する検索対象領域に対応するカラムについては真値を有するレコードを追加するステップと、
参照情報部に参照先文書識別情報が含まれる場合には、
前記データベースの検索インデックステーブルから、該参照先の文書識別情報を識別情報カラムに有するレコードを検索して取得するステップと、
前記データベースの検索インデックステーブルに、識別情報カラムに追加対象の構造化文書の文書識別情報を有し、各検索対象領域カラムのうち、前記レコードに値が格納されているカラムについてはその値を有し、前記レコードに値が格納されていないカラムについては前記取得した検索対象領域の値を有し、各出現フラグカラムのうち、前記レコードの値を有する検索対象領域カラムに対応するカラムについては偽値を有し、前記取得した検索対象領域の値を有する検索対象領域カラムに対応するカラムについては真値を有するレコードを追加するステップとを含む
ことを特徴とする構造化文書格納方法。
【請求項７】
データベースから、当該データベースにアクセス可能なコンピュータを用いて検索条件に対応する構造化文書を検索する構造化文書検索方法であって、
前記構造化文書は、参照情報部及び内容部からなり、参照情報部は継承親となる参照先の構造化文書を指定する情報として個々の構造化文書に対応する一意の文書識別情報を零または１つのみ含み、内容部は当該構造化文書の内容情報を含み、
前記データベースは、前記構造化文書を格納する文書カラムと、該構造化文書に対応する文書識別情報を格納する文書識別情報カラムとからなるレコードを少なくとも１つ含むメインテーブルと、継承親となる構造化文書に対応する文書識別情報を格納する親情報カラムと、継承子となる構造化文書に対応する文書識別情報を格納する子情報カラムとからなるレコードを少なくとも１つ含む継承関係テーブルと、文書識別情報を格納する識別情報カラムと、予め指定された内容情報の一部分である検索対象領域についてその領域に記述された値を格納する少なくとも１つの検索対象領域カラムと、各検索対象領域カラム毎に該カラム内の値が当該構造化文書の内容部で初めて記述されている場合は真値を取り、それ以外の場合は偽値を取る出現フラグを格納する出現フラグカラムとからなるレコードを少なくとも１つ含む検索インデックステーブルとを格納しており、
前記コンピュータが、
前記検索条件として文書識別情報、または検索対象領域のうちのいくつかとその検索対象領域に記述された値との組によるＡＮＤ条件、もしくは検索対象領域のうちのいくつかとその検索対象領域に記述された値との組と文書識別情報とによるＡＮＤ条件、並びに検索対象として前記条件に合致するもののうち継承関係の頂点にあるもののみ取得する際に真値を指定し、それ以外の場合には偽値を指定するかまたは省略される子排除フラグを指定するステップと、
前記検索条件に文書識別情報と子排除フラグのみ指定された場合でかつ子排除フラグに偽値を指定されたまたは省略された場合には、
前記データベースの継承関係テーブルから、親情報カラムに前記指定された文書識別情報を有するレコードの集合を検索して取得するステップと、
該集合に含まれるレコードの子情報カラムに記述された文書識別情報を検索結果とするステップと、
前記検索条件に文書識別情報と子排除フラグのみ指定された場合でかつ子排除フラグに真値を指定された場合には、
前記データベースの継承関係テーブルに、親情報カラムと子情報カラムの双方に前記指定された文書識別情報を有するレコードが存在するか検索するステップと、
レコードが存在する場合のみ該文書識別情報を検索結果とするステップと、
前記検索条件に検索対象領域のうちのいくつかとその検索対象領域に記述された値との組によるＡＮＤ条件並びに子排除フラグのみを指定された場合でかつ子排除フラグに偽値を指定されたまたは省略された場合には、
前記データベースの検索インデックステーブルから、前記指定された検索対象領域カラムに前記指定された値を有するレコードの集合を検索して取得するステップと、
該集合に含まれるレコードの識別情報カラムに記述された文書識別情報を検索結果とするステップと、
前記検索条件に検索対象領域のうちのいくつかとその検索対象領域に記述された値との組によるＡＮＤ条件並びに子排除フラグのみを指定された場合でかつ子排除フラグに真値を指定された場合には、
前記データベースの検索インデックステーブルから、前記指定された検索対象領域カラムに前記指定された値を有するレコードの集合を検索して取得するステップと、
該集合に含まれるレコードのうち、前記指定された検索対象領域カラムに対応する出現フラグカラムのうち一つでも真値が格納されているカラムを有するレコードの識別情報カラムに記述された文書識別情報を検索結果とするステップと、
前記検索条件に検索対象領域のうちのいくつかとその検索対象領域に記述された値との組と文書識別情報とによるＡＮＤ条件並びに子排除フラグを指定された場合でかつ子排除フラグに偽値を指定されたまたは省略された場合には、
前記データベースの継承関係テーブルから、親情報カラムに前記指定された文書識別情報を有するレコードの集合を検索して取得するステップと、
前記データベースの検索インデックステーブルから、識別情報カラムに前記集合に含まれるレコードの子情報カラムに記述された文書識別情報を有し、前記指定された検索対象領域カラムに前記指定された値を有するレコードの第２の集合を検索して取得するステップと、
該第２の集合に含まれるレコードの識別情報カラムに記述された文書識別情報を検索結果とするステップと、
前記検索条件に検索対象領域のうちのいくつかとその検索対象領域に記述された値との組と文書識別情報とによるＡＮＤ条件並びに子排除フラグを指定された場合でかつ子排除フラグに真値を指定された場合には、
前記データベースの継承関係テーブルから、親情報カラムに前記指定された文書識別情報を有するレコードの集合を検索して取得するステップと、
前記データベースの検索インデックステーブルから、識別情報カラムに前記集合に含まれるレコードの子情報カラムに記述された文書識別情報を有し、前記指定された検索対象領域カラムに前記指定された値を有し、前記指定された検索対象領域カラムに対応する出現フラグカラムのうち一つでも真値が格納されているカラムを有するレコードの第２の集合を検索して取得するステップと、
該第２の集合に要素が存在する場合、そのレコードの識別情報カラムに記述された文書識別情報を検索結果とするステップと、
該第２の集合に要素が存在しない場合、前記データベースの継承関係テーブルに、親情報カラムと子情報カラムの双方に前記指定された文書識別情報を有するレコードが存在するか検索するステップと、
レコードが存在する場合のみ該文書識別情報を検索結果とするステップとを含む
ことを特徴とする構造化文書検索方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、構造化文書を格納、検索する方法に関し、特に一意の文書識別情報が定義でき、参照による継承関係が定義された構造化文書を格納し、効率良く検索する方法に関するものである。
【０００２】
【従来の技術】
継承関係が定義された構造化文書の管理方法に関しては、電子的な権利情報、価値情報を記述、管理する方法として特開２００２−４１７００が提案されている。この公知例では、構造化文書等で実現される権利定義を単なる構造化文書としてではなく、権利内容を構成する各種の属性を定義するためのデータ構造として捉え、さらにオブジェクト指向の考え方である継承の概念を取り入れることで、上位概念を定義した構造化文書を継承してより具体化した権利内容を定義することを可能にし、類似の権利定義を多量に作成・管理することを容易にしている。
【０００３】
しかし、この公知例では多量の権利定義を効率良く蓄積、取得する方法について記載されていない。
【０００４】
一方、ＳＧＭＬ文書やＸＭＬ文書を含む構造化文書を格納・検索するシステムとしては、これまで多くの提案がなされており、例えば特開２０００−９００９１、特開２００１−３４６１８、特開２００１−１３４５９６等が知られている。
【０００５】
しかし、これらの構造化文書の格納・検索方法は、ある構造化文書や、そこからハイパーリンクで連結された複数の構造化文書の集合を、構造化文書としての構文を予め解析し、論理構造を内部データ化して格納するものであり、継承関係の定義された構造化文書の格納・検索に適用するには以下のような問題点があった。
【０００６】
即ち、新規に構造化文書を格納する際、該構造化文書全体の構文解析を行う必要があるため、処理コストが高くなったり、論理構造化してしまうと失われる個々の構造化文書の継承関係や個別の記述内容を用いた検索が困難になったりするという問題である。
【０００７】
【発明が解決しようとする課題】
前記の様に、従来の構造化文書の格納・検索方法では、継承関係が定義された構造化文書を効率良く格納し、検索することができなかった。
【０００８】
本発明はこの点に鑑みてなされたもので、その目的は、継承付き構造化文書において、テーブル構成と格納方法、検索方法を工夫することで、格納時に毎回全ての継承構造化文書について内容を辿って論理構造を生成しなくても、継承関係が定義された構造化文書の効率の良い格納・検索を可能にすることである。
【０００９】
【課題を解決するための手段】
前記目的を達成するため、本発明では、継承親となる構造化文書に対応する文書識別情報を格納する親情報カラムと、継承子となる構造化文書に対応する文書識別情報を格納する子情報カラムとからなるレコードを少なくとも１つ含む継承関係テーブルを用いることで、構造化文書の内容を解釈したり、論理構造化したりすることなく、継承関係を辿ることが可能となる。
【００１０】
また、本発明では、継承関係テーブルの各レコードに、親情報カラムの文書識別情報に対応する構造化文書と子情報カラムの文書識別情報に対応する構造化文書との相対的な継承段数を格納する相対段数カラムを設けることで、ある構造化文書が継承する複数の構造化文書について構造化文書の内容を解析したり、継承関係テーブルへの複数回の参照をせずに論理的な継承関係を取得でき、構造化文書の論理構成を容易に再構成できる。
【００１１】
また、本発明では、前記継承関係テーブルとともに、文書識別情報を格納する識別情報カラムと、予め指定された内容情報の一部分である検索対象領域についてその領域に記述された値を格納する少なくとも１つの検索対象領域カラムとからなるレコードを少なくとも１つ含む検索インデックステーブルを用いることで、論理構造を生成することなく、構造化文書内の値による部分一致検索が可能となる。
【００１２】
また、本発明では、検索インデックステーブルの各レコードに、各検索対象領域カラム毎に該カラム内の値が当該構造化文書の内容部で初めて記述されている場合は真値を取り、それ以外の場合は偽値を取る出現フラグを格納する出現フラグカラムを設けることで、論理構造の再構成後には分からなくなってしまう、当該検索対象領域を有する構造化文書の物理的実体の特定を可能とする。
【００１３】
【発明の実施の形態】
以下、図面に従って本発明の実施の形態について説明する。
【００１４】
図１は本発明で格納・検索対象とする構造化文書の基本構成を示すもので、当該構造化文書１０は参照先（親）の構造化文書を指定する情報として個々の構造化文書に対応する一意の文書識別情報を零（参照先無し）または一つのみ含む参照情報部１１と、当該構造化文書１０の内容情報を含む内容部１２とからなっている。
【００１５】
ここで、参照元の構造化文書と該参照元の構造化文書の参照情報部に文書識別情報で指定された参照先の構造化文書との間に定義される継承関係とは、参照元の構造化文書の論理構造が参照先の構造化文書の論理構造を包含し、参照先の構造化文書の論理構造の任意の一部分への参照処理で得られる結果と、参照元の構造化文書の論理構造に参照処理をして得られる結果とが一致するという意味で「参照元の構造化文書  ｉｓ  ａ  参照先の構造化文書」と解釈される関係（ｉｓ−ａ関係）である。
【００１６】
なお、構造化文書の論理構造とは、該構造化文書を出発点として、参照情報部に参照先の構造化文書の文書識別情報が記述されていない構造化文書まで遡っていった場合の全ての構造化文書の内容情報をつなげたものである。
【００１７】
図２は構造化文書の継承関係の一例を示すもので、ここでは６個の構造化文書１０ａ，１０ｂ，１０ｃ，１０ｄ，１０ｅ，１０ｆにおいて、構造化文書１０ｂ，１０ｃの参照情報部に構造化文書１０ａの文書識別情報が記述され、構造化文書１０ｄの参照情報部に構造化文書１０ｂの文書識別情報が記述され、構造化文書１０ｅ，１０ｆの参照情報部に構造化文書１０ｃの文書識別情報が記述されている例（構造化文書１０ａの参照情報部には記述無し）を示す。
【００１８】
図３は本発明で格納・検索対象とする構造化文書の具体例を示すもので、ここでは特開２００２−４１７００に記載された権利定義を想定した例、詳細には以下の５つのタグセットと１つの属性値を有するＸＭＬ文書の集合である権利定義２０の例を示す。
【００１９】
Ｔｉｃｋｅｔタグ：権利定義のトップエレメントであり、Ｐａｒｅｎｔ属性を有することができる。
【００２０】
Ｔｙｐｅタグ：チケットの種別を記述するエレメント。本実施の形態では値「コンサート」を有する権利定義の集合を例に採る。
【００２１】
Ｎａｍｅタグ：チケットの名称を記述するエレメント。本実施の形態では値「クリスマスコンサート」を有する権利定義の集合を例に採る。
【００２２】
Ｐｌａｃｅタグ：場所を記述するエレメント。本実施の形態では値「東京」「名古屋」「大阪」を有する権利定義の集合を例に採る。
【００２３】
Ｇａｔｅタグ：チケットの改札場所を記述するエレメント。本実施の形態では値「Ｇａｔｅ１」「Ｇａｔｅ２」「Ｇａｔｅ３」を有する権利定義の集合を例に採る。
【００２４】
Ｐａｒｅｎｔ属性：トップエレメントで指定され、継承する権利定義（親権利定義）の文書識別情報である権利定義ＩＤを指定する。
【００２５】
ここで、Ｔｉｃｋｅｔタグ内のＰａｒｅｎｔ属性が前述した参照情報部に該当し、それ以外が前述した内容部に該当する。
【００２６】
図４は前述した権利定義の具体例、ここでは９個の権利定義２０Ａ，２０Ｂ，２０Ｃ，２０Ｄ，２０Ｅ，２０Ｆ，２０Ｇ，２０Ｈ，２０Ｉを、また、図５は図４に示した権利定義２０Ａ〜２０Ｉの継承関係を表すツリーを示すものである。
【００２７】
なお、権利定義の文書識別情報である権利定義ＩＤは当該権利定義のハッシュ値をとることとし、本実施の形態ではＡ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆ，Ｇ，Ｈ，Ｉ等のアルファベットでその値を表すこととする。
【００２８】
ここで、ハッシュ値とは、ｙ＝Ｈ（ｘ）であるようなｘをｙから求めることが極めて困難な一方向関数であり、かつ異なる入力から得られる結果が一致する確率が極めて低いという性質を有するハッシュ関数により入力のデータから得られる値である。この様なハッシュ関数としてはＭＤ５やＳＨＡ−１などが広く知られている。
【００２９】
本実施の形態では、権利定義の参照情報部をトップエレメントの属性として表したが、例えばタグの一つとして記述することも可能である。また、文書識別情報として親権利定義のハッシュ値である権利定義ＩＤとしたが、権利定義をファイルとして管理する場合にはそのＵＲＬを指定することも可能である。
【００３０】
図６は本発明方法を実現する装置構成の一例を示すもので、リレーショナルデーベース（ＲＤＢＳ）内に格納された３つのテーブル、即ちメインテーブル３０、継承関係テーブル（親子テーブル）４０及び検索インデックステーブル５０と、文書格納処理部６０と、文書検索処理部７０とから構成される。
【００３１】
メインテーブル３０は、図７に示すように、構造化文書を格納する文書カラム（権利定義カラム）３１と、該構造化文書に対応する文書識別情報を格納する文書識別情報カラム（権利定義ＩＤカラム）３２とからなるレコードを少なくとも１つ含む。
【００３２】
継承関係テーブル４０は、図８に示すように、継承親となる構造化文書に対応する文書識別情報を格納する親情報カラム（親権利定義ＩＤカラム）４１と、継承子となる構造化文書に対応する文書識別情報を格納する子情報カラム（子権利定義ＩＤカラム）４２と、親情報カラムの文書識別情報に対応する構造化文書と子情報カラムの文書識別情報に対応する構造化文書との相対的な継承段数を格納する相対段数カラム４３とからなるレコードを少なくとも１つ含む。
【００３３】
検索インデックステーブル５０は、図９に示すように、文書識別情報を格納する識別情報カラム（権利定義ＩＤカラム）５１と、予め指定された内容情報の一部分である検索対象領域についてその領域に記述された値を格納する少なくとも１つの検索対象領域カラム（Ｔｙｐｅカラム、Ｎａｍｅカラム、Ｐｌａｃｅカラム、Ｇａｔｅカラム）５２と、各検索対象領域カラム毎に該カラム内の値が当該構造化文書の内容部に記述されている場合は真値（ＴＲＵＥ）を取り、それ以外の場合は偽値（ＦＡＬＳＥ）を取る出現フラグを格納する出現フラグカラム（Ｔｙｐｅフラグカラム、Ｎａｍｅフラグカラム、Ｐｌａｃｅフラグカラム、Ｇａｔｅフラグカラム）５３とからなるレコードを少なくとも１つ含む。
【００３４】
文書格納処理部６０及び文書検索処理部７０は、前記ＲＤＢＳにアクセス可能なコンピュータとその上で実行される文書格納プログラム及び文書検索プログラムによって実現される。
【００３５】
図１０乃至図１９は文書格納プログラム及び文書検索プログラムに対応する処理の流れ図である。詳細には、図１０は請求項１の文書格納方法、図１１は請求項２の文書格納方法、図１２は請求項４の文書格納方法、図１３は請求項６の文書格納方法にそれぞれ対応する文書格納プログラムの流れ図である。また、図１４は請求項３の文書検索方法、図１５は請求項５の文書検索方法、図１６，図１７，図１８，図１９は請求項７の文書検索方法にそれぞれ対応する文書検索プログラムの流れ図である。
【００３６】
なお、図１５において「検索対象領域のうちのいくつかとその検索対象領域に記述された値との組によるＡＮＤ条件」は「ＡＮＤ条件」と、「検索対象領域のうちのいくつかとその検索対象領域に記述された値との組と文書識別情報とによるＡＮＤ条件」は「文書識別情報を含むＡＮＤ条件」と略記した。また、図１６において「検索対象領域のうちのいくつかとその検索対象領域に記述された値との組によるＡＮＤ条件並びに子排除フラグ」は「ＡＮＤ条件と子排除フラグ」と、「検索対象領域のうちのいくつかとその検索対象領域に記述された値との組と文書識別情報とによるＡＮＤ条件並びに子排除フラグ」は「文書識別情報を含むＡＮＤ条件と子排除フラグ」とそれぞれ略記した。また、図１６中の「別紙フローα」、「別紙フローβ」、「別紙フローγ」はそれぞれ図１７、図１８、図１９を示す。
【００３７】
以下、権利定義２０Ａ，２０Ｂ，２０Ｃが格納されている状態から、権利定義２０Ｄを新たに格納する場合の処理手順を図２０を用いて説明する。
【００３８】
（１）権利定義２０Ｄのハッシュ値として、権利定義ＩＤ＝Ｄを作成（ｓ１）。
【００３９】
（２）メインテーブル３０に権利定義ＩＤと権利定義を格納（ｓ２）。
【００４０】
（３）権利定義２０ＤからＰａｒｅｎｔ属性の値Ｃを取得（ｓ７）。
【００４１】
（４）継承関係テーブル４０から、子カラムにＣを有するレコードを取得（ｓ４）。
【００４２】
集合１：｛親，子，段数｝＝｛Ａ，Ｃ，２｝，｛Ｂ，Ｃ，１｝，｛Ｃ，Ｃ，０｝が取得される。
【００４３】
（５）集合１の３つのレコードの親カラムの値Ａ，Ｂ，Ｃを親カラムに有し、Ｄを子カラムに有し、相対段数にそれぞれ１を加えた値３，２，１を相対段数カラムに有するレコードと、親カラム、子カラムともＤを有し、相対段数カラムに０を有するレコードを継承関係テーブル４０に追加（ｓ５’，ｓ６’）。
【００４４】
レコード｛親，子，段数｝＝｛Ａ，Ｄ，３｝，｛Ｂ，Ｄ，２｝，｛Ｃ，Ｄ，１｝，｛Ｄ，Ｄ，０｝が追加される。
【００４５】
（６）検索インデックステーブル５０から、権利定義ＩＤカラムにＣを有するレコードを取得（ｓ８）。
【００４６】
（７）検索インデックステーブル５０に、権利定義ＩＤカラムに値Ｄを有し、Ｃのレコードの各検索対象領域カラムの値を当該カラムに有し、対応するフラグカラムにはＦＡＬＳＥを有し、Ｃのレコードに記載された以外の検索対象領域であるＧａｔｅの値Ｇａｔｅ１を取得してＤのレコードのＧａｔｅカラムに格納し、Ｇａｔｅフラグに値ＴＲＵＥを格納するレコードを追加（ｓ９’）。
【００４７】
また、以下に、いくつかの検索条件と、検索処理の概要、取得される権利定義ＩＤを例示する。
【００４８】
検索例１：「権利定義ＩＤ＝Ｆ」を条件とする検索
継承関係テーブル４０から、「親権利定義ＩＤ＝Ｆ」のレコードの子権利定義ＩＤ｛Ｆ，Ｉ｝を取得し、これを検索結果とする（ｓ１１〜ｓ１３）。
【００４９】
子排除フラグにＴＲＵＥが指定されていた場合、「親権利定義ＩＤ＝子権利定義ＩＤ＝Ｆ」のレコードの存在を確認し、存在するので｛Ｆ｝を検索結果とする（ｓ１４，ｓ２１〜ｓ２４）。
【００５０】
検索例２：「＜Ｇａｔｅ＞＝Ｇａｔｅ１」を条件とする検索
検索インデックステーブル５０から、「＜Ｇａｔｅ＞＝Ｇａｔｅ１」のレコードの権利定義ＩＤ｛Ｄ，Ｉ｝を取得し、これを検索結果とする（ｓ１１，ｓ１５，１６）。
【００５１】
子排除フラグにＴＲＵＥが指定されていた場合、この結果のうちＧａｔｅフラグがＴＲＵＥである｛Ｄ，Ｉ｝を検索結果とする（ｓ１４，ｓ３１〜ｓ３３）。
【００５２】
検索例３：「＜Ｎａｍｅ＞＝クリスマスコンサート  ＡＮＤ  ＜Ｐｌａｃｅ＞＝東京」を条件とする検索
検索インデックステーブル５０から、「＜Ｎａｍｅ＞＝クリスマスコンサート」かつ「＜Ｐｌａｃｅ＞＝東京」のレコードの権利定義ＩＤ｛Ｃ，Ｄ，Ｇ，Ｈ｝を取得し、これを検索結果とする（ｓ１１，ｓ１４〜１６）。
【００５３】
子排除フラグにＴＲＵＥが指定されていた場合、この結果のうち、ＮａｍｅフラグまたはＰｌａｃｅフラグがＴＲＵＥである｛Ｃ｝を検索結果とする（ｓ３１〜ｓ３３）。
【００５４】
検索例４：「＜Ｎａｍｅ＞＝クリスマスコンサート  ＡＮＤ  ＩＤ＝Ｃ」を条件とする検索
継承関係テーブル４０から、「親権利定義ＩＤ＝Ｃ」の子権利定義ＩＤ｛Ｃ，Ｄ，Ｇ，Ｈ｝を取得し（ｓ１１，ｓ１４，ｓ１７）、検索インデックステーブル５０から、これらを権利定義ＩＤに有するレコードの集合を取得する（ｓ１８）。該レコードの集合から、「＜Ｎａｍｅ＞＝クリスマスコンサート」のレコードの権利定義ＩＤ｛Ｃ，Ｄ，Ｇ，Ｈ｝を取得し（＊）、これを検索結果とする（ｓ１９）。
【００５５】
子排除フラグにＴＲＵＥが指定されていた場合、この結果のうち、ＮａｍｅフラグがＴＲＵＥなものを検索するが、該当がないため、｛Ｃ｝を検索結果とする（ｓ４１〜ｓ４７）（＊の段階で既に「親権利定義ＩＤ＝子権利定義ＩＤ＝Ｃ」の存在が確認されているため）。
【００５６】
また、前記検索例で得られた結果である権利定義ＩＤの各々について、その論理構造を継承段数を用いて再構成する処理手順を説明する。
【００５７】
例えば、権利定義ＩＤ＝Ｈの論理構造を取得するためには、
（１）継承関係テーブル４０から、「子権利定義ＩＤ＝Ｈ」のレコードを取得し、その親権利定義ＩＤを継承段数の降順に並べて継承関係を再構成する。
【００５８】
この場合、｛親権利定義ＩＤ，継承段数｝＝｛Ａ，３｝｛Ｂ，２｝｛Ｃ，１｝｛Ｈ，０｝なので、継承親から順に、Ａ−Ｂ−Ｃ−Ｈという継承関係が得られる。
【００５９】
（２）それぞれの権利定義ＩＤについて、メインテーブル３０から権利定義を取得し、その内容部を先頭から順に連結することで論理構造を得る。
【００６０】
即ち、権利定義ＩＤ＝Ｈの権利定義は、論理構造として以下の内容情報と同一視される。
【００６１】
＜Ｔｙｐｅ＞コンサート＜／Ｔｙｐｅ＞
＜Ｎａｍｅ＞クリスマスコンサート＜／Ｎａｍｅ＞
＜Ｐｌａｃｅ＞東京＜／Ｐｌａｃｅ＞
＜Ｇａｔｅ＞Ｇａｔｅ３＜／Ｇａｔｅ＞
【００６２】
【発明の効果】
以上説明したように、請求項１及び３の発明によれば、継承関係テーブルを用いることで、構造化文書の参照情報部から参照先を取得して逐次に継承関係を辿ることなく、ある構造化文書が継承する構造化文書の集合を特定することができる。また、予め継承関係をツリー構造化して記憶しておかなくても、単純なテーブル参照によりある構造化文書を継承している全ての子構造化文書を特定することができる。
【００６３】
また、請求項２及び３の発明によれば、継承段数を管理することで、ある構造化文書が継承する複数の構造化文書について、参照情報部を逐次に解析したり、継承関係テーブルへの参照を逐次に行ったりせずに、ある文書識別情報を有する構造化文書の継承関係が定義された全ての構造化文書の継承階層構造を取得でき、当該構造化文書の論理構造、即ち自らを含む継承関係が定義された全ての構造化文書の内容部を継承階層順に連結した文書を容易に再構成することができる。
【００６４】
また、請求項４及び５の発明によれば、構造化文書内の特定の検索対象領域に対するインデックスを張った検索インデックステーブルを用いることで、全ての構造化文書の論理構造を予め取得しなくても、論理構造に対する部分一致検索を行うことができる。
【００６５】
また、請求項６及び７の発明によれば、検索インデックステーブルに、検索対象領域の出現フラグを設けることで、論理構造の再構成後には情報が失われてしまう当該検索対象領域を有する構造化文書の物理的実体の特定が可能となる。
【図面の簡単な説明】
【図１】本発明で対象とする構造化文書の基本構成を示す模式図
【図２】構造化文書の継承関係の一例を示す模式図
【図３】本発明で対象とする構造化文書の具体例を示す模式図
【図４】権利定義の具体例を示す模式図
【図５】図４に示した権利定義の継承ツリーの模式図
【図６】本発明方法を実現する装置構成の一例を示すブロック図
【図７】図６中のメインテーブルの一例を示す模式図
【図８】図６中の継承関係テーブルの一例を示す模式図
【図９】図６中の検索インデックステーブルの一例を示す模式図
【図１０】請求項１の文書格納方法に対応する文書格納プログラムの流れ図
【図１１】請求項２の文書格納方法に対応する文書格納プログラムの流れ図
【図１２】請求項４の文書格納方法に対応する文書格納プログラムの流れ図
【図１３】請求項６の文書格納方法に対応する文書格納プログラムの流れ図
【図１４】請求項３の文書検索方法に対応する文書格納プログラムの流れ図
【図１５】請求項５の文書検索方法に対応する文書格納プログラムの流れ図
【図１６】請求項７の文書検索方法に対応する文書格納プログラムの流れ図
【図１７】請求項７の文書検索方法に対応する文書格納プログラムの流れ図
【図１８】請求項７の文書検索方法に対応する文書格納プログラムの流れ図
【図１９】請求項７の文書検索方法に対応する文書格納プログラムの流れ図
【図２０】文書格納処理の一例を示す説明図
【符号の説明】
３０：メインテーブル、３１：文書カラム（権利定義カラム）、３２：文書識別情報カラム（権利定義ＩＤカラム）、４０：継承関係テーブル、４１：親情報カラム（親権利定義ＩＤカラム）、４２：子情報カラム（子権利定義ＩＤカラム）、４３：相対段数カラム、５０：検索インデックステーブル、５１：識別情報カラム（権利定義ＩＤカラム）、５２：検索対象領域カラム（Ｔｙｐｅカラム、Ｎａｍｅカラム、Ｐｌａｃｅカラム、Ｇａｔｅカラム）、５３：出現フラグカラム（Ｔｙｐｅフラグカラム、Ｎａｍｅフラグカラム、Ｐｌａｃｅフラグカラム、Ｇａｔｅフラグカラム）、６０：文書格納処理部、７０：文書検索処理部。
【図１】
0004034591.tif 000002
【図２】
0004034591.tif 000003
【図３】
0004034591.tif 000004
【図４】
0004034591.tif 000005
【図５】
0004034591.tif 000006
【図６】
0004034591.tif 000007
【図７】
0004034591.tif 000008
【図８】
0004034591.tif 000009
【図９】
0004034591.tif 000010
【図１０】
0004034591.tif 000011
【図１１】
0004034591.tif 000012
【図１２】
0004034591.tif 000013
【図１３】
0004034591.tif 000014
【図１４】
0004034591.tif 000015
【図１５】
0004034591.tif 000016
【図１６】
0004034591.tif 000017
【図１７】
0004034591.tif 000018
【図１８】
0004034591.tif 000019
【図１９】
0004034591.tif 000020
【図２０】
0004034591.tif 000021