(57)【要約】【課題】構造化文書の構造情報を含む索引であっても適切に圧縮することができる構造化文書管理装置、及び方法を提供する。【解決手段】索引解析部３６が、テキスト情報から分割した語彙毎に、スキーマ識別情報及び識別情報を対応付けた索引情報の個数が閾値を超えた場合に、当該個数分のスキーマ識別情報であるスキーマ識別情報群、及び当該個数分の識別情報である識別情報群毎の分布を解析し、第１圧縮部３８が、スキーマ識別情報群の分布解析の結果、所定数を超えるスキーマ識別情報が、スキーマ識別情報と、スキーマ識別情報が属するグループを識別可能なグループ識別情報と、当該グループ内においてスキーマ識別情報を識別可能なグループ内識別情報とを対応付けて記憶する第１ルール記憶部５５に記憶されているスキーマ識別情報に一致する場合に、スキーマ識別情報群をグループ識別情報及びグループ内識別情報を用いて圧縮する。【選択図】図１
2010224883.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して、クライアント装置から構造化文書を受信する通信部と、
前記構造化文書の構造を解析し、前記構造化文書のテキスト情報を抽出する文書解析部と、
前記構造化文書の構造的特徴を示す第１スキーマ情報を作成するスキーマ作成部と、
前記スキーマ作成部により過去に作成された第２スキーマ情報と、前記第２スキーマ情報を識別するスキーマ識別情報を対応付けて記憶するスキーマ記憶部と、
前記第１スキーマ情報に一致する前記第２スキーマ情報を前記スキーマ記憶部から照合する照合部と、
前記構造化文書に、前記照合部により照合された前記第２スキーマ情報を識別する前記スキーマ識別情報、及び前記構造化文書の識別情報を付与する付与部と、
前記構造化文書のテキスト情報から語彙を分割し、分割した語彙毎に、前記スキーマ識別情報、及び前記構造化文書の識別情報を対応付けた索引情報を作成する索引作成部と、
前記索引情報をファイル形式で記憶する索引記憶部と、
ファイル形式で記憶された前記索引情報の個数が閾値を超えた場合に、前記個数分の前記スキーマ識別情報であるスキーマ識別情報群、及び前記個数分の前記識別情報である前記識別情報群毎の分布を解析する索引解析部と、
前記スキーマ識別情報と、前記スキーマ識別情報が属するグループを一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ識別情報と、当該グループ内において前記スキーマ識別情報を一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ内識別情報とを対応付けて記憶する第１ルール記憶部と、
複数の圧縮ルールを記憶する第２ルール記憶部と、
前記スキーマ識別情報群の分布解析の結果、所定数を超える前記スキーマ識別情報が前記第１ルール記憶部に記憶されている前記スキーマ識別情報に一致する場合に、前記スキーマ識別情報群を前記グループ識別情報及び前記グループ内識別情報を用いて圧縮する第１圧縮部と、
前記第２ルール記憶部に記憶され、前記索引情報の分布解析の結果に応じた圧縮ルールで、前記スキーマ識別情報群、及び前記識別情報群の少なくともいずれかを圧縮する第２圧縮部と、を備えることを特徴とする構造化文書管理装置。
【請求項２】
前記照合部は、前記スキーマ記憶部に記憶された前記スキーマ識別情報の所定期間内における照合回数に応じて、前記第１ルール記憶部に記憶された前記スキーマ識別情報に対応付ける前記グループ識別情報を決定することを特徴とする請求項１に記載の構造化文書管理装置。
【請求項３】
前記第１圧縮部及び前記第２圧縮部により圧縮された前記索引情報を、前記スキーマ識別情報、及び前記識別情報毎に再配置して前記索引記憶部に記憶させる変更部を更に備えることを特徴とする請求項１又は２に記載の構造化文書管理装置。
【請求項４】
前記第２圧縮部は、前記索引情報の分布解析の結果に応じた圧縮ルールが複数存在する場合に、複数の圧縮ルールで前記スキーマ識別情報群、及び前記識別情報群の少なくともいずれかを圧縮することを特徴とする請求項１〜３のいずれか１つに記載の構造化文書管理装置。
【請求項５】
通信部が、ネットワークを介して、クライアント装置から構造化文書を受信する通信ステップと、
文書解析部が、前記構造化文書の構造を解析し、前記構造化文書のテキスト情報を抽出する文書解析ステップと、
スキーマ作成部が、前記構造化文書の構造的特徴を示す第１スキーマ情報を作成するスキーマ作成ステップと、
照合部が、前記スキーマ作成ステップにより過去に作成された前記第２スキーマ情報と、前記第２スキーマ情報を識別するスキーマ識別情報を対応付けて記憶するスキーマ記憶部から、前記第１スキーマ情報に一致する前記第２スキーマ情報を照合する照合ステップと、
付与部が、前記構造化文書に、前記照合ステップにより照合された前記第２スキーマ情報を識別する前記スキーマ識別情報、及び前記構造化文書の識別情報を付与する付与ステップと、
索引作成部が、前記構造化文書のテキスト情報から語彙を分割し、分割した語彙毎に、前記スキーマ識別情報、及び前記構造化文書の識別情報を対応付けた索引情報を作成し、当該索引情報をファイル形式で索引記憶部に記憶させる索引作成ステップと、
索引解析部が、ファイル形式で記憶された前記索引情報の個数が閾値を超えた場合に、前記個数分の前記スキーマ識別情報であるスキーマ識別情報群、及び前記個数分の前記識別情報である前記識別情報群毎の分布を解析する索引解析ステップと、
第１圧縮部が、前記スキーマ識別情報群の分布解析の結果、所定数を超える前記スキーマ識別情報が、前記スキーマ識別情報と、前記スキーマ識別情報が属するグループを一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ識別情報と、当該グループ内において前記スキーマ識別情報を一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ内識別情報とを対応付けて記憶する第１ルール記憶部に記憶されている前記スキーマ識別情報に一致する場合に、前記スキーマ識別情報群を前記グループ識別情報及び前記グループ内識別情報を用いて圧縮する第１圧縮ステップと、
第２圧縮部が、複数の圧縮ルールを記憶する第２ルール記憶部に記憶され、前記索引情報の分布解析の結果に応じた圧縮ルールで、前記スキーマ識別情報群、及び前記識別情報群の少なくともいずれかを圧縮する第２圧縮ステップと、を含むことを特徴とする構造化文書管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、構造化文書管理装置、及び方法に関する。
【背景技術】
【０００２】
近年、種々のデータがＸＭＬ（Extensible Markup Language）などの構造化文書形式で管理されており、従来はリレーショナルデータベースで管理していた定型的な数値データや、全文検索エンジンで管理されていたテキストデータなども、構造化文書形式で管理したいという要望が高まっている。
【０００３】
このため、構造化文書データベースで管理する構造化文書に対する問合せ言語(クエリ)も、例えばＷ３Ｃ（World Wide Web Consortium）により標準化されたＸＱｕｅｒｙ（An XML Query Language）など、キーワードと構造条件を指定したクエリによる高度な検索要求となり、検索の高速化が求められている。
【０００４】
ところで、検索の高速化のために、構造化文書データベースに登録するテキストをキーワードで分割し、分割したキーワードと、構造化文書データベースに登録する構造化文書の文書識別情報、当該構造化文書の構造を示す構造情報、及び当該構造化文書内におけるキーワードの発生位置情報を関連付けて、転置ファイル形式で索引化する方法がある。
【０００５】
但し、一般的に転置ファイルによる索引管理方式は索引のサイズが非常に大きくなってしまうため、例えば特許文献１では、予め複数の圧縮方法を用意しておき、転置ファイル形式で索引を登録する際に、その時刻に応じた圧縮方法で索引を圧縮して登録する技術が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００６−１７２３６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１で開示された技術では、時刻をキーにして圧縮方法を決定しているため、最適な圧縮方法が選択されるとは限らない。
【０００８】
特に、構造化文書データベースに登録される構造化文書は、一般的に類似する構造を持つものが連続して登録されることが多いものの、その構造自体は規則性や関連性がないことが多いため、複数の圧縮方法を使い分けたとしても、索引の構造情報の圧縮率が期待できないという問題がある。
【０００９】
本発明は、上記事情に鑑みてなされたものであり、構造化文書の構造情報を含む索引であっても適切に圧縮することができる構造化文書管理装置、及び方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するために、本発明の一態様にかかる構造化文書管理装置は、ネットワークを介して、クライアント装置から構造化文書を受信する通信部と、前記構造化文書の構造を解析し、前記構造化文書のテキスト情報を抽出する文書解析部と、前記構造化文書の構造的特徴を示す第１スキーマ情報を作成するスキーマ作成部と、前記スキーマ作成部により過去に作成された第２スキーマ情報と、前記第２スキーマ情報を識別するスキーマ識別情報を対応付けて記憶するスキーマ記憶部と、前記第１スキーマ情報に一致する前記第２スキーマ情報を前記スキーマ記憶部から照合する照合部と、前記構造化文書に、前記照合部により照合された前記第２スキーマ情報を識別する前記スキーマ識別情報、及び前記構造化文書の識別情報を付与する付与部と、前記構造化文書のテキスト情報から語彙を分割し、分割した語彙毎に、前記スキーマ識別情報、及び前記構造化文書の識別情報を対応付けた索引情報を作成する索引作成部と、前記索引情報をファイル形式で記憶する索引記憶部と、ファイル形式で記憶された前記索引情報の個数が閾値を超えた場合に、前記個数分の前記スキーマ識別情報であるスキーマ識別情報群、及び前記個数分の前記識別情報である前記識別情報群毎の分布を解析する索引解析部と、前記スキーマ識別情報と、前記スキーマ識別情報が属するグループを一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ識別情報と、当該グループ内において前記スキーマ識別情報を一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ内識別情報とを対応付けて記憶する第１ルール記憶部と、複数の圧縮ルールを記憶する第２ルール記憶部と、前記スキーマ識別情報群の分布解析の結果、所定数を超える前記スキーマ識別情報が前記第１ルール記憶部に記憶されている前記スキーマ識別情報に一致する場合に、前記スキーマ識別情報群を前記グループ識別情報及び前記グループ内識別情報を用いて圧縮する第１圧縮部と、前記第２ルール記憶部に記憶され、前記索引情報の分布解析の結果に応じた圧縮ルールで、前記スキーマ識別情報群、及び前記識別情報群の少なくともいずれかを圧縮する第２圧縮部と、を備えることを特徴とする。
【００１１】
また、本発明の別の態様にかかる構造化文書管理方法は、通信部が、ネットワークを介して、クライアント装置から構造化文書を受信する通信ステップと、文書解析部が、前記構造化文書の構造を解析し、前記構造化文書のテキスト情報を抽出する文書解析ステップと、スキーマ作成部が、前記構造化文書の構造的特徴を示す第１スキーマ情報を作成するスキーマ作成ステップと、照合部が、前記スキーマ作成ステップにより過去に作成された前記第２スキーマ情報と、前記第２スキーマ情報を識別するスキーマ識別情報を対応付けて記憶するスキーマ記憶部から、前記第１スキーマ情報に一致する前記第２スキーマ情報を照合する照合ステップと、付与部が、前記構造化文書に、前記照合ステップにより照合された前記第２スキーマ情報を識別する前記スキーマ識別情報、及び前記構造化文書の識別情報を付与する付与ステップと、索引作成部が、前記構造化文書のテキスト情報から語彙を分割し、分割した語彙毎に、前記スキーマ識別情報、及び前記構造化文書の識別情報を対応付けた索引情報を作成し、当該索引情報をファイル形式で索引記憶部に記憶させる索引作成ステップと、索引解析部が、ファイル形式で記憶された前記索引情報の個数が閾値を超えた場合に、前記個数分の前記スキーマ識別情報であるスキーマ識別情報群、及び前記個数分の前記識別情報である前記識別情報群毎の分布を解析する索引解析ステップと、第１圧縮部が、前記スキーマ識別情報群の分布解析の結果、所定数を超える前記スキーマ識別情報が、前記スキーマ識別情報と、前記スキーマ識別情報が属するグループを一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ識別情報と、当該グループ内において前記スキーマ識別情報を一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ内識別情報とを対応付けて記憶する第１ルール記憶部に記憶されている前記スキーマ識別情報に一致する場合に、前記スキーマ識別情報群を前記グループ識別情報及び前記グループ内識別情報を用いて圧縮する第１圧縮ステップと、第２圧縮部が、複数の圧縮ルールを記憶する第２ルール記憶部に記憶され、前記索引情報の分布解析の結果に応じた圧縮ルールで、前記スキーマ識別情報群、及び前記識別情報群の少なくともいずれかを圧縮する第２圧縮ステップと、を含むことを特徴とする。
【発明の効果】
【００１２】
本発明では、スキーマ識別情報と、スキーマ識別情報が属するグループを識別可能なグループ識別情報と、当該グループ内においてスキーマ識別情報を識別可能なグループ内識別情報とが対応付けて記憶されている。このため本発明によれば、スキーマ識別情報群をグループ識別情報及びグループ内識別情報を用いて圧縮することができ、構造化文書の構造情報であるスキーマ識別情報を含む索引であっても適切に圧縮することができるという効果を奏する。
【図面の簡単な説明】
【００１３】
【図１】図１は、本実施の形態の構造化文書管理装置の構成の一例を示すブロック図である。
【図２】図２は、本実施の形態の構造化文書の一例を示す図である。
【図３】図３は、オブジェクトツリー形式に展開された構造化文書の一例を示す図である。
【図４】図４は、構造化文書から作成されたスキーマ情報の一例を示す図である。
【図５】図５は、本実施の形態のスキーマ記憶部に記憶されている情報の一例を示す図である。
【図６】図６は、本実施の形態の索引リスト記憶部に記憶された情報の一例を示す図である。
【図７】図７は、本実施の形態の転置ファイルの一例を示す図である。
【図８】図８は、本実施の形態の索引記憶部に転置ファイル形式で記憶された索引情報の一例を示す図である。
【図９】図９は、本実施の形態の第１ルール記憶部に記憶された情報の一例を示す図である。
【図１０】図１０は、本実施の形態の第１圧縮部によるスキーマ識別情報群の圧縮前の状態と、圧縮後の状態の一例を示す図である。
【図１１】図１１は、本実施の形態の第２ルール記憶部に記憶された情報の一例を示す図である。
【図１２】図１２は、本実施の形態の第２圧縮部による識別情報群の圧縮前の状態と、圧縮後の状態の一例を示す図である。
【図１３】図１３は、本実施の形態の変更部による配置変更前の索引情報と、配置変更後の索引情報の一例を示す図である。
【図１４】図１４は、本実施の形態の構造化文書管理装置で行われる構造化文書の索引情報の作成処理手順の流れの一例を示すフローチャートである。
【図１５】図１５は、本実施の形態の索引情報の圧縮の具体例を示す図である。
【図１６】図１６は、本実施の形態の索引情報の圧縮の具体例を示す図である。
【図１７】図１７は、本実施の形態の索引情報の圧縮の具体例を示す図である。
【発明を実施するための形態】
【００１４】
以下、添付図面を参照しながら、本発明にかかる構造化文書管理装置、及び方法の最良な実施の形態を詳細に説明する。
【００１５】
まず、本実施の形態の構造化文書管理装置の構成について説明する。
【００１６】
図１は、本実施の形態の構造化文書管理装置の構成の一例を示すブロック図である。図１に示す構造化文書管理装置１は、階層化された論理構造を有する構造化文書を管理するものであり、ネットワーク３を介してクライアント装置２と接続されている。そして本実施の形態では、クライアント装置２が、構造化文書管理装置１に対して構造化文書の格納を要求することにより、構造化文書管理装置１が構造化文書を格納する。なお、ネットワーク３は、有線若しくは無線、またＬＡＮ(Local Area Network)や公衆通信回線を問わず、どのようなネットワークであってもよい。
【００１７】
図１に示すように、構造化文書管理装置１は、通信部１０と、格納処理部２０と、記憶部５０と、検索処理部６０とを備える。
【００１８】
通信部１０は、クライアント装置２との間でデータの送受信を行うものであり、クライアント装置２から送信される構造化文書や、構造化文書の検索要求などを受信する。
【００１９】
図２は、本実施の形態の構造化文書の一例を示す図である。図２に示すように、本実施の形態では、構造化文書はＸＭＬ（Extensible Markup Language）で記述されている。
【００２０】
ＸＭＬでは、文書構造の表現にタグが用いられており、タグには、開始タグと終了タグがある。そして、文書構造の構成要素を開始タグと終了タグで囲むことにより、文書中の文字列の区切りや、その文字列が構造上どの構成要素に属するのかを記述することができる。なお、開始タグとは、構成要素の名称を記号「＜」と「＞」で閉じたものであり、終了タグとは、構成要素の名称を記号「＜／」と「＞」で閉じたものである。また、開始タグには、属性情報を設定することもできる。
【００２１】
記憶部５０は、格納処理部２０による格納処理や検索処理部６０による検索処理に用いられる情報、格納処理部２０による格納処理の処理結果などを記憶するものであり、例えば、ＨＤＤ（Hard Disk Drive）、光ディスク、メモリカード、ＲＡＭ（Random Access Memory）などの既存の記憶媒体により実現できる。そして、記憶部５０は、スキーマ記憶部５１と、構造化文書記憶部５２と、索引リスト記憶部５３と、索引記憶部５４と、第１ルール記憶部５５と、第２ルール記憶部５６とを含む。なお、これらの詳細については後述する。
【００２２】
格納処理部２０は、通信部１０により受信された構造化文書を解析して、当該構造化文書を参照（検索）する際に用いられる索引情報を作成する。そして、格納処理部２０は、文書解析部２２と、スキーマ処理部２４と、付与部３０と、索引作成部３２と、圧縮部３４とを含む。
【００２３】
文書解析部２２は、通信部１０により受信された構造化文書の構文を解析し、当該構造化文書を例えばＤＯＭ(Document Object Model)のようなオブジェクトツリー形式に展開するとともに、当該構造化文書からテキスト情報を抽出する。
【００２４】
図３は、図２に示す構造化文書をオブジェクトツリー形式に展開した状態の一例を示す図である。図３に示す例では、「特許」タグから始まる構成要素を文書ルート(根)とし、その子要素として、「タイトル」タグ、及び「発明者一覧」タグから始まる構成要素が属している。また、「発明者一覧」タグから始まる構成要素には、その子要素として、「発明者」タグから始まる構成要素が属している。なお、「特許」タグ、及び「発明者」タグには、属性情報としてＩＤが設定されており、「タイトル」タグ、及び「発明者」タグには、文字列が設定されている。
【００２５】
スキーマ処理部２４は、文書解析部２２により展開されたオブジェクトツリー形式の構造化文書の構造的特徴を示すスキーマ情報の作成や、作成したスキーマ情報を識別するスキーマ識別情報を決定する処理などを行う。そして、スキーマ処理部２４は、スキーマ作成部２６と、照合部２８とを含む。
【００２６】
スキーマ作成部２６は、文書解析部２２により展開されたオブジェクトツリー形式の構造化文書を走査し、同一パスで重複する構成要素をまとめることにより、構造化文書の構造的特徴を示すスキーマ情報（第１スキーマ情報の一例）を作成する。
【００２７】
図４は、図３に示す構造化文書から作成されたスキーマ情報の一例を示す図である。図４に示す例では、図３に示す構造化文書において、「発明者一覧」タグに２つの「発明者」タグが属し重複しているため、これらの「発明者」タグがまとめられている。
【００２８】
スキーマ記憶部５１は、スキーマ作成部２６により過去に作成されたスキーマ情報（第２スキーマ情報の一例）と、当該スキーマ情報を識別するスキーマ識別情報とを対応付けて記憶する。
【００２９】
図５は、スキーマ記憶部５１に記憶されている情報の一例を示す図である。図５に示す例では、スキーマ情報は、「ＡＡＡ」タグから始まる構成要素を文書ルート(根)とし、その子要素として、「ＣＣＣ」タグが属している。なお、「ＡＡＡ」タグには、属性情報としてＢＢＢが設定されており、「ＣＣＣ」タグには、文字列が設定されている。そして、このスキーマ情報には、スキーマ識別情報「００１」が対応付けられている。
【００３０】
照合部２８は、スキーマ作成部２６により作成されたスキーマ情報に一致するスキーマ情報をスキーマ記憶部５１から照合する。具体的には、照合部２８は、互いのスキーマ情報の各構成要素（オブジェクトツリー上の各ノード）が一致するか否かを照合する。そして、照合されたスキーマ情報に対応付けられたスキーマ識別情報を、スキーマ作成部２６により作成されたスキーマ情報のスキーマ識別情報とする。
【００３１】
なお、照合の結果、スキーマ作成部２６により作成されたスキーマ情報が、スキーマ記憶部５１に記憶されているスキーマ情報と一致しない場合には、スキーマ作成部２６により作成されたスキーマ情報に新たなスキーマ識別情報を対応付けて、スキーマ記憶部５１を更新する。
【００３２】
付与部３０は、文書解析部２２によりオブジェクトツリー形式に展開された構造化文書に、照合部２８により照合されたスキーマ情報に対応付けられたスキーマ識別情報、及び構造化文書に関する識別情報を付与して、構造化文書記憶部５２に記憶させる。
【００３３】
本実施の形態では、付与部３０は、構造化文書に関する識別情報として、構造化文書を構造化文書管理装置１内で一意に識別可能な文書識別情報、及び構造化文書の各構成要素の位置を当該構造化文書内で一意に識別可能な要素識別情報を付与する。
【００３４】
索引作成部３２は、文書解析部２２により抽出されたテキスト情報から語彙を分割して索引リストを作成し、索引リスト記憶部５３に記憶させる。また、索引作成部３２は、分割した語彙毎に、付与部３０により構造化文書に付与されたスキーマ識別情報、及び識別情報を対応付けた索引情報を作成し、索引記憶部５４に転置ファイル形式で記憶させる。なお、語彙の分割には、Ｎグラムや形態素解析などの既存の語彙分割方法を用いることができる。
【００３５】
そして本実施の形態では、索引情報に対応付けられる識別情報には、付与部３０により構造化文書に付与された文書識別情報、要素識別情報に加え、構造化文書の構成要素上で該当語彙が何文字目に発生するかを示す発生位置情報(オフセット)が含まれる。
【００３６】
図６は、索引リスト記憶部５３に記憶された情報の一例を示す図である。図６に示す例では、「Ｔａｎ」、「ＸＭＬ」などの語彙が、転置ファイルのファイル番号と対応付けられて記憶されている。このため本実施の形態では、後述する検索処理部６０が語彙を指定した検索を行う場合、対応する転置ファイルにのみアクセスすることができ、検索を高速することができる。
【００３７】
そして、転置ファイルは、図７に示すように複数のページから構成され、各ページ内には複数個数の索引情報が格納される。索引検索を行う場合は、この転置ファイルを先頭からスキャンしてくことで候補集合を求めることができる。なお本実施の形態では、転置ファイルのページサイズは、ディスクＩ／Ｏが効率的に行なえる固定長サイズとしている。
【００３８】
図８は、転置ファイル形式で索引記憶部５４に記憶された索引情報の一例を示す図である。図８に示すように、各索引情報は、文書識別情報、スキーマ識別情報、要素識別情報、及び発生位置情報により構成されている。なお、図示は省略しているが、索引情報には、各索引情報に加え、ヘッダ情報なども含まれている。
【００３９】
第１ルール記憶部５５は、スキーマ識別情報と、スキーマ識別情報が属するグループを一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ識別情報と、当該グループ内においてスキーマ識別情報を一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ内識別情報とを対応付けて記憶する。
【００４０】
図９は、第１ルール記憶部５５に記憶された情報の一例を示す図である。図９に示す例では、グループ識別情報及びグループ内識別情報により特定される数値がスキーマ識別情報となっている。そして図９に示す例では、グループ識別情報及びグループ内識別情報を組み合わせた情報の方がスキーマ識別情報よりもデータ量が少なくなっているため、スキーマ識別情報を、グループ識別情報及びグループ内識別情報を組み合わせた情報に置き換えることにより圧縮が可能となっている。
【００４１】
なお、第１ルール記憶部５５に記憶されたスキーマ識別情報に対応付けるグループ識別情報は、例えば、照合部２８によるスキーマ記憶部５１に記憶されたスキーマ識別情報の所定期間内における照合回数に応じて決定される。
【００４２】
第２ルール記憶部５６は、複数の圧縮ルールを記憶する。図１１は、第２ルール記憶部５６に記憶された情報の一例を示す図である。図１１に示す例では、同一値をまとめる、パターンに置き換える、差分を取るなどの各種圧縮ルールがその適用条件及び適用方法などとともに定義されている。
【００４３】
圧縮部３４は、索引記憶部５４に記憶された索引情報を、所定の条件が成立した場合に、第１ルール記憶部５５に記憶された圧縮ルールや第２ルール記憶部５６に記憶された圧縮ルールを用いて圧縮するものである。そして圧縮部３４は、索引解析部３６と、第１圧縮部３８と、第２圧縮部４０と、変更部４２を含む。
【００４４】
索引解析部３６は、索引記憶部５４に転置ファイル形式で記憶された索引情報の個数が閾値を超えた場合に、当該個数分のスキーマ識別情報であるスキーマ識別情報群、及び当該個数分の識別情報である識別情報群（文書識別情報群、要素識別情報群、及び発生位置情報群）毎の分布を解析する。なお本実施の形態では、転置ファイルの１ページが埋まる索引情報の個数を閾値に設定している。
【００４５】
具体的には、索引解析部３６は、第１ルール記憶部５５に記憶された圧縮ルールを用いてスキーマ識別情報群を圧縮できるか否かを判定する。なお本実施の形態では、スキーマ識別情報群の分布解析の結果、所定数を超えるスキーマ識別情報が第１ルール記憶部５５に記憶されているスキーマ識別情報に一致する場合に、圧縮可能と判定する。
【００４６】
同様に、索引解析部３６は、第２ルール記憶部５６に記憶された複数の圧縮ルールを用いて、スキーマ識別情報群、文書識別情報群、要素識別情報群、及び発生位置情報群を圧縮できるか否かを判定する。なお本実施の形態では、索引解析部３６は、基本的に、圧縮ルールの上位から適用可能かどうかの検証を行う。
【００４７】
第１圧縮部３８は、索引解析部３６によるスキーマ識別情報群の分布解析の結果、所定数を超えるスキーマ識別情報が第１ルール記憶部５５に記憶されているスキーマ識別情報に一致する場合に、スキーマ識別情報群をグループ識別情報及びグループ内識別情報を用いて圧縮する。
【００４８】
図１０は、第１圧縮部３８によるスキーマ識別情報群の圧縮前の状態と、圧縮後の状態の一例を示す図であり、図９に示す圧縮ルールを用いてスキーマ識別情報群の圧縮が行われている。なお、図１０に示す例では、スキーマ識別情報群の全てのスキーマ識別情報が、第１ルール記憶部５５に記憶されているスキーマ識別情報に一致するため、索引解析部３６により圧縮可能と判定されている。
【００４９】
第２圧縮部４０は、第２ルール記憶部５６に記憶され、索引解析部３６による索引情報の分布解析の結果に応じた圧縮ルールで、スキーマ識別情報群、及び識別情報群（文書識別情報群、要素識別情報群、及び発生位置情報群）の少なくともいずれかを圧縮する。
【００５０】
図１２は、第２圧縮部４０による文書識別情報群及び要素識別情報群の圧縮前の状態と、圧縮後の状態の一例を示す図であり、図１１に示す圧縮ルール１を用いて圧縮が行われている。
【００５１】
なお、第２圧縮部４０は、索引情報の分布解析の結果に応じた圧縮ルールが複数存在する場合に、複数の圧縮ルールでスキーマ識別情報群、及び識別情報群の少なくともいずれかを圧縮する。この場合は、圧縮ルールの上位から適用されることになる。
【００５２】
変更部４２は、第１圧縮部３８及び第２圧縮部４０により圧縮された索引情報を、スキーマ識別情報、及び識別情報（文書識別情報群、要素識別情報群、及び発生位置情報群）毎に再配置して索引記憶部５４に記憶させる。
【００５３】
図１３は、変更部４２による配置変更前の索引情報の状態と、配置変更後の状態の一例を示す図である。図１３に示す例では、配置変更前の索引情報は、索引情報単位で配置されているが、配置変更後の索引情報は、スキーマ識別情報、文書識別情報群、要素識別情報群、及び発生位置情報群毎に配置されている。
【００５４】
また、変更部４２は、再配置を行う際、変更部４２は、索引情報のヘッダ情報として、適用した圧縮ルールを記憶する。これにより、後述の検索処理部６０による検索の際に、索引情報の復元や、特定情報群を扱うことが可能となる。
【００５５】
検索処理部６０は、構造化文書管理装置１で管理されている構造化文書を検索するものである。具体的には、検索処理部６０は、索引記憶部５４に記憶された索引情報のヘッダ情報を参照して索引情報を復号化し、復号化された索引情報を用いて構造化文書記憶部５２に記憶されている構造化文書を検索する。なお、検索処理部６０は、索引情報のうち、特定の情報群のみを取り出すことで、高速な索引スキャンを行うこともできる。
【００５６】
次に、本実施の形態の構造化文書管理装置の動作について説明する。
【００５７】
図１４は、本実施の形態の構造化文書管理装置１で行われる構造化文書の索引情報の作成処理手順の流れの一例を示すフローチャートである。
【００５８】
まず、通信部１０は、クライアント装置２から送信される構造化文書を受信する（ステップＳ１０）。
【００５９】
続いて、文書解析部２２は、通信部１０により受信された構造化文書の構文を解析し、当該構造化文書を例えばＤＯＭ(Document Object Model)のようなオブジェクトツリー形式に展開するとともに、当該構造化文書からテキスト情報を抽出する（ステップＳ１２）。
【００６０】
続いて、スキーマ作成部２６は、文書解析部２２により展開されたオブジェクトツリー形式の構造化文書を走査し、同一パスで重複する構成要素をまとめることにより、構造化文書の構造的特徴を示すスキーマ情報を作成する（ステップＳ１４）。
【００６１】
続いて、照合部２８は、スキーマ作成部２６により作成されたスキーマ情報に一致するスキーマ情報をスキーマ記憶部５１から照合する（ステップＳ１６）。
【００６２】
そして、照合の結果、互いのスキーマ情報の基本構造（各構成要素）が一致する場合には（ステップＳ１８でＹｅｓ）、照合部２８は、照合されたスキーマ情報に対応付けられたスキーマ識別情報を、スキーマ作成部２６により作成されたスキーマ情報のスキーマ識別情報とする。
【００６３】
一方、照合の結果、互いのスキーマ情報の基本構造（各構成要素）が一致しない場合には（ステップＳ１８でＮｏ）、照合部２８は、スキーマ作成部２６により作成されたスキーマ情報に新たなスキーマ識別情報を対応付けて、スキーマ記憶部５１に格納する（ステップＳ２０）。
【００６４】
続いて、付与部３０は、文書解析部２２によりオブジェクトツリー形式に展開された構造化文書に、照合部２８により照合されたスキーマ情報に対応付けられたスキーマ識別情報、及び構造化文書に関する識別情報を付与して、構造化文書記憶部５２に格納する（ステップＳ２２）。
【００６５】
続いて、索引作成部３２は、文書解析部２２により抽出されたテキスト情報から語彙を分割して索引リストを作成し、索引リスト記憶部５３に記憶（を更新）させる（ステップＳ２４）。
【００６６】
続いて、索引作成部３２は、分割した語彙毎に、付与部３０により構造化文書に付与されたスキーマ識別情報、及び識別情報を対応付けた索引情報を作成し、索引記憶部５４に転置ファイル形式で格納する（ステップＳ２６）。
【００６７】
続いて、索引解析部３６は、索引記憶部５４に転置ファイル形式で記憶された索引情報の個数が閾値を超えたか否かを判定する（ステップＳ２８）。
【００６８】
そして、索引情報の個数が閾値を超えた場合には（ステップＳ２８でＹｅｓ）、索引解析部３６は、当該個数分のスキーマ識別情報であるスキーマ識別情報群、及び当該個数分の識別情報である識別情報群毎の分布を解析する（ステップＳ３０）。
【００６９】
なお、索引情報の個数が閾値を超えていない場合には（ステップＳ２８でＮｏ）、ステップＳ３０以降の処理は行われずに終了する。
【００７０】
続いて、索引解析部３６によるスキーマ識別情報群の分布解析の結果、所定数を超えるスキーマ識別情報が第１ルール記憶部５５に記憶されているスキーマ識別情報に一致する場合には（ステップＳ３２でＹｅｓ）、第１圧縮部３８は、スキーマ識別情報群をグループ識別情報及びグループ内識別情報を用いて圧縮する（ステップＳ３４）。
【００７１】
なお、索引解析部３６によるスキーマ識別情報群の分布解析の結果、所定数を超えるスキーマ識別情報が第１ルール記憶部５５に記憶されているスキーマ識別情報に一致しない場合には（ステップＳ３２でＮｏ）、第１圧縮部３８は、ステップＳ３４の処理を行わない。
【００７２】
続いて、第２圧縮部４０は、第２ルール記憶部５６に記憶され、索引解析部３６による索引情報の分布解析の結果に応じた圧縮ルールで、スキーマ識別情報群、及び識別情報群の少なくともいずれかを圧縮する（ステップＳ３６）。
【００７３】
続いて、変更部４２は第１圧縮部３８及び第２圧縮部４０により圧縮された索引情報を、スキーマ識別情報、及び識別情報毎に再配置して索引記憶部５４に記憶させる（ステップＳ３８）。
【００７４】
次に、本実施の形態の構造化文書管理装置の圧縮の具体例について説明する。
【００７５】
図１５に示す例では、文書識別情報群の値は、「１」及び「２」が連続しており、スキーマ識別情報群の値は、第１ルール記憶部５５に記憶されたスキーマ識別情報と一致する。従ってこの場合は、第１圧縮部３８によるスキーマ識別情報群の圧縮の後に、第２圧縮部４０により図１１に示す圧縮ルール２を用いた文書識別情報群の圧縮が行われている。
【００７６】
図１６に示す例では、文書識別情報群の値は、「１」及び「２」が連続しており、要素識別情報群の値は、「１」、「２」及び「３」が連続している。また、スキーマ識別情報群の値は、「５０１」、「５０２」、及び「５０３」のみである。従ってこの場合は、第２圧縮部４０により図１１に示す圧縮ルール１を用いた文書識別情報群の圧縮が行われた後に、第２圧縮部４０により図１１に示す圧縮ルール４を用いた文書識別情報群の圧縮が行われている。
【００７７】
なお、図１１に示す圧縮ルール４のパターン化による圧縮では、「５０１」を「０」、「５０２」を「１」、「５０３」を「２」にパターン化しており、先頭に、「５０１」、「５０２」、及び「５０３」を見出しとして配置している。
【００７８】
図１７に示す例では、文書識別情報群の値は、「１」及び「２」が連続しており、要素識別情報群の値は、「１」、「２」及び「３」が連続している。従ってこの場合は、まず、第２圧縮部４０により図１１に示す圧縮ルール１を用いた文書識別情報群の圧縮が行われている。
【００７９】
また、図１７に示す例では、差分圧縮の効果が高いため、続けて、第２圧縮部４０により図１１に示す圧縮ルール５を用いた文書識別情報群の圧縮が行われている。
【００８０】
以上のように本実施の形態によれば、スキーマ識別情報と、スキーマ識別情報が属するグループを識別可能なグループ識別情報と、当該グループ内においてスキーマ識別情報を識別可能なグループ内識別情報とが対応付けて記憶されている。このため本実施形態によれば、スキーマ識別情報群をグループ識別情報及びグループ内識別情報を用いて圧縮することができ、構造化文書の構造情報であるスキーマ識別情報を含む索引であっても適切に圧縮することができるという効果を奏する。
【００８１】
また、本実施の形態では、スキーマ識別情報群だけでなく、文書識別情報群、要素識別情報群、及び発生位置情報群に対しても、索引情報の分布解析の結果に応じた圧縮ルールで圧縮するため、索引情報をより効果的に圧縮することができるという効果も奏する。
【００８２】
なお上記実施の形態の構造化文書管理装置１、クライアント装置２は、ＣＰＵ（Central Processing Unit）などの制御装置、ＲＯＭ（Read Only Memory）やＲＡＭ（Random Access Memory）などの記憶装置、液晶ディスプレイなどの表示装置、キーボードやマウスなどの入力装置、ネットワークに接続して通信を行う通信Ｉ／Ｆ等を備えたハードウェア構成となっている。
【００８３】
なお、本発明は、上記実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施の形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施の形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施の形態にわたる構成要素を適宜組み合わせても良い。
【符号の説明】
【００８４】
１  構造化文書管理装置
２  クライアント装置
３  ネットワーク
１０  通信部
２０  格納処理部
２２  文書解析部
２４  スキーマ処理部
２６  スキーマ作成部
２８  照合部
３０  付与部
３２  索引作成部
３４  圧縮部
３６  索引解析部
３８  第１圧縮部
４０  第２圧縮部
４２  変更部
５０  記憶部
５１  スキーマ記憶部
５２  構造化文書記憶部
５３  索引リスト記憶部
５４  索引記憶部
５５  第１ルール記憶部
５６  第２ルール記憶部
６０  検索処理部
【図１】
2010224883.tif 000003
【図２】
2010224883.tif 000004
【図３】
2010224883.tif 000005
【図４】
2010224883.tif 000006
【図５】
2010224883.tif 000007
【図６】
2010224883.tif 000008
【図７】
2010224883.tif 000009
【図８】
2010224883.tif 000010
【図９】
2010224883.tif 000011
【図１０】
2010224883.tif 000012
【図１１】
2010224883.tif 000013
【図１２】
2010224883.tif 000014
【図１３】
2010224883.tif 000015
【図１４】
2010224883.tif 000016
【図１５】
2010224883.tif 000017
【図１６】
2010224883.tif 000018
【図１７】
2010224883.tif 000019