説明

構造化文書管理装置、及び方法

【課題】構造化文書の構造情報を含む索引であっても適切に圧縮することができる構造化文書管理装置、及び方法を提供する。
【解決手段】索引解析部36が、テキスト情報から分割した語彙毎に、スキーマ識別情報及び識別情報を対応付けた索引情報の個数が閾値を超えた場合に、当該個数分のスキーマ識別情報であるスキーマ識別情報群、及び当該個数分の識別情報である識別情報群毎の分布を解析し、第1圧縮部38が、スキーマ識別情報群の分布解析の結果、所定数を超えるスキーマ識別情報が、スキーマ識別情報と、スキーマ識別情報が属するグループを識別可能なグループ識別情報と、当該グループ内においてスキーマ識別情報を識別可能なグループ内識別情報とを対応付けて記憶する第1ルール記憶部55に記憶されているスキーマ識別情報に一致する場合に、スキーマ識別情報群をグループ識別情報及びグループ内識別情報を用いて圧縮する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、構造化文書管理装置、及び方法に関する。
【背景技術】
【0002】
近年、種々のデータがXML(Extensible Markup Language)などの構造化文書形式で管理されており、従来はリレーショナルデータベースで管理していた定型的な数値データや、全文検索エンジンで管理されていたテキストデータなども、構造化文書形式で管理したいという要望が高まっている。
【0003】
このため、構造化文書データベースで管理する構造化文書に対する問合せ言語(クエリ)も、例えばW3C(World Wide Web Consortium)により標準化されたXQuery(An XML Query Language)など、キーワードと構造条件を指定したクエリによる高度な検索要求となり、検索の高速化が求められている。
【0004】
ところで、検索の高速化のために、構造化文書データベースに登録するテキストをキーワードで分割し、分割したキーワードと、構造化文書データベースに登録する構造化文書の文書識別情報、当該構造化文書の構造を示す構造情報、及び当該構造化文書内におけるキーワードの発生位置情報を関連付けて、転置ファイル形式で索引化する方法がある。
【0005】
但し、一般的に転置ファイルによる索引管理方式は索引のサイズが非常に大きくなってしまうため、例えば特許文献1では、予め複数の圧縮方法を用意しておき、転置ファイル形式で索引を登録する際に、その時刻に応じた圧縮方法で索引を圧縮して登録する技術が開示されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2006−172363号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、特許文献1で開示された技術では、時刻をキーにして圧縮方法を決定しているため、最適な圧縮方法が選択されるとは限らない。
【0008】
特に、構造化文書データベースに登録される構造化文書は、一般的に類似する構造を持つものが連続して登録されることが多いものの、その構造自体は規則性や関連性がないことが多いため、複数の圧縮方法を使い分けたとしても、索引の構造情報の圧縮率が期待できないという問題がある。
【0009】
本発明は、上記事情に鑑みてなされたものであり、構造化文書の構造情報を含む索引であっても適切に圧縮することができる構造化文書管理装置、及び方法を提供することを目的とする。
【課題を解決するための手段】
【0010】
上述した課題を解決し、目的を達成するために、本発明の一態様にかかる構造化文書管理装置は、ネットワークを介して、クライアント装置から構造化文書を受信する通信部と、前記構造化文書の構造を解析し、前記構造化文書のテキスト情報を抽出する文書解析部と、前記構造化文書の構造的特徴を示す第1スキーマ情報を作成するスキーマ作成部と、前記スキーマ作成部により過去に作成された第2スキーマ情報と、前記第2スキーマ情報を識別するスキーマ識別情報を対応付けて記憶するスキーマ記憶部と、前記第1スキーマ情報に一致する前記第2スキーマ情報を前記スキーマ記憶部から照合する照合部と、前記構造化文書に、前記照合部により照合された前記第2スキーマ情報を識別する前記スキーマ識別情報、及び前記構造化文書の識別情報を付与する付与部と、前記構造化文書のテキスト情報から語彙を分割し、分割した語彙毎に、前記スキーマ識別情報、及び前記構造化文書の識別情報を対応付けた索引情報を作成する索引作成部と、前記索引情報をファイル形式で記憶する索引記憶部と、ファイル形式で記憶された前記索引情報の個数が閾値を超えた場合に、前記個数分の前記スキーマ識別情報であるスキーマ識別情報群、及び前記個数分の前記識別情報である前記識別情報群毎の分布を解析する索引解析部と、前記スキーマ識別情報と、前記スキーマ識別情報が属するグループを一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ識別情報と、当該グループ内において前記スキーマ識別情報を一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ内識別情報とを対応付けて記憶する第1ルール記憶部と、複数の圧縮ルールを記憶する第2ルール記憶部と、前記スキーマ識別情報群の分布解析の結果、所定数を超える前記スキーマ識別情報が前記第1ルール記憶部に記憶されている前記スキーマ識別情報に一致する場合に、前記スキーマ識別情報群を前記グループ識別情報及び前記グループ内識別情報を用いて圧縮する第1圧縮部と、前記第2ルール記憶部に記憶され、前記索引情報の分布解析の結果に応じた圧縮ルールで、前記スキーマ識別情報群、及び前記識別情報群の少なくともいずれかを圧縮する第2圧縮部と、を備えることを特徴とする。
【0011】
また、本発明の別の態様にかかる構造化文書管理方法は、通信部が、ネットワークを介して、クライアント装置から構造化文書を受信する通信ステップと、文書解析部が、前記構造化文書の構造を解析し、前記構造化文書のテキスト情報を抽出する文書解析ステップと、スキーマ作成部が、前記構造化文書の構造的特徴を示す第1スキーマ情報を作成するスキーマ作成ステップと、照合部が、前記スキーマ作成ステップにより過去に作成された前記第2スキーマ情報と、前記第2スキーマ情報を識別するスキーマ識別情報を対応付けて記憶するスキーマ記憶部から、前記第1スキーマ情報に一致する前記第2スキーマ情報を照合する照合ステップと、付与部が、前記構造化文書に、前記照合ステップにより照合された前記第2スキーマ情報を識別する前記スキーマ識別情報、及び前記構造化文書の識別情報を付与する付与ステップと、索引作成部が、前記構造化文書のテキスト情報から語彙を分割し、分割した語彙毎に、前記スキーマ識別情報、及び前記構造化文書の識別情報を対応付けた索引情報を作成し、当該索引情報をファイル形式で索引記憶部に記憶させる索引作成ステップと、索引解析部が、ファイル形式で記憶された前記索引情報の個数が閾値を超えた場合に、前記個数分の前記スキーマ識別情報であるスキーマ識別情報群、及び前記個数分の前記識別情報である前記識別情報群毎の分布を解析する索引解析ステップと、第1圧縮部が、前記スキーマ識別情報群の分布解析の結果、所定数を超える前記スキーマ識別情報が、前記スキーマ識別情報と、前記スキーマ識別情報が属するグループを一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ識別情報と、当該グループ内において前記スキーマ識別情報を一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ内識別情報とを対応付けて記憶する第1ルール記憶部に記憶されている前記スキーマ識別情報に一致する場合に、前記スキーマ識別情報群を前記グループ識別情報及び前記グループ内識別情報を用いて圧縮する第1圧縮ステップと、第2圧縮部が、複数の圧縮ルールを記憶する第2ルール記憶部に記憶され、前記索引情報の分布解析の結果に応じた圧縮ルールで、前記スキーマ識別情報群、及び前記識別情報群の少なくともいずれかを圧縮する第2圧縮ステップと、を含むことを特徴とする。
【発明の効果】
【0012】
本発明では、スキーマ識別情報と、スキーマ識別情報が属するグループを識別可能なグループ識別情報と、当該グループ内においてスキーマ識別情報を識別可能なグループ内識別情報とが対応付けて記憶されている。このため本発明によれば、スキーマ識別情報群をグループ識別情報及びグループ内識別情報を用いて圧縮することができ、構造化文書の構造情報であるスキーマ識別情報を含む索引であっても適切に圧縮することができるという効果を奏する。
【図面の簡単な説明】
【0013】
【図1】図1は、本実施の形態の構造化文書管理装置の構成の一例を示すブロック図である。
【図2】図2は、本実施の形態の構造化文書の一例を示す図である。
【図3】図3は、オブジェクトツリー形式に展開された構造化文書の一例を示す図である。
【図4】図4は、構造化文書から作成されたスキーマ情報の一例を示す図である。
【図5】図5は、本実施の形態のスキーマ記憶部に記憶されている情報の一例を示す図である。
【図6】図6は、本実施の形態の索引リスト記憶部に記憶された情報の一例を示す図である。
【図7】図7は、本実施の形態の転置ファイルの一例を示す図である。
【図8】図8は、本実施の形態の索引記憶部に転置ファイル形式で記憶された索引情報の一例を示す図である。
【図9】図9は、本実施の形態の第1ルール記憶部に記憶された情報の一例を示す図である。
【図10】図10は、本実施の形態の第1圧縮部によるスキーマ識別情報群の圧縮前の状態と、圧縮後の状態の一例を示す図である。
【図11】図11は、本実施の形態の第2ルール記憶部に記憶された情報の一例を示す図である。
【図12】図12は、本実施の形態の第2圧縮部による識別情報群の圧縮前の状態と、圧縮後の状態の一例を示す図である。
【図13】図13は、本実施の形態の変更部による配置変更前の索引情報と、配置変更後の索引情報の一例を示す図である。
【図14】図14は、本実施の形態の構造化文書管理装置で行われる構造化文書の索引情報の作成処理手順の流れの一例を示すフローチャートである。
【図15】図15は、本実施の形態の索引情報の圧縮の具体例を示す図である。
【図16】図16は、本実施の形態の索引情報の圧縮の具体例を示す図である。
【図17】図17は、本実施の形態の索引情報の圧縮の具体例を示す図である。
【発明を実施するための形態】
【0014】
以下、添付図面を参照しながら、本発明にかかる構造化文書管理装置、及び方法の最良な実施の形態を詳細に説明する。
【0015】
まず、本実施の形態の構造化文書管理装置の構成について説明する。
【0016】
図1は、本実施の形態の構造化文書管理装置の構成の一例を示すブロック図である。図1に示す構造化文書管理装置1は、階層化された論理構造を有する構造化文書を管理するものであり、ネットワーク3を介してクライアント装置2と接続されている。そして本実施の形態では、クライアント装置2が、構造化文書管理装置1に対して構造化文書の格納を要求することにより、構造化文書管理装置1が構造化文書を格納する。なお、ネットワーク3は、有線若しくは無線、またLAN(Local Area Network)や公衆通信回線を問わず、どのようなネットワークであってもよい。
【0017】
図1に示すように、構造化文書管理装置1は、通信部10と、格納処理部20と、記憶部50と、検索処理部60とを備える。
【0018】
通信部10は、クライアント装置2との間でデータの送受信を行うものであり、クライアント装置2から送信される構造化文書や、構造化文書の検索要求などを受信する。
【0019】
図2は、本実施の形態の構造化文書の一例を示す図である。図2に示すように、本実施の形態では、構造化文書はXML(Extensible Markup Language)で記述されている。
【0020】
XMLでは、文書構造の表現にタグが用いられており、タグには、開始タグと終了タグがある。そして、文書構造の構成要素を開始タグと終了タグで囲むことにより、文書中の文字列の区切りや、その文字列が構造上どの構成要素に属するのかを記述することができる。なお、開始タグとは、構成要素の名称を記号「<」と「>」で閉じたものであり、終了タグとは、構成要素の名称を記号「</」と「>」で閉じたものである。また、開始タグには、属性情報を設定することもできる。
【0021】
記憶部50は、格納処理部20による格納処理や検索処理部60による検索処理に用いられる情報、格納処理部20による格納処理の処理結果などを記憶するものであり、例えば、HDD(Hard Disk Drive)、光ディスク、メモリカード、RAM(Random Access Memory)などの既存の記憶媒体により実現できる。そして、記憶部50は、スキーマ記憶部51と、構造化文書記憶部52と、索引リスト記憶部53と、索引記憶部54と、第1ルール記憶部55と、第2ルール記憶部56とを含む。なお、これらの詳細については後述する。
【0022】
格納処理部20は、通信部10により受信された構造化文書を解析して、当該構造化文書を参照(検索)する際に用いられる索引情報を作成する。そして、格納処理部20は、文書解析部22と、スキーマ処理部24と、付与部30と、索引作成部32と、圧縮部34とを含む。
【0023】
文書解析部22は、通信部10により受信された構造化文書の構文を解析し、当該構造化文書を例えばDOM(Document Object Model)のようなオブジェクトツリー形式に展開するとともに、当該構造化文書からテキスト情報を抽出する。
【0024】
図3は、図2に示す構造化文書をオブジェクトツリー形式に展開した状態の一例を示す図である。図3に示す例では、「特許」タグから始まる構成要素を文書ルート(根)とし、その子要素として、「タイトル」タグ、及び「発明者一覧」タグから始まる構成要素が属している。また、「発明者一覧」タグから始まる構成要素には、その子要素として、「発明者」タグから始まる構成要素が属している。なお、「特許」タグ、及び「発明者」タグには、属性情報としてIDが設定されており、「タイトル」タグ、及び「発明者」タグには、文字列が設定されている。
【0025】
スキーマ処理部24は、文書解析部22により展開されたオブジェクトツリー形式の構造化文書の構造的特徴を示すスキーマ情報の作成や、作成したスキーマ情報を識別するスキーマ識別情報を決定する処理などを行う。そして、スキーマ処理部24は、スキーマ作成部26と、照合部28とを含む。
【0026】
スキーマ作成部26は、文書解析部22により展開されたオブジェクトツリー形式の構造化文書を走査し、同一パスで重複する構成要素をまとめることにより、構造化文書の構造的特徴を示すスキーマ情報(第1スキーマ情報の一例)を作成する。
【0027】
図4は、図3に示す構造化文書から作成されたスキーマ情報の一例を示す図である。図4に示す例では、図3に示す構造化文書において、「発明者一覧」タグに2つの「発明者」タグが属し重複しているため、これらの「発明者」タグがまとめられている。
【0028】
スキーマ記憶部51は、スキーマ作成部26により過去に作成されたスキーマ情報(第2スキーマ情報の一例)と、当該スキーマ情報を識別するスキーマ識別情報とを対応付けて記憶する。
【0029】
図5は、スキーマ記憶部51に記憶されている情報の一例を示す図である。図5に示す例では、スキーマ情報は、「AAA」タグから始まる構成要素を文書ルート(根)とし、その子要素として、「CCC」タグが属している。なお、「AAA」タグには、属性情報としてBBBが設定されており、「CCC」タグには、文字列が設定されている。そして、このスキーマ情報には、スキーマ識別情報「001」が対応付けられている。
【0030】
照合部28は、スキーマ作成部26により作成されたスキーマ情報に一致するスキーマ情報をスキーマ記憶部51から照合する。具体的には、照合部28は、互いのスキーマ情報の各構成要素(オブジェクトツリー上の各ノード)が一致するか否かを照合する。そして、照合されたスキーマ情報に対応付けられたスキーマ識別情報を、スキーマ作成部26により作成されたスキーマ情報のスキーマ識別情報とする。
【0031】
なお、照合の結果、スキーマ作成部26により作成されたスキーマ情報が、スキーマ記憶部51に記憶されているスキーマ情報と一致しない場合には、スキーマ作成部26により作成されたスキーマ情報に新たなスキーマ識別情報を対応付けて、スキーマ記憶部51を更新する。
【0032】
付与部30は、文書解析部22によりオブジェクトツリー形式に展開された構造化文書に、照合部28により照合されたスキーマ情報に対応付けられたスキーマ識別情報、及び構造化文書に関する識別情報を付与して、構造化文書記憶部52に記憶させる。
【0033】
本実施の形態では、付与部30は、構造化文書に関する識別情報として、構造化文書を構造化文書管理装置1内で一意に識別可能な文書識別情報、及び構造化文書の各構成要素の位置を当該構造化文書内で一意に識別可能な要素識別情報を付与する。
【0034】
索引作成部32は、文書解析部22により抽出されたテキスト情報から語彙を分割して索引リストを作成し、索引リスト記憶部53に記憶させる。また、索引作成部32は、分割した語彙毎に、付与部30により構造化文書に付与されたスキーマ識別情報、及び識別情報を対応付けた索引情報を作成し、索引記憶部54に転置ファイル形式で記憶させる。なお、語彙の分割には、Nグラムや形態素解析などの既存の語彙分割方法を用いることができる。
【0035】
そして本実施の形態では、索引情報に対応付けられる識別情報には、付与部30により構造化文書に付与された文書識別情報、要素識別情報に加え、構造化文書の構成要素上で該当語彙が何文字目に発生するかを示す発生位置情報(オフセット)が含まれる。
【0036】
図6は、索引リスト記憶部53に記憶された情報の一例を示す図である。図6に示す例では、「Tan」、「XML」などの語彙が、転置ファイルのファイル番号と対応付けられて記憶されている。このため本実施の形態では、後述する検索処理部60が語彙を指定した検索を行う場合、対応する転置ファイルにのみアクセスすることができ、検索を高速することができる。
【0037】
そして、転置ファイルは、図7に示すように複数のページから構成され、各ページ内には複数個数の索引情報が格納される。索引検索を行う場合は、この転置ファイルを先頭からスキャンしてくことで候補集合を求めることができる。なお本実施の形態では、転置ファイルのページサイズは、ディスクI/Oが効率的に行なえる固定長サイズとしている。
【0038】
図8は、転置ファイル形式で索引記憶部54に記憶された索引情報の一例を示す図である。図8に示すように、各索引情報は、文書識別情報、スキーマ識別情報、要素識別情報、及び発生位置情報により構成されている。なお、図示は省略しているが、索引情報には、各索引情報に加え、ヘッダ情報なども含まれている。
【0039】
第1ルール記憶部55は、スキーマ識別情報と、スキーマ識別情報が属するグループを一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ識別情報と、当該グループ内においてスキーマ識別情報を一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ内識別情報とを対応付けて記憶する。
【0040】
図9は、第1ルール記憶部55に記憶された情報の一例を示す図である。図9に示す例では、グループ識別情報及びグループ内識別情報により特定される数値がスキーマ識別情報となっている。そして図9に示す例では、グループ識別情報及びグループ内識別情報を組み合わせた情報の方がスキーマ識別情報よりもデータ量が少なくなっているため、スキーマ識別情報を、グループ識別情報及びグループ内識別情報を組み合わせた情報に置き換えることにより圧縮が可能となっている。
【0041】
なお、第1ルール記憶部55に記憶されたスキーマ識別情報に対応付けるグループ識別情報は、例えば、照合部28によるスキーマ記憶部51に記憶されたスキーマ識別情報の所定期間内における照合回数に応じて決定される。
【0042】
第2ルール記憶部56は、複数の圧縮ルールを記憶する。図11は、第2ルール記憶部56に記憶された情報の一例を示す図である。図11に示す例では、同一値をまとめる、パターンに置き換える、差分を取るなどの各種圧縮ルールがその適用条件及び適用方法などとともに定義されている。
【0043】
圧縮部34は、索引記憶部54に記憶された索引情報を、所定の条件が成立した場合に、第1ルール記憶部55に記憶された圧縮ルールや第2ルール記憶部56に記憶された圧縮ルールを用いて圧縮するものである。そして圧縮部34は、索引解析部36と、第1圧縮部38と、第2圧縮部40と、変更部42を含む。
【0044】
索引解析部36は、索引記憶部54に転置ファイル形式で記憶された索引情報の個数が閾値を超えた場合に、当該個数分のスキーマ識別情報であるスキーマ識別情報群、及び当該個数分の識別情報である識別情報群(文書識別情報群、要素識別情報群、及び発生位置情報群)毎の分布を解析する。なお本実施の形態では、転置ファイルの1ページが埋まる索引情報の個数を閾値に設定している。
【0045】
具体的には、索引解析部36は、第1ルール記憶部55に記憶された圧縮ルールを用いてスキーマ識別情報群を圧縮できるか否かを判定する。なお本実施の形態では、スキーマ識別情報群の分布解析の結果、所定数を超えるスキーマ識別情報が第1ルール記憶部55に記憶されているスキーマ識別情報に一致する場合に、圧縮可能と判定する。
【0046】
同様に、索引解析部36は、第2ルール記憶部56に記憶された複数の圧縮ルールを用いて、スキーマ識別情報群、文書識別情報群、要素識別情報群、及び発生位置情報群を圧縮できるか否かを判定する。なお本実施の形態では、索引解析部36は、基本的に、圧縮ルールの上位から適用可能かどうかの検証を行う。
【0047】
第1圧縮部38は、索引解析部36によるスキーマ識別情報群の分布解析の結果、所定数を超えるスキーマ識別情報が第1ルール記憶部55に記憶されているスキーマ識別情報に一致する場合に、スキーマ識別情報群をグループ識別情報及びグループ内識別情報を用いて圧縮する。
【0048】
図10は、第1圧縮部38によるスキーマ識別情報群の圧縮前の状態と、圧縮後の状態の一例を示す図であり、図9に示す圧縮ルールを用いてスキーマ識別情報群の圧縮が行われている。なお、図10に示す例では、スキーマ識別情報群の全てのスキーマ識別情報が、第1ルール記憶部55に記憶されているスキーマ識別情報に一致するため、索引解析部36により圧縮可能と判定されている。
【0049】
第2圧縮部40は、第2ルール記憶部56に記憶され、索引解析部36による索引情報の分布解析の結果に応じた圧縮ルールで、スキーマ識別情報群、及び識別情報群(文書識別情報群、要素識別情報群、及び発生位置情報群)の少なくともいずれかを圧縮する。
【0050】
図12は、第2圧縮部40による文書識別情報群及び要素識別情報群の圧縮前の状態と、圧縮後の状態の一例を示す図であり、図11に示す圧縮ルール1を用いて圧縮が行われている。
【0051】
なお、第2圧縮部40は、索引情報の分布解析の結果に応じた圧縮ルールが複数存在する場合に、複数の圧縮ルールでスキーマ識別情報群、及び識別情報群の少なくともいずれかを圧縮する。この場合は、圧縮ルールの上位から適用されることになる。
【0052】
変更部42は、第1圧縮部38及び第2圧縮部40により圧縮された索引情報を、スキーマ識別情報、及び識別情報(文書識別情報群、要素識別情報群、及び発生位置情報群)毎に再配置して索引記憶部54に記憶させる。
【0053】
図13は、変更部42による配置変更前の索引情報の状態と、配置変更後の状態の一例を示す図である。図13に示す例では、配置変更前の索引情報は、索引情報単位で配置されているが、配置変更後の索引情報は、スキーマ識別情報、文書識別情報群、要素識別情報群、及び発生位置情報群毎に配置されている。
【0054】
また、変更部42は、再配置を行う際、変更部42は、索引情報のヘッダ情報として、適用した圧縮ルールを記憶する。これにより、後述の検索処理部60による検索の際に、索引情報の復元や、特定情報群を扱うことが可能となる。
【0055】
検索処理部60は、構造化文書管理装置1で管理されている構造化文書を検索するものである。具体的には、検索処理部60は、索引記憶部54に記憶された索引情報のヘッダ情報を参照して索引情報を復号化し、復号化された索引情報を用いて構造化文書記憶部52に記憶されている構造化文書を検索する。なお、検索処理部60は、索引情報のうち、特定の情報群のみを取り出すことで、高速な索引スキャンを行うこともできる。
【0056】
次に、本実施の形態の構造化文書管理装置の動作について説明する。
【0057】
図14は、本実施の形態の構造化文書管理装置1で行われる構造化文書の索引情報の作成処理手順の流れの一例を示すフローチャートである。
【0058】
まず、通信部10は、クライアント装置2から送信される構造化文書を受信する(ステップS10)。
【0059】
続いて、文書解析部22は、通信部10により受信された構造化文書の構文を解析し、当該構造化文書を例えばDOM(Document Object Model)のようなオブジェクトツリー形式に展開するとともに、当該構造化文書からテキスト情報を抽出する(ステップS12)。
【0060】
続いて、スキーマ作成部26は、文書解析部22により展開されたオブジェクトツリー形式の構造化文書を走査し、同一パスで重複する構成要素をまとめることにより、構造化文書の構造的特徴を示すスキーマ情報を作成する(ステップS14)。
【0061】
続いて、照合部28は、スキーマ作成部26により作成されたスキーマ情報に一致するスキーマ情報をスキーマ記憶部51から照合する(ステップS16)。
【0062】
そして、照合の結果、互いのスキーマ情報の基本構造(各構成要素)が一致する場合には(ステップS18でYes)、照合部28は、照合されたスキーマ情報に対応付けられたスキーマ識別情報を、スキーマ作成部26により作成されたスキーマ情報のスキーマ識別情報とする。
【0063】
一方、照合の結果、互いのスキーマ情報の基本構造(各構成要素)が一致しない場合には(ステップS18でNo)、照合部28は、スキーマ作成部26により作成されたスキーマ情報に新たなスキーマ識別情報を対応付けて、スキーマ記憶部51に格納する(ステップS20)。
【0064】
続いて、付与部30は、文書解析部22によりオブジェクトツリー形式に展開された構造化文書に、照合部28により照合されたスキーマ情報に対応付けられたスキーマ識別情報、及び構造化文書に関する識別情報を付与して、構造化文書記憶部52に格納する(ステップS22)。
【0065】
続いて、索引作成部32は、文書解析部22により抽出されたテキスト情報から語彙を分割して索引リストを作成し、索引リスト記憶部53に記憶(を更新)させる(ステップS24)。
【0066】
続いて、索引作成部32は、分割した語彙毎に、付与部30により構造化文書に付与されたスキーマ識別情報、及び識別情報を対応付けた索引情報を作成し、索引記憶部54に転置ファイル形式で格納する(ステップS26)。
【0067】
続いて、索引解析部36は、索引記憶部54に転置ファイル形式で記憶された索引情報の個数が閾値を超えたか否かを判定する(ステップS28)。
【0068】
そして、索引情報の個数が閾値を超えた場合には(ステップS28でYes)、索引解析部36は、当該個数分のスキーマ識別情報であるスキーマ識別情報群、及び当該個数分の識別情報である識別情報群毎の分布を解析する(ステップS30)。
【0069】
なお、索引情報の個数が閾値を超えていない場合には(ステップS28でNo)、ステップS30以降の処理は行われずに終了する。
【0070】
続いて、索引解析部36によるスキーマ識別情報群の分布解析の結果、所定数を超えるスキーマ識別情報が第1ルール記憶部55に記憶されているスキーマ識別情報に一致する場合には(ステップS32でYes)、第1圧縮部38は、スキーマ識別情報群をグループ識別情報及びグループ内識別情報を用いて圧縮する(ステップS34)。
【0071】
なお、索引解析部36によるスキーマ識別情報群の分布解析の結果、所定数を超えるスキーマ識別情報が第1ルール記憶部55に記憶されているスキーマ識別情報に一致しない場合には(ステップS32でNo)、第1圧縮部38は、ステップS34の処理を行わない。
【0072】
続いて、第2圧縮部40は、第2ルール記憶部56に記憶され、索引解析部36による索引情報の分布解析の結果に応じた圧縮ルールで、スキーマ識別情報群、及び識別情報群の少なくともいずれかを圧縮する(ステップS36)。
【0073】
続いて、変更部42は第1圧縮部38及び第2圧縮部40により圧縮された索引情報を、スキーマ識別情報、及び識別情報毎に再配置して索引記憶部54に記憶させる(ステップS38)。
【0074】
次に、本実施の形態の構造化文書管理装置の圧縮の具体例について説明する。
【0075】
図15に示す例では、文書識別情報群の値は、「1」及び「2」が連続しており、スキーマ識別情報群の値は、第1ルール記憶部55に記憶されたスキーマ識別情報と一致する。従ってこの場合は、第1圧縮部38によるスキーマ識別情報群の圧縮の後に、第2圧縮部40により図11に示す圧縮ルール2を用いた文書識別情報群の圧縮が行われている。
【0076】
図16に示す例では、文書識別情報群の値は、「1」及び「2」が連続しており、要素識別情報群の値は、「1」、「2」及び「3」が連続している。また、スキーマ識別情報群の値は、「501」、「502」、及び「503」のみである。従ってこの場合は、第2圧縮部40により図11に示す圧縮ルール1を用いた文書識別情報群の圧縮が行われた後に、第2圧縮部40により図11に示す圧縮ルール4を用いた文書識別情報群の圧縮が行われている。
【0077】
なお、図11に示す圧縮ルール4のパターン化による圧縮では、「501」を「0」、「502」を「1」、「503」を「2」にパターン化しており、先頭に、「501」、「502」、及び「503」を見出しとして配置している。
【0078】
図17に示す例では、文書識別情報群の値は、「1」及び「2」が連続しており、要素識別情報群の値は、「1」、「2」及び「3」が連続している。従ってこの場合は、まず、第2圧縮部40により図11に示す圧縮ルール1を用いた文書識別情報群の圧縮が行われている。
【0079】
また、図17に示す例では、差分圧縮の効果が高いため、続けて、第2圧縮部40により図11に示す圧縮ルール5を用いた文書識別情報群の圧縮が行われている。
【0080】
以上のように本実施の形態によれば、スキーマ識別情報と、スキーマ識別情報が属するグループを識別可能なグループ識別情報と、当該グループ内においてスキーマ識別情報を識別可能なグループ内識別情報とが対応付けて記憶されている。このため本実施形態によれば、スキーマ識別情報群をグループ識別情報及びグループ内識別情報を用いて圧縮することができ、構造化文書の構造情報であるスキーマ識別情報を含む索引であっても適切に圧縮することができるという効果を奏する。
【0081】
また、本実施の形態では、スキーマ識別情報群だけでなく、文書識別情報群、要素識別情報群、及び発生位置情報群に対しても、索引情報の分布解析の結果に応じた圧縮ルールで圧縮するため、索引情報をより効果的に圧縮することができるという効果も奏する。
【0082】
なお上記実施の形態の構造化文書管理装置1、クライアント装置2は、CPU(Central Processing Unit)などの制御装置、ROM(Read Only Memory)やRAM(Random Access Memory)などの記憶装置、液晶ディスプレイなどの表示装置、キーボードやマウスなどの入力装置、ネットワークに接続して通信を行う通信I/F等を備えたハードウェア構成となっている。
【0083】
なお、本発明は、上記実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施の形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施の形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施の形態にわたる構成要素を適宜組み合わせても良い。
【符号の説明】
【0084】
1 構造化文書管理装置
2 クライアント装置
3 ネットワーク
10 通信部
20 格納処理部
22 文書解析部
24 スキーマ処理部
26 スキーマ作成部
28 照合部
30 付与部
32 索引作成部
34 圧縮部
36 索引解析部
38 第1圧縮部
40 第2圧縮部
42 変更部
50 記憶部
51 スキーマ記憶部
52 構造化文書記憶部
53 索引リスト記憶部
54 索引記憶部
55 第1ルール記憶部
56 第2ルール記憶部
60 検索処理部

【特許請求の範囲】
【請求項1】
ネットワークを介して、クライアント装置から構造化文書を受信する通信部と、
前記構造化文書の構造を解析し、前記構造化文書のテキスト情報を抽出する文書解析部と、
前記構造化文書の構造的特徴を示す第1スキーマ情報を作成するスキーマ作成部と、
前記スキーマ作成部により過去に作成された第2スキーマ情報と、前記第2スキーマ情報を識別するスキーマ識別情報を対応付けて記憶するスキーマ記憶部と、
前記第1スキーマ情報に一致する前記第2スキーマ情報を前記スキーマ記憶部から照合する照合部と、
前記構造化文書に、前記照合部により照合された前記第2スキーマ情報を識別する前記スキーマ識別情報、及び前記構造化文書の識別情報を付与する付与部と、
前記構造化文書のテキスト情報から語彙を分割し、分割した語彙毎に、前記スキーマ識別情報、及び前記構造化文書の識別情報を対応付けた索引情報を作成する索引作成部と、
前記索引情報をファイル形式で記憶する索引記憶部と、
ファイル形式で記憶された前記索引情報の個数が閾値を超えた場合に、前記個数分の前記スキーマ識別情報であるスキーマ識別情報群、及び前記個数分の前記識別情報である前記識別情報群毎の分布を解析する索引解析部と、
前記スキーマ識別情報と、前記スキーマ識別情報が属するグループを一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ識別情報と、当該グループ内において前記スキーマ識別情報を一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ内識別情報とを対応付けて記憶する第1ルール記憶部と、
複数の圧縮ルールを記憶する第2ルール記憶部と、
前記スキーマ識別情報群の分布解析の結果、所定数を超える前記スキーマ識別情報が前記第1ルール記憶部に記憶されている前記スキーマ識別情報に一致する場合に、前記スキーマ識別情報群を前記グループ識別情報及び前記グループ内識別情報を用いて圧縮する第1圧縮部と、
前記第2ルール記憶部に記憶され、前記索引情報の分布解析の結果に応じた圧縮ルールで、前記スキーマ識別情報群、及び前記識別情報群の少なくともいずれかを圧縮する第2圧縮部と、を備えることを特徴とする構造化文書管理装置。
【請求項2】
前記照合部は、前記スキーマ記憶部に記憶された前記スキーマ識別情報の所定期間内における照合回数に応じて、前記第1ルール記憶部に記憶された前記スキーマ識別情報に対応付ける前記グループ識別情報を決定することを特徴とする請求項1に記載の構造化文書管理装置。
【請求項3】
前記第1圧縮部及び前記第2圧縮部により圧縮された前記索引情報を、前記スキーマ識別情報、及び前記識別情報毎に再配置して前記索引記憶部に記憶させる変更部を更に備えることを特徴とする請求項1又は2に記載の構造化文書管理装置。
【請求項4】
前記第2圧縮部は、前記索引情報の分布解析の結果に応じた圧縮ルールが複数存在する場合に、複数の圧縮ルールで前記スキーマ識別情報群、及び前記識別情報群の少なくともいずれかを圧縮することを特徴とする請求項1〜3のいずれか1つに記載の構造化文書管理装置。
【請求項5】
通信部が、ネットワークを介して、クライアント装置から構造化文書を受信する通信ステップと、
文書解析部が、前記構造化文書の構造を解析し、前記構造化文書のテキスト情報を抽出する文書解析ステップと、
スキーマ作成部が、前記構造化文書の構造的特徴を示す第1スキーマ情報を作成するスキーマ作成ステップと、
照合部が、前記スキーマ作成ステップにより過去に作成された前記第2スキーマ情報と、前記第2スキーマ情報を識別するスキーマ識別情報を対応付けて記憶するスキーマ記憶部から、前記第1スキーマ情報に一致する前記第2スキーマ情報を照合する照合ステップと、
付与部が、前記構造化文書に、前記照合ステップにより照合された前記第2スキーマ情報を識別する前記スキーマ識別情報、及び前記構造化文書の識別情報を付与する付与ステップと、
索引作成部が、前記構造化文書のテキスト情報から語彙を分割し、分割した語彙毎に、前記スキーマ識別情報、及び前記構造化文書の識別情報を対応付けた索引情報を作成し、当該索引情報をファイル形式で索引記憶部に記憶させる索引作成ステップと、
索引解析部が、ファイル形式で記憶された前記索引情報の個数が閾値を超えた場合に、前記個数分の前記スキーマ識別情報であるスキーマ識別情報群、及び前記個数分の前記識別情報である前記識別情報群毎の分布を解析する索引解析ステップと、
第1圧縮部が、前記スキーマ識別情報群の分布解析の結果、所定数を超える前記スキーマ識別情報が、前記スキーマ識別情報と、前記スキーマ識別情報が属するグループを一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ識別情報と、当該グループ内において前記スキーマ識別情報を一意に識別可能であって、前記スキーマ識別情報群の圧縮に用いるグループ内識別情報とを対応付けて記憶する第1ルール記憶部に記憶されている前記スキーマ識別情報に一致する場合に、前記スキーマ識別情報群を前記グループ識別情報及び前記グループ内識別情報を用いて圧縮する第1圧縮ステップと、
第2圧縮部が、複数の圧縮ルールを記憶する第2ルール記憶部に記憶され、前記索引情報の分布解析の結果に応じた圧縮ルールで、前記スキーマ識別情報群、及び前記識別情報群の少なくともいずれかを圧縮する第2圧縮ステップと、を含むことを特徴とする構造化文書管理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate