JP3555181B2 - 構造化文書検索方法 - Google Patents

構造化文書検索方法 Download PDF

Info

Publication number
JP3555181B2
JP3555181B2 JP14739994A JP14739994A JP3555181B2 JP 3555181 B2 JP3555181 B2 JP 3555181B2 JP 14739994 A JP14739994 A JP 14739994A JP 14739994 A JP14739994 A JP 14739994A JP 3555181 B2 JP3555181 B2 JP 3555181B2
Authority
JP
Japan
Prior art keywords
logical structure
search
text
document
marker
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
Application number
JP14739994A
Other languages
English (en)
Other versions
JPH0816600A (ja
Inventor
勝己 多田
敦 畠山
川口  久光
奈津子 水谷
寛次 加藤
悟志 浅川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP14739994A priority Critical patent/JP3555181B2/ja
Priority to US08/495,232 priority patent/US5745745A/en
Publication of JPH0816600A publication Critical patent/JPH0816600A/ja
Priority to US08/746,905 priority patent/US5832476A/en
Application granted granted Critical
Publication of JP3555181B2 publication Critical patent/JP3555181B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【0001】
【産業上の利用分野】
SGML(Standard Generalized Markup Language)形式で記述された文書などのように、1件の文書が複数の論理構造で構成される構造化文書に対し、目的とする論理構造だけを対象とした検索を行う構造化文書検索方法と、そのシステムに関する。
【0002】
【従来の技術】
近年、情報化社会の本格的な進展に伴い、ワードプロセッサやパーソナルコンピュータ、ワークステーションなどが急速に拡大、普及してきている。これに伴い、作成される電子化文書情報も急速に増加してきている。このような状況下で、大量の文書情報の中から目的とする文書を探し出す手法の一つとして、文字列データからなる文書群の中から検索者が指定したある特定の文字列(以下、検索タームと呼ぶ)を含む全ての文書を探し出すことが一つの重要な処理となっている。
【0003】
その中でも、最近SGML(Standard Generalized Markup Language)などのように1件の文書が複数の論理構造で構成される文書(以下、構造化文書と呼ぶ)が用いられるようになるにつれ、目的とする論理構造を指定した検索(以下、構造指定検索と呼ぶ)を行うことが、精度の高い検索を実現する上で重要な機能として挙げられてきている。
【0004】
このような構造指定検索を実現する方法の一例が、「SGMLと全文データベース」(情報の科学と技術,43巻12号,1993,pp1097〜1103)に述べられている。以下、本従来方法について例を挙げて説明する。
【0005】
まず始めに、構造化文書における論理構造の識別方法について簡単に説明する。
【0006】
構造化文書では、文書の論理構造を識別するために各論理構造の先頭および末尾に特定の文字列(以下、前方マーカおよび後方マーカと呼ぶ)が書き込まれる。例えばSGML文書では、前方マーカおよび後方マーカはそれぞれ開始タグおよび終了タグと呼ばれ、開始タグは“<”+識別文字列+”>”で、また終了タグは“</”+識別文字列+”>”で表される。以後、本識別文字列を論理構造識別子と呼ぶ。論理構造識別子は該当する論理構造に何が記述されているのかを識別するためのものであり、通常は記述内容の名称の省略記号で表わされる。例えば、電子出願特許明細書テキストにおいて要約の論理構造を示す開始タグは”<SDO ABJ>”で、終了タグは”</SDO>”で表されている(SDOは SubDOcumentの、ABJは ABstract Japanの省略記号である)。
【0007】
次に、本従来方法における構造指定検索の実現方法について図2に例を挙げて説明する。
【0008】
この例では、SGML形式で記述された電子出願特許明細書テキストにおいて、要約という論理構造中に“音声認識”という文字列を含む文書を検索する場合を想定している。
【0009】
先に述べたように、電子出願特許明細書テキストにおいて要約の論理構造に対応する開始タグは”<SDO ABJ>”で、終了タグは”</SDO>”で表されるため、検索条件は「文字列”<SDO ABJ>”と文字列”</SDO>”で囲まれる範囲に“音声認識”という文字列を含む文書を検索する」という条件と同じになる。すなわち指定された条件の検索は、”*”を可変長の不定文字(don’t care文字)とすると電子出願特許明細書テキスト全文中に検索ターム”<SDO ABJ>*音声認識*</SDO>”が含まれる文書を検索するという処理を行うことにより実現される。
【0010】
【発明が解決しようとする課題】
従来の方法で、電子出願特許明細書テキスト10万件(約100日分、 容量:約
1,400MB)に対し、要約という論理構造中に“音声認識”という文字列が含まれる明細書を検索する時の検索時間を推定すると以下のようになる。
【0011】
文書の内容を全部読んで検索するフルテキストサーチ方式としては、
「ワークステーション内蔵型フルテキストデータベースプロセッサSDP」(情報処理学会研究報告,Vol.91,No.86,計算機アーキテクチャ90−8,1991.10.7)が発表されている。このフルテキストサーチシステムではメモリ上に格納したテキストに対し文字列照合専用のハードウェアを用いて10MB/秒の検索速度が実現されている。これをもとに、テキストをメモリ上に格納した際の検索速度を10MB/秒と仮定すると、検索に要する時間としては、
1,400MB ÷ 10MB/秒 = 140秒 = 2分20秒
掛かることになる。しかし、電子出願特許明細書テキスト10万件(容量:約
1,400MB)の内、要約という論理構造に対応するテキストは約50MBのため、要約の論理構造だけを照合処理の対象とした場合の検索時間は
50MB ÷ 10MB/秒 = 5秒
となる。
【0012】
つまり、従来の方法では電子出願特許明細書テキスト10万件全文(約1,400MB)に対して照合処理を行う必要があるため、要約の論理構造(約50MB)だけに対して照合処理を行う場合に比べ、検索時間が5秒から140秒へと約30倍長く掛かってしまうことになる。
【0013】
すなわち、本発明が解決しようとする課題は、実用規模の構造化文書データベースを対象とした場合でも、実用上許容しうる十分な検索時間で検索結果が得られる高速な構造化文書検索方法を提供することにある。
【0014】
【課題を解決するための手段】
上記課題は、以下のステップから構成される構造化文書検索方法により解決される。
【0015】
すなわち本発明による構造化文書検索方法は、
(1) 文書の登録時に、論理構造の始まりを表わす前方マーカを検出する前方マーカ検出ステップと
(2) 前方マーカ検出ステップにおいて検出された前方マーカに対応する後方マーカまでのテキスト長(以後、論理構造長と呼ぶ)を算出する論理構造長算出ステップと
(3) 上記前方マーカに、上記論理構造長を付加して検索用データベースを作成する検索用データベース作成ステップと
(4) 文書の検索時に、照合対象とするテキスト中から前方マーカを検出するとともに検索対象に指定した論理構造に該当する前方マーカであるか否かを判定する前方マーカ判定ステップと
(5) 上記前方マーカ判定ステップにおいて前方マーカが、検索対象に指定された論理構造に該当する前方マーカであると判定された場合には、該当する論理構造に含まれるテキストに対し指定された検索タームとの文字列照合処理を行う文字列照合ステップと、
(6) 上記前方マーカ判定ステップにおいて前方マーカが、検索対象に指定された論理構造に該当する前方マーカでないと判定された場合には、該当する論理構造長を参照して、この論理構造長だけテキストをスキップし文字列照合処理の対象から外す照合処理スキップステップ
により構成する。
【0016】
【作用】
本発明によると、文字列照合処理の対象を検索対象に指定した論理構造中のテキストに限定することができるため、全文に対して照合処理を行う従来方法に比べ検索時間を大幅に削減することが可能になる。
【0017】
すなわち、本発明による構造指定検索方法では、まず前方マーカ検出ステップと論理構造長算出ステップにおいて、登録文書に対し各論理構造の前方マーカを検出するとともに各論理構造の論理構造長を算出する。そして、検索用データベース作成ステップにおいて各論理構造の前方マーカの後に該当する論理構造の論理構造長を付加して検索用データベースを作成する。すなわち図2に示す例では、要約の前方マーカである“<SDO ABJ>”の後に要約の論理構造長を付加して検索用データベースを作成する。
【0018】
次に、検索時には検索用データベースから検索対象文書を読み出し、この中に含まれるテキストに対し文字列照合処理を行う。この時、まず前方マーカ判定ステップで各論理構造の前方マーカを検出し、検出された前方マーカが検索対象に指定された論理構造に対応する前方マーカであるか否かを判定する。そして、前方マーカ判定ステップにおける判定の結果、検索対象に指定された論理構造であると判定された場合には文字列照合ステップを実行する。すなわち、前方マーカの後に格納されている論理構造長を読み込むとともにその後に続く論理構造長分のテキストに対し文字列照合処理を行う。また、前方マーカ判定ステップにおける判定の結果、検索対象に指定された論理構造ではないと判定された場合には照合処理スキップステップを実行する。すなわち、前方マーカの後に格納されている論理構造長を読み込み論理構造長だけその後に続くテキストをスキップすることにより、該当する論理構造中のテキストを文字列照合処理の対象から外す。
【0019】
このようにして、本発明による構造指定検索方法では検索対象に指定されない論理構造中のテキストを照合処理の対象から外すことにより、文字列照合処理の対象を指定された論理構造中のテキストのみに削減できるため、検索に要する時間を大幅に削減することが可能となる。
【0020】
例えば、従来の方法では電子出願特許明細書テキスト10万件(約100日分、 容量:約1,400MB)に対し文字列照合処理を行うため検索に140秒(1,400MB÷10MB/秒)の時間を要していたものを、本発明では要約に対応するテキスト(約50MB)に対して文字列照合処理を行うだけで済むため、検索に要する時間を5秒(50MB÷10MB/秒)に削減することが可能になる。
【0021】
【実施例】
本発明の構造指定検索方法を用いた第一の実施例について、技術報告書を検索対象としたときを例に説明する。
【0022】
まず始めに、本発明の構造指定検索方法を実現する検索システムの構成を図1を用いて説明する。本検索システムは、ディスプレイ1、キーボード2、中央制御装置CPU3、フロッピーディスクドライバ4、フロッピーディスク5、主メモリ6および磁気ディスク装置7で構成され、磁気ディスク装置7には検索用データベース格納領域8が確保されている。また、主メモリ6には前方マーカ検出プログラム10、論理構造長算出プログラム20、検索用データベース作成プログラム30、前方マーカ検出プログラム40、文字列照合プログラム50、照合処理スキッププログラム60、登録制御プログラム70および検索制御プログラム80が格納されるとともにデータエリア90が確保されている。なお、本実施例において検索用データベース格納領域8を磁気ディスク装置7上に確保したが、光磁気ディスク装置など他の二次記憶装置であっても構わない。
【0023】
以上が本検索システムの構成である。
【0024】
次に、実施例で検索の対象とする構造化文書の論理構造について図3を用いて説明する。
【0025】
本実施例で検索対象とする技術報告書は表題、作成日、著者名、緒言、章題、章本文および結言で構成されるものとする。そして、各論理構造はそれぞれ開始タグおよび終了タグによって分割されているものとする。すなわち、例えば表題という論理構造は開始タグ“<表題>”および終了タグ“</表題>”で囲まれている。
【0026】
さらに、本実施例に示す構造指定検索方法の文書登録時の処理と検索時の処理についてそれぞれ図4および図6を用いて説明する。
【0027】
まず、文書登録時の処理を図4に示したプログラムの処理フローにしたがって図3に示した例を用いて詳細に説明する。
【0028】
始めに、キーボード2から入力されるコマンドにより登録制御プログラム70を起動する。そして、フロッピーディスクドライバ4に挿入されたフロッピーディスクから登録文書を読み込み、データエリア90に格納する。そして、前方マーカ検出ステップ10で各論理構造の始まりを表わす開始タグを検出するとともに、論理構造識別子をデータエリア90に格納する。ここで、開始タグの検出は開始タグまたは終了タグの先頭を表わす“<”に続く1文字が“/”以外であるか否かによって判定される。例えば図3に示す例では、表題という論理構造の開始タグである“<表題>”を検出するととも“表題”という文字列を論理構造識別子として格納する。
【0029】
次に、論理構造長算出ステップ20では前方マーカ検出ステップ10で検出した前方マーカに対応する論理構造の論理構造長を算出する。この例では、表題に対応するテキストは“画像認識システムの技術動向”で、13文字すなわち26Byte(1文字を2バイトの文字コードで表す)であるため、表題という論理構造に対応する論理構造長は26と算出される。
【0030】
そして、前方マーカ検出ステップ10および論理構造長算出ステップ20を登録文書の末尾まで繰り返した後、検索用データベース作成ステップ30で各論理構造の開始タグの後に先に算出した各論理構造の論理構造長を付加するとともに、文書の先頭を表す特定の制御コードtot(top of text)、登録文書に対応する文書の識別番号(以後、文書IDと呼ぶ)、文書の終了を表す特定の制御コードeot(end of text)を書き込み込み検索用データベースを作成する。そして、全文書の登録が終了するまで以上の処理を繰り返した後、検索用データベースの末尾を表わす特定のコード(end of file)を書き込み検索用データベースを作成するとともに、これを検索用データベース格納領域8に格納する。すなわち、図3に示した例では、表題という論理構造に対しては開始タグである“<表題>”の後に表題の論理構造長である26を固定長のバイナリデータとして書き込み検索用データベースを作成する。
【0031】
以上の処理によって作成した検索用データベースの例を図5に示す。
【0032】
以上が登録時処理の具体的内容である。
【0033】
次に、本発明の構造指定検索方法を用いた第一の実施例における文書検索時の処理フローを図6に示す。以下、図5に示した検索用データベースに対し、緒言の中に“ワークステーション”という文字列を含む文書を検索する場合について具体的に例を挙げて説明する。
【0034】
始めに、検索条件を入力する前に予めキーボード2から入力されるコマンドにより検索制御プログラム80を起動し、磁気ディスク内7の検索用データベース格納領域8に格納された検索用データベースを主メモリ6上のデータエリア90に読み込む。そして、検索条件が入力されるとデータエリア90に読み込まれた検索用データベースからtotを検出するとともにtotに続くバイナリデータを文書IDとして保持する。すなわち、図5に示す例では文書IDとして1857が保持されることになる。
【0035】
次に、eot110が現れるまで前方マーカ判定ステップ40を実行する。すなわち、ここで、開始タグの検出は開始タグまたは終了タグの先頭を表わす“<”に続く1文字が“/”以外であるか否かを判定することによって論理構造の開始タグを検出し、開始タグの末尾を表わす“>”まで文字列を論理構造識別子として取り込むとともに、開始タグの後に現れるバイナリデータを論理構造長としてデータエリア90に保持する。すなわち、図5に示した例では表題の開始タグである“<表題>”中から“表題”の文字列が読み込まれるとともに論理構造長として26が読み込まれることになる。そして、先ほど取り込んだ論理構造識別子が検索対象に指定した論理構造の論理構造識別子であるか否かを判定する。検索対象に指定した論理構造に対応した論理構造識別子を求める方法として本実施例では図7に示す対応表を用いている。この方法では、検索用データベースを作成する際に、SGML文書におけるDTD(Document Type Definition)などの構造化文書の型定義文をもとに、登録制御プログラム70で論理構造名と各論理構造に固有の番号(以後、論理構造識別番号と呼ぶ)および論理構造識別子の間の対応表をあらかじめ作成する。そして検索時には、この対応表をもとに検索者が指定した論理構造に対応する論理構造識別子を求める。すなわち、図7に示す対応表中の論理構造名と目的とする論理構造名を比較し、一致した時の論理構造識別番号に該当する論理構造識別子を目的とする論理構造識別子として用いる。また、検索対象とする論理構造識別子を指定する方法として、目的とする論理構造の論理構造識別子を検索者が入力する方法であっても構わない。
【0036】
前方マーカー判定ステップ40における判定の結果、検索対象に指定した論理構造である場合には、文字列照合ステップ50を実行する。すなわち、先ほど読み込んだ論理構造長分のテキストに対して照合処理を行う。また判定の結果、検索対象に指定した論理構造でない場合には、照合処理スキップステップを実行する。すなわち、先ほど読み込んだ論理構造長分のテキストをスキップし、文字列照合処理の対象から外す。例えば図5に示した例では、検索対象に指定された論理構造の論理構造識別子は“緒言”なのに対し、取り込まれた論理構造識別子は“表題”であり検索対象に指定された論理構造ではないため、該当する論理構造長すなわち26Byte分のテキスト“画像認識システムの技術動向”を読み飛ばし照合処理の対象から外す。続いて読み込まれる作成日および著者名に含まれるテキストも同様に照合処理の対象から外される。次に、論理構造識別子として”緒言”が読み込まれるが、これは検索対象とする論理構造の識別子であるため緒言の論理構造長である636Byte分のテキストに対して照合処理を開始する。最後に検索タームがヒットしたか否かを判定し、検索タームがヒットした場合には該当する文書の文書IDを照合結果としてデータエリア90に出力する。
【0037】
そして、以上の処理を検索用データベースの終了を表わすeofが現われるまで繰り返す。
【0038】
以上が、文書検索時処理の具体的内容である。
【0039】
以上のように本発明の第一の実施例では、文書登録時に各論理構造の前方マーカの後にその論理構造のテキスト長を書き込み検索用データベースを作成し、検索時には検索対象に指定されていない論理構造については、その論理構造長分だけテキストを読み飛ばし文字列照合処理の対象から外し、無駄な照合処理を省くことにより構造指定検索を高速に実現することが可能になる。
【0040】
なお、本実施例では検索用データベースは検索条件を入力する前に予め磁気ディスク7上の検索用データベース格納領域8から主メモリ6上のデータエリア
90に読み込む場合について説明したが、検索条件が入力される度毎に磁気ディスク7から主メモリ6に検索用データベースを読み出す方法を用いても構わない。
【0041】
また、本実施例では前方マーカおよび後方マーカとしてSGMLタグを用いた例について説明したが、ODA(Office Document Architecture)タグを用いた文書であっても構わない。各論理構造の先頭および末尾が特定の文字列により区切られる文書であれば、本発明に示す構造指定検索が実現可能であることは明らかである。
【0042】
さらに、本実施例では各論理構造に対応巣る論理構造長が付加されていない構造か文書に対し、データベース登録時に各論理構造の先頭を表す前方マーカと、該当する論理構造の末尾を表す後方マーカを検出することにより該当する論理構造長を算出し、これを文書中に付加する方式について説明した。しかし、ワードプロセッサ等を用いて文書を作成する際に予め論理構造長が付加された文書や、メール等のようにネットワークア等を通じて文書を転送する際に予め論理構造長が付加された文書をそのままデータベースに格納した場合についても、本実施例における検索時処理と同様に検索対象に指定されていない論理構造については、その論理構造長野分だけテキストを読み飛ばし、つまり文字列照合処理の対象から外し、無度名照合処理を省くことにより構造指定検索を高速に実現することが可能である。
【0043】
以上に述べた第一の実施例では、検索用データベース内で論理構造の区切りを表す文字列として開始タグおよび終了タグをそのまま用いている。しかし、この方式ではタグ内の論理構造識別子に含まれる文字列が検索タームに指定されたときには、不要な文書が検索されてしまうという問題が生じる。すなわち、図5に示した検索用データベースを対象として技術報告書全文中に“作成”という文字列を含む文書を検索した際には、作成日という論理構造に対応する開始タグおよび終了タグである“<作成日>”および“</作成日>”に含まれる“作成”が照合されてしまうという問題が生じる。そこで次に説明する本発明の第二の実施例では、以上述べた問題を解決するためSGML文書中のタグを特定の制御コードに置き換えて検索用データベースを作成する。
【0044】
まず、第二の実施例おける文書登録時の処理を図8に示したプログラムの処理フローにしたがって説明する。なお、本図に示す文書登録時の処理フローは第一の実施例における登録処理フロー(図4)において、前方マーカ検出ステップ
10の後に該当する論理構造識別番号を算出する処理を加えるとともに、検索用データベース作成ステップ30における処理の内容を一部変更したものである。
【0045】
始めに、前方マーカ検出ステップ10では第一の実施例と同様に登録文書に対し、開始タグまたは終了タグの先頭を表わす“<”に続く1文字が“/”以外であるか否かを判定することにより開始タグの検出を行う。そして、開始タグの終了を表す“>”までの文字列を論理構造識別子としてデータエリア90に取り込む。そして、該当する論理構造識別子に対応する論理構造識別番号を図7に示した論理構造識別子と論理構造識別番号の対応表から算出する。例えば図3に示した例では、開始タグ“<表題>”から論理構造識別子“表題”を取り込むとともに、図7に示す対応表を参照し論理構造識別番号として“1”の値を得る。
【0046】
そして、論理構造長算出ステップ20では該当する論理構造の論理構造長を算出する。
【0047】
さらに、検索用データベース作成ステップ30で各論理構造の開始タグの代わりに論理構造の先頭を表す特定の制御コード“α”を書き込むとともに、先ほど算出した論理構造識別番号および論理構造長を制御コード“α”の後に書き込む。また、終了タグを削除するとともにtot、文書ID、eotなどの制御コードを書き込み検索用データベースを作成する。そして、全文書の登録が終了するまで以上の処理を繰り返した後、検索用データベースの末尾を表わすeofを書き込み検索用データベースを作成する。
【0048】
以上が、文書登録時の処理である。
【0049】
以上の処理によって作成した検索用データベースの例を図9に示す。本図に示す検索用データベースは、第一の実施例で用いた検索用データベース(図5)において開始タグを論理構造の先頭を表す制御コードα300および論理構造識別番号310で置き換えるとともに終了タグを削除したものである。
【0050】
次に、第二の実施例における検索時の処理フローを図10に示し、処理内容について説明する。なお、本図に示す検索時処理フローは本発明第一の実施例における検索時処理フロー(図6)に対し前方マーカ判定ステップ40の内容を変更したものである。以下、図9に示した検索用データベースに対し、緒言の中に“ワークステーション”という文字列を含む文書を検索する場合について具体的に例を挙げて説明する。
【0051】
始めに前方マーカ判定ステップ40では、検索用データベース中から制御コード“α”を検出するとともに、続くバイナリデータを論理構造識別番号としてデータエリア90に保持する。さらに、続くバイナリデータを論理構造長として保持する。そして、検索対象に指定した論理構造に対応する論理構造識別番号と、先ほどデータエリア90に保持した論理構造識別番号を比較することにより該当する論理構造が検索対象に指定した論理構造であるか否かの判定を行う。そして、第一の実施例と同様に前方マーカ判定ステップ40の判定結果が検索対象に指定された論理構造である場合には文字列照合処理ステップ50を実行する。すなわち、該当する論理構造長分のテキストに対し文字列照合処理を行う。また、検索対象に指定されていない論理構造の場合には照合処理スキップステップを実行する。すなわち、図9に示す例では制御コードαに続く論理構造識別番号として“0001”が取り込まれるが、これは検索対象に指定した緒言の論理構造に対応する論理構造識別番号“0004”ではないため、該当する論理構造長すなわち26Byte分のテキスト“画像認識システムの技術動向”を読み飛ばし照合処理の対象から外す。続いて読み込まれる論理構造識別番号“0002”および“0003”に含まれるテキストも同様に照合処理の対象から外される。次に、論理構造識別番号として“0004”が読み込まれるが、これは検索対象とする論理構造識別番号に等しいため該当する論理構造長である636Byte分のテキストに対して照合処理を開始する。
【0052】
以上が、第二の実施例における検索時の処理フローである。
【0053】
以上のように、第一の実施例における検索用データベース内で論理構造の区切りを表す文字列として開始タグおよび終了タグをそのまま用いたのに対し、第二の実施例ではこれを特定の制御コードに置き換えて検索用データベースを作成する。この第二の実施例によれば、第一の実施例と同様にテキストの検索対象に指定されない論理構造部分については文字列照合処理がスキップされるので高速の構造指定検索が実現し、加えて、タグ内の論理構造識別子に含まれる文字列が検索タームに指定された場合にも不要な文書が検索されないので高い検索精度を実現することができる。
【0054】
次に、階層構造を持つ構造化文書を対象とした際に、前方マーカ判定処理の頻度が低減し、もって上述の第一、第二の実施例よりさらに高速の構造指定検索が可能な第三の実施例について説明する。
【0055】
図11には階層構造を持つ構造化文書の例を示す。図示した技術報告書は書誌と本文で構成される。さらにこの書誌は表題、作成日及び著者名で構成され、一方本文は緒言、複数の章題及びその章本文、並びに結言で構成される。つまりこの文書は、第1階層目の論理構造として書誌と本文とを有し、第2階層目の論理構造として書誌に対して表題、作成日及び著者名を、本文に対して緒言、章題、章本文及び結言をそれぞれ有する。この階層構造を持つ構造化文書を検索対象とし、緒言という論理構造中に“ワークステーション”という文字列を含む文書を抽出するばあいを考える。検索対象とする論理構造は本文中の緒言であり、書誌については前方マーカの判定処理を行う必要はない。それにもかかわらず、上述の第一、第二の.実施例の構造指定検索方法では、書誌内の全ての論理構造に対しても前方マーカ判定ステップを実行するという無駄な処理が発生する。これに対して、図12から図14で示す第三の実施例では、論理構造識別番号を複数レベルで設定する手法を採用して無駄な処理を省き、より一増すの高速化を達成する。
【0056】
始めに、本実施例で用いる論理構造名と論理構造識別子との対応表を図12に示すとともに、この対応表を用いた構造指定検索方法の概要について簡単に説明する。なお、図12に示す対応表は本発明第一の実施例において用いた対応表(図7)において、論理構造識別番号を階層的に定義したものである。
【0057】
まず、登録時の処理については本発明第二の実施例における登録処理(図8)と同じ処理フローにより実現される。すなわち、前方マーカ検出ステップ10では第一の実施例と同様に登録文書に対し、開始タグまたは終了タグの先頭を表わす“<”に続く1文字が“/”以外であるか否かを判定することにより開始タグの検出を行う。そして、開始タグの終了を表す“>”までの文字列を論理構造識別子としてデータエリア90に取り込む。そして、該当する論理構造識別子に対応する論理構造識別番号を図12に示した論理構造識別子と論理構造識別番号の対応表から算出する。例えば図11に示した例では、開始タグ“<書誌>”から論理構造識別子“書誌”を取り込むとともに、図12に示す対応表を参照しレベル1の論理構造識別番号として“0001”を、レベル2の論理構造識別番号として
“0000”の値を得る。そして、論理構造長算出ステップ20では該当する論理構造の論理構造長を算出する。さらに、検索用データベース作成ステップ30で各論理構造の開始タグの代わりに論理構造の先頭を表す特定の制御コード“α”を書き込むとともに、先ほど算出した論理構造識別番号および論理構造長を制御コード“α”の後に書き込む。また、終了タグを削除するとともにtot、文書ID、eotなどの制御コードを書き込み検索用データベースを作成する。そして、全文書の登録が終了するまで以上の処理を繰り返した後、検索用データベースの終了を表わすeofを書き込み検索用データベースを作成する。
【0058】
以上が、文書登録時の処理である。
【0059】
以上の処理によって作成した検索用データベースの例を図13に示す。本図に示す検索用データベースは、第二の実施例で用いた検索用データベース(図9)において論理構造識別番号310を2レベルで構成したものである。
【0060】
次に、第三の実施例における検索時の処理フローを図14に示し、処理内容について説明する。なお、本図に示す検索時処理フローは本発明第二の実施例における検索時処理フロー(図10)に対し前方マーカ判定ステップ40の内容を変更したものである。
【0061】
始めに前方マーカ判定ステップ40では、データエリア90に読み込まれた検索用データベース中から制御コード“α”を検出するとともに、続く2個のバイナリデータをレベル1とレベル2の論理構造識別番号としてデータエリア90に保持する。さらに、続くバイナリデータを論理構造長として保持する。そして、検索対象に指定した論理構造に対応する論理構造識別番号と、先ほどデータエリア90に保持した論理構造識別番号をレベル1とレベル2の2段階で比較することにより、検索対象に指定した論理構造であるか否かを判定する。以下、本判定処理の概要について説明する。
【0062】
第一に、レベル1の判定では1階層目の論理構造について検索対象に指定した論理構造であるか否かを判定する。そして、検索対象に指定された論理構造である場合には、引き続きレベル2の判定を行う。検索対象に指定されない論理構造の場合には該当する論理構造長分のテキストをスキップし照合処理の対象から外す。
【0063】
第二に、レベル2の判定では2階層目の論理構造について検索対象に指定した論理条件であるか否かを判定する。そして、検索対象に指定した論理構造である場合には該当する論理構造長のテキストに対し文字列照合処理を開始する。また、検索対象に指定されない論理構造である場合には、レベル2の論理構造識別番号が“0”でないか否か、すなわち該当する論理構造識別子が1階層目のものであるか、2階層目のものであるかを判定する。そして、レベル2の論理構造識別番号が“0”でない時、すなわち2階層目の論理構造識別子の時には該当する論理構造長のテキストをスキップし、文字列照合処理の対象から外す処理を行う。また、レベル2の論理構造識別番号が“0”である時、すなわち1階層目の論理構造識別子の時には、引き続き前方マーカ判定処理を行うことにより、2階層目の論理構造に対し構造指定検索を実行する。
【0064】
以上が文書検索時の概要である。
【0065】
次に、図13に示した検索用データベースに対し緒言の中に“ワークステーション”という文字列を含む文書を検索する場合について具体的に例を挙げて説明する。
【0066】
まず、図12に示す論理構造名と論理構造識別番号の対応表から検索対象とする緒言の論理構造識別番号を求める。その結果、レベル1とレベル2の論理構造識別番号として、それぞれ“2”と“1”を得る。次に、検索用データベース中から制御コードαを検出し、検索対象に指定した論理構造であるか否かの判定を行う。すなわち図13に示す例では、まず始めに制御コードαに続く“1”をレベル1の、”0”をレベル2の論理構造識別番号として取り込む。そして、これが検索対象に指定した論理構造に対応する論理構造識別番号であるか否かを判定する。その結果、レベル1の判定で検索対象に指定した論理構造でないと判定されるため、該当する1階層目の論理構造、すなわち書誌に含まれるテキストをスキップし文字列照合処理の対象から外す。続いて、“2”をレベル1の、“0”をレベル2の論理構造識別番号として取り込む。そしてレベル1の判定の結果、検索対象に指定した論理構造であると判定されるため、引き続きレベル2の判定を実行する。その結果、検索対象に指定した論理構造でないと判定されるが、レベル2の論理構造識別番号が“0”、すなわち、1階層目の論理構造である本文に対応する論理構造であるため、引き続き前方マーカ判定処理を行うことにより2階層目の論理構造に対し構造指定検索を実行する。そして、次に取り込まれる論理構造識別番号はレベル1が“2”、レベル2が“1”であり、検索対象に指定した論理構造に対応する論理構造識別番号に等しいため、該当する論理構造長である636Byte分のテキストに対し文字列照合処理を開始する。
【0067】
以上が、本発明第三の実施例における検索時の処理フローである。
【0068】
以上のように、本発明第三の実施例における構造指定検索方法では、論理構造識別番号を複数レベルで定義することにより、無駄な前方マーカ検出処理を省略することができ検索時間をさらに短縮することができる。なお、本実施例において論理構造が2階層の場合について例を挙げて説明したが、3階層以上の論理構造からなる構造化文書に対しても適応できることは明らかである。
【0069】
さらに上述の第一の実施例における構造指定検索方法では、検索条件が入力される前に予め磁気ディスク7内の検索用データベースをメモリ6上のデータエリア8に読み込んでいた。これに代えて、検索条件が入力される度毎に検索用データベースを磁気ディスク7からデータエリア90に読み込む方法も可能である。ただし、この方法を採用した場合には磁気ディスクからの読み出し時間が大きく影響し、検索時間の短縮の効果が十分に上がらないいという問題点がある。すなわち、第一の実施例では、メモリ6上のデータエリア90に格納されたテキストに対して前方マーカ判定ステップ40、文字列照合ステップ50および照合処理スキップステップ60を実行し、文字列照合処理の対象とするテキスト容量を削減することにより検索時間を短縮したが、検索用データベースをメモリ6上のデータアリア90に取り込む際には全ての論理構造に対応するテキストを磁気ディスク7から読み出す必要があ。このため、特に検索条件が入力される度毎に検索用データベースを磁気ディスク7からデータエリア90に読み込む方法を採用した場合には、磁気ディスク7からの読み出し速度がボトルネックとなって検索時間の短縮の効果が半減する。
【0070】
そこで、次に説明する本発明の第四の実施例では、開始タグと終了タグ以外のテキストのみを格納したテキストファイルと、論理構造を表わすタグや各論理構造の先頭アドレスおよび論理構造長などの論理構造の領域を表わすファイル(以後、領域情報ファイルと呼ぶ)を別々のファイルに格納して検索用データベースを作成する。
【0071】
始めに、文書登録時の処理は本発明の第一の実施例における文書登録処理フロー(図4)における検索用データベース作成ステップ30において登録文書から開始タグおよび終了タグを取り除いたテキストファイルとは別に、領域情報ファイルを作成する。
【0072】
次に図3に示す構造化文書に対し作成したテキストファイルと領域情報ファイルの例を図15に示す。なお、本図に示すテキストファイルは図3に示す構造化文書から開始タグおよび終了タグを削除した構成をとっている。また領域情報ファイルは、第一の実施例における検索用データベース(図5)から各論理構造に対応するテキスト以外を抜き出すとともに、テキストファイルにおいて各論理構造に対応するテキストが格納されている領域の先頭アドレス220を各論理構造の先頭タグの後に付加した構成を取っている。
【0073】
最後に、本発明第四の実施例における検索時の処理フローを図16に示し、処理内容について説明する。なお、本図に示す検索時処理フローは本発明第一の実施例における処理フロー(図6)に対し文字列照合ステップ50の処理内容を変更したものである。
【0074】
以下、図16に示す検索処理フローの概要について説明する。
【0075】
始めに、検索条件が入力される前に予め磁気ディスク7上の検索用データベース格納領域8に格納された領域情報ファイルをメモリ6上のデータエリア90に読み出す。領域情報ファイルは1件当り約100Byteの容量であり、テキストファイル(1件当り数kByte)に比べ小さいため、テキストファイル全体をメモリ上に読み込む場合に比べ必要とするデータエリア90のメモリ容量は小さくて済む。
【0076】
次に、図15に示す領域情報ファイルに対し図16に示す検索プログラムを実行する。すなわち、前方マーカ判定ステップでは本発明第一の実施例における検索処理フローと同様に領域情報ファイル内のテキストから開始タグを検出し、これが検索対象に指定した論理構造に対応する開始タグであるか否かを判定する。そして、検索対象に指定した論理構造であると判定された場合には文字列照合ステップ50を実行する。すなわち、開始タグに続いて取り込まれる2個のバイナリデータを、テキストファイル内で該当する論理構造が格納されている先頭アドレスと論理構造長として保持する。次に、先程取り込んだ先頭アドレスと論理構造長をもとに、該当する論理構造に対応するテキストを磁気ディスク7内に格納されたテキストファイルからメモリ6上のデータエリア60に読み込み文字列照合処理を行う。また、検索対象に指定した論理構造でないと判定された場合には、照合処理スキップステップを実行する。すなわち、該当する論理構造に対応するテキストを磁気ディスク7から読み込むことなく照合処理の対象から外す。
【0077】
以上が、本発明第四の実施例における検索処理の概要である。
【0078】
次に、図15に示す検索用データベースに対し緒言の中に“ワークステーション”という文字列を含む文書を検索する場合について具体的に例を挙げて説明する。
【0079】
始めに、図16に示す領域情報ファイルから開始タグとして“<表題>”から論理構造識別子として“表題”が検出される。しかし、これは検索対象に指定した緒言の論理構造識別子“緒言”と異なるため照合処理スキップステップを実行する。すなわち、該当する論理構造に対応するテキストをテキストファイルから読みだすことなく文字列照合処理の対象から外す。次に、作成日、著者名に対応する論理構造識別子が検出されるが、これも検索対象に指定した緒言の論理構造識別子“緒言”と異なるため、該当する論理構造に対応するテキストをテキストファイルから読みだすことなく文字列照合処理の対象から外す。次に、緒言に対応する論理構造識別子である“緒言”が取り込まれ、これは検索対象に指定した論理構造に対応する論理構造識別子であるため文字列照合ステップを実行する。すなわち、緒言の開始タグに続く2個のバイナリデータを先頭アドレスと論理構造長として保持する。そして、この先頭アドレスと論理構造長に対応するテキストを磁気ディスク上のテキストファイルからメモリ上のデータエリアに読み込み文字列照合処理を行う。
【0080】
以上が、第四の実施例における検索処理の例である。
【0081】
第四の実施例における構造指定検索方法では、各論理構造に対応するテキストを格納するテキストファイルと、各論理構造に対応するテキストがテキストファイル内のどの位置に格納されているかを表わす領域情報ファイルに分けて検索用データベースを作成する。そして、検索時には領域情報ファイルを対象に構造指定検索を実行し、検索対象に指定した論理構造に対応するテキストだけを磁気ディスク上に格納したテキストファイルからメモリ上に読み込むことにより磁気ディスクから読み出すデータ量を削減し検索時間を短縮することが可能になる。
【0082】
なお、本発明では検索条件が入力される前に予め領域情報ファイルを磁気ディスク7から読み出しメモリ6上のデータエリア90に読み出す方法について説明した。しかし、先に説明したように領域情報ファイル1件当り約100Byteの容量であり、1件当り数kByteのテキストファイルに比べ容量が小さいため、検索条件が入力される度毎に領域情報ファイルを磁気ディスク7からメモリ上に読み込んだ場合にでも、高速な構造指定検索を実現することができる。
【0083】
以上に、各論理構造の先頭や末尾を表すタグや、各論理構造の先頭アドレス及び論理構造長など、論理構造の領域を表す領域情報ファイルの作成されていない構造化文書に対し、データベース登録時に各論理構造の先頭を表す前方マーカと該当する論理構造の末尾を表す後方マーカを検出することにより、開始タグと終了タグ以外のテキストのみを格納したテキストファイルと、それとは別に各論理構造の領域を表す領域情報ファイルを作成する実施例について説明した。しかし、ワードプロセッサ等を用いて文書を作成する際に予めテキストファイルとは別に領域情報ファイルの作成され文書や、メール等のようにネットワーク等を通じて文書を転送する際に予めテキストファイルとは別に領域情報ファイルの作成された文書をそのままデータベースに格納した場合についも、本実施例における検索時処理と同様に領域情報ファイルを対象に構造指定検索を実行し、検索対象に指定した論理構造に対応するテキストだけを磁気ディスク上に格納したテキストファイルからメモリ上に読み込むことにより、磁気ディスクから読みだすデータ量を削減し、検索時間を短縮することができる。
【0084】
【発明の効果】
本発明によれば、1件の文書が複数の論理構造から構成される構造化文書に対し目的とする論理構造を指定した検索(構造指定検索)を実現する際に、目的とする論理構造以外のテキストを読み飛ばし照合処理の対象から外すことにより、大規模な構造化文書に対しても実用的な時間で構造指定検索を実現することができる。
【図面の簡単な説明】
【図1】本発明による構造化文書検索システムの構成を表わす図である。
【図2】構造指定検索方法の従来方法を表わす図である。
【図3】技術報告書の論理構造の例を表わす図である。
【図4】本発明の第一の実施例における登録処理フローを表わす図である。
【図5】本発明の第一の実施例における検索用データベースの一例を表わす図である。
【図6】本発明の第一の実施例における検索処理フローを表わす図である。
【図7】本発明第一の実施例における論理構造名と論理構造識別子の対応表の一例を示す図である。
【図8】本発明の第二の実施例における登録処理フローを表わす図である。
【図9】本発明の第二の実施例における検索用データベースの一例を表わす図である。
【図10】本発明の第二の実施例における検索処理フローを表わす図である。
【図11】本発明第三の実施例における技術報告書の論理構造の例を表わす図である。
【図12】本発明第三の実施例における論理構造名と論理構造識別子の対応表の一例を示す図である。
【図13】本発明の第三の実施例における検索用データベースの一例を表わす図である。
【図14】本発明の第三の実施例における検索処理フローを表わす図である。
【図15】本発明の第四の実施例における検索用データベースの一例を表わす図である。
【図16】本発明の第四の実施例における検索処理フローを表わす図である。
【符号の説明】
1…ディスプレイ、2…キーボード、3…中央制御装置CPU、4…フロッピーディスクドライバ、5…フロッピーディスク、6…主メモリ、7…磁気ディスク装置、8…検索用データベース、10…格納領域前方マーカ検出プログラム、20…論理構造長算出プログラム、30…検索用データベース作成プログラム、40…前方マーカ検出プログラム、50…文字列照合プログラム、60…照合処理スキッププログラム、70…登録制御プログラム、80…検索制御プログラム、90…データエリア、100…文書の先頭を表わす制御コードtot、110…文書の終了を表わす制御コードeot、120…検索用データベースの終了を表わす制御コードeof、200…文書の識別番号ID、210…論理構造長、220…先頭アドレス、300…論理構造の区切りを表わす制御コードα、
310…論理構造識別番号。

Claims (3)

  1. 各文書が複数の論理構造で構成される構造化文書群から、指定した検索タームが指定した論理構造の中に存在する文書を検索する構造化文書検索方法において、
    文書の登録時に前記複数の論理構造の各々について論理構造の始まりを表わす前方マーカを検出するステップと、該前方マーカから該前方マーカに対応する論理構造の終わりを表わす後方マーカまでのテキスト長を算出するステップと、該前方マーカに該論理構造長を付加して検索用データベースを作成するステップを有し、
    文書の検索時に照合対象とするテキスト中から前方マーカを検出するとともに検索対象に指定した論理構造に該当する前方マーカであるか否かを判定するステップと、前記判定の結果、前方マーカが検索対象に指定された論理構造に該当する前方マーカであると判定された場合には、該当する論理構造に含まれるテキストに対し指定された検索タームとの文字列照合処理を行うステップと、前記判定の結果、前方マーカが検索対象に指定された論理構造に該当する前方マーカでないと判定された場合には、該論理構造長を参照して、該論理構造長だけテキストをスキップし文字列照合処理の対象から外すステップを有することを特徴とする構造化文書検索方法。
  2. 各文書が複数の論理構造で構成される構造化文書群から、指定した検索タームが指定した論理構造の中に存在する文書を検索する構造化文書検索方法において、
    文書の登録時には、
    前記複数の論理構造の各々について論理構造の始まりを表わす前方マーカを検出するステップと、検出された前記前方マーカが表す論理構造に対応する識別番号を取得するステップと、該前方マーカから該前方マーカに対応する論理構造の終わりを表わす後方マーカまでのテキスト長を算出するステップと、検出された前記前方マーカを論理構造の先頭を表す特定の制御コードに置換するとともに、前記取得された論理構造に対応する識別番号及び前記算出された論理構造長を付加し、前記検出された後方マーカを削除して検索用データベースを作成するステップを有し、
    文書の検索時には、
    検索対象とした論理構造に対応する識別番号を取得するステップと、照合対象とするテキストから論理構造の先頭を表す特定の制御コード及び識別番号を検出し、検索対象とした論理構造に対応する識別番号と一致するかを判定するステップと、
    前記判定の結果、識別番号が一致すると判定された場合には、該当する論理構造に含まれるテキストに対し指定された検索タームとの文字列照合処理を行うステップと、
    前記判定の結果、識別番号が一致しないと判定された場合には、前記論理構造長を参照し前記論理構造長だけテキストをスキップして文字列照合処理の対象からはずすステップを有することを特徴とする構造化文書検索方法。
  3. 前記検索用データベースを作成するステップにおいて、
    前記文書が複数の階層からなる論理構造で定義されている場合には、前記論理構造の識別番号を階層的に定義し、
    前記識別番号を取得するステップにおいて、
    検索対象とした論理構造に対応する識別番号を階層的に取得し、
    識別番号と一致するかを判定するステップにおいて、
    階層ごとに識別番号を判定する
    ことを特徴とする請求項2に記載の構造化文書検索方法。
JP14739994A 1994-06-29 1994-06-29 構造化文書検索方法 Expired - Fee Related JP3555181B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP14739994A JP3555181B2 (ja) 1994-06-29 1994-06-29 構造化文書検索方法
US08/495,232 US5745745A (en) 1994-06-29 1995-06-27 Text search method and apparatus for structured documents
US08/746,905 US5832476A (en) 1994-06-29 1996-11-19 Document searching method using forward and backward citation tables

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14739994A JP3555181B2 (ja) 1994-06-29 1994-06-29 構造化文書検索方法

Publications (2)

Publication Number Publication Date
JPH0816600A JPH0816600A (ja) 1996-01-19
JP3555181B2 true JP3555181B2 (ja) 2004-08-18

Family

ID=15429411

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14739994A Expired - Fee Related JP3555181B2 (ja) 1994-06-29 1994-06-29 構造化文書検索方法

Country Status (1)

Country Link
JP (1) JP3555181B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3518933B2 (ja) * 1995-06-05 2004-04-12 株式会社日立製作所 構造化文書検索方法
JP3696731B2 (ja) * 1998-04-30 2005-09-21 株式会社日立製作所 構造化文書の検索方法および装置および構造化文書検索プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2001167113A (ja) * 1999-12-09 2001-06-22 Nec Corp 付与情報全文検索システムおよび付与情報全文検索方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01237824A (ja) * 1988-03-18 1989-09-22 Toshiba Corp データ列検索装置
JP2885487B2 (ja) * 1990-07-26 1999-04-26 日本電信電話株式会社 文書内情報検索装置

Also Published As

Publication number Publication date
JPH0816600A (ja) 1996-01-19

Similar Documents

Publication Publication Date Title
US5745745A (en) Text search method and apparatus for structured documents
JP3696731B2 (ja) 構造化文書の検索方法および装置および構造化文書検索プログラムを記録したコンピュータ読み取り可能な記録媒体
JP3178475B2 (ja) データ処理装置
JP3554459B2 (ja) テキストデータ登録検索方法
JPH08241332A (ja) 全文登録語検索装置および方法
JP2001075969A (ja) 画像管理検索装置、画像管理検索方法及び記憶媒体
JP3022539B1 (ja) 文書検索装置
JP2002222194A (ja) パターン検索方法、パターン検索装置、パターン検索プログラムを記録したコンピュータ読み取り可能な記録媒体、パターン検索システムおよびパターン検索プログラム
JPH08147311A (ja) 構造化文書検索方法及び装置
JP2693914B2 (ja) 検索システム
JP3555181B2 (ja) 構造化文書検索方法
JP2001109754A (ja) 索引ファイルを使用した検索方法及びそれに用いる装置
JP2000003366A (ja) 文書登録方法と文書検索方法及びその実施装置並びにその処理プログラムを記録した媒体
JP2000090093A (ja) 全文検索方法及び全文検索システム並びに全文検索プログラムを記録した記録媒体
JPH08190571A (ja) 文書検索方法
JP2002132789A (ja) 文書検索方法
JP3698400B2 (ja) 多言語文書処理装置、多言語文書処理方法及び記録媒体
JPH09212523A (ja) 全文検索方法
JP3287307B2 (ja) 構造化文書検索システム、構造化文書検索方法および構造化文書検索用プログラムを記録した記録媒体
US20040164989A1 (en) Method and apparatus for disclosing information, and medium for recording information disclosure program
JP2006106907A (ja) 構造化文書管理システム、索引構築方法及びプログラム
JP2000076254A (ja) キーワード抽出装置、このキーワード抽出装置を用いた類似文献検索装置、キーワード抽出方法及び記録媒体
JP3508842B2 (ja) データベース検索システムおよびデータベース検索プログラムを記録した記録媒体
JPH07296005A (ja) 日本語テキスト登録・検索装置
JPH02253474A (ja) テキストベース検索方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040308

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: 20040420

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040503

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080521

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080521

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090521

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100521

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110521

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees