JP2005025763A - 構造化文書の分割プログラム、分割装置、及び分割方法 - Google Patents

構造化文書の分割プログラム、分割装置、及び分割方法 Download PDF

Info

Publication number
JP2005025763A
JP2005025763A JP2004197092A JP2004197092A JP2005025763A JP 2005025763 A JP2005025763 A JP 2005025763A JP 2004197092 A JP2004197092 A JP 2004197092A JP 2004197092 A JP2004197092 A JP 2004197092A JP 2005025763 A JP2005025763 A JP 2005025763A
Authority
JP
Japan
Prior art keywords
document
division
document structure
information
sequence
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
Application number
JP2004197092A
Other languages
English (en)
Inventor
Yuri Ku
有利 瞿
Kokui Jiyo
国偉 徐
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JP2005025763A publication Critical patent/JP2005025763A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Document Processing Apparatus (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】構造化文書の構造及び繰り返しパターンが比較的複雑で、情報ブロックが完全には互いに整合していなくても、構造化文書中の情報ブロックの識別と分割とを正確に実行することを課題する。
【解決手段】構造化文書の分割装置は、構造化文書を受け取って、当該構造化文書の文書構造情報を当該構造化文書に基づいて生成する文書構造情報生成ユニット1と、文書構造情報生成ユニット1によって生成された文書構造情報に基づいて、情報ブロックの範囲を判定する情報ブロック範囲判定ユニット2と、文書構造情報生成ユニット1によって生成された文書構造情報と、情報ブロック範囲判定ユニット2によって判定された範囲とに基づいて、分割基準を生成する分割基準生成ユニット3と、この分割基準生成ユニット3によって生成された分割基準に基づいて、構造化文書を分割してその結果を出力する分割ユニット4とを備える。
【選択図】図1

Description

本発明は、構造化された文書に含まれる情報ブロックを自動的に分割するための分割プログラム、分割装置、及び分割方法に関する。
ネットワーク技術が急速に発達するにつれて、インターネットなどのネットワークからより多くの情報を得ることが可能となってきている。このように得た情報を効果的に利用するためには、情報の抽出、分類、あるいは、記憶といった各種の情報処理を行うことが必要である。
ここで、インターネット上などの情報は、ほとんどの場合には構造化文書という形態で示されるが、直接的にアクセス可能な文書は、所望される実際のコンテンツ情報を含んでいるだけではなく、文書構造を示す多くの情報を含んでいる。これら構造化文書中には、通常、形式又は形態が同一又は類似の単位が存在するが、これら単位はその各々が意味を持つ実体、すなわち、本発明で定義されるような情報ブロックである。
このような情報ブロックは、それぞれ意味を持つという点では互いに独立しているため、これら情報ブロックに対する処理を行う前には、これらの情報ブロックを、構造化文書中で識別して分割しておく必要がある。例えば、情報検索処理を行うためには、情報ブロック毎にインデックスを作成するなどの処理を行う前に、情報ブロックを構造化文書中で識別して分割しておく必要がある。
ここで、情報ブロックはその構造が互いに類似しているため、最初に、情報に対するラベル付けと情報の抽出とをある特定の情報ブロックに対して行い、次に、当該情報ブロックに類似する他の情報ブロックに対する情報抽出を行う。したがって、これらの情報ブロックを、構造化文書から識別して分割する技術が必要とされる。
なお、本明細書で言及される「構造化文書」とは、例えば、文書構造を示す情報を含むHTML(HyperText Markup Language)やXML(Extensible Markup Language)などの文書を指し、また、「情報ブロック」とは、他の情報ブロックから独立している情報単位(セル)を意味する。
例えば、自動車広告リストを含んだHTMLファイルの場合、この広告の各情報が情報ブロックである。あるいは、そのBBSフォーラム上には、通常、トピックリストがあり、各トピックが情報ブロックを構成している。又は、検索エンジンによる検索結果を示すページ上では、各検索結果が情報ブロックとなっている。
このような構造化文書の情報ブロックを自動的に識別して分割することは、情報を抽出して検索するためには非常に重要である。例えば、HTMLファイルにおいて、Webページ上の情報ブロックをどのように自動的に分割するかは、Webページの情報を抽出するために非常に重要である。
このように構造化文書から情報ブロックを識別して分割する方法は、その自動化の程度に応じて、具体的に次の三つのカテゴリに分割することが可能である。すなわち、手動識別分割方法と、半自動的識別分割方法(例えば、最初に、情報ブロックを観察してその中の分割タグを半自動的に識別し、次に、これらの分割タグを用いて分割を行うためのプログラムを記述する方法)と、自動的識別分割方法とである。
構造化文書の情報ブロックを自動的に識別して分割する方法として、従来から、D. W. Embley等は、HTML文書の中で情報ブロックを自動的に分割する方法を提案している(例えば、非特許文献1参照)。この方法では、最初に、HTMLファイルのタグに基づいてタグ解析ツリーを設定し、次に、情報ブロックを含んでいるサブツリーを判定し、最後に、自己学習アルゴリズムを用いて、情報ブロックの分割タグ候補中から分割タグを選択する。
また、構造化文書の情報ブロックを自動的に識別して分割する別の方法として、Chia-hui changは、以下のような方法を提案している(例えば、非特許文献2参照)。すなわち、HTML文書をキャラクタストリームとして受け取り、パトリシアツリー(PAT:Patricia tree)アルゴリズムを用いて繰り返しタグシーケンスを計算し、各繰り返しタグシーケンスの全てのサブツリーのコンテンツを情報ブロックとする。
D. W. Embley, Y. S. Jiang, 及び, Y. -K. Ng.、Web文書中における記録境界の認識(Record-boundary discovery in web documents)、SIGMOD'99, 1999年 C. H. Chang, 及び, S. C. Lui.、パターン発見に基づいた情報抽出(IEPAD: Information Extraction based on Pattern Discovery)、the Proceedings of the tenth International Conference on World Wide Web、第681頁から第688頁、2001年5月2日から6日、香港
しかしながら、上述のD. W. Embley等による方法では、情報ブロックのサブツリーの判定に際して、選択性タグ(例えば、「option」や「div」)を考慮していないため、このような選択性タグが存在する場合にはエラーになる可能性がある。さらに、分割タグが選択される際に、より深いレベルの情報が考慮されていないことも、エラーの原因になり得る。
また、上述のChia-hui changによる方法では、HTML文書の構造的特徴を考慮していないため、情報ブロックが互いに整合していないとエラーになる可能性がある。
このような問題を解決するために、本発明は、構造化文書中の選択性タグに対する処理を可能とし、深いレベルの情報と構造化文書の構造的特徴とを考慮して識別と分割を実行し、たとえ構造化文書の構造と繰り返しパターンとが比較的複雑で、また、情報ブロックが完全には互いに整合していなくても、構造化文書中の情報ブロックに対して正確な識別と分割を実行する、構造化文書の分割プログラム、分割方法及び分割装置を提供する。
本発明の目的を達成するために、請求項1に記載の構造化文書プログラムは、コンピュータを、前記構造化文書を受け取って、当該構造化文書の文書構造情報を当該構造化文書に基づいて生成する文書構造情報生成ユニット(1)と、前記文書構造情報生成ユニット(1)によって生成された前記文書構造情報に基づいて、前記情報ブロックの範囲を判定する情報ブロック範囲判定ユニット(2)と、前記文書構造情報生成ユニット(1)によって生成された前記文書構造情報と、前記情報ブロック範囲判定ユニット(2)によって判定された前記範囲とに基づいて、分割基準を生成する分割基準生成ユニット(3)と、前記分割基準生成ユニット(3)によって生成された前記分割基準に基づいて、前記構造化文書を分割してその結果を出力する分割ユニット(4)として機能させるためのプログラムである。
この請求項1の発明によれば、構造化文書の文書構造情報が当該構造化文書に基づいて生成され、この文書構造情報に基づいて、情報ブロックの範囲が判定される。そして、これら文書構造情報と範囲とに基づいて分割基準が生成され、この分割基準に基づいて構造化文書が分割されて、その結果が出力される。
また、請求項2に記載の構造化文書分割プログラムは、請求項1に記載の構造化文書分割プログラムにおいて、コンピュータを、文書構造情報生成手段として機能させた際に生成された前記文書構造情報は文書構造ツリーであり、幅優先アルゴリズムを用いて前記文書構造ツリーを探索することにより、最大の有効子ノードを有し、かつ、有効テキスト量と文書全体の有効テキスト量との比率が所定の閾値より大きいノードを発見し、前記ノードが対応する範囲が、全ての情報ブロックを含む最小の範囲であり、前記ノードをルートとするサブツリーが、全ての情報ブロックを含む最小のサブツリーであることを特徴とする。
この請求項2の発明によれば、有効子ノード番号及び有効テキスト量と文書全体の有効テキスト量との比率を用いて、全ての前記情報ブロックを含む最小のサブツリーのルートノードが判定される。
また、請求項3に記載の構造化文書分割プログラムは、請求項1又は2に記載の構造化文書分割プログラムにおいて、コンピュータを、前記文書構造情報生成手段として機能させた際に生成された前記文書構造情報は文書構造ツリーであり、前記分割基準生成手段は、前記情報ブロックが置かれているサブツリーのルートノードの子ノードと孫ノードとのタグシーケンスを利用して、最適繰り返しパターンを計算することを特徴とする。
この請求項3の発明によれば、情報ブロックが置かれているサブツリーのルートノードの子ノードに関する情報が利用されるだけではなく、サブツリーのルートノードの孫ノードに関するタグシーケンスが、最適繰り返しパターンの計算に利用される。
また、請求項4に記載の構造化文書分割プログラムは、請求項3に記載の構造化文書分割プログラムにおいて、前記分割基準生成手段は、最初に、前記ルートノードの子ノードのシーケンスへの第一の繰り返しパターンを計算し、次に、ルートノードの子ノードと孫ノードとのシーケンスへの第二の繰り返しパターンを計算し、最後に、最適繰り返しパターンを前記第一の繰り返しパターンと前記第二の繰り返しパターンとから選択することにより、最適繰り返しパターンを計算することを特徴とする。
この請求項4の発明によれば、ルートノードの子ノードのシーケンスへの第一の繰り返しパターンが計算され、さらに、ルートノードの子ノードと孫ノードとのシーケンスへの第二の繰り返しパターンが計算され、これら第一の繰り返しパターンと第二の繰り返しパターンとから最適繰り返しパターンが選択される。
また、請求項5に記載の分割装置は、構造化文書に含まれる情報ブロックを分割する分割装置であって、前記構造化文書を受け取って、当該構造化文書の文書構造情報を当該構造化文書に基づいて生成する文書構造情報生成ユニット(1)と、前記文書構造情報生成ユニット(1)によって生成された前記文書構造情報に基づいて、前記情報ブロックの範囲を判定する情報ブロック範囲判定ユニット(2)と、前記文書構造情報生成ユニット(1)によって生成された前記文書構造情報と、前記情報ブロック範囲判定ユニット(2)によって判定された前記範囲とに基づいて、分割基準を生成する分割基準生成ユニット(3)と、前記分割基準生成ユニット(3)によって生成された前記分割基準に基づいて、前記構造化文書を分割してその結果を出力する分割ユニット(4)とを備えることを特徴とする。
この請求項5の発明によれば、構造化文書の文書構造情報が当該構造化文書に基づいて生成され、この文書構造情報に基づいて、情報ブロックの範囲が判定される。そして、これら文書構造情報と範囲とに基づいて分割基準が生成され、この分割基準に基づいて構造化文書が分割されて、その結果が出力される。
また、請求項6に記載の分割方法は、構造化文書に含まれる情報ブロックを分割する分割方法であって、前記構造化文書を受け取って、当該構造化文書の文書構造情報を当該構造化文書に基づいて生成する文書構造情報生成工程と、前記文書構造情報生成工程において生成された前記文書構造情報に基づいて、前記情報ブロックの範囲を判定する情報ブロック範囲判定工程と、前記文書構造情報生成工程において生成された前記文書構造情報と、前記情報ブロック範囲判定工程において判定された前記範囲とに基づいて、分割基準を生成する分割基準生成工程と、前記分割基準生成工程において生成された前記分割基準に基づいて、前記構造化文書を分割してその結果を出力する分割工程とを含むことを特徴とする。
この請求項6の発明によれば、構造化文書の文書構造情報が当該構造化文書に基づいて生成され、この文書構造情報に基づいて、情報ブロックの範囲が判定される。そして、これら文書構造情報と範囲とに基づいて分割基準が生成され、この分割基準に基づいて構造化文書が分割されて、その結果が出力される。
また、請求項7に記載の分割方法は、請求項6に記載の構造化文書の分割方法において、文書構造情報生成工程において生成された前記文書構造情報は文書構造ツリーであり、幅優先アルゴリズムを用いて前記文書構造ツリーを探索することにより、最大の有効子ノードを有し、かつ、有効テキスト量と文書全体の有効テキスト量との比率が所定の閾値より大きいノードを発見し、前記ノードが対応する範囲が、全ての前記情報ブロックを含む最小の範囲であり、前記ノードをルートとするサブツリーが、全ての前記情報ブロックを含む最小のサブツリーであることを特徴とする。
この請求項7の発明によれば、有効子ノード番号及び有効テキスト量と文書全体の有効テキスト量との比率を用いて、全ての前記情報ブロックを含む最小のサブツリーのルートノードが判定される。
また、請求項8に記載の分割方法は、請求項6又は7に記載の構造化文書の分割方法において、前記文書構造情報生成工程において生成された前記文書構造情報は文書構造ツリーであり、前記分割基準生成工程において、前記情報ブロックが置かれているサブツリーのルートノードの子ノードと孫ノードとのタグシーケンスを利用して最適繰り返しパターンを計算することを特徴とする。
この請求項8の発明によれば、情報ブロックが置かれているサブツリーのルートノードの子ノードに関する情報が利用されるだけではなく、サブツリーのルートノードの孫ノードに関するタグシーケンスが、最適繰り返しパターンの計算に利用される。
また、請求項9に記載の分割方法は、請求項8に記載の構造化文書の分割方法において、前記分割基準生成工程において、最初に、前記ルートノードの子ノードのシーケンスへの第一の繰り返しパターンを計算し、次に、ルートノードの子ノードと孫ノードとのシーケンスへの第二の繰り返しパターンを計算し、最後に、最適繰り返しパターンを前記第一の繰り返しパターンと前記第二の繰り返しパターンとから選択することにより、最適繰り返しパターンを計算することを特徴とする。
この請求項9の発明によれば、ルートノードの子ノードのシーケンスへの第一の繰り返しパターンが計算され、さらに、ルートノードの子ノードと孫ノードとのシーケンスへの第二の繰り返しパターンが計算され、これら第一の繰り返しパターンと第二の繰り返しパターンとから最適繰り返しパターンが選択される。
また、請求項10に記載の分割方法は、請求項9に記載の構造化文書の分割方法において、前記分割基準生成工程において、オリジナルのタグシーケンスの第一の繰り返しシーケンスを計算し、前記第一の繰り返しシーケンスに基づいて、当該第一の繰り返しシーケンスの指定された記号をタグシーケンスに代入して、オリジナルのタグシーケンスの修正済みシーケンスを取得し、前記修正済みシーケンスの第二の繰り返しシーケンスを計算し、さらに、前記第二の繰り返しシーケンスが前記第一の繰り返しシーケンスを含むかどうかに基づいて、最終的な繰り返しパターンを判定することにより、前記第一の繰り返しパターンと前記第二の繰り返しパターンとから少なくともひとつの前記分割基準を計算することを特徴とする。
この請求項10の発明によれば、オリジナルのタグシーケンスの第一の繰り返しシーケンスが計算され、この第一の繰り返しシーケンスに基づいて修正済みシーケンスが取得される。そして、修正済みシーケンスの第二の繰り返しシーケンスを計算し、さらに、この第二の繰り返しシーケンスが第一の繰り返しシーケンスを含むかどうかに基づいて、最終的な繰り返しパターンが判定される。
このような本発明によれば、構造化文書中の選択性タグに対する処理を可能とし、深いレベルの情報と構造化文書の構造的特徴とを考慮して識別と分割を実行し、たとえ構造化文書の構造と繰り返しパターンとが比較的複雑で、また、情報ブロックが完全には互いに整合していなくても、構造化文書中の情報ブロックに対して正確な識別と分割を実行する。したがって、構造化文書の情報ブロックを正しく自動的に分割することが可能となる。
また、本発明によれば、有効子ノード番号及び有効テキスト量と文書全体の有効テキスト量との比率を用いて、全ての前記情報ブロックを含む最小のサブツリーのルートノードを判定すると、ある特定のノードと特定のテキストとによってもたらされた全ての情報ブロックを含む最小のサブツリーのルートノードの判定に対する影響を排除することが可能となり、また、幅優先アルゴリズムを用いて上記文書構造を探索すると、文書構造ツリーのルートノードの近傍にあるノードを優先的に考慮することが可能となる。
また、本発明によれば、情報ブロックが置かれているサブツリーのルートノードの子ノードに関する情報が利用されるだけではなく、サブツリーのルートノードの孫ノードに関するタグシーケンスも利用され、これによって、情報ブロックが置かれているサブツリーのルートノードの子ノードのタグシーケンスだけでは解決できない問題に対処することが可能となる。
また、本発明によれば、ルートノードの子ノードのシーケンスへの第一の繰り返しパターンが計算され、さらに、ルートノードの子ノードと孫ノードとのシーケンスへの第二の繰り返しパターンが計算され、これら第一の繰り返しパターンと第二の繰り返しパターンとから最適繰り返しパターンが選択される。すなわち、子ノードに関する情報が利用されるだけではなく、孫ノードに関するタグシーケンスも利用され、これによって、情報ブロックが置かれているサブツリーのルートノードの子ノードのタグシーケンスだけでは解決できない問題に対処することが可能となる。
また、本発明によれば、オリジナルのタグシーケンスの第一の繰り返しシーケンスが計算され、この第一の繰り返しシーケンスに基づいて修正済みシーケンスが取得される。そして、修正済みシーケンスの第二の繰り返しシーケンスを計算し、さらに、この第二の繰り返しシーケンスが第一の繰り返しシーケンスを含むかどうかに基づいて、最終的な繰り返しパターンが判定される。したがって、これら第一の繰り返しパターンと第二の繰り返しパターンとを用いて、最適繰り返しパターンを容易に選択することができる。
以下に、本発明の最良の実施形態を、図面を参照して詳細に説明する。図1は、本実施の形態にかかる分割装置の構成を概念的に例示する図である。この図1に示すように分割装置は、文書構造情報生成ユニット1と、情報ブロック範囲判定ユニット2と、分割基準生成ユニット3と、分割ユニット4との四つのユニットを備えて構成されている。以下に、これら四つのユニットを詳細に説明する。
(文書構造情報生成ユニット1)
文書構造情報生成ユニット1は、特許請求の範囲における文書構造情報生成手段に対応するもので、最初に、構造化文書を受け取り、上記文書のタグ情報を利用することによって、文書構造情報を作成する。この文書構造情報は、構造化文書の内容と構造、すなわち、文書を構成する各要素(エレメント名、エレメントコンテンツ、及び、エレメントに含まれる属性)と、これら要素間の構成関係とを反映している。
例えば、HTMLファイルを受取った場合、このHTMLファイル中において、タグ(HTML,tr,td等)が、HTMLの定義にしたがってテキストに結合されている。このタグには「<」および「>」が含まれ、また、タグ名は「<」および「>」の間に示される。このようなタグは通常は一対になっており、その一方は開始タグであり、他方は終了タグである。ここで、終了タグは「/」で開始するが、開始タグは「/」では開始しない。なお、タグは単独でも使用され得る。
このようなHTMLファイル中における特定のタグは、離散的な領域を区画する。上記離散的な領域の始めが開始タグの開始位置であり、上記離散的な領域の終わりが、開始タグに対応する終了タグの位置である。上記離散的な領域は、特定のタグによって、さらに小さい領域に分割される。これらのタグは、互いに入り子になって入り子構造を形成する。これらの情報に基づいて、上記文書の構造情報を記述するために、上記HTMLファイルの文書構造ツリーが作成される。
(情報ブロック範囲判定ユニット2)
次に、情報ブロック範囲判定ユニット2は、特許請求の範囲における情報ブロック範囲判定手段に対応するもので、文書構造情報生成ユニット1によって生成された文書構造情報に基づいて、全ての情報ブロックを含む最小の範囲を算出する。ここで、文書構造情報は文書構造グラフを用いて示されるものとすると、情報ブロック範囲判定ユニット2は、全ての情報ブロックを含む最小のサブグラフを決定する。
例えば、HTMLファイルを例にとって説明すると、HTMLファイルを最初に受け取って、文書構造ツリーを用いて文書構造情報が示される。ここで、対応する領域のタグ名は、文書構造ツリーのノード名である。
いわゆる有効子ノード番号とは次のことを意味する。子ノードに「FORM」という名称を持つノードが存在しない場合、有効子ノード番号は、有効テキスト量が0であるような子ノード番号であり、子ノードに「FORM」という名称を持つノードが存在する場合、有効子ノード番号は、「FORM」という名称を持つ二つの連続したノード間で、有効テキスト量が0でない子モード番号の内の最大の番号である。
ノードの有効テキスト量は、その全ての子ノードの有効テキスト文章の総和であり、上記ノードがテキストノードであれば、上記ノードの有効テキスト量は、このノードのテキストの長さであり、上記ノードが「option」であれば、上記ノードの有効テキスト量は0であり、上記ノードが「div」であれば、上記ノードの有効テキスト量は0である。
幅優先アルゴリズムを採用して上記文書構造ツリーを探索することにより、最大の有効子ノードを有するノードであって、その有効テキスト量と文書全体の有効テキスト量との比率が所定の閾値、例えば、40パーセントより大きいノードを見つける。上記ノードをルートノードとするサブツリーは、全ての情報ブロックを含む最小のサブツリーである。上記ノードが対応する範囲は、全ての情報ブロックを含む最小の範囲である。
(分割基準生成ユニット3)
分割基準生成ユニット3は、特許請求の範囲における分割基準生成手段に対応するものである。ここでは、情報ブロックを含むサブツリーのルートノードAの子ノードの順序が、A1,A2,A3,...,Anであるとする。分割タスクにおいては、これらの子ノードをその順序に応じていくつかのグループに分割し、各グループをその他のグループと類似のものにする。各グループの子ノードシーケンスに対応する領域が、分割される情報ブロックである。
分割基準生成ユニット3は、これらの子ノードをグループ化するためのルール、すなわち、分割基準を計算して、この基準を、分割ユニット4が使用可能になるように記憶するために出力する。
この分割基準生成ユニット3における主たる処理は以下の通りである。
工程1:特殊な分割タグを用いて分割を実行することが可能であるか判断し、可能であれば、上記特殊な分割タグを返して、この処理は終了する。
工程2:ノードAの子ノードシーケンスに対して、繰り返しパターン1を計算する。
工程3:ノードAの子ノードシーケンスと孫ノードシーケンスと対して、繰り返しパターン2を計算する。
工程4:繰り返しパターン1と繰り返しパターン2中の評価関数を利用して、最適繰り返しパターンを選択する。この最適繰り返しパターンが分割基準になる。
上記の処理の工程2及び工程3において、PATなどの従来技術によるアルゴリズムを用いたり、後述する二次PATアルゴリズム方法を用いることで、繰り返しパターンを計算することが可能である。工程4では、評価関数としてカバレージ度を用いることができる。ここで、あるシーケンスに対するあるパターンのカバレージ度とは、上記シーケンス中の上記パターンと一致するエレメント集合体の全体分量と上記シーケンスの分量との比率を意味する。このカバレージ度に基づいて、最適繰り返しパターンを計算して選択することが可能である。
以下、このカバレージ度の概念と計算方法とを詳細に説明する。
ここでは、キャラクタストリングをX、パターンをY、パターンYに対するXのk個の分割ポイントがp1,p2,p3,...,pkの順序で存在し、str(pi)(0≦i≦k)は、X中のpiから始まるパターンYと一致するサブストリングであり、length(str(pi))はstr(pi)の長さであるとする。カバレージ度、すなわち、scoreは次式で計算される。
Figure 2005025763
ここで、scoreの値が大きいほど、Xへの全てのstr(pi)(0≦i≦k)のカバレージ度が高くなり、パターンはより良好となる。最適パターンは、カバレージ度が最大のパターンである。
以下に、二次PAT(パトリシアツリー)方法を説明する。二次PAT方法は、タグシーケンスを受け取って、計算後にタグシーケンスの最適繰り返しパターンを得るものである。例えば、タグシーケンスが「B,I,A,B,I,A,B,I,A,B,I,A,」である場合、最適繰り返しパターンは、「B,I,A,」になる。また、例えば、タグシーケンスが「A,c,d,B,A,c,d,c,d,c,d,B,」であるとすると、最適繰り返しパターンは、「A,(c,d,)*B,」になる。以後、(X)*は、シーケンスX(s)をN(Nはゼロ又は正の整数)だけ含むストリングを示すものとする。
具体的には、次のような手順が取られる。
受け取られたタグシーケンスはNであると仮定する、
工程1:N中の繰り返しシーケンスを計算する。例えば、Nは「A,c,d,B,A,c,d,c,d,c,d,B,」であり、繰り返しシーケンスは「c,d,」である。
工程2:タグシーケンスNを、Nの繰り返しシーケンスにしたがって修正する。この修正は、N中に出現する繰り返しシーケンス又は複数の繰り返しシーケンスを、Xのような特定の指定された文字と交換するものである。したがって、上記例でのNは「A,X,B,A,X,B,」と修正される。
工程3:修正されたシーケンスNの繰り返しシーケンスを計算する。この例における修正されたシーケンスNの繰り返しシーケンスは「A,X,B,」である。
工程4:修正された繰り返しシーケンスNの上記繰り返しシーケンスがXを含んでいる場合には、繰り返しシーケンス中のXを(X)*と交換する。これにより、交換された繰り返しシーケンスが最適パターンになる。一方、修正された繰り返しシーケンスNの繰り返しシーケンスがXを含まない場合、繰り返しシーケンスNの繰り返しシーケンスが、Nの最適パターンとなる。
上述したように、分割基準生成ユニット3は、情報ブロックが置かれているサブツリーのルートノードの子ノードに関する情報を利用するだけではなく、サブツリーのルートノードの孫ノードに関するタグシーケンス情報をも用いるので、情報ブロックが置かれているサブツリーのルートノードの子ノードのタグシーケンスだけでは解決できない問題に対処することが可能となる。詳細については実施例2を参照されたい。
(分割ユニット4)
次に、分割ユニット4は、特許請求の範囲における分割手段に対応するものである。ここで、情報ブロックを含むサブツリーのルートノードAの子ノードがA1,A2,A3,...,Anの順序で存在するものとする。分割基準に基づいて、分割ユニット4はこれらの子ノードシーケンスをその順序に応じていくつかのグループに分類する。各グループ中のノードによって示される領域の組み合わせが、分割された情報ブロックである。
以下に、3つの実施例をあげて、本分割装置の処理を説明する。
図2から5を参照して、本発明にかかる構造化文書を識別して分割する分割装置について説明する。ここでは、分割装置をHTMLファイルの識別及び分割に適用した場合について説明する。図2は、実施例1で分割対象とするHTMLファイルを示す図、図3は、図2のHTMLファイルのソースファイルを示す図、図4は、図2のHTMLファイルの構造ツリーを示す図である。
最初に、文書構造情報生成ユニット1は、上記ファイルを解析して、図4に示すような構造グラフを得る。ここでは、この構造グラフは、具体的には構造ツリーである。
次に、情報ブロック範囲判定ユニット2は、上記構造ツリーを分析して、各ノードの有効子ノード番号と有効テキスト量を計算する。そして、幅優先アルゴリズムを用いてルートノードから順に構造ツリーの走査を行い、有効テキスト量が上記HTMLファイルの全有効テキスト量の所定の閾値、例えば40%より大きく、また、最大の有効子ノード番号を有するノードSを見つける。図4に示すように、Sの全てのノードが有効子ノードであり、合計11個である。Sをルートとするサブツリーは、情報ブロックを含む最小のサブツリーである。
更に、分割基準生成ユニット3は、ルートノードSの子ノードシーケンスを計算し、それが複数の特殊タグ「HR」を有するかを判断して、有していれば、「HR」は分割基準であるとする。
分割ユニット4は、分割基準にしたがって次のように分割する。ルートノードSの子ノードシーケンスは「p,br,hr,p,hr,p,hr,p,hr,p,hr,p,hr」であるので、六個のグループ、すなわち「p,br,hr」と、「p,hr」と、「p,hr」と、「p,hr」と、「p,hr」と、「p,hr」とに分割され、各グループがある領域、すなわち、情報ブロックに対応している。このように識別され分割された情報ブロックを図5に示す。
次に、図6から10を参照して、本発明にかかる分割装置の実施例2を説明する。ここでは、分割装置をHTMLファイルの識別と分割とに適用した場合について説明する。図6は、実施例2で分割対象とするHTMLファイルを示す図、図7は、図6のHTMLファイルのソースファイルを示す図、図8は、図6のHTMLファイルの構造ツリーを示す図である。
最初に、文書構造情報生成ユニット1は、上記ファイルを解析して、図8に示すような構造グラフを得る。ここで、構造グラフは、具体的には構造ツリーである。
次に、情報ブロック範囲判定ユニット2は、上記構造ツリーを分析し、各ノードの有効子ノード番号と有効テキスト量を計算する。そして、幅優先アルゴリズムを用いてルートノードから順に構造ツリーを走査して、有効テキスト量が上記HTMLファイルの全有効テキスト量の所定の閾値、例えば、40%より大きく、また、最大の有効子ノード番号を有するノードSを発見する。図8に示すように、Sの全てのノードが有効子ノードであり、合計10個である。Sをルートするサブツリーは、情報ブロックを含む最小のサブツリーである。ここでは、有効テキスト量という概念を採用しているので、ノード「option」中のテキスト量は無視する。
ここで、上述した非特許文献2において提案されている方法を採用した場合には、ノード「select」が最大の子ノードとなり、合計12個となり、サブツリー「select」上のテキスト量と文書全体のテキスト量の比率は40%を超えるため、「select」をルートとするサブツリーが、情報ブロックを含む最小のサブツリーであると判定される。しかしながら、図7に示すように、ノード「select」に対応する領域はなんら情報ブロックを含んでいない。
次に、分割基準生成ユニット3は、情報ブロック「tr,tr,tr,tr,tr,tr,tr,tr,tr」を含む最小のサブツリーのルートノードSの子ノードシーケンスを計算して、二次PATアルゴリズムを呼び出す。そして、分割基準生成ユニット3は、第一の繰り返しパターンが「tr」であり、第一の繰り返しパターンのカバレージ度が1であり、情報ブロックを含む最小のサブツリーのルートノードSの子と孫のノードシーケンスが「tr_td,tr_td_td,tr_td,tr_td_td,tr_td,tr_td_td,tr_td,tr_td_td,tr_td,tr_td_td,」であるものと判断する。また、分割基準生成ユニット3は、二次PATアルゴリズムを呼び出すことによって、第二の繰り返しパターンが「tr_td,tr_td_td,」であり、第二の繰り返しパターンのカバレージ度が1であるものと判断する。そして、第一と第二の繰り返しパターンのカバレージ度の大きさを比較することによって、第一の繰り返しパターンのカバレージ度が第二の繰り返しパターンのカバレージ度と同じ又はそれ以下であることから、第二の繰り返しパターンが最適パターンであるものと判断する。この最適パターンが分割基準になる。
この例において、情報ブロックを含む最小のサブツリーのルートノードSの子ノードに加えて、その子ノードの情報も用いているが、上述した非特許文献1の方法の場合のように、子ノード情報のみを用いた場合、「tr,tr,tr,tr,tr,tr,tr,tr,tr,」という子ノードシーケンス中の「tr」が最適パターンとなり、この最適パターンを用いて分割を実行して、一つの情報ブロックであったはずの部分を二つの部分に分割するため、図9に示すような誤った分割結果となる。
しかしながら、本発明によれば、分割基準生成ユニット3は上記のような分割基準を用いて分割を実行するため、ルートノードSの子と孫のノードシーケンス「tr_td,tr_td_td,tr_td,tr_td_td,tr_td,tr_td_td,tr_td,tr_td_td,tr_td,tr_td_td,」は、五つのグループ「tr_td,tr_td_td」、「tr_td,tr_td_td」、「tr_td,tr_td_td」、「tr_td,tr_td_td」、「tr_td,tr_td_td」に分割され、各グループがある領域、すなわち、情報ブロックに対応する。このように識別され分割された情報ブロックを図10に示す。
次に、図11から14を参照して、本発明にかかる分割装置の実施例3を説明する。ここでは、分割装置をHTMLファイルの識別と分割とに適用した場合について説明する。図11は、実施例3で分割対象とするHTMLファイルを示す図、図12は、図11のHTMLファイルのソースファイルを示す図、図13は、図11のHTMLファイルの構造ツリーを示す図である。
最初に、文書構造情報生成ユニット1は、上記ファイルを解析して、図11に示すような構造グラフを得る。ここで、構造グラフは、具体的には構造ツリーである。
次に、情報ブロック範囲判定ユニット2は、上記構造ツリーを分析し、各ノードの有効子ノード番号と有効テキスト量を計算する。そして、幅優先アルゴリズムを用いてルートノードから順に構造ツリーを走査し、有効テキスト量が上記HTMLファイルの全有効テキスト量の所定の閾値、例えば40%より大きく、また、最大の有効子ノード番号を有するノードSを発見する。図13に示すように、Sの全てのノードが有効子ノードであり、合計12個である。Sをルートとするサブツリーは、情報ブロックを含む最小のサブツリーである。
次に、分割基準生成ユニット3は、情報ブロック「b,b,p,p,p,b,p,p,p,b,p,p,」を含む最小のサブツリーのルートノードSの子ノードシーケンスを計算して、二次PAT方法を利用することによって、第一の繰り返しパターンが「b(p)*」であり、第一の繰り返しパターンのカバレージ度が11/12であり、ノードSの子と孫のノードシーケンスが「b_p,b_p,p_text,p_text,p_text,b_p,p_text,p_text,p_text,b_p,p_text,p_text,」であるものと判断する。また、二次PAT方法を利用することによって、第二の繰り返しパターンが「b_p,(p_text,)*」であり、第二の繰り返しパターンのカバレージ度が11/12であるものと判断する。そして、第一の繰り返しパターンのカバレージ度と第二の繰り返しパターンのカバレージ度との大きさを比較することによって、第一の繰り返しパターンのカバレージ度が第二の繰り返しパターンのカバレージ度と同じ又はそれ以下であり、第二の繰り返しパターンが最適パターン、すなわち、分割基準であるものと判断する。
このユニット中では、繰り返しパターンを計算する際に二次PAT方法を用いると、正確な繰り返しパターンを引き出すことが可能であり、例えば、シーケンス「b,b,p,p,p,b,p,p,p,b,p,p,」の繰り返しパターンの計算において、最初に、シーケンス「b,b,p,p,p,b,p,p,p,b,p,p」の繰り返しパターンが「p」であることを計算して導出し、次に、指定された文字Mを用いて上記シーケンスを「b,b,M,b,M,b,M,」に修正し、更に、修正された繰り返しパターンが「b,M」であることを導出して、修正された繰り返しシーケンス「b,M,」が「M」を含むことから、次に繰り返しパターンが「b,(P)*」であることを導出する。
そして、分割基準生成ユニット3は、この分割基準を用いて分割を実行し、これによって、ルートノードSの子と孫のノードシーケンス「b_p,b_p,p_text,p_text,p_text,b_p,p_text,p_text,p_text,b_p,p_text,p_text,」が三つのグループ「b_p,b_p,p_text,p_text,p_text」、「b_p,p_text,p_text,p_text」、「b_p,p_text,p_text」とに分割され、各グループがある領域、すなわち、情報ブロックに対応する。このように識別され分割された情報ブロックを図14に示す。
この実施例3に上述の非特許文献2の方法を採用すると、上記方法は文書構造を考慮していないため、文書シーケンス全体が図13のツリーグラフの通りがけ順(inorder)のシーケンスとなり、また、この通りがけ順のシーケンス中で繰り返しシーケンスが発見されると、最大の繰り返し度を持つタグシーケンスは「P」であり、これをHTMLファイル全体の分割タグとして用いると、正しい分割結果を得ることができないことは明らかである。
このように本発明にかかる分割装置は、構造化文書中の選択性タグに対する処理を可能とし、深いレベルの情報と構造化文書の構造的特徴とを考慮して識別と分割を実行し、たとえ構造化文書の構造と繰り返しパターンとが比較的複雑で、また、情報ブロックが完全には互いに整合していなくても、構造化文書中の情報ブロックに対して正確な識別と分割を実行する。したがって、構造化文書の情報ブロックを正しく自動的に分割することが可能となる。
本発明の具体的な構成及び方法は、実施の形態や各実施例に示したものに限定されず、特許請求の範囲に記載した各発明の技術的思想の範囲内において、任意に改変及び改良することができる。例えば、本発明による分割装置は、図1に示したような四つのユニットを備えるものに限定されず、これら四つのユニットを命令に応じてランダムに組み合わせて、一〜三つのユニットとしたり、又は、五つ以上のユニットに特殊化することもできる。同様に、本発明による方法は、四つの工程には制限されず、これもまた、命令に応じてランダムに組み合わせて二つもしくは三つの工程荷してもよく、あるいは、五つ以上の工程に細分化することができる。加えて、本発明による構造化文書は、HTMLファイルに限られず、XML、XHTML、及び、構造的特徴を持つ他の文書にも同様に適用できる。
また、上記の説明中、自動的に行われるものとして説明した処理の全部又は任意の一部を手動で行っても良い。また、本装置の各機能ブロックは、実際には、CPU及びこのCPUにて読み出され実行されるコンピュータプログラム(特許請求の範囲における構造化文書分割プログラムに対応する)として構成することができ、あるいは、ハードワイヤードロジックにて構成することができる。また、プログラムは、ハードディスク、フレキシブルディスク(FD)、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。また、プログラムは、インターネットなどのネットワークを介して配布することができる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
(付記1)構造化文書に含まれる情報ブロックを分割する分割装置であって、
前記構造化文書を受け取って、当該構造化文書の文書構造情報を当該構造化文書に基づいて生成する文書構造情報生成手段と、
前記文書構造情報生成手段によって生成された前記文書構造情報に基づいて、前記情報ブロックの範囲を判定する情報ブロック範囲判定手段と、
前記文書構造情報生成手段によって生成された前記文書構造情報と、前記情報ブロック範囲判定手段によって判定された前記範囲とに基づいて、分割基準を生成する分割基準生成手段と、
前記分割基準生成手段によって生成された前記分割基準に基づいて、前記構造化文書を分割してその結果を出力する分割手段と、
を備えることを特徴とする構造化文書の分割装置。
(付記2)文書構造情報生成手段によって生成された前記文書構造情報は文書構造ツリーであり、
幅優先アルゴリズムを用いて前記文書構造ツリーを探索することにより、最大の有効子ノードを有し、かつ、有効テキスト量と文書全体の有効テキスト量との比率が所定の閾値より大きいノードを発見し、
前記ノードが対応する範囲が、全ての情報ブロックを含む最小の範囲であり、前記ノードをルートとするサブツリーが、全ての情報ブロックを含む最小のサブツリーであること、
を特徴とする付記1に記載の構造化文書の分割装置。
(付記3)前記文書構造情報生成手段によって生成された前記文書構造情報は文書構造ツリーであり、
前記分割基準生成手段は、前記情報ブロックが置かれているサブツリーのルートノードの子ノードと孫ノードとのタグシーケンスを利用して、最適繰り返しパターンを計算すること、
を特徴とする付記1又は2に記載の構造化文書の分割装置。
(付記4)前記分割基準生成手段は、最初に、前記ルートノードの子ノードのシーケンスへの第一の繰り返しパターンを計算し、次に、ルートノードの子ノードと孫ノードとのシーケンスへの第二の繰り返しパターンを計算し、最後に、最適繰り返しパターンを前記第一の繰り返しパターンと前記第二の繰り返しパターンとから選択することにより、最適繰り返しパターンを計算すること、
を特徴とする付記3に記載の構造化文書の分割装置。
(付記5)前記分割基準生成手段は、
オリジナルのタグシーケンスの第一の繰り返しシーケンスを計算し、
前記第一の繰り返しシーケンスに基づいて、当該第一の繰り返しシーケンスの指定された記号をタグシーケンスに代入して、オリジナルのタグシーケンスの修正済みシーケンスを取得し、
前記修正済みシーケンスの第二の繰り返しシーケンスを計算し、さらに、
前記第二の繰り返しシーケンスが前記第一の繰り返しシーケンスを含むかどうかに基づいて、最終的な繰り返しパターンを判定することにより、
前記第一の繰り返しパターンと前記第二の繰り返しパターンとから少なくともひとつの前記分割基準を計算すること、
を特徴とする付記4に記載の構造化文書の分割装置。
(付記6)前記分割基準生成手段は、カバレージ度を用いることにより、繰り返しパターンを計算し、最適繰り返しパターンを選択すること、
を特徴とする付記3に記載の構造化文書の分割装置。
(付記7)前記構造化文書がHTML、XML、又は、XHTMLであること、
を特徴とする付記1から6のいずれか一項に記載の構造化文書の分割装置。
(付記8)構造化文書に含まれる情報ブロックを分割する分割方法であって、
前記構造化文書を受け取って、当該構造化文書の文書構造情報を当該構造化文書に基づいて生成する文書構造情報生成工程と、
前記文書構造情報生成工程において生成された前記文書構造情報に基づいて、前記情報ブロックの範囲を判定する情報ブロック範囲判定工程と、
前記文書構造情報生成工程において生成された前記文書構造情報と、前記情報ブロック範囲判定工程において判定された前記範囲とに基づいて、分割基準を生成する分割基準生成工程と、
前記分割基準生成工程において生成された前記分割基準に基づいて、前記構造化文書を分割してその結果を出力する分割工程と、
を含むことを特徴とする構造化文書の分割方法。
(付記9)文書構造情報生成工程において生成された前記文書構造情報は文書構造ツリーであり、
幅優先アルゴリズムを用いて前記文書構造ツリーを探索することにより、最大の有効子ノードを有し、かつ、有効テキスト量と文書全体の有効テキスト量との比率が所定の閾値より大きいノードを発見し、
前記ノードが対応する範囲が、全ての前記情報ブロックを含む最小の範囲であり、前記ノードをルートとするサブツリーが、全ての前記情報ブロックを含む最小のサブツリーであること、
を特徴とする付記8に記載の構造化文書の分割方法。
(付記10)前記文書構造情報生成工程において生成された前記文書構造情報は文書構造ツリーであり、
前記分割基準生成工程において、前記情報ブロックが置かれているサブツリーのルートノードの子ノードと孫ノードとのタグシーケンスを利用して最適繰り返しパターンを計算すること、
を特徴とする付記8又は9に記載の構造化文書の分割方法。
(付記11)前記分割基準生成工程において、最初に、前記ルートノードの子ノードのシーケンスへの第一の繰り返しパターンを計算し、次に、ルートノードの子ノードと孫ノードとのシーケンスへの第二の繰り返しパターンを計算し、最後に、最適繰り返しパターンを前記第一の繰り返しパターンと前記第二の繰り返しパターンとから選択することにより、最適繰り返しパターンを計算すること、
を特徴とする付記10に記載の構造化文書の分割方法。
(付記12)前記分割基準生成工程において、
オリジナルのタグシーケンスの第一の繰り返しシーケンスを計算し、
前記第一の繰り返しシーケンスに基づいて、当該第一の繰り返しシーケンスの指定された記号をタグシーケンスに代入して、オリジナルのタグシーケンスの修正済みシーケンスを取得し、
前記修正済みシーケンスの第二の繰り返しシーケンスを計算し、さらに、
前記第二の繰り返しシーケンスが前記第一の繰り返しシーケンスを含むかどうかに基づいて、最終的な繰り返しパターンを判定することにより、
前記第一の繰り返しパターンと前記第二の繰り返しパターンとから少なくともひとつの前記分割基準を計算すること、
を特徴とする付記11に記載の構造化文書の分割方法。
(付記13)前記分割基準生成工程において、カバレージ度を用いることにより、繰り返しパターンを計算し、最適繰り返しパターンを選択すること、
を特徴とする付記10に記載の構造化文書の分割方法。
(付記14)前記構造化文書がHTML、XML、又は、XHTMLであること、
を特徴とする付記8から13のいずれか一項に記載の構造化文書の分割方法。
(付記15)コンピュータを、
前記構造化文書を受け取って、当該構造化文書の文書構造情報を当該構造化文書に基づいて生成する文書構造情報生成手段と、
前記文書構造情報生成手段によって生成された前記文書構造情報に基づいて、前記情報ブロックの範囲を判定する情報ブロック範囲判定手段と、
前記文書構造情報生成手段によって生成された前記文書構造情報と、前記情報ブロック範囲判定手段によって判定された前記範囲とに基づいて、分割基準を生成する分割基準生成手段と、
前記分割基準生成手段によって生成された前記分割基準に基づいて、前記構造化文書を分割してその結果を出力する分割手段と、
として機能させるための構造化文書分割プログラム。
(付記16)前記コンピュータを、前記文書構造情報生成手段として機能させた際に生成された前記文書構造情報は文書構造ツリーであり、
幅優先アルゴリズムを用いて前記文書構造ツリーを探索することにより、最大の有効子ノードを有し、かつ、有効テキスト量と文書全体の有効テキスト量との比率が所定の閾値より大きいノードを発見し、
前記ノードが対応する範囲が、全ての情報ブロックを含む最小の範囲であり、前記ノードをルートとするサブツリーが、全ての情報ブロックを含む最小のサブツリーであること、
を特徴とする付記15に記載の構造化文書分割プログラム。
(付記17)前記コンピュータを、前記文書構造情報生成手段として機能させた際に生成された前記文書構造情報は文書構造ツリーであり、
前記分割基準生成手段は、前記情報ブロックが置かれているサブツリーのルートノードの子ノードと孫ノードとのタグシーケンスを利用して、最適繰り返しパターンを計算すること、
を特徴とする付記15又は付記16に記載の構造化文書分割プログラム。
(付記18)前記分割基準生成手段は、最初に、前記ルートノードの子ノードのシーケンスへの第一の繰り返しパターンを計算し、次に、ルートノードの子ノードと孫ノードとのシーケンスへの第二の繰り返しパターンを計算し、最後に、最適繰り返しパターンを前記第一の繰り返しパターンと前記第二の繰り返しパターンとから選択することにより、最適繰り返しパターンを計算すること、
を特徴とする付記17に記載の構造化文書分割プログラム。
以上のように、本発明にかかる構造化文章の分割プログラム、分割装置及び分割方法は、構造的に記述された文章における情報ブロックを自動的に分割することに有用であり、特に、構造と繰り返しパターンとが比較的複雑で、また、情報ブロックが完全には互いに整合していない構造化文書の情報ブロックを分割することに適用できる。
本実施の形態にかかる分割装置の構成を概念的に例示する図である。 実施例1で分割対象とするHTMLファイルを示す図である。 実施例1のHTMLファイルのソースファイルを示す図である。 実施例1のHTMLファイルの構造情報を示す図である。 実施例1のHTMLファイルの分割結果を示す図である。 実施例2で分割対象とするHTMLファイルを示す図である。 実施例2のHTMLファイルのソースファイルを示す図である。 実施例2のHTMLファイルの構造情報を示す図である。 従来技術によるHTMLファイルの分割結果を示す図である。 実施例2のHTMLファイルの分割結果を示す図である。 実施例3で分割対象とするHTMLファイルを示す図である。 実施例3のHTMLファイルのソースファイルを示す図である。 実施例3のHTMLファイルの構造情報を示す図である。 実施例3のHTMLファイルの分割結果を示す図である。
符号の説明
1 文書構造情報生成ユニット
2 情報ブロック範囲判定ユニット
3 分割基準生成ユニット
4 分割ユニット

Claims (10)

  1. コンピュータを、
    前記構造化文書を受け取って、当該構造化文書の文書構造情報を当該構造化文書に基づいて生成する文書構造情報生成手段と、
    前記文書構造情報生成手段によって生成された前記文書構造情報に基づいて、前記情報ブロックの範囲を判定する情報ブロック範囲判定手段と、
    前記文書構造情報生成手段によって生成された前記文書構造情報と、前記情報ブロック範囲判定手段によって判定された前記範囲とに基づいて、分割基準を生成する分割基準生成手段と、
    前記分割基準生成手段によって生成された前記分割基準に基づいて、前記構造化文書を分割してその結果を出力する分割手段と、
    として機能させるための構造化文書分割プログラム。
  2. 前記コンピュータを、前記文書構造情報生成手段として機能させた際に生成された前記文書構造情報は文書構造ツリーであり、
    幅優先アルゴリズムを用いて前記文書構造ツリーを探索することにより、最大の有効子ノードを有し、かつ、有効テキスト量と文書全体の有効テキスト量との比率が所定の閾値より大きいノードを発見し、
    前記ノードが対応する範囲が、全ての情報ブロックを含む最小の範囲であり、前記ノードをルートとするサブツリーが、全ての情報ブロックを含む最小のサブツリーであること、
    を特徴とする請求項1に記載の構造化文書分割プログラム。
  3. 前記コンピュータを、前記文書構造情報生成手段として機能させた際に生成された前記文書構造情報は文書構造ツリーであり、
    前記分割基準生成手段は、前記情報ブロックが置かれているサブツリーのルートノードの子ノードと孫ノードとのタグシーケンスを利用して、最適繰り返しパターンを計算すること、
    を特徴とする請求項1又は2に記載の構造化文書分割プログラム。
  4. 前記分割基準生成手段は、最初に、前記ルートノードの子ノードのシーケンスへの第一の繰り返しパターンを計算し、次に、ルートノードの子ノードと孫ノードとのシーケンスへの第二の繰り返しパターンを計算し、最後に、最適繰り返しパターンを前記第一の繰り返しパターンと前記第二の繰り返しパターンとから選択することにより、最適繰り返しパターンを計算すること、
    を特徴とする請求項3に記載の構造化文書分割プログラム。
  5. 構造化文書に含まれる情報ブロックを分割する分割装置であって、
    前記構造化文書を受け取って、当該構造化文書の文書構造情報を当該構造化文書に基づいて生成する文書構造情報生成手段と、
    前記文書構造情報生成手段によって生成された前記文書構造情報に基づいて、前記情報ブロックの範囲を判定する情報ブロック範囲判定手段と、
    前記文書構造情報生成手段によって生成された前記文書構造情報と、前記情報ブロック範囲判定手段によって判定された前記範囲とに基づいて、分割基準を生成する分割基準生成手段と、
    前記分割基準生成手段によって生成された前記分割基準に基づいて、前記構造化文書を分割してその結果を出力する分割手段と、
    を備えることを特徴とする構造化文書の分割装置。
  6. 構造化文書に含まれる情報ブロックを分割する分割方法であって、
    前記構造化文書を受け取って、当該構造化文書の文書構造情報を当該構造化文書に基づいて生成する文書構造情報生成工程と、
    前記文書構造情報生成工程において生成された前記文書構造情報に基づいて、前記情報ブロックの範囲を判定する情報ブロック範囲判定工程と、
    前記文書構造情報生成工程において生成された前記文書構造情報と、前記情報ブロック範囲判定工程において判定された前記範囲とに基づいて、分割基準を生成する分割基準生成工程と、
    前記分割基準生成工程において生成された前記分割基準に基づいて、前記構造化文書を分割してその結果を出力する分割工程と、
    を含むことを特徴とする構造化文書の分割方法。
  7. 文書構造情報生成工程において生成された前記文書構造情報は文書構造ツリーであり、
    幅優先アルゴリズムを用いて前記文書構造ツリーを探索することにより、最大の有効子ノードを有し、かつ、有効テキスト量と文書全体の有効テキスト量との比率が所定の閾値より大きいノードを発見し、
    前記ノードが対応する範囲が、全ての前記情報ブロックを含む最小の範囲であり、前記ノードをルートとするサブツリーが、全ての前記情報ブロックを含む最小のサブツリーであること、
    を特徴とする請求項6に記載の構造化文書の分割方法。
  8. 前記文書構造情報生成工程において生成された前記文書構造情報は文書構造ツリーであり、
    前記分割基準生成工程において、前記情報ブロックが置かれているサブツリーのルートノードの子ノードと孫ノードとのタグシーケンスを利用して最適繰り返しパターンを計算すること、
    を特徴とする請求項6又は7に記載の構造化文書の分割方法。
  9. 前記分割基準生成工程において、最初に、前記ルートノードの子ノードのシーケンスへの第一の繰り返しパターンを計算し、次に、ルートノードの子ノードと孫ノードとのシーケンスへの第二の繰り返しパターンを計算し、最後に、最適繰り返しパターンを前記第一の繰り返しパターンと前記第二の繰り返しパターンとから選択することにより、最適繰り返しパターンを計算すること、
    を特徴とする請求項8に記載の構造化文書の分割方法。
  10. 前記分割基準生成工程において、
    オリジナルのタグシーケンスの第一の繰り返しシーケンスを計算し、
    前記第一の繰り返しシーケンスに基づいて、当該第一の繰り返しシーケンスの指定された記号をタグシーケンスに代入して、オリジナルのタグシーケンスの修正済みシーケンスを取得し、
    前記修正済みシーケンスの第二の繰り返しシーケンスを計算し、さらに、
    前記第二の繰り返しシーケンスが前記第一の繰り返しシーケンスを含むかどうかに基づいて、最終的な繰り返しパターンを判定することにより、
    前記第一の繰り返しパターンと前記第二の繰り返しパターンとから少なくともひとつの前記分割基準を計算すること、
    を特徴とする請求項9に記載の構造化文書の分割方法。
JP2004197092A 2003-07-03 2004-07-02 構造化文書の分割プログラム、分割装置、及び分割方法 Pending JP2005025763A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA031457479A CN1567303A (zh) 2003-07-03 2003-07-03 结构文档信息块的自动分割方法和装置

Publications (1)

Publication Number Publication Date
JP2005025763A true JP2005025763A (ja) 2005-01-27

Family

ID=34155923

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004197092A Pending JP2005025763A (ja) 2003-07-03 2004-07-02 構造化文書の分割プログラム、分割装置、及び分割方法

Country Status (3)

Country Link
US (1) US20050050459A1 (ja)
JP (1) JP2005025763A (ja)
CN (1) CN1567303A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007193660A (ja) * 2006-01-20 2007-08-02 Seiko Epson Corp 情報管理装置、情報管理方法及びそのプログラム
JP2008217047A (ja) * 2007-02-28 2008-09-18 Kansai Electric Power Co Inc:The Web文書分割方法、システム及びプログラム

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2325743B1 (en) 2003-01-31 2012-12-19 Good Technology Corporation Asynchronous real-time retrieval of data
CN1722161B (zh) * 2005-04-29 2011-03-16 东华大学 电子政务协同工作数据标准符合性测试方法
US7853869B2 (en) * 2005-12-14 2010-12-14 Microsoft Corporation Creation of semantic objects for providing logical structure to markup language representations of documents
FR2901037B1 (fr) * 2006-05-11 2008-11-07 Canon Kk Procede et dispositif de generation de motifs structurels de reference aptes a representer des donnees hierarchisees
CN101094194B (zh) * 2006-06-19 2010-06-23 腾讯科技(深圳)有限公司 一种提取Web页面中用户所需Web信息的方法
CN101515272B (zh) * 2008-02-18 2012-10-24 株式会社理光 提取网页内容的方法和装置
US8078630B2 (en) 2008-02-22 2011-12-13 Tigerlogic Corporation Systems and methods of displaying document chunks in response to a search request
US8359533B2 (en) 2008-02-22 2013-01-22 Tigerlogic Corporation Systems and methods of performing a text replacement within multiple documents
US8924374B2 (en) * 2008-02-22 2014-12-30 Tigerlogic Corporation Systems and methods of semantically annotating documents of different structures
US8001162B2 (en) * 2008-02-22 2011-08-16 Tigerlogic Corporation Systems and methods of pipelining multiple document node streams through a query processor
US8001140B2 (en) * 2008-02-22 2011-08-16 Tigerlogic Corporation Systems and methods of refining a search query based on user-specified search keywords
US7933896B2 (en) * 2008-02-22 2011-04-26 Tigerlogic Corporation Systems and methods of searching a document for relevant chunks in response to a search request
US9129036B2 (en) 2008-02-22 2015-09-08 Tigerlogic Corporation Systems and methods of identifying chunks within inter-related documents
US8145632B2 (en) * 2008-02-22 2012-03-27 Tigerlogic Corporation Systems and methods of identifying chunks within multiple documents
US8126880B2 (en) 2008-02-22 2012-02-28 Tigerlogic Corporation Systems and methods of adaptively screening matching chunks within documents
US7937395B2 (en) * 2008-02-22 2011-05-03 Tigerlogic Corporation Systems and methods of displaying and re-using document chunks in a document development application
US8924421B2 (en) * 2008-02-22 2014-12-30 Tigerlogic Corporation Systems and methods of refining chunks identified within multiple documents
AU2009238519C1 (en) * 2008-04-20 2015-08-20 Tigerlogic Corporation Systems and methods of identifying chunks from multiple syndicated content providers
US7925683B2 (en) * 2008-12-18 2011-04-12 Copiun, Inc. Methods and apparatus for content-aware data de-duplication
KR101073847B1 (ko) * 2009-04-23 2011-10-14 주식회사 케이엘넷 전자 서식 변환 방법, 장치 및 기록매체
CA2776541A1 (en) * 2009-10-02 2011-04-07 Aravind Musuluri System and method for block segmenting, identifying and indexing visual elements, and searching documents
CN102934115B (zh) * 2010-03-12 2016-07-06 科派恩股份有限公司 管理数据的方法、客户端设备和系统
EP2548122B1 (en) * 2010-03-16 2021-06-09 BlackBerry Limited Highly scalable and distributed data de-duplication
WO2012027472A2 (en) 2010-08-24 2012-03-01 Copiun, Inc. Constant access gateway and de-duplicated data cache server
US9477651B2 (en) * 2010-09-29 2016-10-25 International Business Machines Corporation Finding partition boundaries for parallel processing of markup language documents
CN102567285A (zh) * 2010-12-13 2012-07-11 汉王科技股份有限公司 一种文档加载的方法及装置
CN102567292A (zh) * 2011-06-23 2012-07-11 北京新东方教育科技(集团)有限公司 讲义生成方法和系统
US9001390B1 (en) 2011-10-06 2015-04-07 Uri Zernik Device, system and method for identifying sections of documents
CN103377175A (zh) * 2012-04-26 2013-10-30 Sap股份公司 基于分割的结构化文档转换
US10776376B1 (en) * 2014-12-05 2020-09-15 Veritas Technologies Llc Systems and methods for displaying search results
CN111966932A (zh) * 2019-05-20 2020-11-20 富士通株式会社 信息处理方法和信息处理设备
CN112597422A (zh) * 2020-12-30 2021-04-02 深圳市世强元件网络有限公司 一种pdf文件分割方法和网页中pdf文件加载方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NO983175L (no) * 1998-07-10 2000-01-11 Fast Search & Transfer Asa Soekesystem for gjenfinning av data
US7051276B1 (en) * 2000-09-27 2006-05-23 Microsoft Corporation View templates for HTML source documents
US7051084B1 (en) * 2000-11-02 2006-05-23 Citrix Systems, Inc. Methods and apparatus for regenerating and transmitting a partial page
US6804677B2 (en) * 2001-02-26 2004-10-12 Ori Software Development Ltd. Encoding semi-structured data for efficient search and browsing
US6732090B2 (en) * 2001-08-13 2004-05-04 Xerox Corporation Meta-document management system with user definable personalities
WO2003040878A2 (en) * 2001-11-02 2003-05-15 Siemens Medical Solutions Usa, Inc. Patient data mining for clinical trials
US6912555B2 (en) * 2002-01-18 2005-06-28 Hewlett-Packard Development Company, L.P. Method for content mining of semi-structured documents

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007193660A (ja) * 2006-01-20 2007-08-02 Seiko Epson Corp 情報管理装置、情報管理方法及びそのプログラム
JP2008217047A (ja) * 2007-02-28 2008-09-18 Kansai Electric Power Co Inc:The Web文書分割方法、システム及びプログラム
JP4700637B2 (ja) * 2007-02-28 2011-06-15 関西電力株式会社 Web文書分割方法、システム及びプログラム

Also Published As

Publication number Publication date
CN1567303A (zh) 2005-01-19
US20050050459A1 (en) 2005-03-03

Similar Documents

Publication Publication Date Title
JP2005025763A (ja) 構造化文書の分割プログラム、分割装置、及び分割方法
US9268749B2 (en) Incremental computation of repeats
JP2005092889A (ja) ウェブページのための情報ブロック抽出装置及び情報ブロック抽出方法
US20110173527A1 (en) Determining Semantically Distinct Regions of a Document
US20090106298A1 (en) Information processing method, information processing device, and information processing program
JP2006004417A (ja) 情報ファイルの特定のタイプを認識する方法及び装置
EP1764710A1 (en) Layout generation method, information processing device, and program
JP4712718B2 (ja) 配列の生成方法、及び、配列生成プログラム
JP2005018780A (ja) 構造化文書オーサリングのためのシステム及びその方法
US20080082526A1 (en) Method, apparatus, and computer program product for searching structured document
US20100005058A1 (en) Computer product, information retrieving apparatus, and information retrieving method
Ferrara et al. Automatic wrapper adaptation by tree edit distance matching
US7275208B2 (en) XML document processing for ascertaining match of a structure type definition
US20020016796A1 (en) Document processing method, system and medium
JP5812007B2 (ja) インデックス作成装置、データ検索装置、インデックス作成方法、データ検索方法、インデックス作成プログラムおよびデータ検索プログラム
JP5447368B2 (ja) 新規事例生成装置、新規事例生成方法及び新規事例生成用プログラム
JP2020077236A (ja) 探索プログラム、探索方法及び探索装置
JP6662755B2 (ja) オブジェクト検索装置、オブジェクト検索方法、および、オブジェクト検索プログラム
JP2012027743A (ja) 階層構造の解析・出力方法、および、その情報処理装置、プログラム。
JP5225331B2 (ja) データ抽出装置及び方法
JP4951407B2 (ja) コンテンツ部品検索方法及び装置
JP4134824B2 (ja) 情報処理装置及びプログラム
WO2022230191A1 (ja) WebAPI定義情報生成装置、WebAPI定義情報生成方法及びプログラム
JP2011070529A (ja) 文書処理装置
JP2008209996A (ja) 検索索引作成装置・検索索引作成方法及び検索索引作成プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051125

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071101

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080115

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080715