(57)【特許請求の範囲】
【請求項１】
構造化文書に対して表示形式の指定情報を適用して、該構造化文書を表示する表示手段と、
前記表示手段によって表示された構造化文書に対して、編集対象としての範囲を選択する選択手段と、
前記選択手段によって選択された範囲の開始位置及び終了位置を取得する選択範囲取得手段と、
前記選択範囲取得手段によって取得された開始位置から前方に向かって、最初の要素値がある第１の位置を取得し、前記選択範囲取得手段によって取得された終了位置から後方に向かって、最初の要素値がある第２の位置を取得する要素値位置取得手段と、
前記要素値位置取得手段によって取得された前記第１の位置と前記第２の位置の間の範囲内にある文書構造を、前記選択手段の編集対象として取得する構造取得手段
を具備し、
前記文書構造は、開始タグとその開始タグに対応する終了タグによって囲まれた範囲であり、
前記構造取得手段は、前記第１の位置と前記第２の位置の間の範囲内にある先頭の文書構造を取得し、該範囲内に複数の文書構造がある場合は、該複数の文書構造を取得する
ことを特徴とする情報処理装置。
【請求項２】
前記要素値位置取得手段は、第１の位置を取得するのに、最初の要素値がない場合は、前記構造化文書の文頭の位置を前記第１の位置として取得し、第２の位置を取得するのに、最初の要素値がない場合は、前記構造化文書の文末の位置を前記第２の位置として取得する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記構造取得手段は、前記要素値位置取得手段によって取得された第１の位置と第２の位置の間の範囲内に複数の文書構造がある場合は、該範囲内で先頭にある第１の文書構造の階層と該第１の文書構造よりも後にある文書構造である第２の文書構造の階層を比較して、前記構造化文書内において同じ階層又は該第２の文書構造が下位の階層である場合は、該第１の文書構造と該第２の文書構造を含めて、前記選択された範囲内の編集対象として取得する
ことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記要素値位置取得手段によって取得された第１の位置と第２の位置の間の範囲内に複数の文書構造がある場合は、該範囲内で第１の文書構造の階層と該第１の文書構造よりも後にある文書構造である第２の文書構造の階層を比較して、前記構造化文書内において同じ階層ではなく、かつ該第２の文書構造が下位の階層ではない場合は、該第１の文書構造と該第２の文書構造に分割する分割手段
をさらに具備し、
前記構造取得手段は、前記分割手段によって分割された前記第１の文書構造と前記第２の文書構造を、前記選択された範囲内の編集対象としてそれぞれ取得する
ことを特徴とする請求項１から３のいずれか一項に記載の情報処理装置。
【請求項５】
前記構造取得手段によって取得された複数の文書構造のいずれか一つ又は複数を選択し得るようにする第２の選択手段
をさらに具備することを特徴とする請求項４に記載の情報処理装置。
【請求項６】
コンピュータを、
構造化文書に対して表示形式の指定情報を適用して、該構造化文書を表示する表示手段と、
前記表示手段によって表示された構造化文書に対して、編集対象としての範囲を選択する選択手段と、
前記選択手段によって選択された範囲の開始位置及び終了位置を取得する選択範囲取得手段と、
前記選択範囲取得手段によって取得された開始位置から前方に向かって、最初の要素値がある第１の位置を取得し、前記選択範囲取得手段によって取得された終了位置から後方に向かって、最初の要素値がある第２の位置を取得する要素値位置取得手段と、
前記要素値位置取得手段によって取得された前記第１の位置と前記第２の位置の間の範囲内にある文書構造を、前記選択手段の編集対象として取得する構造取得手段
として機能させ、
前記文書構造は、開始タグとその開始タグに対応する終了タグによって囲まれた範囲であり、
前記構造取得手段は、前記第１の位置と前記第２の位置の間の範囲内にある先頭の文書構造を取得し、該範囲内に複数の文書構造がある場合は、該複数の文書構造を取得する
ことを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報処理プログラムに関する。
【背景技術】
【０００２】
特許文献１には、ＳＧＭＬ規格の特別な知識を必要とせず、スタイルを反映したでき上がり状態を実際に見ながら、ＳＧＭＬ文書を容易に作成できるＳＧＭＬエディターを提供することを課題とし、ＳＧＭＬエディター本体とデータベースＤＢとを含み、スタイルシート及びＤＴＤに基づき、ＳＧＭＬ文書を作成するＳＧＭＬエディターにおいて、ＳＧＭＬエディター本体が、ＳＧＭＬ化すべきテキストや図の編集処理を実行する手段と、ＳＧＭＬ化すべきテキストや図のうち選択された領域に文書要素を割り当てる手段と、スタイルシート及びＤＴＤの内容を反映してスタイル情報を含む文書をＳＧＭＬ文書としてリアルタイム表示する手段とを含むＳＧＭＬエディターが開示されている。
【０００３】
特許文献２には、構造化文書の木構造のノードを多重化することにより、内容の一部分が異なる複数文書の効率的な一括管理、編集を可能とすることを目的とし、多重ノード生成手段は、複数の文書の内容が相違する部分の論理構造関係が同一の場合に論理要素であるノードを多重化し、属性編集手段は、文書選択のための属性値をノードに付与し、文書選択手段はデータ入力／出力手段によって入力された属性値と各ノードの属性値を比較選択することにより、必要に応じて必要な個別文書又は複数文書を画面表示し、編集を行うことが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−０３５９６１号公報
【特許文献２】特開平０７−０４４５６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、表示形式の指定情報を適用して表示された構造化文書に対して、文書構造単位に選択するという制限を課すことなしに文書構造の選択をすることができるようにした情報処理装置及び情報処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００６】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項１の発明は、構造化文書に対して表示形式の指定情報を適用して、該構造化文書を表示する表示手段と、前記表示手段によって表示された構造化文書に対して、編集対象としての範囲を選択する選択手段と、前記選択手段によって選択された範囲の開始位置及び終了位置を取得する選択範囲取得手段と、前記選択範囲取得手段によって取得された開始位置から前方に向かって、最初の要素値がある第１の位置を取得し、前記選択範囲取得手段によって取得された終了位置から後方に向かって、最初の要素値がある第２の位置を取得する要素値位置取得手段と、前記要素値位置取得手段によって取得された前記第１の位置と前記第２の位置の間の範囲内にある文書構造を、前記選択手段の編集対象として取得する構造取得手段を具備し、前記文書構造は、開始タグとその開始タグに対応する終了タグによって囲まれた範囲であり、前記構造取得手段は、前記第１の位置と前記第２の位置の間の範囲内にある先頭の文書構造を取得し、該範囲内に複数の文書構造がある場合は、該複数の文書構造を取得することを特徴とする情報処理装置である。
【０００７】
請求項２の発明は、前記要素値位置取得手段は、第１の位置を取得するのに、最初の要素値がない場合は、前記構造化文書の文頭の位置を前記第１の位置として取得し、第２の位置を取得するのに、最初の要素値がない場合は、前記構造化文書の文末の位置を前記第２の位置として取得することを特徴とする請求項１に記載の情報処理装置である。
【０００８】
請求項３の発明は、前記構造取得手段は、前記要素値位置取得手段によって取得された第１の位置と第２の位置の間の範囲内に複数の文書構造がある場合は、該範囲内で先頭にある第１の文書構造の階層と該第１の文書構造よりも後にある文書構造である第２の文書構造の階層を比較して、前記構造化文書内において同じ階層又は該第２の文書構造が下位の階層である場合は、該第１の文書構造と該第２の文書構造を含めて、前記選択された範囲内の編集対象として取得することを特徴とする請求項１又は２に記載の情報処理装置である。
【０００９】
請求項４の発明は、前記要素値位置取得手段によって取得された第１の位置と第２の位置の間の範囲内に複数の文書構造がある場合は、該範囲内で第１の文書構造の階層と該第１の文書構造よりも後にある文書構造である第２の文書構造の階層を比較して、前記構造化文書内において同じ階層ではなく、かつ該第２の文書構造が下位の階層ではない場合は、該第１の文書構造と該第２の文書構造に分割する分割手段をさらに具備し、前記構造取得手段は、前記分割手段によって分割された前記第１の文書構造と前記第２の文書構造を、前記選択された範囲内の編集対象としてそれぞれ取得することを特徴とする請求項１から３のいずれか一項に記載の情報処理装置である。
【００１０】
請求項５の発明は、前記構造取得手段によって取得された複数の文書構造のいずれか一つ又は複数を選択し得るようにする第２の選択手段をさらに具備することを特徴とする請求項４に記載の情報処理装置である。
【００１１】
請求項６の発明は、コンピュータを、構造化文書に対して表示形式の指定情報を適用して、該構造化文書を表示する表示手段と、前記表示手段によって表示された構造化文書に対して、編集対象としての範囲を選択する選択手段と、前記選択手段によって選択された範囲の開始位置及び終了位置を取得する選択範囲取得手段と、前記選択範囲取得手段によって取得された開始位置から前方に向かって、最初の要素値がある第１の位置を取得し、前記選択範囲取得手段によって取得された終了位置から後方に向かって、最初の要素値がある第２の位置を取得する要素値位置取得手段と、前記要素値位置取得手段によって取得された前記第１の位置と前記第２の位置の間の範囲内にある文書構造を、前記選択手段の編集対象として取得する構造取得手段として機能させ、前記文書構造は、開始タグとその開始タグに対応する終了タグによって囲まれた範囲であり、前記構造取得手段は、前記第１の位置と前記第２の位置の間の範囲内にある先頭の文書構造を取得し、該範囲内に複数の文書構造がある場合は、該複数の文書構造を取得することを特徴とする情報処理プログラムである。
【発明の効果】
【００１２】
請求項１の情報処理装置によれば、表示形式の指定情報を適用して表示された構造化文書に対して、文書構造単位に選択するという制限を課すことなしに文書構造の選択をすることができる。
【００１３】
請求項２の情報処理装置によれば、操作によって選択された範囲が、表示されている構造化文書の文頭又は文末を含んでいる場合であっても、文書構造を取得することができる。
【００１４】
請求項３の情報処理装置によれば、複数の文書構造が選択された場合、一つの編集対象として取得することができる。
【００１５】
請求項４の情報処理装置によれば、複数の文書構造が選択された場合、編集対象としてそれぞれ取得することができる。
【００１６】
請求項５の情報処理装置によれば、複数の文書構造のいずれか一つ又は複数を選択することができる。
【００１７】
請求項６の情報処理プログラムによれば、表示形式の指定情報を適用して表示された構造化文書に対して、文書構造単位に選択するという制限を課すことなしに文書構造の選択をすることができる。
【図面の簡単な説明】
【００１８】
【図１】本実施の形態の構成例についての概念的なモジュール構成図である。
【図２】本実施の形態による処理例を示すフローチャートである。
【図３】スキーマの例を示す説明図である。
【図４】構造化文書の例を示す説明図である。
【図５】表示文書の例を示す説明図である。
【図６】表示文書の例を示す説明図である。
【図７】構造化文書の例を示す説明図である。
【図８】構造化文書の例を示す説明図である。
【図９】表示文書の例を示す説明図である。
【図１０】表示文書の例を示す説明図である。
【図１１】構造化文書の例を示す説明図である。
【図１２】構造化文書の例を示す説明図である。
【図１３】表示文書の例を示す説明図である。
【図１４】表示文書の例を示す説明図である。
【図１５】構造化文書の例を示す説明図である。
【図１６】表示文書の例を示す説明図である。
【図１７】セレクションリスト表示領域の例を示す説明図である。
【図１８】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００１９】
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図１は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム（コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム）、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、一つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、一つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」（社会システム）にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、外部記憶媒体、通信回線を介した記憶装置、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）内のレジスタ等を含んでいてもよい。
【００２０】
本実施の形態である情報処理装置は、図１の例に示すように、構造化文書作成モジュール１００、構造化文書記憶モジュール１１０、文書構造定義記憶モジュール１２０、操作受付モジュール１３０、構造化文書作成支援モジュール１４０を有している。
本実施の形態は、例えばＸＭＬ等の構造化文書を作成するために利用する情報処理装置である。
まず、構造化文書を対象としたエディター（文書作成装置）について説明する。
構造化文書作成エディターにおいては、構造化文書に対して表示形式の指定情報であるスタイルシートを適用して表示することが行われる。その表示領域においては（以下、スタイル表示領域ともいう）、通常のエディターと同様の表示方法がなされることが一般的である。
スタイル表示領域においては、通常のエディターと同様の表示であるが、ある範囲を選択して、コピー／貼り付けのような操作を行うことはできないようにしている。これは、操作者の選択する範囲と文書構造とが必ずしも一致しないためである。
【００２１】
構造化文書作成モジュール１００は、構造化文書記憶モジュール１１０、文書構造定義記憶モジュール１２０、操作受付モジュール１３０、構造化文書作成支援モジュール１４０と接続されている。構造化文書作成モジュール１００は、構造化文書記憶モジュール１１０に記憶されている構造化文書にスタイルシートを適用して、ディスプレイ等の表示装置のスタイル表示領域にその構造化文書を表示する。なお、スタイルシートは、構造化文書作成モジュール１００がアクセス可能な記憶装置に記憶されている。例えば、構造化文書記憶モジュール１１０に記憶されている。そして、操作受付モジュール１３０が受け付けた操作者の操作を受け取った場合は、その操作に応じた編集処理を行う。その操作内に、構造化文書内の編集対象としての範囲の選択があった場合は、構造化文書作成支援モジュール１４０に編集対象となる文書構造を取得させる。そして、選択後の文書構造に対して、操作に応じた編集処理（例えば、コピー（複写）／貼り付け／移動／削除／置換等）を行う。
【００２２】
構造化文書記憶モジュール１１０は、構造化文書作成モジュール１００と接続されており、構造化文書を記憶している。構造化文書作成モジュール１００からのアクセスに応じて、構造化文書を渡す。具体的な構造化文書については、図４等に例示する構造化文書４００等を用いて後述する。また、スタイルシートを記憶していてもよい。
文書構造定義記憶モジュール１２０は、構造化文書作成モジュール１００と接続されており、構造化文書に対応した文書構造定義（以下、スキーマともいう）を記憶している。構造化文書作成モジュール１００からのアクセスに応じて、スキーマを渡す。スキーマは、構造化文書内の構造を定義しており、例えば、ＤＴＤ（Ｄｏｃｕｍｅｎｔ  Ｔｙｐｅ  Ｄｅｆｉｎｉｔｉｏｎ）、ＸＭＬスキーマ、ＲＥＬＡＸ等のスキーマ言語によって記述されている。具体的なスキーマについては、図３に例示するスキーマ３００を用いて後述する。
操作受付モジュール１３０は、構造化文書作成モジュール１００と接続されており、キーボード、マウス、タッチパネル等を用いた操作者の操作を受け付け、構造化文書作成モジュール１００に渡す。この操作は、スタイル表示領域に表示された構造化文書に対する操作である。例えば、その操作として、表示された構造化文書に対して、編集対象としての範囲の選択操作が含まれる。そして、その操作内に構造化文書内の編集対象としての範囲の選択があった場合は、構造化文書作成モジュール１００を介して構造化文書作成支援モジュール１４０に渡す。
【００２３】
構造化文書作成支援モジュール１４０は、構造化文書作成モジュール１００と接続されている。構造化文書作成支援モジュール１４０は、選択範囲取得モジュール１４２、要素値取得モジュール１４４、構造取得モジュール１４６、構造検出モジュール１４８、構造選択モジュール１５０、選択分割モジュール１５２、複数選択記憶モジュール１５４を有している。
【００２４】
選択範囲取得モジュール１４２は、構造化文書作成モジュール１００によって表示装置に表示されたスタイル表示領域内の構造化文書に対して、操作受付モジュール１３０が受け付けた操作者の操作によって選択された範囲の開始位置及び終了位置を取得する。
要素値取得モジュール１４４は、選択範囲取得モジュール１４２によって取得された開始位置から前方に向かって、最初の要素値がある第１の位置を取得し、選択範囲取得モジュール１４２によって取得された終了位置から後方に向かって、最初の要素値がある第２の位置を取得する。ここでの「前方に向かって」とは、対象としている構造化文書の文頭に向かっての意であり、「後方に向かって」とは、対象としている構造化文書の文末に向かっての意である。また、「要素値」とは、構造化文書内の文字データをいう。スタイル表示領域内に表示可能な文字データである。ここで、探索する文字データは、操作者の操作によって選択された範囲外にある文字データである。
また、要素値取得モジュール１４４は、第１の位置を取得するのに、最初の要素値がない場合は、対象としている構造化文書の文頭の位置を第１の位置として取得し、第２の位置を取得するのに、最初の要素値がない場合は、対象としている構造化文書の文末の位置を第２の位置として取得するようにしてもよい。
【００２５】
構造取得モジュール１４６は、要素値取得モジュール１４４によって取得された第１の位置と第２の位置の間の範囲内にある文書構造を取得する。複数ある場合は、複数取得する。ここで、文書構造とは、開始タグとその開始タグに対応する終了タグによって囲まれた範囲であり、スキーマによって定義されている。したがって、スキーマを参照して、文書構造を取得するようにしてもよい。
そして、要素値取得モジュール１４４によって取得された第１の位置と第２の位置の間の範囲内に複数の文書構造がある場合は、構造検出モジュール１４８に第１の文書構造の階層と第２の文書構造の階層の関係を検出させる。なお、第２の文書構造とは、第１の文書構造よりも後にある文書構造である。
複数の文書構造がない場合（その範囲内に一つの文書構造だけがある場合）は、その取得した文書構造を構造選択モジュール１５０に渡す。
【００２６】
構造検出モジュール１４８は、第１の位置と第２の位置の間の範囲内で第１の文書構造の階層と第２の文書構造の階層を比較して、対象としている構造化文書内において同じ階層又はその第２の文書構造がその第１の文書構造よりも下位の階層であるか否かを検証する。対象としている構造化文書内において同じ階層又はその第２の文書構造がその第１の文書構造よりも下位の階層である場合は、第１の文書構造と第２の文書構造を構造選択モジュール１５０に渡す。なお、文書構造の階層はスキーマによって定義されているので、スキーマを参照して、第１の文書構造の階層と第２の文書構造の階層を比較してもよい。
また、構造検出モジュール１４８は、第１の文書構造と第２の文書構造の関係が、対象としている構造化文書内において同じ階層ではなく、かつその第２の文書構造が下位の階層ではないか否かを検証するようにしてもよい。なお、「対象としている構造化文書内において同じ階層又はその第２の文書構造が下位の階層である」ことの否定が、「対象としている構造化文書内において同じ階層ではなく、かつその第２の文書構造が下位の階層ではない」ことである。対象としている構造化文書内において同じ階層ではなく、かつその第２の文書構造が下位の階層ではない場合は、第１の文書構造と第２の文書構造を選択分割モジュール１５２に渡す。
【００２７】
選択分割モジュール１５２は、構造検出モジュール１４８による検証によって、第１の文書構造の階層と第２の文書構造の階層の関係が、対象としている構造化文書内において同じ階層ではなく、かつその第２の文書構造が下位の階層ではない場合は、その第１の文書構造とその第２の文書構造に分割する。そして、その分割結果を複数選択記憶モジュール１５４に記憶させる。
複数選択記憶モジュール１５４は、選択分割モジュール１５２によって分割された複数の文書構造を記憶する。第２の文書構造に対して、さらに分割され得るので、第１の文書構造と第２の文書構造を記憶しておく。また、後述するように構造化文書作成モジュール１００によって、複数の文書構造のいずれか一つ又は複数を操作者の操作によって選択し得るようにするために、複数の文書構造を記憶しておく。
【００２８】
構造選択モジュール１５０は、構造取得モジュール１４６から渡された文書構造（第１の位置と第２の位置の間の範囲内に複数の文書構造がない場合）を、操作者の操作によって選択された範囲内の編集対象として取得する。
また、構造選択モジュール１５０は、構造検出モジュール１４８による検証によって、第１の文書構造の階層と第２の文書構造の階層の関係が、対象としている構造化文書内において同じ階層又はその第２の文書構造が下位の階層であると検証された場合は、その第１の文書構造とその第２の文書構造を含めて、操作者の操作によって選択された範囲内の編集対象として取得する。つまり、第１の文書構造と第２の文書構造を一体とした編集対象とする。
また、構造選択モジュール１５０は、構造検出モジュール１４８による検証によって、第１の文書構造の階層と第２の文書構造の階層の関係が、対象としている構造化文書内において同じ階層ではなく、かつその第２の文書構造が下位の階層ではないと検証された場合は、選択分割モジュール１５２によって分割された第１の文書構造と第２の文書構造を複数選択記憶モジュール１５４から取り出し、操作者の操作によって選択された範囲内の編集対象としてそれぞれ取得する。つまり、第１の文書構造を第１の編集対象とし、第２の文書構造を第２の編集対象とする。
そして、構造選択モジュール１５０は、取得した編集対象を構造化文書作成モジュール１００へ渡す。構造化文書作成モジュール１００は、その編集対象に対して編集処理を行う。
【００２９】
そして、構造化文書作成モジュール１００は、構造選択モジュール１５０によって取得された複数の文書構造のいずれか一つ又は複数を操作者の操作によって選択し得るようにする。構造選択モジュール１５０によって複数の文書構造が取得された場合とは、構造検出モジュール１４８による検証によって、第１の文書構造の階層と第２の文書構造の階層の関係が、対象としている構造化文書内において同じ階層ではなく、かつその第２の文書構造が下位の階層ではないと検証された場合である。この場合は、操作者の選択は一つの領域（第１の位置から第２の位置までの範囲）であるが、前述の関係を有する複数の文書構造が選択されたので、そのうちのいずれか一つの文書構造又は複数の文書構造を選択し得るように表示装置に表示し、操作者の操作で選択し得るようにしたものである。
【００３０】
図２は、本実施の形態による処理例を示すフローチャートである。
ステップＳ２０２では、選択範囲取得モジュール１４２が、編集対象の選択（以下、セレクションともいう）の範囲を取得する。セレクション範囲は、その範囲の開始位置、終了位置によって定まる。
ステップＳ２０４では、要素値取得モジュール１４４が、セレクションの開始位置から前方に向かって要素値を、対象としている構造化文書内で探索する。
ステップＳ２０６では、要素値取得モジュール１４４が、要素値があるか否かを判断し、ある場合はステップＳ２０８へ進み、それ以外の場合はステップＳ２１０へ進む。セレクションが構造化文書の先頭部分で行われた場合に、ステップＳ２１０へ進むことになる。
【００３１】
ステップＳ２０８では、要素値取得モジュール１４４が、ステップＳ２０４で探索された要素値の位置（ｐｏｓｉｔｉｏｎ１）を取得する。
ステップＳ２１０では、要素値取得モジュール１４４が、文書の文頭の位置（ｐｏｓｉｔｉｏｎ１）を取得する。構造化文書における文頭であり、タグ等が含まれる。
ステップＳ２１２では、要素値取得モジュール１４４が、セレクションの終了位置から後方に向かって要素値を、対象としている構造化文書内で探索する。
【００３２】
ステップＳ２１４では、要素値取得モジュール１４４が、要素値があるか否かを判断し、ある場合はステップＳ２１６へ進み、それ以外の場合はステップＳ２１８へ進む。セレクションが構造化文書の末尾部分で行われた場合に、ステップＳ２１８へ進むことになる。
ステップＳ２１６では、要素値取得モジュール１４４が、要素値の位置（ｐｏｓｉｔｉｏｎ２）を取得する。
ステップＳ２１８では、要素値取得モジュール１４４が、文書の文末の位置（ｐｏｓｉｔｉｏｎ２）を取得する。構造化文書における文末であり、タグ等が含まれる。
【００３３】
ステップＳ２２０では、構造取得モジュール１４６が、ｐｏｓｉｔｉｏｎ１−ｐｏｓｉｔｉｏｎ２間の文書構造を取得する。開始タグとその開始タグに対応する終了タグによって囲まれた範囲を文書構造として取得する。
ステップＳ２２２では、構造取得モジュール１４６が、文書構造中の先頭の要素（要素Ａ）を取得する。要素Ａは、ステップＳ２２０で取得した文書構造が一つの場合は、その文書構造であり、複数の文書構造を取得した場合は、先頭の文書構造である。
ステップＳ２２４では、構造取得モジュール１４６が、要素Ａ以外の要素があるか否かを判断し、ある場合はステップＳ２２６へ進み、それ以外の場合は処理を終了する（ステップＳ２９９）。つまり、ステップＳ２２０で複数の文書構造が取得されたか否かを判断することになる。なお、取得した文書構造が一つの場合は、構造選択モジュール１５０が、要素Ａの文書構造を操作者の操作によって選択された編集対象とする。
ステップＳ２２６では、構造検出モジュール１４８が、要素Ａ以外の要素である文書構造を取得する。
【００３４】
ステップＳ２２８では、構造検出モジュール１４８が、ステップＳ２２６で取得した要素は、要素Ａと同階層に存在可能か否かを判断し、存在可能の場合はステップＳ２３２へ進み、それ以外の場合はステップＳ２３０へ進む。この判断は、スキーマを用いて判断するようにしてもよい。
ステップＳ２３０では、構造検出モジュール１４８が、ステップＳ２２６で取得した要素は、要素Ａの下位に存在可能か否かを判断し、存在可能の場合はステップＳ２３２へ進み、それ以外の場合はステップＳ２３４へ進む。この判断は、スキーマを用いて判断するようにしてもよい。
ステップＳ２３２では、構造選択モジュール１５０が、ステップＳ２２６で取得した要素をセレクションに含める。ここでのセレクションに含めるとは、操作者の操作によって選択された編集対象とすることである。ステップＳ２３２の処理が行われるのは、構造化文書内において、要素ＡとステップＳ２２６で取得した要素とが、同じ階層又はステップＳ２２６で取得した要素が要素Ａよりも下位の階層である場合である。
【００３５】
ステップＳ２３４では、選択分割モジュール１５２が、セレクションを要素ＡとステップＳ２２６で取得した要素に分割する。そして、複数選択記憶モジュール１５４に記憶させる。ステップＳ２３４が行われるのは、要素ＡとステップＳ２２６で取得した要素が、構造化文書内において同じ階層ではなく、かつステップＳ２２６で取得した要素が要素Ａの下位の階層ではない場合である。
ステップＳ２３６では、分割した要素（ステップＳ２２６で取得した要素）を要素Ａとする。
ステップＳ２３８では、構造検出モジュール１４８が、他の要素があるか否かを判断し、ある場合はステップＳ２２６へ戻り、それ以降の処理を行い、それ以外の場合は処理を終了する（ステップＳ２９９）。
【００３６】
以下、具体的な例を用いて説明する。
＜具体例１＞
まず、文書構造定義記憶モジュール１２０内に記憶されているスキーマの例を示す。図３は、スキーマ３００の例を示す説明図である。スキーマ３００内には、「ｂｏｏｋ」、「ａｒｔｉｃｌｅ」、「ｔｉｔｌｅ」、「ｓｕｂｔｉｔｌｅ」、「ｔｅｘｔ」、「ｐａｒａｇｒａｐｈ」等の文書構造が定義されている。
次に、構造化文書記憶モジュール１１０内に記憶されている構造化文書の例を示す。図４は、構造化文書４００の例を示す説明図である。例えば、文字列「タイトル」を含む「ｔｉｔｌｅ」の文書構造、文字列「１段落です。」を含む「ｐａｒａｇｒａｐｈ」の文書構造等がある。
次に、スタイル表示領域に、構造化文書作成モジュール１００が構造化文書４００にスタイルシートを適用して表示する表示文書５００の例を示す。図５は、表示文書５００の例を示す説明図である。
【００３７】
操作者の操作によって、編集対象となる範囲の選択が行われた例を示す。図６は、表示文書６００の例を示す説明図である。表示文書６００内の選択範囲６１０は、操作者の操作によって選択された範囲である。ここでは、「１段落です。」という要素値（要素値の集合）が選択範囲となっている。構造化文書作成支援モジュール１４０が、選択範囲の開始位置として、「１段落です。」の「１」の位置を取得し、終了位置として「１段落です。」の「。」の位置を取得する（ステップＳ２０２）。
【００３８】
次に、要素値取得モジュール１４４が、「１段落です。」の前方の要素値を構造化文書４００内で探索すると、「タイトル」の「ル」を発見する（ステップＳ２０４、ステップＳ２０６、ステップＳ２０８）。同様に、「１段落です。」の後方の要素値を構造化文書４００内で探索すると、「２段落です。」の「２」を発見する（ステップＳ２１２、ステップＳ２１４、ステップＳ２１６）。つまり、ｐｏｓｉｔｉｏｎ１（第１の位置）とｐｏｓｉｔｉｏｎ２（第２の位置）による範囲は、図７の構造化文書７００の例に示すように、＜／ｔｉｔｌｅ＞（ｔｉｔｌｅの終了タグ）から、＜／ｐａｒａｇｒａｐｈ＞（ｐａｒａｇｒａｐｈの開始タグ）までとなる（ステップＳ２２０）。なお、ここで、「ル」の要素値があるｐｏｓｉｔｉｏｎ１としては、「ル」の位置としてもよいし、「ル」の直後の位置としてもよいし、「ル」以降にあるタグの位置としてもよい。同様に、「２」の要素値があるｐｏｓｉｔｉｏｎ２としては、「２」の位置としてもよいし、「２」の直前の位置としてもよいし、「２」以前にあるタグの位置としてもよい。
【００３９】
次に、構造取得モジュール１４６は、範囲７１０内にある文書構造を取得する。ここで、この範囲において、開始タグと終了タグの両方が含まれているのは、１個目のｐａｒａｇｒａｐｈ以下の文書構造なので、「＜ｐａｒａｇｒａｐｈ＞１段落です。＜／ｐａｒａｇｒａｐｈ＞」となる（ステップＳ２２０）。
そして、ｐｏｓｉｔｉｏｎ１からｐｏｓｉｔｉｏｎ２までの間に、他に文書構造はないので（ステップＳ２２４のＮｏ）、構造選択モジュール１５０が、「＜ｐａｒａｇｒａｐｈ＞１段落です。＜／ｐａｒａｇｒａｐｈ＞」を、操作者の操作によって選択された範囲内の編集対象として取得する。
【００４０】
＜具体例２＞
次に、構造化文書８００を編集対象とした場合の例について説明する。図８は、構造化文書８００の例を示す説明図である。なお、スキーマは、図３の例に示すスキーマ３００と同等のものとする。
スタイル表示領域に、構造化文書作成モジュール１００が構造化文書８００にスタイルシートを適用して表示する表示文書９００の例を示す。図９は、表示文書９００の例を示す説明図である。
【００４１】
操作者の操作によって、編集対象となる範囲の選択が行われた例を示す。図１０は、表示文書１０００の例を示す説明図である。表示文書１０００内の選択範囲１０１０は、操作者の操作によって選択された範囲である。ここでは、「１段落です。」から「ｈｔｔｐ：／／ｗｗｗ．ｇｇｇｇｇｇ．ｃｏ．ｊｐ／」という要素値（要素値の集合）が選択範囲となっている。構造化文書作成支援モジュール１４０が、選択範囲の開始位置として、「１段落です。」の「１」の位置を取得し、終了位置として「ｈｔｔｐ：／／ｗｗｗ．ｇｇｇｇｇｇ．ｃｏ．ｊｐ／」の「／」の位置を取得する（ステップＳ２０２）。
【００４２】
次に、要素値取得モジュール１４４が、「１段落です。」の前方の要素値を構造化文書８００内で探索すると、「タイトル」の「ル」を発見する（ステップＳ２０４、ステップＳ２０６、ステップＳ２０８）。同様に、「ｈｔｔｐ：／／ｗｗｗ．ｇｇｇｇｇｇ．ｃｏ．ｊｐ」の後方の要素値を構造化文書８００内で探索すると、後方には要素値がないので、構造化文書８００の文末位置を取得する（ステップＳ２１２、ステップＳ２１４、ステップＳ２１８）。つまり、ｐｏｓｉｔｉｏｎ１（第１の位置）とｐｏｓｉｔｉｏｎ２（第２の位置）による範囲は、図１１の構造化文書１１００の例に示すように、＜／ｔｉｔｌｅ＞（ｔｉｔｌｅの終了タグ）から、＜／ｂｏｏｋ＞（ｂｏｏｋの開始タグ）までとなる（ステップＳ２２０）。なお、ここで、「ル」の要素値があるｐｏｓｉｔｉｏｎ１としては、「ル」の位置としてもよいし、「ル」の直後の位置としてもよいし、「ル」以降にあるタグの位置としてもよい。
【００４３】
次に、構造取得モジュール１４６は、範囲１１１０内にある文書構造を取得する。ここで、この範囲において、開始タグと終了タグの両方が含まれているのは、ｔｅｘｔ以下の文書構造である。したがって、「＜ｔｅｘｔ＞＜ｐａｒａｇｒａｐｈ＞１段落です。＜／ｐａｒａｇｒａｐｈ＞  ＜ｐａｒａｇｒａｐｈ＞２段落です。＜ｌｉｎｋ＞ｈｔｔｐ：／／ｗｗｗ．ｇｇｇｇｇｇ．ｃｏ．ｊｐ／＜／ｌｉｎｋ＞＜／ｐａｒａｇｒａｐｈ＞＜／ｔｅｘｔ＞」となる（ステップＳ２２０）。
そして、ｐｏｓｉｔｉｏｎ１からｐｏｓｉｔｉｏｎ２までの間に、他に文書構造はないので（ステップＳ２２４のＮｏ）、構造選択モジュール１５０が、「＜ｔｅｘｔ＞＜ｐａｒａｇｒａｐｈ＞１段落です。＜／ｐａｒａｇｒａｐｈ＞  ＜ｐａｒａｇｒａｐｈ＞２段落です。＜ｌｉｎｋ＞ｈｔｔｐ：／／ｗｗｗ．ｇｇｇｇｇｇ．ｃｏ．ｊｐ／＜／ｌｉｎｋ＞＜／ｐａｒａｇｒａｐｈ＞＜／ｔｅｘｔ＞」を、操作者の操作によって選択された範囲内の編集対象として取得する。
【００４４】
なお、ｔｅｘｔ以下には、１個目のｐａｒａｇｒａｐｈの文書構造と２個目のｐａｒａｇｒａｐｈの文書構造とｌｉｎｋの文書構造が含まれている。ステップＳ２２０で、これらをそれぞれ文書構造として取得してもよい。取得した文書構造は複数になるが（ステップＳ２２４でＹｅｓ）、ｔｅｘｔの文書構造（要素Ａに該当する）と２つのｐａｒａｇｒａｐｈの文書構造、ｌｉｎｋの文書構造とは、同じ階層に存在し得ないが、下位に存在しているので（ステップＳ２２８でＮｏ、ステップＳ２３０でＹｅｓ）、これらの文書構造を一つとして、操作者の操作によって選択された範囲内の編集対象として取得する（ステップＳ２３２）。
【００４５】
＜具体例３＞
次に、構造化文書１２００を編集対象とした場合の例について説明する。図１２は、構造化文書１２００の例を示す説明図である。なお、スキーマは、図３の例に示すスキーマ３００と同等のものとする。
スタイル表示領域に、構造化文書作成モジュール１００が構造化文書１２００にスタイルシートを適用して表示する表示文書１３００の例を示す。図１３は、表示文書１３００の例を示す説明図である。
【００４６】
操作者の操作によって、編集対象となる範囲の選択が行われた例を示す。図１４は、表示文書１４００の例を示す説明図である。表示文書１４００内の選択範囲１４１０は、操作者の操作によって選択された範囲である。ここでは、「１段落です。」から「タイトル２」という要素値（要素値の集合）が選択範囲となっている。構造化文書作成支援モジュール１４０が、選択範囲の開始位置として、「１段落です。」の「１」の位置を取得し、終了位置として「タイトル２」の「２」の位置を取得する（ステップＳ２０２）。
【００４７】
次に、要素値取得モジュール１４４が、「１段落です。」の前方の要素値を構造化文書１２００内で探索すると、「タイトル１」の「１」を発見する（ステップＳ２０４、ステップＳ２０６、ステップＳ２０８）。同様に、「タイトル２」の後方の要素値を構造化文書１２００内で探索すると、後方には要素値がないので、構造化文書１２００の文末位置を取得する（ステップＳ２１２、ステップＳ２１４、ステップＳ２１８）。つまり、ｐｏｓｉｔｉｏｎ１（第１の位置）とｐｏｓｉｔｉｏｎ２（第２の位置）による範囲は、図１５の構造化文書１５００の例に示すように、＜／ｔｉｔｌｅ＞（ｔｉｔｌｅの終了タグ）から、＜／ｂｏｏｋ＞（ｂｏｏｋの開始タグ）までとなる（ステップＳ２２０）。なお、ここで、「１」の要素値があるｐｏｓｉｔｉｏｎ１としては、「１」の位置としてもよいし、「１」の直後の位置としてもよいし、「１」以降にあるタグの位置としてもよい。
【００４８】
次に、構造取得モジュール１４６は、範囲１５１０内にある文書構造を取得する。ここで、この範囲において、開始タグと終了タグの両方が含まれているのは、１個目のｔｅｘｔ以下の文書構造と２個目のａｒｔｉｃｌｅ以下の文書構造である（ステップＳ２２４でＹｅｓ）。この２個目のａｒｔｉｃｌｅ以下の文書構造と１個目のｔｅｘｔ以下の文書構造とは、同じ階層には存在し得ず、２個目のａｒｔｉｃｌｅ以下の文書構造は１個目のｔｅｘｔ以下の文書構造の下位にも存在し得ない（ステップＳ２２８でＮｏ、ステップＳ２３０でＮｏ）。
そこで、選択分割モジュール１５２が、
「＜ｔｅｘｔ＞＜ｐａｒａｇｒａｐｈ＞１段落です。＜／ｐａｒａｇｒａｐｈ＞  ＜／ｔｅｘｔ＞」
と、
「＜ａｒｔｉｃｌｅ＞＜ｔｉｔｌｅ＞タイトル２＜／ｔｉｔｌｅ＞＜／ａｒｔｉｃｌｅ＞」
の２つに分割する（ステップＳ２３４）。
構造選択モジュール１５０が、「＜ｔｅｘｔ＞＜ｐａｒａｇｒａｐｈ＞１段落です。＜／ｐａｒａｇｒａｐｈ＞  ＜／ｔｅｘｔ＞」と「＜ａｒｔｉｃｌｅ＞＜ｔｉｔｌｅ＞タイトル２＜／ｔｉｔｌｅ＞＜／ａｒｔｉｃｌｅ＞」を、それぞれ操作者の操作によって選択された範囲内の編集対象として取得する。
【００４９】
そして、構造化文書作成モジュール１００は、スタイル表示領域に、表示文書１６００のように表示する。つまり、操作者によるもとの選択範囲である選択範囲１６１０（図１４に例示の選択範囲１４１０に該当）内に、分割選択範囲１６２０、分割選択範囲１６３０を表示する。分割選択範囲１６２０は「＜ｔｅｘｔ＞＜ｐａｒａｇｒａｐｈ＞１段落です。＜／ｐａｒａｇｒａｐｈ＞＜／ｔｅｘｔ＞」に該当し、分割選択範囲１６３０は「＜ａｒｔｉｃｌｅ＞＜ｔｉｔｌｅ＞タイトル２＜／ｔｉｔｌｅ＞＜／ａｒｔｉｃｌｅ＞」に該当する。
【００５０】
なお、構造選択モジュール１５０は、取得する編集対象としての選択範囲として、開始タグとその開始タグに対応する終了タグに囲まれているのであれば、第１の位置と第２の位置内の最大のものであってもよいし、最小のものであってもよいし、その中間があれば、その中間のものであってもよい。例えば、「＜ｔｅｘｔ＞＜ｐａｒａｇｒａｐｈ＞１段落です。＜／ｐａｒａｇｒａｐｈ＞＜／ｔｅｘｔ＞」は、「＜ｐａｒａｇｒａｐｈ＞１段落です。＜／ｐａｒａｇｒａｐｈ＞」としてもよいし、「＜ａｒｔｉｃｌｅ＞＜ｔｉｔｌｅ＞タイトル２＜／ｔｉｔｌｅ＞＜／ａｒｔｉｃｌｅ＞」は「＜ｔｉｔｌｅ＞タイトル２＜／ｔｉｔｌｅ＞」としてもよい。
【００５１】
＜具体例４＞
具体例３の後の状態で、構造化文書作成モジュール１００が編集処理を実行する例を示す。コピーと貼り付けの操作が行われ、その編集処理を実行する場合について説明する。
（１）具体例３の状態で、コピーを実行すると、以下の２つのセレクションがそれぞれ別々にコピーされる。
・「＜ｔｅｘｔ＞＜ｐａｒａｇｒａｐｈ＞１段落です。＜／ｐａｒａｇｒａｐｈ＞＜／ｔｅｘｔ＞」
・「＜ａｒｔｉｃｌｅ＞＜ｔｉｔｌｅ＞タイトル２＜／ｔｉｔｌｅ＞＜／ａｒｔｉｃｌｅ＞」
【００５２】
（２）貼り付けを実行した場合に、図１７に例示のようなセレクションリスト表示領域１７００を表示装置に表示し、貼り付けの対象となるセレクションリスト１：１７１０、セレクションリスト２：１７２０のいずれか一方又は両方を選択し得る。図１７の状態は、セレクションリスト１：１７１０を選択した状態例を示している。そして、この状態で貼り付けボタン１７３０が選択されると、その選択されているセレクションリスト１：１７１０の貼り付け処理を行う。
このように、分割された状態で、コピー／貼り付け操作の処理を実行した場合、対象となっている分割された各分割選択範囲に対して、コピー／貼り付けの処理を実行する。
なお、移動、削除、置換等の処理の場合も、セレクションリスト表示領域１７００から処理対象としたい分割選択範囲を選択し、処理を実行する。
【００５３】
なお、本実施の形態としてのプログラムが実行されるコンピュータのハードウェア構成は、図１８に例示するように、一般的なコンピュータであり、具体的にはパーソナルコンピュータ、サーバーとなり得るコンピュータ等である。つまり、具体例として、処理部（演算部）としてＣＰＵ１８０１を用い、記憶装置としてＲＡＭ１８０２、ＲＯＭ１８０３、ＨＤ１８０４を用いている。ＨＤ１８０４として、例えばハードディスクを用いてもよい。構造化文書作成モジュール１００、選択範囲取得モジュール１４２、要素値取得モジュール１４４、構造取得モジュール１４６、構造検出モジュール１４８、構造選択モジュール１５０、選択分割モジュール１５２等のプログラムを実行するＣＰＵ１８０１と、そのプログラムやデータを記憶するＲＡＭ１８０２と、本コンピュータを起動するためのプログラム等が格納されているＲＯＭ１８０３と、補助記憶装置であるＨＤ１８０４と、キーボード、マウス、タッチパネル等に対する利用者の操作に基づいてデータを受け付ける受付装置１８０６と、ＣＲＴ、液晶ディスプレイ等の出力装置１８０５と、ネットワークインタフェースカード等の通信ネットワークと接続するための通信回線インタフェース１８０７、そして、それらをつないでデータのやりとりをするためのバス１８０８により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
【００５４】
前述の実施の形態のうち、コンピュータ・プログラムによるものについては、本ハードウェア構成のシステムにソフトウェアであるコンピュータ・プログラムを読み込ませ、ソフトウェアとハードウェア資源とが協働して、前述の実施の形態が実現される。
なお、図１８に示すハードウェア構成は、一つの構成例を示すものであり、本実施の形態は、図１８に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えばＡＳＩＣ等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図１８に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、情報家電、複写機、ファックス、スキャナ、プリンタ、複合機（スキャナ、プリンタ、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）などに組み込まれていてもよい。
【００５５】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、ブルーレイ・ディスク（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ（登録商標））、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ（登録商標））、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
【符号の説明】
【００５６】
１００…構造化文書作成モジュール
１１０…構造化文書記憶モジュール
１２０…文書構造定義記憶モジュール
１３０…操作受付モジュール
１４０…構造化文書作成支援モジュール
１４２…選択範囲取得モジュール
１４４…要素値取得モジュール
１４６…構造取得モジュール
１４８…構造検出モジュール
１５０…構造選択モジュール
１５２…選択分割モジュール
１５４…複数選択記憶モジュール
【図１】
0005541024.tif 000002
【図２】
0005541024.tif 000003
【図３】
0005541024.tif 000004
【図４】
0005541024.tif 000005
【図５】
0005541024.tif 000006
【図６】
0005541024.tif 000007
【図７】
0005541024.tif 000008
【図８】
0005541024.tif 000009
【図９】
0005541024.tif 000010
【図１０】
0005541024.tif 000011
【図１１】
0005541024.tif 000012
【図１２】
0005541024.tif 000013
【図１３】
0005541024.tif 000014
【図１４】
0005541024.tif 000015
【図１５】
0005541024.tif 000016
【図１６】
0005541024.tif 000017
【図１７】
0005541024.tif 000018
【図１８】
0005541024.tif 000019