(57)【要約】【課題】構造化文書の変換により利用可能な文書情報（テキスト）を欠落させることなく、構造化文書の文書処理の効率を向上させることができる構造化文書変換装置を実現する。【解決手段】構造化文書の構造を解析し、要素及びテキストの各ノードの親子関係を特定する階層情報を含む木構造を作成する構造解析部３２と、該木構造に基づいてテキストノードを抽出することにより、構造化文書の階層を減らす木構造変換部３６とを備える。【選択図】    図３
2004280576.tif 000002
【特許請求の範囲】
【請求項１】
複数の要素またはテキストを有する構造化文書の変換を行う構造化文書変換装置であって、
前記構造化文書の構造を解析し、要素及びテキストの各ノードの親子関係を特定する階層情報を含む木構造を作成する構造解析手段と、
前記木構造に基づいてテキストノードを抽出することにより、前記構造化文書の階層を減らす構造変換手段と、
を備えたことを特徴とする構造化文書変換装置。
【請求項２】
前記構造変換手段は、前記抽出したテキストノードの親要素ノードを当該テキストノードとの親子関係の位置に配置することを特徴とする請求項１に記載の構造化文書変換装置。
【請求項３】
前記構造変換手段は、前記親要素ノードが複数のテキストノードを持つ場合に、該親要素ノードを該テキストノード毎に作成することを特徴とする請求項２に記載の構造化文書変換装置。
【請求項４】
自装置の処理能力に基づいて前記構造変換手段に変換命令を出力する構造変換指示手段を備えたことを特徴とする請求項１乃至請求項３のいずれかの項に記載の構造化文書変換装置。
【請求項５】
前記階層情報は、同一の親ノードについての子ノードの出現順序を含み、
前記構造変換手段は、前記階層情報に含まれる出現順序に従ってテキストノードを配置する
ことを特徴とする請求項１乃至請求項４のいずれかの項に記載の構造化文書変換装置。
【請求項６】
前記階層情報を記憶する階層構造記憶手段を備えることを特徴とする請求項５に記載の構造化文書変換装置。
【請求項７】
前記構造変換手段により変換された前記構造化文書についての文書処理を行う文書処理手段を具備することを特徴とする請求項１乃至請求項６のいずれかの項に記載の構造化文書変換装置。
【請求項８】
複数の要素またはテキストを有する構造化文書の変換を行う構造化文書変換方法であって、
前記構造化文書の構造を解析する過程と、
この解析結果に基づき、要素及びテキストの各ノードの親子関係を特定する階層情報を含む木構造を作成する過程と、
前記木構造に基づいてテキストノードを抽出することにより、前記構造化文書の階層を減らす過程と、
を含むことを特徴とする構造化文書変換方法。
【請求項９】
複数の要素またはテキストを有する構造化文書の変換を行う構造化文書変換処理を行うための構造化文書変換プログラムであって、
前記構造化文書の構造を解析する処理と、
この解析結果に基づき、要素及びテキストの各ノードの親子関係を特定する階層情報を含む木構造を作成する処理と、
前記木構造に基づいてテキストノードを抽出することにより、前記構造化文書の階層を減らす処理と、
をコンピュータに実行させることを特徴とする構造化文書変換プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）文書等の構造化文書の変換に用いて好適な構造化文書変換装置、構造化文書変換方法、並びにその構造化文書変換装置をコンピュータを利用して実現するための構造化文書変換プログラムに関する。
【０００２】
【従来の技術】
近年、ネットワーク環境の向上に伴い、異なる種類の端末装置間で文書ファイルの交換が行われるようになっている。例えば、パーソナルコンピュータ（ＰＣ；Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）において作成された文書をネットワークを介して携帯電話機に送信し、送信先の携帯電話機においてその文書ファイルを閲覧するといったことや、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔｓ：個人用情報機器）間において直接文書を送受信して閲覧するといったことが行われている。
【０００３】
上述したように、種類の異なる端末装置間において文書交換を実現するために、ＸＭＬ等のタグ言語が用いられている。ＸＭＬ等のタグ言語は、タグと呼ばれる記号を用いてテキストに文書の構造等を埋め込むことにより、端末装置の種類に依存しない共通の文書形式による構造化文書の作成を可能とするものである。
このために、例えばＸＭＬでは、その統一のための規則がＷ３Ｃ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ  Ｃｏｎｓｏｒｔｉｕｍ）によって正式に勧告されている（例えば、非特許文献１参照）。また、ＸＭＬ文書をメモリ上のオブジェクトに展開し、そのオブジェクトを扱うインタフェースの規格であるＤＯＭ（Ｄｏｃｕｍｅｎｔ  Ｏｂｊｅｃｔ  Ｍｏｄｅｌ）もＷ３Ｃによって勧告されている。
【０００４】
そして、一つの構造化文書を各種の端末装置間で使用するために構造化文書を変換する構造化文書変換装置が知られている。従来の構造化文書変換装置は、構造化文書の各要素に優先度を設定しておき、構造化文書を使用する端末装置の処理能力に応じて当該端末装置に適合する要素を利用している（例えば、特許文献１参照）。
【０００５】
【非特許文献１】
Ｔｉｍ  Ｂｒａｙ、外３名、“Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ  （ＸＭＬ）  １．０  （Ｓｅｃｏｎｄ  Ｅｄｉｔｉｏｎ）”、［ｏｎｌｉｎｅ］、２０００年１０月６日、Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ  Ｃｏｎｓｏｒｔｉｕｍ、［平成１４年１２月２７日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｗ３．ｏｒｇ／ＴＲ／ＲＥＣ−ｘｍｌ＞
【特許文献１】
特開２００２−２８８１５４号公報
【０００６】
【発明が解決しようとする課題】
しかし、上述した従来の構造化文書変換装置では、端末装置の処理能力が十分に高い場合は構造化文書の文書処理（表示、印刷等）時に全ての文書情報（テキスト）を利用可能であるが、処理能力が不十分な場合には文書情報の一部が欠落する虞がある。また、ＤＯＭの仕様では木構造の階層の深さに応じて階層を追うためのスタック領域が必要となるために、処理能力が低い端末装置ではさらに負荷が重くなり、構造化文書の文書処理に制限が生じるという問題もある。
【０００７】
本発明は、このような事情を考慮してなされたもので、その目的は、構造化文書の変換により利用可能な文書情報（テキスト）を欠落させることなく、構造化文書の文書処理の効率を向上させることができる構造化文書変換装置、構造化文書変換方法を提供することにある。
【０００８】
また、本発明の他の目的は、その構造化文書変換装置をコンピュータを利用して実現するための構造化文書変換プログラムを提供することにある。
【０００９】
【課題を解決するための手段】
上記の課題を解決するために、本発明の構造化文書変換装置は、複数の要素またはテキストを有する構造化文書の変換を行う構造化文書変換装置であって、前記構造化文書の構造を解析し、要素及びテキストの各ノードの親子関係を特定する階層情報を含む木構造を作成する構造解析手段と、前記木構造に基づいてテキストノードを抽出することにより、前記構造化文書の階層を減らす構造変換手段とを備えたことを特徴としている。
この発明によれば、文書情報（テキスト）を欠落させることなく構造化文書の階層が減らされるとともに、文書として重要なテキスト情報に関するノードのみで構造化文書が構成されるので、構造化文書の文書処理の効率が非常に向上する。
【００１０】
また、本発明の構造化文書変換装置においては、前記構造変換手段は、前記抽出したテキストノードの親要素ノードを当該テキストノードとの親子関係の位置に配置することを特徴とする。
この発明によれば、親要素の情報が変換後の構造化文書に反映されるので、文書が精度よく再現される。
【００１１】
また、本発明の構造化文書変換装置においては、前記構造変換手段は、前記親要素ノードが複数のテキストノードを持つ場合に、該親要素ノードを該テキストノード毎に作成することを特徴とする。
この発明によれば、変換後の構造化文書に親要素の情報が各テキストに反映されないために、変換後においてテキストの出現順序が部分的に変わってしまうことを防止できる。
【００１２】
また、本発明の構造化文書変換装置においては、自装置の処理能力に基づいて前記構造変換手段に変換命令を出力する構造変換指示手段を備えたことを特徴とする。
この発明によれば、自装置の処理能力に基づいて変換が実行されるので、自装置に適合した構造化文書に変換することができる。これにより、処理能力が特に低い端末装置、例えばＰＤＡにおいても適切な構造化文書の文書処理（表示等）を行うことができる。また、処理能力に十分余裕のある端末装置においては元の構造化文書に基づいて文書処理を行うことができる。
【００１３】
また、本発明の構造化文書変換装置においては、前記階層情報は、同一の親ノードについての子ノードの出現順序を含み、前記構造変換手段は、前記階層情報に含まれる出現順序に従ってテキストノードを配置することを特徴とする。
この発明によれば、構造化文書に含まれるテキストノードの出現順序が、変換しても保たれるので、変換後の構造化文書の利用性が向上する。
【００１４】
また、本発明の構造化文書変換装置においては、前記階層情報を記憶する階層構造記憶手段を備えることを特徴とする。
この発明によれば、記憶されている情報を元に、レイアウトや変換後の木構造を元の木構造に戻す等の処理を容易に行うことが可能となる。
【００１５】
また、本発明の構造化文書変換装置においては、前記構造変換手段により変換された前記構造化文書についての文書処理を行う文書処理手段を具備することを特徴とする。
この発明によれば、構造化文書の階層が減らされるとともに、文書として重要なテキスト情報に関するノードのみで構造化文書が構成されているので、レイアウト等のアプリケーション側の処理負荷が効率よく軽減される。
【００１６】
本発明の構造化文書変換方法は、複数の要素またはテキストを有する構造化文書の変換を行う構造化文書変換方法であって、前記構造化文書の構造を解析する過程と、この解析結果に基づき、要素及びテキストの各ノードの親子関係を特定する階層情報を含む木構造を作成する過程と、前記木構造に基づいてテキストノードを抽出することにより、前記構造化文書の階層を減らす過程とを含むことを特徴としている。
【００１７】
本発明の構造化文書変換プログラムは、複数の要素またはテキストを有する構造化文書の変換を行う構造化文書変換処理を行うための構造化文書変換プログラムであって、前記構造化文書の構造を解析する処理と、この解析結果に基づき、要素及びテキストの各ノードの親子関係を特定する階層情報を含む木構造を作成する処理と、前記木構造に基づいてテキストノードを抽出することにより、前記構造化文書の階層を減らす処理とをコンピュータに実行させることを特徴としている。
これにより、前述の構造化文書変換装置がコンピュータを利用して実現できるようになる。
【００１８】
【発明の実施の形態】
以下、図面を参照し、本発明の実施形態について説明する。
図１は、本発明の一実施形態による構造化文書変換装置を適用した文書交換システムの構成例を示すブロック図である。図１において、文書交換システムは、ＰＣ１とＰＤＡ２とプリンタ３とサーバ４とを有し、これらの機器１〜４がインターネット５に接続可能なように構成される。また、図１中の構造化文書は、各機器間で交換されるものとして示されている。
【００１９】
ＰＣ１，ＰＤＡ２，プリンタ３は、各機器間での端末間通信機能を備えた端末装置である。さらに、ＰＣ１，ＰＤＡ２，プリンタ３は、インターネット５を介してサーバ４と通信するためのネットワーク通信機能を備えている。これらの各機器１〜３には、本発明の実施形態による構造化文書変換装置が適用されている。なお、端末間通信機能及びネットワーク通信機能については、当該端末装置の通信環境に応じて設ければよい。
サーバ４は、一般的なＷｅｂサーバであり、インターネット５を介して各機器１〜３に構造化文書を配信する。
以下、本発明の実施例である端末装置については、ＰＣ１を例に挙げて説明する。
【００２０】
図２は、ＰＣ１のハードウェア構成を示すブロック図である。図２において、ＰＣ１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１と、メモリ１２と、ファイルシステム１３と、端末間通信インターフェース１４と、ネットワークインターフェース１５と、Ｉ／Ｏコントローラ１６と、Ｉ／Ｏ装置１７と、表示コントローラ１８と、表示装置１９とから構成される。
【００２１】
ＣＰＵ１１は、ＰＣ１全体を制御するもので、Ｉ／Ｏ装置１７から入力される各種の指示信号に従って、ファイルシステム１３に記憶された各種処理に関するプログラムを読み出して実行する。例えば、ＣＰＵ１１は、サーバ４等から構造化文書ファイルを受信した場合に、構造化文書変換プログラムにより構造化文書変換処理を実行する。そして、その構造化文書変換処理により、受信した構造化文書ファイルの内容を自装置に適合させる。例えばＣＰＵ１１の現在の処理負荷が過大な時に文書の階層数を減らし、この変換後の文書構造により表示、印刷等の文書処理を行う。そして、ＣＰＵ１１は、各種プログラムを実行した処理結果をメモリ１２やファイルシステム１３の所定の領域に格納したり、表示装置１９に表示させたりする。
【００２２】
メモリ１２は、ＣＰＵ１１により実行される各種処理において生成された各種データを一時的に記憶する。ファイルシステム１３は、ハードディスク装置やフラッシュＲＯＭ等の不揮発性記憶装置（記憶媒体）で構成される。このファイルシステム１３は、構造化文書変換処理のためのプログラムおよびＰＣ１の制御のための各種処理に関するプログラムを記憶する。
【００２３】
端末間通信インターフェース１４は、ＩｒＤＡ（Ｉｎｆｒａｒｅｄ  Ｄａｔａ  Ａｓｓｏｃｉａｔｉｏｎ）やブルートゥース（Ｂｌｕｅｔｏｏｔｈ）等の通信インターフェースであり、ＣＰＵ１１から送信指示された各種データに対し、端末間通信を行うための所定の形式へのデータ変換処理を施してＰＤＡ２等の他の端末装置に出力する。また、端末間通信インターフェース１４は、他の端末装置から受信した信号に所定のデータ変換処理を施して、ＣＰＵ１１に出力する。
【００２４】
ネットワークインターフェース１５は、イーサネット（登録商標）アダプタ（Ｅｔｈｅｒｎｅｔ（登録商標）  Ａｄａｐｔｏｒ）やダイヤルアップ接続のためのモデム等の通信インターフェースであり、ＣＰＵ１１から送信指示された各種データに対し、インターネット５を介して送信するための所定の形式へのデータ変換処理を施してサーバ４に送信する。また、ネットワークインターフェース１５は、インターネット５を介して受信した信号に所定のデータ変換処理を施して、ＣＰＵ１１に出力する。
【００２５】
Ｉ／Ｏコントローラ１６は、Ｉ／Ｏ装置１７から入力された信号のＣＰＵ１１への入力の制御を行う。Ｉ／Ｏ装置１７は、キーボード等のキースイッチ、タッチパネルあるいはマウス等のポインティングデバイスを含み、キースイッチの押下信号やポインティングデバイスの位置信号をＩ／Ｏコントローラ１６を介してＣＰＵ１１に出力する。
【００２６】
表示コントローラ１８は、表示装置１９で表示される表示データの表示装置１９に対する出力を制御する。表示装置１９は、例えばドットマトリクスタイプのカラー液晶表示セルやＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）等から構成され、表示コントローラ１８から入力された各種データを表示する。
【００２７】
なお、文書を閲覧するための装置は、表示装置のほか、印字装置（プリンタ）等であってもよく、構造化文書ファイルの内容を印刷して閲覧することも可能である。
【００２８】
図３は、上記図２のハードウエア構成によって実現される本実施形態の構造化文書変換装置の機能構成を示すブロック図である。図３において、構造化文書変換装置は、入力部３１と構造解析部３２とレイアウト部３３と出力部３４と構造変換指示部３５と木構造変換部３６とを有する。
【００２９】
入力部３１は処理対象となる構造化文書データの入力処理を行う。入力された構造化文書データは構造解析部３２に出力される。図４に入力される構造化文書の例を示す。図４の構造化文書は、ＸＨＴＭＬ  Ｂａｓｉｃに基づいて記述された木構造を有するものである。この構造化文書には各種の要素が含まれている。この“要素”とは、構造化文書中、開始タグと終了タグとに挟まれた文書の構成要素である。そして、要素の中に下位の要素が階層的に含まれるというように、構造化文書は木構造を有するものとなっている。
【００３０】
図４の例では、ＸＭＬ規則に基づき、「＜」と「＞」で囲まれた文字列をタグ、「＜文字列＞」を開始タグ、「＜／文字列＞」を終了タグ、開始タグと終了タグで挟まれた文字列を要素、タグ内に記述される要素の名前を要素名、要素に対する付加情報を属性と称する。
【００３１】
なお、構造化文書データを記述する言語は、端末装置の種類に依存しない他の言語（ＸＨＴＭＬ１．０等のＸＭＬに基づく言語等）で記述することが可能である。
【００３２】
構造解析部３２は、入力部３１から入力された構造化文書データを元に当該構造化文書の構造を解析する。そして、解析した構造化文書の木構造を作成する。この作成時に、構造解析部３２は各ノードの階層情報を木構造データに含める。上記階層情報とは、要素及びテキストの各ノードの親子関係を特定する情報である。例えば、ノードが位置する階層を特定する所定の符号が利用可能である。また、階層情報には、同一の親ノードについての子ノードの出現順序を含めるようにしてもよい。
構造解析部３２は、構造変換指示部３５からの変換命令により、作成した木構造のデータを木構造変換部３６に出力する。構造変換指示部３５からの変換命令がない場合には、作成した木構造のデータをレイアウト部３３に出力する。
【００３３】
レイアウト部３３は、構造解析部３２あるいは木構造変換部３６から入力された木構造データを元に当該構造化文書の表示、印刷等に使用されるレイアウト情報を作成する。作成されたレイアウト情報は出力部３４に出力される。出力部３４はレイアウト部３３から入力されたレイアウト情報を使用して当該構造化文書の表示、印刷等の出力処理を行う。
【００３４】
構造変換指示部３５は、処理対象の構造化文書についての変換命令を構造解析部３２に出力する。この変換命令は、構造化文書の階層を減らすための命令である。構造変換指示部３５は、自装置の処理能力に基づいて変換命令を出力する。
【００３５】
例えば、処理対象の構造化文書をそのまま処理可能であると判断するための所定の閾値以上に、処理能力の余裕がある場合は変換命令を出力しない。一方、処理対象の構造化文書をそのまま処理するには処理能力が不足すると判断するための所定の閾値以下に、処理能力の余裕が低下している場合には変換命令を出力する。
【００３６】
木構造変換部３６は、構造解析部３２から入力された木構造データに基づき、当該木構造の変換を行う。この変換ではテキストノードを抽出することにより、構造化文書の階層が削減される。木構造変換部３６は、変換後の木構造データをレイアウト部３３に出力する。
【００３７】
次に、図５、図６のフローチャートを参照して、上記図３に示す構造化文書変換装置の動作を説明する。図５は、構造解析部３２が行う処理の流れを示すフローチャートである。図６は、木構造変換部３６が行う処理の流れを示すフローチャートである。
【００３８】
初めに、図５を参照して構造解析部３２の動作を説明する。
先ず、入力部３１が処理対象となる構造化文書データの入力処理を行い、構造解析部３２に出力する。図５において、構造解析部３２は、構造化文書データが入力されると（ステップＳ１）、該構造化文書データ内のテキストデータの先頭から字句解析を行い、この解析結果から処理対象を判定し、当該構造化文書の木構造に含めるノードを生成する（ステップＳ２）。例えば、ＸＭＬ規則に準拠した構造化文書の場合、処理対象としては文書型定義、要素、属性、テキストなどがあるが、ここでは要素及びテキストについてノードを生成する。
【００３９】
次いで、該生成されたノード（生成ノード）の親となるノード（親ノード）及び兄となるノード（兄ノード）があるか否かを判定する（ステップＳ３）。親ノードは自ノードを配下に有しており、且つ、自ノードの階層の一つ上の階層に位置しているノードである。この親子関係から、自ノードは親ノードの子となるノード（子ノード）となる。兄ノードは、同一の親ノードについての子ノードであって自ノードより出現順序が早いノードである。例えば、図４において、「ｈｔｍｌ」要素ノード１０１は、最上位階層に位置するノードであり、親ノードも兄ノードもない。「ｈｅａｄ」要素ノード１０２及び「ｂｏｄｙ」要素ノード１０３は、「ｈｔｍｌ」要素ノード１０１を親ノードとして持つ。そして、「ｈｅａｄ」要素ノード１０２は、「ｂｏｄｙ」要素ノード１０３の兄ノードである。
【００４０】
次いで、ステップＳ３の判定の結果、親ノード及び兄ノードともにない場合は、階層が「０」である符号を階層情報として生成ノードに設定する（ステップＳ３）。他方、親ノードのみある場合は、親ノードの階層情報を取得する（ステップＳ５）。そして、該取得した階層情報の符号に１階層分を加え、さらに出現順序を「１」にし、階層情報として生成ノードに設定する（ステップＳ６）。他方、親ノード及び兄ノードともにある場合は、兄ノードの階層情報を取得する（ステップＳ７）。そして、該取得した階層情報の符号における階層はそのままで、出現順序に１を加えて符号を階層情報として生成ノードに設定する（ステップＳ８）。
【００４１】
次いで、全てのテキストデータの字句解析が終了したか否かを判断し（ステップＳ９）、終了していない場合にはステップＳ２へ戻り、終了した場合には構造変換指示部３５の情報を取得する（ステップＳ１０）。この取得した情報の中に変換命令があった場合には、作成した木構造のデータを木構造変換部３６に出力する（ステップＳ１２）。一方、変換命令がなかった場合には、作成した木構造のデータをレイアウト部３３に出力する（ステップＳ１３）。
【００４２】
図７は、構造解析部３２により作成された木構造の例である。この木構造は図４の構造化文書についてのものである。図７において、各ノードには階層情報（カッコ内の符号）が設定されている。
【００４３】
例えば、「ｈｔｍｌ」要素ノード１０１には、最上位階層を示す符号「０」が設定されている。「ｈｅａｄ」要素ノード１０２には、「ｈｔｍｌ」要素ノード１０１の一つ下の階層を示し、且つ出現順序が１である符号「１」が設定されている。「ｂｏｄｙ」要素ノード１０３には、「ｈｔｍｌ」要素ノード１０１の一つ下の階層を示し、且つ出現順序が２である符号「２」が設定されている。「ｄｉｖ」要素ノード２０１には、「ｂｏｄｙ」要素ノード１０３の一つ下の階層を示す符号「２．１」が設定されている。「ｈ１」要素ノード２０２には「ｄｉｖ」要素ノード２０１の一つ下の階層を示し且つ出現順序が１である符号「２．１．１」が、「ｄｉｖ」要素ノード２０３には「ｄｉｖ」要素ノード２０１の一つ下の階層を示し且つ出現順序が２である符号「２．１．２」が、「ｄｉｖ」要素ノード２０４には「ｄｉｖ」要素ノード２０１の一つ下の階層を示し且つ出現順序が３である符号「２．１．３」が、それぞれ設定されている。
【００４４】
次に、図６を参照して木構造変換部３６の動作を説明する。
図６において、木構造変換部３６は、構造解析部３２から木構造データを受け取ると（ステップＳ２１）、該木構造からルート要素ノードを切り離す（ステップＳ２２）。例えば、図７の木構造では「ｈｔｍｌ」要素ノード１０１がルート要素ノードであり、この「ｈｔｍｌ」要素ノード１０１が木構造から切り離される。
【００４５】
次いで、残りの木構造からテキストノードを、上位の階層から順に検索する（ステップＳ２３）。この検索によりテキストノードが検出されると（ステップＳ２４の判断結果がＹＥＳの場合）、該検出したテキストノードの親要素ノードが複数のテキストノードを持っているか否かを判断する（ステップＳ２５）。この判断の結果、持っていない場合（ステップＳ２５の判断結果がＮＯの場合）は、検出したテキストノードとその親要素ノードを取得する（ステップＳ２６）。一方、検出したテキストノードの親要素ノードが複数のテキストノードを持っている場合（ステップＳ２５の判断結果がＹＥＳの場合）には、それら複数のテキストノードとその親要素ノードを取得し、それらテキストノード毎に親要素ノードの複製を作成する（ステップＳ２７）。
【００４６】
次いで、ステップＳ２８では、ルート要素ノードの子ノードとして親要素ノードを配置し、その親要素ノードの子ノードとして該当するテキストノードを配置する。この配置時には、階層情報の出現順序に基づき、テキストノードの出現順序に従うようにする。
【００４７】
上記ステップＳ２３〜Ｓ２８の処理をテキストノードの全てが抽出されるまで繰り返す。そして、全てのテキストノードの抽出が完了した場合（ステップＳ２４の判断結果がＮＯの場合）に、変換した木構造のデータをレイアウト部３３に出力する。
【００４８】
図８は、図７の木構造についての変換後の木構造の例を示す図である。図８に示すように、ルート要素ノードである「ｈｔｍｌ」要素ノード１０１の配下に、テキストノードとその親要素ノードがテキストノードの出現順に配置されている。例えば、出現順序が最も早いテキストノード３０２が、その親要素ノードである「ｔｉｔｌｅ」要素ノード３０１の子ノードとして最初に配置されている。また、出現順序が２番目のテキストノード３０３が、その親要素ノードである「ｈ１」要素ノード２０２の子ノードとして、２番目に配置されている。また、同一の親要素ノード（「ｄｉｖ」要素ノード２０３）の子ノードであるテキストノード３０４，３０５については、その親要素ノードが複製され、それぞれ「ｄｉｖ」要素ノード２０３ａ，２０３ｂの子ノードとして、各出現順序に従って配置されている。
【００４９】
レイアウト部３３は、構造解析部３２あるいは木構造変換部３６から入力された木構造を使用して構造化文書のレイアウト情報を作成する。図９は、変換後の木構造に対応する構造化文書の例を示す図である。図９には、図８の木構造に対応する変換後の図４の構造化文書が示されている。これら変換後の構造化文書では、文書情報（テキスト）の欠落なく階層が減らされるとともに、ノードの出現順序が保たれている。さらに、文書として重要なテキスト情報に関するノードのみで構成されているので、構造化文書の文書処理の効率が非常によくなる。
【００５０】
上述したように本実施形態によれば、文書情報（テキスト）を欠落させることなく構造化文書の階層が減らされるとともに、文書として重要なテキスト情報に関するノードのみで構造化文書が構成されるので、構造化文書の文書処理の効率が非常に向上する。
【００５１】
また、親要素の情報が変換後の構造化文書に反映されるので、文書が精度よく再現される。
また、同一の親要素ノードの子ノードとして複数のテキストノードがある場合には、該親要素ノードを該テキストノード毎に作成するので、変換後の構造化文書に親要素の情報が各テキストに反映されないために、変換後においてテキストの出現順序が部分的に変わってしまうことを防止できる。
【００５２】
また、自装置の処理能力に基づいて変換が実行されるので、自装置に適合した構造化文書に変換することができる。これにより、処理能力が特に低い端末装置、例えばＰＤＡにおいても適切な構造化文書の文書処理（表示等）を行うことができる。また、処理能力に十分余裕のある端末装置においては元の構造化文書に基づいて文書処理を行うことができる。
【００５３】
また、構造化文書に含まれるテキストノードの出現順序が、変換しても保たれるので、変換後の構造化文書の利用性が向上する。
【００５４】
また、構造化文書の階層が減らされるとともに、文書として重要なテキスト情報に関するノードのみで構造化文書が構成されているので、レイアウト等のアプリケーション側の処理負荷が効率よく軽減される。
【００５５】
なお、上述した実施形態において、構造解析部３２が各ノードの階層情報をデータベースに登録するようにしてもよい。図１０に階層情報の記憶構成例を示す。図１０に示すように、データベースには要素名と階層情報ｉｄが対応付けて記憶される。このデータベースの情報を元に、レイアウトや変換後の木構造を元の木構造に戻す等の処理を容易に行うことが可能である。
【００５６】
また、階層情報には、当該ノードの属性や、当該ノードを表示あるいは印刷する際に必要となる基本的な情報、例えばフォント情報などを含めるようにしてもよい。これにより、レイアウト処理が容易になる。
【００５７】
なお、図３に示す構造化文書変換装置が行う各処理を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより構造化文書変換処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものであってもよい。また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【００５８】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００５９】
以上、本発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【図面の簡単な説明】
【図１】本発明の一実施形態による構造化文書変換装置を適用した文書交換システムの構成例を示すブロック図である。
【図２】ＰＣ１のハードウェア構成を示すブロック図である。
【図３】本実施形態による構造化文書変換装置の機能構成を示すブロック図である。
【図４】処理対象となる構造化文書の例を示す図である。
【図５】構造解析部３２が行う処理の流れを示すフローチャートである。
【図６】木構造変換部３６が行う処理の流れを示すフローチャートである。
【図７】構造解析部３２が作成した木構造の例を示す図である。
【図８】木構造変換部３６により変換後の木構造の例を示す図である。
【図９】変換後の構造化文書の例を示す図である。
【図１０】階層情報の記憶構成例を示す図である。
【符号の説明】
１…パーソナルコンピュータ（ＰＣ）、２…個人用情報機器（ＰＤＡ）、３…プリンタ、４…サーバ、５…インターネット、１１…ＣＰＵ、１２…メモリ、１３…ファイルシステム、１４…端末間通信インターフェース、１５…ネットワークインターフェース、１６…Ｉ／Ｏコントローラ、１７…Ｉ／Ｏ装置、１８…表示コントローラ、１９…表示装置、３１…入力部、３２…構造解析部、３３…レイアウト部、３４…出力部、３５…構造変換指示部、３６…木構造変換部
【図１】
2004280576.tif 000003
【図２】
2004280576.tif 000004
【図３】
2004280576.tif 000005
【図４】
2004280576.tif 000006
【図５】
2004280576.tif 000007
【図６】
2004280576.tif 000008
【図７】
2004280576.tif 000009
【図８】
2004280576.tif 000010
【図９】
2004280576.tif 000011
【図１０】
2004280576.tif 000012