以下に本発明の実施形態について添付図面を参照して説明する。図1を参照すると、本発明の第1の実施形態のシステムは、プログラム制御により動作するデータ処理装置1と、情報を記憶する記憶装置2とを含む。
データ処理装置1は、入力部11と、レイアウト解析ツール12と、出力部13とを備える。記憶装置2は、レンダリング結果記憶部21、解析結果記憶部22とを備える。
入力部11は、外部から構造化・半構造化文書を取得し、当該文書をレンダリングし、レンダリング結果をレンダリング結果記憶部21に記憶する。レイアウト解析ツール12は、基本レイアウト解析部14を有する。出力部13は、解析結果記憶部22からレイアウトの構成要素とその階層関係の情報を取得し、レイアウトの構成要素を文書記述要素の参照を用いて表現する形式に整形し外部に出力する。ここで、レイアウトの構成要素にIDを与えて出力してもよい。
基本レイアウト解析部14は、レンダリング結果記憶部21からレンダリング結果を取得し、文書記述要素の配置を参照し、一定の方向に並置された文書記述要素をグループ化することでレイアウトを解析する。具体的には、指定された文書記述要素、例えば、ルートとなる文書記述要素や既に解析されたレイアウトの構成要素に属する文書記述要素の配置を参照し、一定の方向に並置された文書記述要素をグループ化する。グループ化された文書記述要素、グループ化されず子供の文書記述要素のない文書記述要素はレイアウトの構成要素として解析結果記憶部22に記憶する。グループ化されなかった文書記述要素は当該文書記述要素の子供の文書記述要素を対象に、全ての文書記述要素がグループ化されるまで、又は子供の文書記述要素がなくなるまで再帰的に処理を繰り返す。
レンダリング結果記憶部21は入力部11の処理結果を、解析結果記憶部22はレイアウト解析ツール12の処理結果をそれぞれ記憶する。
以上の処理により、特定階層のレイアウト、つまりレイアウトの構成要素の集合を解析する。ここで、上記処理により解析されたレイアウトの構成要素について、更に、これに属する文書記述要素の配置を参照し、先のグループ化に用いられた方向の直交方向に並置された文書記述要素をグループ化し、先に解析されたレイアウトの構成要素を置き換える処理を所定の回数繰り返しレイアウトを解析してもよい。また、レイアウトの構成要素として解析された文書記述要素が親の文書記述要素から見て唯一の子供である場合、当該解析された文書記述要素を親の文書記述要素と置き換えてもよい。
次階層のレイアウトを解析する場合は、先に解析されたレイアウトの各構成要素について再度処理を行う。具体的には、先に解析されたレイアウトの構成要素についてこれに属する文書記述要素の配置を参照し、一定の方向に並置された文書記述要素をグループ化した後、グループ化された文書記述要素以下の文書記述要素の配置を参照し、先のグループ化に用いられた方向の直交方向に並置された文書記述要素をグループ化する処理を所定の回数繰り返しレイアウトを解析する。ここで、次階層のレイアウトの解析の最初のグループ化に用いる方向として、上位レイアウトの解析の最後のグループ化に用いられた方向の直交方向を用いてもよい。次階層を解析する処理を繰り返せば、可能な範囲で任意の階層のレイアウトを解析できる。なお、上記処理において、文書記述要素として一部の指定された文書記述要素のみの配置を参照してもよい。以上の処理により、レイアウト、つまりレイアウトの構成要素とその階層関係を解析する。
次に、図1、図2を参照して本実施の形態の動作について詳細に説明する。入力部11は、外部から構造化・半構造化文書を取得し、当該文書をレンダリングし、レンダリング結果をレンダリング結果記憶部21に記憶する(ステップS101)。
基本レイアウト解析部14は、レンダリング結果記憶部21からレンダリング結果を取得し、処理対象階層nを1とし(ステップS102)、当該処理対象階層について処理を継続するかどうかを判定する(ステップS103)。判定基準としては、処理階層の上限値、解析された基本レイアウトの大きさを用いることができる。基本レイアウト解析部14は、処理を継続しないと判定した場合、ステップS107に進む。
基本レイアウト解析部14は、ステップS103で処理を継続すると判定した場合、処理対象となる文書記述要素を取得する(ステップS104)。
基本レイアウト解析部14は、処理対象となる文書記述要素の配置を参照し、一定の方向に並置された文書記述要素をグループ化することでレイアウトを解析し、上位階層のレイアウトの構成要素と関連付けて解析結果記憶部22に記憶する(ステップS105)。
基本レイアウト解析部14は、処理対象階層nをn+1とし(ステップS106)、ステップS103以降の処理を繰り返す。
出力部13は、解析結果記憶部22からレイアウトの構成要素とその階層関係の情報を取得し、レイアウトの構成要素を文書記述要素の参照を用いて表現する形式に整形し外部に出力する(ステップS107)。
本実施の形態では、構造化・半構造化文書の文書記述要素の配置を参照し並置された文書記述要素をグループ化することでレイアウトを解析するので、文書記述要素の配置に基づくレイアウトを解析できる。このため、記述方法が多様な構造化・半構造化文書においても、文書提供者が意図するレイアウトを解析できる。また、レイアウトを文書記述要素の参照を用いて表現する形式で出力するので、第三者がレイアウトの情報を利用した応用アプリケーションを開発できる。
次に、本発明の第2の実施形態について図面を参照して詳細に説明する。図11を参照すると、本発明の第2の実施形態は、プログラム制御により動作するデータ処理装置1と、情報を記憶する記憶装置2とを含む。
データ処理装置1は、入力部11と、レイアウト解析ツール12と、出力部13とを備える。記憶装置2は、レンダリング結果記憶部21、解析結果記憶部22、タイトル解析ルール記憶部23とを備える。
入力部11は、外部から構造化・半構造化文書を取得し、当該文書をレンダリングし、レンダリング結果をレンダリング結果記憶部21に記憶する。レイアウト解析ツール12は、タイトル解析部15を有する。出力部13は、解析結果記憶部22からタイトルの集合を取得し、タイトルを文書記述要素の参照を用いて表現する形式に整形し外部に出力する。
レンダリング結果記憶部21は入力部11の処理結果を、解析結果記憶部22はレイアウト解析ツール12の処理結果をそれぞれ記憶する。タイトル解析ルール記憶部23は、タイトル解析ルール、すなわちタイトル判定の基準となる、文書記述要素の名前、属性、スタイル、内容の値に基づくルールを予め記憶する。
タイトル解析部15は、レンダリング結果記憶部21からレンダリング結果を、タイトル解析ルール記憶部23からタイトル解析ルールを取得し、文書記述要素の名前に加え、属性、スタイル、内容をタイトル解析ルールと照合することでタイトルを解析する。具体的には、指定された文書記述要素、例えば、ルートとなる文書記述要素、を処理対象要素とし、処理対象要素について文書記述要素の名前、属性、スタイル、内容をタイトル解析ルールと照合する。照合の結果タイトルと判定した場合、当該文書記述要素をタイトルとして解析結果記憶部22に記憶し、未処理の処理対象要素があればこれを対象に処理を続ける。
タイトルでないと判定した場合、当該文書記述要素の子供の文書記述要素を新たに処理対象要素とし、未処理の処理対象要素がなくなるまで処理を続ける。ここで、タイトル解析ルールとしては、「属性が文書内で唯一である」、「背景色や背景イメージが使用されている」、「文書内での使用頻度が低い文字色や文字サイズが使用されている」といったレンダリングイメージ上での文書記述要素の特異性に基づくルールを用いることができる。なお、上記処理において、文書記述要素として同じ名前、属性、スタイルを持つ複数の文書記述要素をグループ化したものを用いてもよい。以上の処理により、タイトルの集合を解析し解析結果記憶部22に記憶する。
次に、図11、図12を参照して本実施の形態の動作について詳細に説明する。入力部11は、外部から構造化・半構造化文書を取得し、当該文書をレンダリングし、レンダリング結果をレンダリング結果記憶部21に記憶する(ステップS201)。
タイトル解析部15は、レンダリング結果記憶部21からレンダリング結果を、タイトル解析ルール記憶部23からタイトル解析ルールをそれぞれ取得し、処理対象となる文書記述要素を取得する(ステップS202)。
タイトル解析部15は、処理対象の文書記述要素の有無を確認し、処理対象となる文書記述要素がないと判定した場合、ステップS208に進む(ステップS203)。
タイトル解析部15は、ステップS203で処理対象となる文書記述要素があると判定した場合、当該文書記述要素の名前や属性、スタイル、内容をタイトル解析ルールと照合する(ステップS204)。
タイトル解析部15は、ステップS204で照合によりタイトルでないと判定した場合、又はステップS206で文書記述要素をタイトルとして記憶した場合、次の処理対象となる文書記述要素を取得し、当該文書記述要素についてステップS203以下の処理を行う(ステップS205)。
タイトル解析部15は、ステップS204で照合によりタイトルであると判定した場合、当該文書記述要素をタイトルとして解析結果記憶部22に記憶し、ステップS205に進む(ステップ206)。
出力部13は、解析結果記憶部22からタイトルの集合を取得し、タイトルを文書記述要素の参照を用いて表現する形式に整形し外部に出力する(ステップS207)。
次に、本実施の形態の効果について説明する。本実施の形態では、構造化・半構造化文書の文書記述要素の名前に加え、属性、スタイル、内容を用いてタイトルを解析するので、属性やスタイルを用いて表現されたタイトルも解析できる。このため、タイトルを網羅的に解析できる。また、タイトルを文書記述要素の参照を用いて表現する形式で出力するので、第三者がタイトルの情報を利用した応用アプリケーションを開発できる。
次に、本発明の第3の実施形態について図面を参照して詳細に説明する。図16を参照すると、本発明の第3の実施形態は、プログラム制御により動作するデータ処理装置1と、情報を記憶する記憶装置2とを含む。
データ処理装置1は、入力部11と、レイアウト解析ツール12と、出力部13とを備える。記憶装置2は、レンダリング結果記憶部21、解析結果記憶部22、タイトル解析ルール記憶部23とを備える。
入力部11は、外部から構造化・半構造化文書を取得し、当該文書をレンダリングし、レンダリング結果をレンダリング結果記憶部21に記憶する。
レイアウト解析ツール12は、基本レイアウト解析部14と、タイトル解析部15と、レイアウト解析部16とを有する。
出力部13は、解析結果記憶部22から新しいレイアウトの構成要素とその階層関係、及び各構成要素とタイトルとの対応関係を取得し、新しいレイアウトの構成要素とタイトルを文書記述要素の参照を用いて表現する形式に整形し外部に出力する。ここで、新しいレイアウトの構成要素にIDを与えて出力してもよい。
基本レイアウト解析部14は、レンダリング結果記憶部21からレンダリング結果を取得し、文書記述要素の配置を参照し、一定の方向に並置された文書記述要素をグループ化することでレイアウトを解析する。基本レイアウト解析部14の機能は、本発明の第1の実施の形態の基本レイアウト解析部14に示す機能と同じである。
タイトル解析部15は、レンダリング結果記憶部21からレンダリング結果を、タイトル解析ルール記憶部23からタイトル解析ルールを取得し、文書記述要素の名前に加え、属性、スタイル、内容をタイトル解析ルールと照合することでタイトルを解析する。タイトル解析部15の機能は、本発明の第2の実施の形態のタイトル解析部15に示す機能と同じである。
レイアウト解析部16は、解析結果記憶部22から、基本レイアウト解析部14で解析されたレイアウトの構成要素とその階層関係、タイトル解析部15で解析されたタイトルを取得し、タイトルを持たないレイアウトの構成要素をタイトルを持つレイアウトの構成要素、又はタイトルを持たない別のレイアウトの構成要素とグループ化することで新しいレイアウトを生成する。具体的には、まず第1階層のレイアウトの構成要素を取得し、構成要素と構成要素に内包されるタイトルを対応付ける。タイトルを持たない構成要素は、タイトルを持つ構成要素のうち、例えば、ソース上先頭に向かって最も近いものとグループ化する。最も近いタイトルを持つ構成要素がない場合は、例えば、最も近いタイトルを持たない構成要素とグループ化する。グループ化されたレイアウトの構成要素は、新しいレイアウトの構成要素として、当該構成要素に属するタイトルとともに解析結果記憶部22に記憶する。更に、上記処理を基本レイアウト解析部14で解析されたレイアウトの階層数分繰り返すことで、新しいレイアウトの構成要素とその階層関係、及び各構成要素とタイトルとの対応関係を解析する。
レンダリング結果記憶部21は入力部11の、解析結果記憶部22はレイアウト解析ツール12の、それぞれ処理結果を記憶する。タイトル解析ルール記憶部23は、タイトル解析ルールを予め記憶する。
次に、図16、図17を参照して本実施の形態の動作について詳細に説明する。入力部11は、外部から構造化・半構造化文書を取得し、当該文書をレンダリングし、レンダリング結果をレンダリング結果記憶部21に記憶する(ステップS301)。
基本レイアウト解析部14の動作は、本発明の第1の実施の形態に示す基本レイアウト解析部(図1の14)の動作と同じである(ステップS302〜ステップS306)。
タイトル解析部15の動作は、本発明の第2の実施の形態に示すタイトル解析部(図11の15)の動作と同じである(ステップS311〜ステップS316)。
レイアウト解析部16は、解析結果記憶部22から、基本レイアウト解析部14で解析されたレイアウトの構成要素とその階層関係、タイトル解析部15で解析されたタイトルを取得し、処理対象階層nを1とする(ステップS321)。
レイアウト解析部16は、処理対象階層のレイアウトの構成要素があるかどうかを判定し、処理対象階層のレイアウトの構成要素がないと判定した場合、ステップS331に進む(ステップS322)。
レイアウト解析部16は、ステップS322で処理対象階層のレイアウトの構成要素があると判定した場合、第n階層のレイアウトの構成要素を取得し(ステップS323)、第n階層のレイアウトの構成要素とタイトルを対応付ける(ステップS324)。
レイアウト解析部16は、タイトルを持たないレイアウトの構成要素をタイトルを持つレイアウトの構成要素、又はタイトルを持たない別のレイアウトの構成要素とグループ化することで新しいレイアウトの構成要素を解析し、解析結果記憶部22に記憶する(ステップS325)。
レイアウト解析部16は、処理対象階層nをn+1とし、ステップS322以降の処理を繰り返す(ステップS326)。
出力部13は、解析結果記憶部22から新しいレイアウトの構成要素とその階層関係、及び各構成要素とタイトルとの対応関係を取得し、新しいレイアウトの構成要素とタイトルを文書記述要素の参照を用いて表現する形式に整形し外部に出力する(ステップS331)。
ここで、基本レイアウト解析部14の動作(ステップS302〜ステップS306)と、タイトル解析部15の動作(ステップS311〜ステップS316)の実行順序を入れ替えてもよい。具体的には、ステップS301の直後にステップS311〜ステップS316が実行される形となり、ステップS312が「No」のときステップS302〜ステップS306が実行される。また、この場合、ステップS303が「No」のときステップS321に移行する形となる。
次に、本実施の形態の効果について説明する。本実施の形態では、文書記述要素の配置を参照し並置された文書記述要素をグループ化することで解析されたレイアウトと、文書記述要素の名前に加え、属性、スタイル、内容を用いて解析されたタイトルを用いて、タイトルを持たないレイアウトの構成要素をタイトルを持つレイアウトの構成要素、又はタイトルを持たない別のレイアウトの構成要素とグループ化することで、関連した構成要素の集合を新しい構成要素とする新しいレイアウトを生成するので、より論理構造を捉えたレイアウトを解析できる。このため、より文書提供者の意図を反映したレイアウトを解析できる。また、レイアウトやタイトルを文書記述要素の参照を用いて表現する形式で出力するので、第三者がレイアウトの情報を利用した応用アプリケーションを開発できる。
次に、本発明の第4の実施形態について図面を参照して詳細に説明する。図22を参照すると、本発明の第4の実施形態は、プログラム制御により動作するデータ処理装置5と、情報を記憶する記憶装置6とを含む。
データ処理装置5は、入力部51と、文書入力部52と、目次文書出力部53と、項目文書出力部54とを備える。記憶装置6は、構造化・半構造化文書記憶部61、レイアウト文書記憶部62とを備える。
入力部51は、キーボードを始めとする入力装置から、あるいはネットワークを介してユーザ入力を取得し、ユーザが所望する構造化・半構造化文書のURI(Universal Resource Identifier)を取得する。また、入力部51は、キーボードを始めとする入力装置から、あるいはネットワークを介してユーザ入力を取得し、出力を制御する。具体的には、取得された入力に応じて、目次文書を出力するか、目次の項目の内容を記述した文書を出力するかを判定し、目次の項目の内容を記述した文書を出力する場合は、出力する目次の項目も判定する。
文書入力部52は、入力部51で取得されたユーザが所望する構造化・半構造化文書のURIを用いて、当該文書を取得し、構造化・半構造化文書記憶部61に記憶する。また、文書入力部52は、取得した構造化・半構造化文書に指定された、レイアウトの情報が文書記述要素の参照を用いて記述された文書を取得し、レイアウト記憶部62に記憶する。ここで、文書入力部52は、通信プロトコルのヘッダー情報を利用するといった別の方法を用いて、取得した構造化・半構造化文書のレイアウトの情報が記述された文書を取得してもよい。また、取得した構造化・半構造化文書について、本発明の第3の実施の形態に示すシステムを用いて、レイアウトの情報を解析し、レイアウト文書記憶部62に記憶してもよい。
目次文書出力部53は、入力部51が目次を出力すると判定した場合、構造化・半構造化文書記憶部61からユーザが所望する構造化・半構造化文書を、レイアウト文書記憶部62から当該構造化・半構造化文書のレイアウトの情報が記述された文書をそれぞれ取得し、目次文書を生成する。具体的には、レイアウトの情報が記述された文書から全ての末端のレイアウトの構成要素を抽出し、それぞれについて指定されたタイトルを抽出し、文書記述要素の参照を用いて元の構造化・半構造化文書から当該タイトルに対応する文書記述要素を抜き出し、整形して順に並べることで目次文書を生成する。ここで、タイトルの指定がない構成要素について、当該構成要素に対応する文書記述要素以下の内容から一定数の文字を抜き出し並べてもよい。また、特定階層のレイアウトの構成要素の間に仕切り線を挿入する、構造化・半構造化文書に別途与えられたタイトルを挿入するなど、目次に装飾を施してもよい。また、上位階層の構成要素が同じ1つ以上の末端のレイアウトの構成要素について、末端の構成要素に代え上位階層の構成要素を用いてもよい。生成した目次文書は、ディスプレイやスピーカーといった出力装置から、あるいはネットワークを介してユーザに提供される。
項目文書出力部54は、入力部51が目次の項目の内容を記述した文書を出力すると判定し、出力する目次の項目を判定した場合、構造化・半構造化文書記憶部61からユーザが所望する構造化・半構造化文書を、レイアウト文書記憶部62から当該構造化・半構造化文書のレイアウトの情報が記述された文書をそれぞれ取得し、指定された目次の項目の内容を記述した文書を生成する。具体的には、指定された目次の項目をタイトルとして持つレイアウトの構成要素を抽出し、文書記述要素の参照を用いて元の構造化・半構造化文書から当該構成要素に対応する文書記述要素を抜き出し、整形して順に並べることで目次の項目の内容を記述した文書を生成する。ここで、項目の内容として、抜き出された文書記述要素の内容を更に抜き出し並べてもよい。また、構造化・半構造化文書の文書記述要素を別の文書記述要素に置き換えた上で並べてもよい。さらに、目次の内容を記述した文書としてユーザが所望する構造化・半構造化文書そのものを用い、指定された目次の項目に対応する領域に位置合わせして出力してもよい。生成された目次の項目の内容を記述した文書は、ディスプレイやスピーカーといった出力装置から、あるいはネットワークを介してユーザに提供される。
構造化・半構造化文書記憶部61、レイアウト文書記憶部62は、文書入力部52の処理結果を記憶する。ここで、目次文書出力部53が目次文書を生成した際当該目次文書を記憶するとともに、項目文書出力部54で目次の項目の内容を記述した全ての文書を予め生成し記憶しておき、ユーザ入力に対応した目次文書または目次の項目の内容を記述した文書を、目次文書出力部53または項目文書出力部54が選択し出力する構成としてもよい。
次に、図22、図23を参照して本実施の形態の動作について詳細に説明する。 入力部51は、キーボードを始めとする入力装置から、あるいはネットワークを介してユーザ入力を取得し、ユーザが所望する構造化・半構造化文書のURIを取得する(ステップS401)。
文書入力部52は、取得されたURIを用いて文書を取得し、構造化・半構造化文書記憶部61に記憶する。また、文書入力部52は、取得した構造化・半構造化文書に指定された、レイアウトの情報が記述された文書を取得し、レイアウト文書記憶部62に記憶する(ステップS402)。
入力部51は、処理を続けるかどうかを判定し、処理を続けないと判定した場合、終了する(ステップS403)。
入力部51は、ステップS403で処理を続けると判定した場合、出力する内容が目次かどうかを判定する(ステップS404)。
目次文書出力部53は、ステップS404で目次を出力すると判定した場合、構造化・半構造化文書記憶部61からユーザが所望する構造化・半構造化文書を、レイアウト文書記憶部62から当該構造化・半構造化文書のレイアウトの情報が記述された文書をそれぞれ取得し、目次文書を生成する。生成した目次文書は、ディスプレイやスピーカーといった出力装置から、あるいはネットワークを介してユーザに提供される(ステップS405)。
項目文書出力部54は、ステップS404で目次を出力しないと判定した場合、出力する目次の項目を更に判定し、構造化・半構造化文書記憶部61からユーザが所望する構造化・半構造化文書を、レイアウト文書記憶部62から当該構造化・半構造化文書のレイアウトの情報が記述された文書をそれぞれ取得し、指定された目次の項目の内容を記述した文書を生成する。生成された目次の項目の内容を記述した文書は、ディスプレイやスピーカーといった出力装置から、あるいはネットワークを介してユーザに提供される(ステップS406)。
入力部51は、ステップS405で目次文書を出力した後、又はステップS406で目次の項目の内容を記述した文書を出力した後、キーボードを始めとする入力装置から、あるいはネットワークを介してユーザ入力を取得し、ステップS403以降の処理を繰り返す(ステップS407)。
次に、本実施の形態の効果について説明する。本実施の形態では、構造化・半構造化文書と当該文書のレイアウトの情報が記述された文書を用いて目次文書や目次の項目の内容を記述した文書を生成、出力するので、文書提供者が意図する文書の論理構造を的確に捉えた目次を用いて文書を閲覧できるようになり、画面の小さい端末でも文書の全体像を把握しやすくなるとともに、少ない操作で文書を閲覧できる。このため、端末環境に適応した文書を提供できる。
次に、本発明の第5の実施形態について図面を参照して詳細に説明する。図27を参照すると、本発明の第5の実施形態は、プログラム制御により動作するデータ処理装置7と、情報を記憶する記憶装置8とを含む。
データ処理装置7は、文書入力部71と、合成文書出力部72とを備える。記憶装置8は、出力構成要素記憶部81と、構造化・半構造化文書記憶部82と、レイアウト文書記憶部83とを備える。
文書入力部71は、出力構成要素記憶部81から出力構成要素に関する情報を取得し、当該情報に記述されたURIに対応する文書を取得し、構造化・半構造化文書記憶部82に記憶する。また、文書入力部71は、取得したそれぞれの構造化・半構造化文書に指定された、レイアウトの情報が文書記述要素の参照を用いて記述された文書を取得し、レイアウト文書記憶部83に記憶する。ここで、文書入力部71は、通信プロトコルのヘッダー情報を利用するといった別の方法を用いて、取得した構造化・半構造化文書のレイアウトの情報が記述された文書を取得してもよい。また、取得した構造化・半構造化文書について、本発明の第3の実施の形態に示すシステムを用いて、レイアウトの情報を解析し、レイアウト文書記憶部83に記憶してもよい。
合成文書出力部72は、出力構成要素記憶部81から出力構成要素に関する情報を、構造化・半構造化文書記憶部82からユーザが所望する構造化・半構造化文書を、レイアウト文書記憶部83からレイアウトの情報が記述された文書をそれぞれ取得し、合成文書を生成する。具体的には、出力構成要素に関する情報から全てのURIと構成要素のIDの組み合わせを取得し、各URIに対応する文書から構成要素のIDに対応する構成要素を抽出し、文書記述要素の参照を用いて元の構造化・半構造化文書から当該構成要素に対応する文書記述要素を抜き出し、整形して順に並べることで合成文書を生成する。ここで、各構成要素について、これに属する文書記述要素の内容を更に抜き出し並べてもよい。生成された合成文書は、ディスプレイやスピーカーといった出力装置から、あるいはネットワークを介してユーザに提供される。
ここで、出力構成要素に関する情報として構成要素のタイトルを表すテキスト情報を更に記憶し、合成文書出力部72で、出力する構成要素のIDに対応する構成要素を抽出した際、抽出された構成要素のタイトルと出力構成要素に関する情報に記憶された構成要素のタイトルを表すテキスト情報を照合し、異なる場合に当該テキスト情報を手掛かりとして正しい構成要素を検索し、出力構成要素に関する情報に記憶された出力する構成要素のIDを更新することで、レイアウトに変更があった場合でも適切な合成文書を生成できるようにしてもよい。また、出力構成要素に関する情報として表示位置の情報を更に記憶し、合成文書出力部72で、当該表示位置の情報を用いて合成文書を整形してもよい。
出力構成要素記憶部81は、出力する構成要素に関する情報、すなわち出力する構造化・半構造化文書のURIと当該文書のうち出力する構成要素のIDの組み合わせの集合を記憶する。構造化・半構造化文書記憶部82、レイアウト文書記憶部83は、文書入力部71の処理結果を記憶する。
次に、図27、図28を参照して本実施の形態の動作について詳細に説明する。文書入力部71は、出力構成要素記憶部81から出力構成要素に関する情報を取得する(ステップS501)。
文書入力部71は、取得された出力構成要素に関する情報に記述されたURIに対応する文書を取得し、構造化・半構造化文書記憶部82に記憶する。また、文書入力部71は、取得したそれぞれの構造化・半構造化文書に指定されたレイアウトの情報が記述された文書を取得し、レイアウト文書記憶部83に記憶する(ステップS502)。
合成文書出力部72は、出力構成要素記憶部81から出力構成要素に関する情報を、構造化・半構造化文書記憶部82からユーザが所望する構造化・半構造化文書を、レイアウト文書記憶部83から当該文書のレイアウトの情報が記述された文書をそれぞれ取得し、合成文書を生成する。生成された合成文書は、ディスプレイやスピーカーといった出力装置から、あるいはネットワークを介してユーザに提供される(ステップS503)。
次に、本実施の形態の効果について説明する。本実施の形態では、出力構成要素に関する情報と構造化・半構造化文書と当該文書のレイアウトの情報が記述された文書を用いて、指定されたレイアウトの構成要素だけから成る合成文書を生成、出力するので、文書提供者が意図する文書の論理構造を的確に捉えた合成文書を用いて文書の必要な部分だけを閲覧できるようになり、ネットワーク帯域が限定された端末や画面の小さい端末でも快適に文書を閲覧できる。またユーザの好みに応じた文書を閲覧できる。このため、ネットワークや端末、ユーザの環境に適応した文書を提供できる。
次に、本発明の第6の実施形態について図面を参照して詳細に説明する。図32を参照すると、本発明の第6の実施形態は、本発明の第1、第2、第3の実施形態と同様に、データ処理装置1、記憶装置2を備える。
文書解析用プログラム3は、データ処理装置1に読み込まれデータ処理装置1の動作を制御し、記憶装置2にレンダリング結果記憶部21と解析結果記憶部22とタイトル解析ルール記憶部23を生成する。データ処理装置1は文書解析用プログラム3の制御により第1、第2、第3の実施形態におけるデータ処理装置1による処理と同一の処理を実行する。
次に、本発明の第7の実施形態について図面を参照して詳細に説明する。図33を参照すると、本発明の第7の実施形態は、本発明の第4の実施形態と同様に、データ処理装置5、記憶装置6を備える。
文書適応用プログラム4は、データ処理装置5に読み込まれデータ処理装置5の動作を制御し、記憶装置6に構造化・半構造化文書記憶部61とレイアウト文書記憶部62を生成する。データ処理装置5は文書適応用プログラム4の制御により第4の実施形態におけるデータ処理装置5による処理と同一の処理を実行する。
次に、本発明の第8の実施形態について図面を参照して詳細に説明する。図34を参照すると、本発明の第8の実施形態は、本発明の第5の実施形態と同様に、データ処理装置7、記憶装置8を備える。
文書適応用プログラム9は、データ処理装置7に読み込まれデータ処理装置7の動作を制御し、記憶装置8に出力構成要素記憶部81、構造化・半構造化文書記憶部82、レイアウト文書記憶部83を生成する。データ処理装置7は文書適応用プログラム9の制御により第5の実施形態におけるデータ処理装置7による処理と同一の処理を実行する。
次に、本発明の第9の実施形態について図面を参照して詳細に説明する。図35を参照すると、本発明の第9の実施形態は、プログラム制御により動作するデータ処理装置1と、情報を記憶する記憶装置2とを含む。
データ処理装置1は、入力部11と、レイアウト解析ツール12と、出力部13とを備える。記憶装置2は、レンダリング結果記憶部21、解析結果記憶部22、タイトル解析ルール記憶部23とを備える。
入力部11は、外部から構造化・半構造化文書を取得し、当該文書をレンダリングし、レンダリング結果をレンダリング結果記憶部21に記憶する。
レイアウト解析ツール12は、基本レイアウト解析部14と、タイトル解析部15と、レイアウト解析部16とを有する。
出力部13は、解析結果記憶部22からレイアウトの構成要素とその階層関係、及び各構成要素とタイトルとの対応関係を取得し、レイアウトの構成要素とタイトルを文書記述要素の参照を用いて表現する形式に整形し外部に出力する。
基本レイアウト解析部14は、レンダリング結果記憶部21からレンダリング結果を取得し、文書記述要素の配置を参照し、一定の方向に並置された文書記述要素をグループ化することでレイアウトを解析する。基本レイアウト解析部14の機能は、本発明の第1の実施の形態の基本レイアウト解析部14に示す機能と同じである。
タイトル解析部15は、レンダリング結果記憶部21からレンダリング結果を、タイトル解析ルール記憶部23からタイトル解析ルールを取得し、文書記述要素の名前に加え、属性、スタイル、内容をタイトル解析ルールと照合することでタイトルを解析する。タイトル解析部15の機能は、本発明の第2の実施の形態のタイトル解析部15に示す機能と同じである。
レイアウト解析部16は、ブロック選別部17、セクション計算部18とを有する。
ブロック選別部17は、解析結果記憶部22から、基本レイアウト解析部14で解析された第1のレイアウトの構成要素とその階層関係、レイアウト解析部16で解析された第2のレイアウトの構成要素とその階層関係を取得し、分割可能な第2のレイアウトの構成要素1つを選別し、これを構成する第1のレイアウトの構成要素を解析対象とする。さらに、タイトル解析部15で解析されたタイトルを取得し、解析対象の第1のレイアウトの構成要素とタイトルを対応付け、対応付けられたタイトルについて、これを構成する文書記述要素の名前、属性、スタイルに基づき主要なタイトルを選別する。その上で、主要なタイトルを持つ構成要素を主要な構成要素とする。ここで、解析対象の第1のレイアウトの構成要素について、これを構成する文書記述要素の名前、属性、スタイル、内容に基づき、当該構成要素が境界線か否かを判定し、境界線と判定したものを主要なレイアウトの構成要素としてもよいし、解析対象の第1のレイアウトの構成要素間の距離に基づき、直前の構成要素と所定の距離以上離れた構成要素などを主要な構成要素としてもよい。
セクション計算部18は、ブロック選別部17で選別された第1のレイアウトの構成要素について、主要でない構成要素を、主要な構成要素、又は主要でない別の構成要素とグループ化することで第2のレイアウトの構成要素を生成し、解析結果記憶部22に記憶する。具体的には、主要でない構成要素は、主要な構成要素のうち、例えば、ソース上先頭に向かって最も近いものとグループ化する。最も近い主要な構成要素がない場合は、例えば、最も近い主要でない構成要素とグループ化する。ここで、新たに生成された第2のレイアウトの構成要素を元の第2のレイアウトの構成要素と置き換えて記憶してもよいし、新たに生成された第2のレイアウトの構成要素を元の第2のレイアウトの構成要素の子供として記憶してもよい。また、境界線と判定された第1のレイアウトの構成要素を除き第2のレイアウトの構成要素として記憶してもよい。
次に、図35、図36を参照して本実施の形態の動作について詳細に説明する。入力部11は、外部から構造化・半構造化文書を取得し、当該文書をレンダリングし、レンダリング結果をレンダリング結果記憶部21に記憶する(ステップS901)。
基本レイアウト解析部14の動作は、本発明の第1の実施の形態に示す基本レイアウト解析部(図1の14)の動作と同じである(ステップS902〜ステップS906)。
タイトル解析部15の動作は、本発明の第2の実施の形態に示すタイトル解析部(図1の15)の動作と同じである(ステップS911〜ステップS916)。
ブロック選別部17は、解析結果記憶部22から、基本レイアウト解析部14で解析された第1のレイアウトの構成要素とその階層関係、タイトル解析部15で解析されたタイトル、レイアウト解析部F16で解析された第2のレイアウトの構成要素とその階層関係を取得する(ステップS921)。
ブロック選別部17は、分割可能な第2のレイアウトの構成要素があるかどうかを判定し、分割可能な第2のレイアウトの構成要素がないと判定した場合、ステップS931に進む(ステップS922)。ここで、判定基準として、第2のレイアウトの構成要素が内包するタイトルの数、第2のレイアウトの構成要素を構成する第1のレイアウトの構成要素のうちタイトルを持つものの数、第2のレイアウトの構成要素の面積や幅、高さなどを用いることができる。
ブロック選別部17は、ステップS923で分割可能な第2のレイアウトの構成要素があると判定した場合、分割可能な第2のレイアウトの構成要素1つを選別し、これを構成する第1のレイアウトの構成要素を解析対象とする(ステップS923)。
ブロック選別部17は、解析対象の第1のレイアウトの構成要素とタイトルを対応付け(ステップS924)、対応付けられたタイトルについて、これを構成する文書記述要素の名前、属性、スタイルに基づき主要なタイトルを選別する(ステップS925)。
ブロック選別部17は、ステップS925で選別された主要なタイトルを持つ第1のレイアウトの構成要素を主要な構成要素とする。ここで、解析対象の第1のレイアウトの構成要素について、これを構成する文書記述要素の名前、属性、スタイル、内容に基づき、当該構成要素が境界線か否かを判定し、境界線と判定したものやその次の構成要素をも主要なレイアウトの構成要素としてもよいし、解析対象の第1のレイアウトの構成要素間の距離に基づき、直前の構成要素と所定の距離以上離れた構成要素などをも主要な構成要素としてもよい(ステップS926)。
セクション計算部18は、ブロック選別部17で選別された第1のレイアウトの構成要素について、主要でない構成要素を、主要な構成要素、又は主要でない別の構成要素とグループ化することで第2のレイアウトの構成要素を生成し、解析結果記憶部22に記憶する(ステップS927)。
出力部13は、解析結果記憶部22から第2のレイアウトの構成要素とその階層関係、及び各構成要素とタイトルとの対応関係を取得し、第2のレイアウトの構成要素とタイトルを文書記述要素の参照を用いて表現する形式に整形し外部に出力する(ステップS931)。
ここで、基本レイアウト解析部14の動作(ステップS902〜ステップS906)と、タイトル解析部15の動作(ステップS911〜ステップS916)の実行順序を入れ替えてもよい。
次に、本実施の形態の効果について説明する。本実施の形態では、タイトルを構成する文書記述要素の名前、属性、スタイルにより選別された主要なタイトルなどに基づき、第1のレイアウトの構成要素をグループ化し、新たな第2のレイアウトの構成要素を生成するので、より論理構造を捉えたレイアウトを解析できる。このため、より文書提供者の意図を反映したレイアウトを解析できる。また、レイアウトやタイトルを文書記述要素の参照を用いて表現する形式で出力するので、第三者がレイアウトの情報を利用した応用アプリケーションを開発できる。
次に、本発明の第1の実施例を図面を参照して説明する。かかる実施例は本発明の第1の実施の形態に対応するものである。本実施例は、データ処理装置、データ記憶装置としてパーソナルコンピュータを備えている。
パーソナルコンピュータは、入力部、レイアウト解析部、出力部、基本レイアウト解析部として機能する中央演算装置と、レンダリング結果記憶部、解析結果記憶部として機能するメモリ装置、磁気ディスク記憶装置を有している。
ここでは、構造化・半構造化文書として図3に示すHTML文書を対象に、第2階層までのレイアウトの解析について説明する。
中央演算装置は、HTML文書を外部から取得し、当該文書をレンダリングし、図3に示すレンダリング結果をメモリ装置に記憶する。中央演算装置は、レンダリング結果を取得し、まずbody要素の配置を参照する。図4に示すようにbody要素は水平方向に並置されたHTML文書の要素がなくグループ化できないため、中央演算装置は子供のHTML文書の要素の配置を参照する。図5に示すように子供のHTML文書の要素であるh1要素と2つのtable要素はいずれも水平方向に並置されたHTML文書の要素がなくグループ化できないため、中央演算装置は更に子供のHTML文書の要素の配置を参照する。
まず、h1要素について、図5に示すように子供のHTML文書の要素がないので、当該h1要素を第1のレイアウトの構成要素としてメモリ装置に記憶する。次に、第1番目のtable要素について、図6に示すように子供のHTML文書の要素であるtr要素は水平方向に並置されたHTML文書の要素がなくグループ化できないため、中央演算装置は更に子供のHTML文書の要素の配置を参照する。図7に示すように子供のHTML文書の要素であるtd要素は水平方向に並置されたHTML文書の要素がなくグループ化できないものの子供のHTML文書の要素がないので、当該td要素を第2のレイアウトの構成要素としてメモリ装置に記憶する。最後に、第2番目のtable要素について、図6に示すように子供のHTML文書の要素である2つのtr要素は水平方向に並置されたHTML文書の要素がなくグループ化できないため、中央演算装置は更に子供のHTML文書の要素の配置を参照する。
第1番目のtr要素について、図7に示すように子供のHTML文書の要素である2つのtd要素は水平方向に並置されているのでこれらをグループ化し、当該2つのtd要素を第3のレイアウトの構成要素としてメモリ装置に記憶する。第2番目のtr要素についても、図7に示すように子供のHTML文書の要素である2つのtd要素は水平方向に並置されているのでこれらをグループ化し、当該2つのtd要素を第4のレイアウトの構成要素としてメモリ装置に記憶する。
以上の処理により、図8に示す第1階層のレイアウトを解析する。第2階層のレイアウトを解析する場合は、第1階層のレイアウトの構成要素について、これに属するHTML文書の要素の配置を参照し垂直方向に並置されたHTML文書の要素をグループ化する。例えば、第3のレイアウトの構成要素について、図9に示すようにこれに属するHTML文書の要素である2つのtd要素はいずれも垂直方向に並置されたHTML文書の要素がなくグループ化できないため、中央演算装置は更に子供のHTML文書の要素の配置を参照する。第1番目のtd要素について、図9に示すように子供のHTML文書の要素がないので、当該td要素をレイアウトの構成要素としてメモリ装置に記憶する。第2番目のtd要素についても、図9に示すように子供のHTML文書の要素がないので、当該td要素をレイアウトの構成要素としてメモリ装置に記憶する。以上の処理により、第2階層のレイアウトを解析する。
中央演算装置は、解析されたレイアウトの構成要素とその階層関係の情報をメモリ装置から取得し、レイアウトの構成要素をHTML文書の要素の参照を用いて表現する形式、例えば、図10に示す形式に整形し、外部に出力する。
次に、本発明の第2の実施例を図面を参照して説明する。かかる実施例は本発明の第2の実施の形態に対応するものである。本実施例は、データ処理装置、データ記憶装置としてパーソナルコンピュータを備えている。
パーソナルコンピュータは、入力部、レイアウト解析部、出力部、タイトル解析部として機能する中央演算装置と、レンダリング結果記憶部、解析結果記憶部として機能するメモリ装置、磁気ディスク記憶装置を有している。また、磁気ディスク記憶装置には、図13に示すようなタイトル解析ルールが記憶されている。
ここでは、構造化・半構造化文書として図3に示すHTML文書を対象に説明する。中央演算装置は、HTML文書を外部から取得し、当該文書をレンダリングし、図3に示すレンダリング結果をメモリ装置に記憶する。
中央演算装置は、レンダリング結果とタイトル解析ルールを取得し、body要素を処理対象HTML文書の要素とする。body要素について名前、属性、スタイル、内容をタイトル解析ルールと照合するとルールに合致しないため、body要素の子供のHTML文書の要素、すなわちh1要素と2つのtable要素を新しく処理対象HTML文書の要素に追加し、h1要素を次の処理対象HTML文書の要素とする。ここでh1要素について名前、属性、スタイル、内容をタイトル解析ルールと照合するとルールに合致するため、当該h1要素をタイトルとしてメモリ装置に記憶し、第1のtable要素を次の処理対象HTML文書の要素とする。上記処理を処理対象HTML文書の要素がなくなるまで繰り返す。例えば、処理対象HTML文書の要素が第2のtable要素の第1のtr要素の第1のtd要素であった場合は、当該td要素について名前、属性、スタイル、内容をタイトル解析ルールと照合する。当該td要素が背景色の指定があり高さが50pxで内容が5文字だったとすると、照合の結果ルールに合致するため、当該td要素をタイトルとしてメモリ装置に記憶する。以上の処理により、図14に示すタイトルを解析する。
中央演算装置は、解析されたタイトルの情報をメモリ装置から取得し、タイトルをHTML文書の要素の参照を用いて表現する形式、例えば、図15に示す形式に整形し、外部に出力する。
次に、本発明の第3の実施例を図面を参照して説明する。かかる実施例は本発明の第3の実施の形態に対応するものである。本実施例は、データ処理装置、データ記憶装置としてパーソナルコンピュータを備えている。
パーソナルコンピュータは、入力部、レイアウト解析部、出力部、基本レイアウト解析部、タイトル解析部、レイアウト解析部Fとして機能する中央演算装置と、レンダリング結果記憶部、解析結果記憶部として機能するメモリ装置、磁気ディスク記憶装置を有している。また、磁気ディスク記憶装置にはタイトル解析ルールが記憶されている。
ここでは、構造化・半構造化文書として図3に示すHTML文書を対象に説明する。中央演算装置は、HTML文書を外部から取得し、当該文書をレンダリングし、図3に示すレンダリング結果をメモリ装置に記憶する。
中央演算装置は、レンダリング結果を取得し、レイアウトの構成要素とその階層関係を解析する。この機能や動作は、第1の実施例に示すものと同じである。
中央演算装置は、レンダリング結果とタイトル解析ルールを取得し、タイトルを解析する。この機能や動作は、第2の実施例に示すものと同じである。
中央演算装置は、解析されたレイアウトの構成要素とその階層関係、タイトルを取得し、まず第1階層のレイアウトの構成要素を対象に解析する。第1階層のレイアウトの構成要素とタイトルの内包関係を調べると、図18に示すようにタイトルを持つレイアウトの構成要素とタイトルを持たないレイアウトの構成要素を解析できる。ここで、body要素下の第1のtable要素下の第1のtr要素下の第1のtd要素で与えられるレイアウトの構成要素はタイトルを持たないので、タイトルを持つレイアウトの構成要素、又はタイトルを持たない別のレイアウトの構成要素とのグループ化を図る。
具体的には、図19に示すように当該構成要素から見てソース上先頭に向かって最も近いタイトルを持つレイアウトの構成要素、すなわちbody要素下のh1要素で与えられるレイアウトの構成要素とグループ化し、新しいレイアウトの構成要素としてメモリ装置に記憶する。上記処理を全てのタイトルを持たないレイアウトの構成要素について行い、図20に示す第1階層の新しいレイアウトの構成要素を解析する。同様の処理を第2階層のレイアウトの構成要素に適用することで、第2階層の新しいレイアウトの構成要素も解析できる。
中央演算装置は、解析された新しいレイアウトの構成要素とその階層関係、及び各構成要素とタイトルとの対応関係の情報をメモリ装置取得し、新しいレイアウトの構成要素とタイトルをHTML文書の要素の参照を用いて表現する形式、例えば、図21に示す形式に整形し、外部に出力する。
次に、本発明の第4の実施例を図面を参照して説明する。かかる実施例は本発明の第4の実施の形態に対応するものである。本実施例は、データ記憶装置としてパーソナルコンピュータを備えている。
パーソナルコンピュータは、入力部、文書入力部、目次文書出力部、項目文書出力部として機能する中央演算装置と、構造化・半構造化文書記憶部、レイアウト文書記憶部として機能するメモリ装置、磁気ディスク装置を有している。
ここでは、構造化・半構造化文書として図24Aに示すHTML文書を、当該HTML文書のレイアウトの情報が記述された文書として図24Bに示すXML文書を対象に説明する。
ユーザが携帯電話からhttp://www.nec.co.jp/news.htmlというURLを入力した場合、中央演算装置は、ネットワークを介して当該URLを取得し、さらにこれに対応する図24Aに示すHTML文書を取得し、メモリ装置に記憶する。また中央演算装置は、HTML文書を解析し当該文書のレイアウトの情報が記述された文書のURL、http://www.nec.co.jp/news.rdfを取得し、さらにこれに対応する図24Bに示すXML文書を取得し、メモリ装置に記憶する。
中央演算装置は、HTML文書とXML文書をメモリ装置から取得し、XML文書から全てのレイアウトの構成要素、urn:layout:1、urn:layout:2、urn:layout:2:1、urn:layout:2:2を抽出し、それぞれのレイアウトの構成要素についてタイトルに対応するHTML文書の要素、/body[1]/h1[1]、/body[1]/table[2]/tr[1]/td[1]/table[1]/tr[1]、/body[1]/table[2]/tr[1]/td[2]/table[1]/tr[1]をさらに抽出する。ここで、タイトルに対応するHTML文書の要素をHTML文書に照らし合わせ、それぞれの内容、「主要なニュース」、「政治」、「経済」を抽出し、A要素といったHTML文書の要素を付加して順に並べることで、図25に示すレンダリングイメージを持つ目次文書を生成する。生成された目次文書は、ネットワーク、携帯電話のWebブラウザを介してユーザに提示される。
ユーザが提示された目次HTML文書から「政治」を選んだ場合、中央演算装置は、ネットワークを介してこの情報を取得し、XML文書から「政治」をタイトルとして持つレイアウトの構成要素、urn:layout:2:1を抽出し、当該構成要素に属するHTML文書の要素、/body[1]/table[2]/tr[1]/td[1]を更に抽出する。また、構成要素に対応するHTML文書の要素をHTML文書に照らし合わせ、その内容を抽出し、目次へのリンクを始めとするナビゲーションを目的とするHTML文書の要素を付加して順に並べることで、図26に示すレンダリングイメージを持つ「政治」の内容に関する文書を生成する。生成された文書は、ネットワーク、携帯電話のWebブラウザを介してユーザに提示される。ここで、ユーザが提示された文書から目次を選んだ場合、中央演算装置は、再度目次文書を生成し、ユーザに提示する。また、同文書から「前」や「次」を選んだ場合、中央演算装置は、「政治」の前や次の項目である「主要なニュース」や「経済」の内容に関する文書を生成し、ユーザに提示する。
次に、本発明の第5の実施例を図面を参照して説明する。かかる実施例は本発明の第5の実施の形態に対応するものである。本実施例は、データ記憶装置としてパーソナルコンピュータを備えている。
パーソナルコンピュータは、文書入力部、合成文書出力部として機能する中央演算装置と、構造化・半構造化文書記憶部、レイアウト文書記憶部として機能するメモリ装置、磁気ディスク装置を有している。また、磁気ディスク装置には、図29に示すような出力構成要素に関する情報が記憶されている。
ここでは、構造化・半構造化文書として図24Aと図30Aに示すHTML文書を、それぞれのHTML文書のレイアウトの情報が記述された文書として図24Bと図30Bに示すXML文書を対象に説明する。
中央演算装置は、出力構成要素に関する情報に記述された、http://www.nec.co.jp/news.htmlとhttp://www.nec.co.jp/stock.htmlの2つのURLを取得し、さらにこれに対応する図24Aと図30Aに示すHTML文書を取得し、メモリ装置に記憶する。また、中央演算装置は、それぞれのHTML文書を解析し当該文書のレイアウトの情報が記述された文書のURL、http://www.nec.co.jp/news.rdfとhttp://www.nec.co.jp/stock.rdfを取得し、さらにこれに対応する図24Bと図30Bに示すXML文書を取得し、メモリ装置に記憶する。
中央演算装置は、出力構成要素に関する情報から、2つのURLに対応する文書の出力する構成要素のID、urn:layout:2:1、urn:layout:1を取得する。更に、中央演算装置は、HTML文書とXML文書をメモリ装置から取得し、XML文書から出力する構成要素のIDに対応するHTML文書の要素、すなわち、http://www.nec.co.jp/news.htmlについては/body[1]/table[2]/tr[1]/td[1]/table[1]/tr[1]を、http://www.nec.co.jp/stock.htmlについては/body[1]/table[1]を抽出する。ここで出力する構成要素に対応するHTML文書の要素をHTML文書に照らし合わせ、整形して順に並べることで、図31に示すレンダリングイメージを持つ合成文書を生成する。生成された合成文書は、例えば、ネットワーク、携帯電話のWebブラウザを介してユーザに提示される。
次に、本発明の第6の実施例を図面を参照して説明する。かかる実施例は本発明の第9の実施の形態に対応するものである。本実施例は、データ処理装置、データ記憶装置としてパーソナルコンピュータを備えている。
パーソナルコンピュータは、入力部、レイアウト解析部、出力部、基本レイアウト解析部、タイトル解析部、レイアウト解析部F、ブロック選別部、セクション計算部として機能する中央演算装置と、レンダリング結果記憶部、解析結果記憶部として機能するメモリ装置、磁気ディスク記憶装置を有している。また、磁気ディスク記憶装置にはタイトル解析ルールが記憶されている。
ここでは、構造化・半構造化文書として図37に示すHTML文書を対象に説明する。中央演算装置は、HTML文書を外部から取得し、当該文書をレンダリングし、レンダリング結果をメモリ装置に記憶する。
中央演算装置は、レンダリング結果を取得し、第1のレイアウトの構成要素とその階層関係を解析する。この機能や動作は、第1の実施例に示すものと同じである。
中央演算装置は、レンダリング結果とタイトル解析ルールを取得し、タイトルを解析する。この機能や動作は、第2の実施例に示すものと同じである。
中央演算装置は、解析された第1のレイアウト、第2のレイアウトを取得し、分割可能な第2のレイアウトの構成要素1つを選別し、これを構成する第1のレイアウトの構成要素を解析対象とする。図38は解析の途中の状態を表している。ここで、/body[1]/div[2]〜div[6]で成る第2のレイアウトの構成要素は、これを構成する第1のレイアウトの構成要素、すなわち/body[1]/div[2]、/body[1]/div[3]、・・・、/body[1]/div[6]それぞれで成る構成要素のうちタイトルをもつものが2つ以上あるため、分割可能な第2のレイアウトの構成要素となっている。そこでこの場合、/body[1]/div[2]、/body[1]/div[3]、・・・、/body[1]/div[6]それぞれで成る構成要素が解析対象の第1のレイアウトの構成要素となる。
中央演算装置は、解析されたタイトルを取得し、図39に示すように解析対象の第1のレイアウトの構成要素に内包されるタイトルを選別する。さらに、選別されたタイトルの位置を調べ、図40に示すように最も左に位置する/body[1]/div[2]で成るタイトルの左端を起点に水平方向に所定距離以内に左端が位置する/body[1]/div[2]で成るタイトル、/body[1]/div[4]で成るタイトルを主要なタイトルとして選別する。さらに、図41に示すように主要なタイトルを内包する第1のレイアウトの構成要素を主要な構成要素とする。
なお、主要なタイトルを選別する方法として、図42に示すように背景色などスタイルが類似するタイトルを主要なタイトルとして選別する方法や、図43に示すように位置を基準に一定数あるいは一定割合のタイトルを主要なタイトルとして選別する方法、位置やスタイルの類似度を組み合わせて主要なタイトルを選別する方法などを用いてもよい。
また、解析対象の第1のレイアウトの構成要素について、図44に示すように当該構成要素が境界線か否かを判定し、境界線と判定したものを主要な構成要素としてもよい。ここでは構成要素の内容により、hr要素を持つ/body[1]/div[5]で成る構成要素を主要な構成要素としている。なお、境界線の判定方法として、解析対象の第1のレイアウトの構成要素の幅や高さ、当該構成要素を構成する文書記述要素の境界などのスタイル、当該構成要素を構成する文書記述要素の内容である画像の幅や高さなどを用いてもよい。
中央演算装置は、図45に示すように主要でない構成要素を主要な構成要素、または主要でない別の構成要素と、ソース上の距離に基づきグループ化し新たな第2のレイアウトの構成要素を生成する。例えば/body[1]/div[3]で成る主要でない構成要素は、ソース上先頭に向かって最も近い主要な構成要素、/body[1]/div[2]で成る構成要素とグループ化する。ここで解析された2つの新たな第2のレイアウトの構成要素は、元の第2のレイアウトの構成要素の子供としてメモリ装置に記憶する。なお、解析された第2のレイアウトの構成要素を元の第2のレイアウトの構成要素と置き換えてメモリ装置に記憶してもよいし、元の第2のレイアウトの構成要素や解析された第2のレイアウトの構成要素のスタイルや内容に基づき、置き換えて記憶するか、子供として記憶するかを選択してもよい。同様の処理を分割可能な第2のレイアウトの構成要素に適用することで、第2のレイアウトの構成要素とその階層関係を完全に解析できる。
中央演算装置は、解析された第2のレイアウトの構成要素とその階層関係、及び各構成要素とタイトルとの対応関係の情報をメモリ装置から取得し、第2のレイアウトの構成要素とタイトルをHTML文書の要素の参照を用いて表現する形式、例えば、第3の実施例に示す形式に整形し、外部に出力する。ここでレイアウトの構成要素にIDを与えて出力してもよい。
上記の実施形態を実施することにより、発明が解決しようとする課題として記載した本発明の目的を達成できる。
本発明の第1の文書解析システムは、構造化・半構造化文書のレンダリング結果を取得し、文書記述要素の配置を参照し並置された文書記述要素をグループ化することでレイアウトを解析する基本レイアウト解析部(図1の14)と、解析されたレイアウトを、レイアウトの構成要素を文書記述要素の参照を用いて表現する形式で出力する出力部(図1の13)を有する。このような構成を採用し、文書記述要素の配置に基づきレイアウトを解析し、解析されたレイアウトを第三者が利用できる形式で出力することにより、本発明の第1、第3の目的を達成できる。
本発明の第2の文書解析システムは、タイトル解析ルールを記憶したタイトル解析ルール記憶部(図11の23)と、構造化・半構造化文書のレンダリング結果とタイトル解析ルールを取得し、文書記述要素の名前に加え、属性、スタイル、内容をタイトル解析ルールと照合することでタイトルを解析するタイトル解析部(図11の15)と、解析されたタイトルを文書記述要素の参照を用いて表現する形式で出力する出力部(図11の13)を有する。このような構成を採用し、文書記述要素の名前に加え、属性、スタイル、内容を用いて網羅的にタイトルを解析し、解析されたタイトルを第三者が利用できる形式で出力することにより、本発明の第2、第3の目的を達成できる。
本発明の第3の文書解析システムは、タイトル解析ルールを記憶したタイトル解析ルール記憶部(図16の23)と、構造化・半構造化文書のレンダリング結果を取得し、文書記述要素の配置を参照し並置された文書記述要素をグループ化することでレイアウトを解析する基本レイアウト解析部(図16の14)と、構造化・半構造化文書のレンダリング結果とタイトル解析ルールを取得し、文書記述要素の名前に加え、属性、スタイル、内容をタイトル解析ルールと照合することでタイトルを解析するタイトル解析部(図16の15)と、基本レイアウト解析部で解析されたレイアウトとタイトル解析部で解析されたタイトルを取得し、タイトルを持たないレイアウトの構成要素をタイトルを持つレイアウトの構成要素、又はタイトルを持たないレイアウトの構成要素とグループ化することで新しいレイアウトを生成するレイアウト解析部(図16の16)と、解析された新しいレイアウトを、レイアウトの構成要素とタイトルを文書記述要素の参照を用いて表現する形式で出力する出力部(図16の13)を有する。このような構成を採用し、タイトルを代表情報とする関連した構成要素の集合を新しい構成要素とする新しいレイアウトを生成し、解析されたレイアウトとタイトルを第三者が利用できる形式で出力することにより、本発明の第1、第2、第3の目的を達成できる。
本発明の第1の文書適応システムは、ユーザが所望する構造化・半構造化文書のURI(Uniform Resource Identifiers)を取得する、またユーザ入力を取得し、目次文書や目次の項目の内容を記述した文書の出力を制御する入力部(図22の51)と、ユーザが所望する構造化・半構造化文書のURIに対応する文書を取得し、また取得した文書に対応するレイアウトの情報が記述された文書を取得する文書入力部(図22の52)と、ユーザが所望する構造化・半構造化文書と当該文書のレイアウトの情報が記述された文書を取得し、目次文書を生成、出力する目次文書出力部(図22の53)と、ユーザが所望する構造化・半構造化文書と当該文書のレイアウトの情報が記述された文書を取得し、指定された目次の項目の内容を記述した文書を生成、出力する項目文書出力部(図22の54)を有する。このような構成を採用し、構造化・半構造化文書と当該文書の論理構造を適切に反映するレイアウトの情報が記述された文書を用いて目次文書や目次の項目の内容を記述した文書を生成、出力することにより、文書提供者が意図する文書の論理構造を的確に捉えた目次を用いて文書を閲覧できるようになり、本発明の第4の目的を達成できる。
本発明の第2の文書適応システムは、出力構成要素に関する情報を記憶した出力構成要素記憶部(図27の81)と、出力構成要素に関する情報を取得し、当該情報に記述されたURIに対応する構造化・半構造化文書を取得し、また取得した文書に対応するレイアウトの情報が記述された文書を取得する文書入力部(図27の71)と、出力構成要素に関する情報と構造化・半構造化文書と当該文書のレイアウトの情報が記述された文書を取得し、合成文書を生成、出力する合成文書出力部(図27の72)を有する。このような構成を採用し、出力構成要素に関する情報と構造化・半構造化文書と当該文書の論理構造を適切に反映するレイアウトの情報が記述された文書を用いて、指定されたレイアウトの構成要素から成る合成文書を生成、出力することにより、文書提供者が意図する文書の論理構造を的確に捉えた合成文書を用いて文書の必要な部分だけを閲覧できるようになり、本発明の第4の目的を達成できる。