(57)【特許請求の範囲】
【請求項１】
文書要素を入れ子状に構造化した文書を取り扱う文書処理装置であって、
構造化した文書の文書型記述を記憶する記憶手段と、
文書要素名を入力する文書要素名入力手段と、
入力した文書要素名が表す文書要素の型と前記記憶手段に記憶されている文書型記述とに基づいて、前記文書要素を前記構造化した文書に挿入可能な位置を検出する挿入可能位置検出手段と、
前記文書要素の挿入を所望する位置を指定するための挿入所望位置指定手段と、
前記挿入を所望する位置と前記挿入可能な位置とが一致しない場合、前記挿入可能位置検出手段で検出された挿入可能な位置の中で、前記挿入を所望する位置から最も近い挿入可能な位置に前記文書要素を挿入する文書要素挿入手段と、
を備えることを特徴とする文書処理装置。
【請求項２】
前記文書要素名入力手段は、文書要素名を選択して入力するための、文書要素名に対応する選択ボタンを前記文書の編集画面上に有することを特徴とする請求項１記載の文書処理装置。
【請求項３】
文書要素を入れ子状に構造化した文書を取り扱う文書処理装置における文書処理方法であって、
前記文書処理装置が備える入力手段が、文書要素名の入力を受ける文書要素名入力工程と、
前記文書処理装置が備える検出手段が、入力された文書要素名が表す文書要素の型と記憶手段に記憶されている構造化した文書の文書型記述とに基づいて、前記文書要素を前記構造化した文書に挿入可能な位置を検出する挿入可能位置検出工程と、
前記文書処理装置が備える挿入手段が、ユーザにより指定された挿入を所望する位置と前記挿入可能位置検出工程で検出された挿入可能な位置とが一致しない場合、前記挿入可能な位置の中で、前記挿入を所望する位置から最も近い挿入可能な位置に前記文書要素を挿入する文書要素挿入工程と、
を備えることを特徴とする文書処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は文書処理装置およびその方法に係り、特に計算機上で構造を持った文書を処理する文書処理装置およびその方法に関するものである。
【０００２】
【従来の技術】
ＳＧＭＬ（ＩＳＯ−８８７９）で記述する構造化文書を処理する装置が開発されてきている。こういった構造化文書の処理装置では、予め文書型を設定し、その文書型に適合した文書を作成する工夫がされている。
【０００３】
図２は、ＳＧＭＬで文書型を記述したものであるが、この文書型記述では次のように文書が規定される。文書は「ｂｏｏｋ」という型の文書要素を基本に持つ。以降、「Ｘ」という型の文書要素のことを、文書要素「Ｘ」というように記述する。文書要素「ｂｏｏｋ」は内容として、文書要素「ｆｍ」と文書要素「ｂｄｙ」とをこの順で持つ。文書要素「ｆｍ」は内容として、最初に文書要素「ｔｉ」を持ち、続いて、文書「ａｕ」もしくは文書要素「ｃａｕ」を０個以上持つ。文書要素「ｔｉ」は内容として文字列を持つ。その他の文書要素の構造に関する説明は割愛する。
【０００４】
図２の文書型に適合した文書例のひとつで、ＳＧＭＬで記述した例を図３に示す。図中、記号“＜”で始まり“＞”で終わる文字列は、タグを表している。タグの中に文書要素名が記述されている。文書要素名の文字列の先頭に、スラッシュ“／”を持つタグが終了タグであり、スラッシュ“／”を持たないものが開始タグである。
【０００５】
図４に、図３の文書データの表示例を示す。４００は、ＣＲＴの表示画面である。４０１はマウスカーソルで、マウスによりその動作が制御される。４０２は挿入カーソルで、現時点での挿入位置を示している。挿入カーソル４０２は、マウスやキーボードのカーソル移動キーを使って移動することができる。４０３，４０４は、それぞれ文書要素の開始、終了記号で、ＳＧＭＬ文書データの開始タグ、終了タグに相当する。
【０００６】
図３のような文書データの編集において、文書要素を挿入する時、従来文書作成者は以下のように行っていた。まず、図５に示すように、挿入したい位置に挿入カーソル４０２を移動し、メニュー等により文書要素挿入処理を指示する。この操作により、ＣＲＴ画面４００は図６に示すようになる。４０５は入力可能文書要素表示ウィンドウで、挿入カーソル４０２の位置において入力が可能な文書要素名を表示するウィンドウである。そして、文書作成者が入力可能文書要素表示ウィンドウ４０５上で、挿入しようとしている文書要素名を選択すると、挿入位置に文書要素が挿入された。
【０００７】
【発明が解決しようとする課題】
しかしながら、上記従来例においては、文書構造を知らない文書作成者がある特定の文書要素を挿入しようとした場合、効率が悪いという問題があった。例えば、図５に示すような文書データに、文書要素「ｃａｕ」を挿入しようとした場合、挿入可能と考えられる場所に挿入カーソル４０２を移動し、そこで文書要素挿入処理を指示し、入力可能要素表示ウィンドウ４０５を調べなければならなかった。
【０００８】
入力可能文書要素表示ウィンドウ４０５に、文書要素名「ｃａｕ」が表示されていたならば、文書要素「ｃａｕ」を挿入することができるが、表示されていなければ、挿入カーソル４０２を別の位置に移動し、上記の操作を繰り返さなければならず、非効率的であった。
【０００９】
本発明は、上記問題点に鑑みてなされたものであり、文書要素を入れ子状に構造化した文書を取り扱う場合に、文書要素を挿入する操作を効率化することを目的とする。
【００１０】
【課題を解決するための手段】
上記課題を解決するため、本発明に係る文書処理装置は、文書要素を入れ子状に構造化した文書を取り扱う文書処理装置であって、構造化した文書の文書型記述を記憶する記憶手段と、文書要素名を入力する文書要素名入力手段と、入力した文書要素名が表す文書要素の型と前記記憶手段に記憶されている文書型記述とに基づいて、前記文書要素を前記構造化した文書に挿入可能な位置を検出する挿入可能位置検出手段と、前記文書要素の挿入を所望する位置を指定するための挿入所望位置指定手段と、前記挿入を所望する位置と前記挿入可能な位置とが一致しない場合、前記挿入可能位置検出手段で検出された挿入可能な位置の中で、前記挿入を所望する位置から最も近い挿入可能な位置に前記文書要素を挿入する文書要素挿入手段と、を備えることを特徴とし、適切な位置に容易に文書要素を挿入することができ、文書編集の効率を向上させることが可能になる。ここで、前記文書要素名入力手段は、文書要素名を選択して入力するための、文書要素名に対応する選択ボタンを前記文書の編集画面上に有することにより、操作性を更に向上させることができる。
【００１１】
又、本発明の文書処理方法は、文書要素を入れ子状に構造化した文書を取り扱う文書処理装置における文書処理方法であって、前記文書処理装置が備える入力手段が、文書要素名の入力を受ける文書要素名入力工程と、前記文書処理装置が備える検出手段が、入力された文書要素名が表す文書要素の型と記憶手段に記憶されている構造化した文書の文書型記述とに基づいて、前記文書要素を前記構造化した文書に挿入可能な位置を検出する挿入可能位置検出工程と、前記文書処理装置が備える挿入手段が、ユーザにより指定された挿入を所望する位置と前記挿入可能位置検出工程で検出された挿入可能な位置とが一致しない場合、前記挿入可能な位置の中で、前記挿入を所望する位置から最も近い挿入可能な位置に前記文書要素を挿入する文書要素挿入工程と、を備えることを特徴とする。
【００１７】
【発明の実施の形態】
以下、本発明の実施形態を図面を参照しながら説明する。
【００１８】
［実施形態１］
図１は、本実施形態に係る文書処理装置のシステム構成図である。１は文書データや指令コードを入力するためのキーボードである。２は表示画面上で文書作成の指示を行うためのマウスである。３は演算・制御用のＣＰＵである。４は表示用ＣＲＴである。１０はプログラムを保持するための記憶装置である。２０はプログラムやデータを保持するための補助記憶装置である。３０はデータを保持しておくための記憶装置である。これらは、それぞれバス９を介して接続されている。
【００１９】
記憶装置１０、補助記憶装置２０、記憶装置３０を区別せずに、ひとつの記憶装置としてもさしつかえない。本実施形態では、記憶装置１０に構造検証プログラム１２、距離算出プログラム１５、要素挿入プログラム１４が存在する。記憶装置３０には、文書データ３１、挿入文書要素名３２、親文書要素名３３、対象文書要素３４、内容要素間位置３５、挿入可能位置３７が存在する。補助記憶装置２０には、ＳＧＭＬ文書データ２１が存在する。ＳＧＭＬ文書データを記憶装置３０上にロードしたものが文書データ３１である。
【００２０】
次に、本実施形態で扱う文書データ３１の構成例を図７を参照しながら説明する。図７に示した文書データ３１は、文書要素３１０１、３１０２、３１０３・・・等をノードとし、入れ子構造を木構造の形式で表現する形態をとる。文書内容の基本の文書要素３１０１は文書内容のルート３１００からポイントされる。各文書要素は、文書要素の種類を表すデータ、要素の順序関係を表すリンクデータ、文書要素の内容を表す内容データを持つ。例えば、ルートの要素である文書要素３１０１は、文書要素の種類を表す「ｂｏｏｋ」という識別子を持ち、自分に続く次の要素がなく、内容として、文書要素「ｆｍ」と文書要素「ｂｄｙ」とをこの順で持つことを表している。リンクがないのは、文書のおおもとは文書要素３１０１がひとつだけからなるためである。
【００２１】
文書要素３１０６は文字列要素である。これが文字列要素であることを種類の識別子を「＃」とすることで区別している。なお、この文字列要素３１０６は、文字列「いろはの構築」を直接持っている。他の文書要素についての説明は割愛する。図７における画面表示例は、従来例における図４と同じである。
【００２２】
文書データ３１における位置は、文書要素（例えば内部データのポインタ）と、その文書要素の内容要素間の位置によって定義される。内容要素間の位置は、同一階層（例えば、３１０２と３１２０は同一階層である）の文書要素あるいは文字を単位に、先頭からカウントすることにより決定する。例えば、図７の文書要素３１０２では、文書要素３１０３の直前を位置０、文書要素３１０３と文書要素３１０４の間の位置を位置１、文書要素３１０４と文書要素３１０５の間の位置を位置２というように、末尾の内容要素の直後の位置まで決定する。従って、例えば、図７の文書要素３１０３と文書要素３１０４の間の位置は（文書要素３１０２，１）と定義される。
【００２３】
次に、本実施形態の処理手順を図８を参照しながら説明する。本実施形態は、文書要素を挿入する際、現在の編集位置に最も近い距離にある挿入可能位置に、文書要素を挿入することによって、文書編集における操作性を向上させるものである。以下では、この処理を「編集位置調整処理」という。
【００２４】
以下、図７に示す文書データ３１に対して文書要素「ａｕ」を挿入する場合を例として編集位置調整処理を説明する。本処理は、ある特定の文書要素を挿入しようとして、従来例と同様にメニューから「要素挿入」を選択した時に起動されるものである。本処理が起動されると、図９のように表示される。４０６は文書要素名表示ウィンドウで、図２で定義されている文書要素型のすべての名前が表示されている。
【００２５】
まず、ステップＳ８０１では、文書作成者が文書要素名表示ウィンドウ４０６からマウス２によって指定した文書要素名を、挿入文書要素名３２に登録して、ステップＳ８０２に進む。
【００２６】
ステップＳ８０２では、図２に示す文書型記述を参照して、挿入文書要素名３２に登録されている文書要素型を内容に持ち得る文書要素型をすべて検出し、その名前を親文書要素名３３に登録する。これは、例えば入力する文書要素の型が「ａｕ」であるとすると、その文書要素型を内容として持ち得るのは、文書型既述の中の「＜！ＥＬＥＭＥＮＴ  ｆｍ  （ｔｉ，（ａｕ  ｜  ｃａｕ）*）＞」の記述から「ｆｍ」という文書要素型であることがわかる。そこで、文書要素名「ｆｍ」を親文書要素名３３に登録する。ほかにも、文書要素型「ａｕ」を含む文書要素型が存在するならば、それらの名前も親文書要素名３３に登録する。そして、ステップＳ８０３に進む。
【００２７】
ステップＳ８０３では、文書データ３１中から、挿入文書要素名３２に登録されている文書要素名を持つ文書要素が挿入可能な位置を全て検出し、挿入可能位置３７に登録し、ステップＳ８０４に進む。なお、本ステップの詳細に関しては後述する。
【００２８】
ステップＳ８０４では、ステップＳ８０３において挿入可能位置が検出できたかどうかを判定し、検出できた時はステップＳ８０５に進み、検出できなかった時は、メインルーチンに戻る。
【００２９】
ステップＳ８０５では、ステップＳ８０３で検出した全ての挿入可能位置のうち、挿入カーソル４０２と最短距離にある挿入可能位置を選出する。距離の算出は次のように行なう。すなわち、距離算出プログラム１５を用いて、現在挿入位置、すなわち、挿入カーソル４０２が示している位置と、挿入可能な文書データ内位置（対象文書要素３４に登録されている文書要素，内容要素間位置３５の値）に相当する表示画面上の位置の距離を算出する。ここで、算出する距離は、両位置間に表示される文字、開始および終了記号の数によって定義する。例えば、図１０に示す例にいては、４２０、４２１、４２２が文書要素「ａｕ」が入り得る位置であり、挿入カーソル４０２からの距離は、それぞれ１９、１１、３となる。ただし、実際には、表示画面４００上には、４２０、４２１、４２２は表示されない。なお、挿入可能位置が１箇所の場合には、距離を算出する必要はない。
【００３０】
ステップＳ８０５に続いてステップＳ８０６では、文書要素挿入プログラム１４を用いて、ステップＳ８０５で選出した挿入可能位置に相当する文書データ３１内の位置を算出し、そこに挿入文書要素名３２に登録されている文書要素名を持つ文書要素を挿入し、再表示する。本ステップの処理は、既存の構造化エディタで実現されているので、その方法を用いればよい。本ステップの処理を終えたらメインルーチンに戻る。
【００３１】
次に、ステップＳ８０３の処理の流れを図１１を参照しながら説明する。まず、ステップＳ１１０１では、対象文書要素３４の初期化を行なう。具体的には、文書要素３１００を、対象文書要素３４に登録する処理である。この時、文書要素３１００のポインタを登録してもよいし、各文書要素にユニークなＩＤを持たせ、そのＩＤを登録してもよく、文書要素が一意に定まるのならば十分である。本実施形態では、ポインタを登録するものとして説明する。
【００３２】
ステップＳ１１０１に続いてステップＳ１１０２では、文書データ３１から、対象文書要素３４に登録されている文書要素以降にある文書要素のうち、親文書要素名３３に登録されている名前を持つ文書要素を検索し、そのポインタを対象文書要素３４に登録する。検出できなかった時は０を登録する。ここで、文書要素は、いきがけの順で検索される。例えば、図７では、文書要素３１００，３１０１，３１０２，３１０３，３１０６，３１０４，３０１７，３１０９，３１０５，３１０８，３１１０，３１２０，３１２１，３１２２，３１２５，３１２３，３１２６，３１２４，３１２７というように、木構造の横方向よりも下位方向を優先的にスキャンする。従って、例えば対象文書要素３４に文書要素３１００が登録され、親文書要素名３３に「ｆｍ」が登録されていたとすると、文書要素３１０２が検出される。
【００３３】
ステップＳ１１０２に続いてステップＳ１１０３では、対象文書要素３４の内容が０かどうか、すなわち、ステップＳ１１０２で、次対象要素が検出できなかったかどうかを判定する。その結果、文書要素３４の内容が０でない場合、すなわち、次の対象文書要素が検出できた時はステップＳ１１０４に進み、０である場合、すなわち、次の対象文書要素が検出できなかった時は、図８のステップＳ８０４に戻る。
【００３４】
ステップＳ１１０４では、内容要素間位置３５を初期化（すなわち、０にする）し、ステップＳ１１０５に進む。
【００３５】
ステップＳ１１０５では、文書データ３１における位置（対象文書要素３４に登録されている文書要素，内容要素間位置３５に登録されている値）に、挿入文書要素名３２に登録されている名前を有し、その内容が空の文書要素を仮挿入し、構造検証プログラム１２によって構造検証する。構造検証の方法は、既存の構造化エディタで実現されているので、それを用いればよい。
【００３６】
ステップＳ１１０５に続いてステップＳ１１０６では、ステップＳ１１０５で、構造が正当とみなされたかどうかを判定する。正当とみなされた時はステップＳ１１０７に進み、正当とみなされなかった時はステップＳ１１０８に進む。
【００３７】
ステップＳ１１０７では、ステップＳ１１０５で仮挿入した位置に相当する表示画面４００上の位置を表す座標を、挿入可能位置３７に登録して、ステップＳ１１０８に進む。
【００３８】
ステップＳ１１０８では、内容要素間位置３５が内容要素の末尾位置かどうかを判定する。これは、内容要素間位置３５の値が内容要素数と一致しているかどうかを調べればよい。その結果、両者が一致していたならば、ステップＳ１１０２に進み、両者が一致していなければ、ステップＳ１１０９に進み、内容要素間位置３５の値を更新（インクリメント）し、その後ステップＳ１１０５に進む。次に、以上説明した編集位置調整処理の具体例を説明する。例えば、図９に示す状態において、文書要素「ａｕ」を挿入しようとして、表示ウィンドウ４０６から「ａｕ」を選択すると、図１０において、挿入カーソル４０２から最短距離にある４２２の位置に文書要素「ａｕ」が挿入され、表示画面４００は図１２に示すようになる。
【００３９】
本実施形態では、距離算出方法の一例を説明したが、距離の算出は上記の例に限定されるものではない。例えば、位置４２０が示すいずれかの代表位置と、挿入カーソル４０２上のいずれかの代表位置との、レイアウトされた文書画面の２次元空間距離を算出してもよい。ここで、代表位置は、例えば、図形４２０の最下端の位置とすれば良い。
【００４０】
［実施形態２］
本実施形態は、パレット形式で文書データを編集する構造化エディタに対して、本発明を適用した例であり、また、文書作成者が文書要素を挿入しようとした時に、文書要素を挿入可能な位置を一括して表示する例である。
【００４１】
本実施形態を説明する上で用いる文書型記述を図１３に示す。この文書型記述では、文書要素「ｍｅｍｏ」は、文書要素「ｈ」が先頭にのみあり、文書要素「ｈ」の後には、必ず、文書要素「ｐ」があり、その後は、文書要素「ｐ」、あるいは文書要素「ｕｌ」が０個以上存在するというように記述されている。
【００４２】
パレット形式のエディタは、他の構造化エディタと文書要素挿入操作、特に挿入要素の指定方法が異なることが特徴である。他のエディタでの文書要素指定方法は、従来例で記述したように、文書要素型を入力可能文書要素表示ウィンドウ４０５から選択することによって指定するものである。一方、パレット形式での文書要素指定方法は、パレットに表示されている文書要素型を選択することによって指定するものである。
【００４３】
例えば、本形式のエディタでは、図１４に示すように表示される。また、本形式のエディタで取り扱う文書データ３１の構成は、実施形態１と同じである。図１４に示す表示文書データは、図１５に示す文書データ３１を表示したものである。各文書要素の開始記号、終了記号が表示されていないが、表示部の左端からのオフセットの大きさや行の先頭文字「・」によって、文書要素「ｈ（ヘッダ）」、「ｐ（段落）」、「ｕｌ（箇条書き）」が表現されている。４１０はパレット表示部で、４１１，４１２，４１３はそれぞれ文書要素型「ｈ」、「ｐ」、「ｕｌ」を表す領域である。
【００４４】
文書作成者がパレット表示部４１０から、４１１，４１２，４１３の何れかの文書要素型を表す領域内にマウスカーソル４０１を移動し、そこでマウスボタンをプッシュする。この操作により、文書要素型を指定する。そして、マウスボタンをプッシュしたまま、マウスカーソルを移動し、表示文書中の挿入したい箇所で、マウスボタンをリリースすることにより、その位置に文書要素が挿入される。
【００４５】
次に、本実施形態に係る文書処理装置のシステム構成例について説明する。本実施形態に係るシステム構成は、図１に示す実施形態１に係るシステム構成と酷似しており、記憶装置１０に図形表示プログラム１３が存在することと、記憶装置３０に文書要素型領域対応テーブル３６が存在することを除いて実施形態１と同一である（図示せず）。
【００４６】
以下、本実施形態に係る編集位置調整処理の流れを図１６を参照しながら説明する。本処理は、文書作成者が要素挿入指示をして、図１４のように表示されている時、マウスカーソル４０１をパレット表示部４１０内の文書要素領域内に移動し、位置指定を行なった時に起動する。
【００４７】
まず、ステップＳ１６０１では、パレット表示部４１０内のいずれの文書要素型（４１１〜４１３）の領域内に位置指定（マウスボタンプッシュ）がされたかを判定し、その文書要素名を挿入文書要素名３２に登録する。この判定は、各文書要素型名とその領域を表す座標群を持つ文書要素型領域対応テーブル３６を用意し、文書作成者に指定された位置と上記座標群とを比較することにより行うことができる。例えば、文書要素型４１１〜４１３の各領域が矩形だとすれば、その文書要素型の各々に対して、文書要素型名とそれに対応する文書要素型４１１〜４１３の各領域の左上、右下の座標を、文書要素型領域対応テーブル３６に登録しておくことによって、指定された位置がどの領域内であるかを判定することができる。指定された位置が、文書要素型４１１〜４１３のいずれの領域内でもなかった時は、その位置でマウスボタンプッシュのイベントに対するシステム仕様に処理を委ねる。そして、ステップＳ１６０２に進む。
【００４８】
ステップＳ１６０２〜Ｓ１６０４は、実施形態１におけるステップＳ８０２〜Ｓ８０４の処理と同じである。ステップＳ１６０５では、図形表示プログラム１３によって、ステップＳ１６０３において検出した挿入可能位置に特定図形４０９を表示し、ステップＳ１６０６に進む。ステップＳ１６０６では、マウスカーソル４０１が示す位置と最短距離にある特定図形４０９の位置を検出し、ステップＳ１６０７に進む。ステップＳ１６０７では、ステップＳ１６０６で検出した位置に挿入カーソル４０２を移動し、再表示する。
【００４９】
以後、処理はイベント待ちとなる。そして、イベントが入力されるとステップＳ１６０８に進む。本実施形態では、このイベントとして、マウス移動イベント（マウス２によるカーソル４０１の移動）と、マウスボタンリリースイベント（マウス２のボタンのリリース）との２つの例について説明する。なお、他のイベントが入力された場合は、そのイベントに対するシステム仕様に処理を委ねる。
【００５０】
ステップＳ１６０８では、マウス移動イベントが発生したかどうかを判定する。そして、マウス移動イベントが発生した場合はステップＳ１６１０に進み、そのイベントが発生しない場合にはステップＳ１６０９に進む。
【００５１】
ステップＳ１６０９では、マウスボタンリリースイベントが発生したかどうかを判定する。そして、マウスボタンリリースイベントが発生した場合はステップＳ１６１１に進み、そのイベントが発生しない場合にはステップＳ１６０８に進む。
【００５２】
ステップＳ１６１０では、挿入カーソル位置を補正する。この処理は、上記のステップＳ１６０６とＳ１６０７と同様の処理を行なう。すなわち、移動したマウスカーソル４０１が示す位置と最短距離にある特定図形４０９の位置を検出し、その位置に挿入カーソル４０２を移動し、再表示する。図１７、図１８は本処理後の表示例を示している。いずれの図においても、マウスカーソル４０１に最も近い特定図形４０９の位置に、挿入カーソル４０２が移動している。本ステップの処理を終了したら、ステップＳ１６０８に戻る。
【００５３】
ステップＳ１６１１では、現在の挿入カーソル４０２の位置に相当する文書データ３１内の位置を算出し、その位置に、挿入文書要素名３２に登録されている文書要素要素名を持つ文書要素を挿入する。図１９は、図１７に示す状態から、マウスボタンをリリースし、文字列の「いろはの構築」を入力した場合の表示例を示している。文書要素の挿入を終了したら、処理はメインルーチンに戻る。
【００５４】
本実施形態は、文書作成者が文書要素を挿入しようとする場合に、その挿入可能位置を一度に認識することができるという効果がある。また、マウスカーソル４０１を挿入したい箇所に厳密に移動させる必要はなく、その付近に移動するだけで挿入位置が決定されるのでマウスカーソル移動操作が容易となり、効率よく文書を作成できるという利点がある。
【００５５】
尚、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器から成る装置に適用しても良い。また、本発明はシステム或は装置にプログラムを供給することによって達成される場合にも適用できることはいうまでもない。
【００５６】
【発明の効果】
本発明によると、構造化文書を作成する文書作成者が、文書要素を挿入しようとした時に、挿入すべき文書要素型に応じて、現在の編集位置を、文書要素挿入可能位置に移動させ、その位置に文書要素が挿入されるため、効率よく文書要素の挿入ができるという効果があり、特に、文書作成者が文書構造を知悉していない場合においても文書の編集を容易に行えるという効果がある。
【００５７】
【図面の簡単な説明】
【図１】実施形態１に係る文書処理装置のシステム構成図である。
【図２】ＳＧＭＬによる文書型の定義例を示す図である。
【図３】ＳＧＭＬ文書データ記述例を示す図である。
【図４】従来例におけるＳＧＭＬ文書データの表示例を示す図である。
【図５】従来例におけるＳＧＭＬ文書データの表示例を示す図である。
【図６】従来例におけるＳＧＭＬ文書データの表示例を示す図である。
【図７】実施形態１における文書データの例を示す図である。
【図８】実施形態１における処理手順を示すフローチャートである。
【図９】実施形態１における文書データの表示例を示す図である。
【図１０】実施形態１における挿入可能位置を示す図である。
【図１１】実施形態１における編集位置調整処理の手順を示すフローチャートである。
【図１２】実施形態１における文書データの表示例を示す図である。
【図１３】実施形態２における文書型の定義を示す図である。
【図１４】実施形態２における文書データの表示例を示す図である。
【図１５】実施形態２における文書データの例を示す図である。
【図１６】実施形態２における編集位置調整処理の手順を示すフローチャートである。
【図１７】実施形態２における文書データの表示例を示す図である。
【図１８】実施形態２における文書データの表示例を示す図である。
【図１９】実施形態２における文書データの表示例を示す図である。
【符号の説明】
１  キーボード
２  マウス
３  ＣＰＵ
４  ＣＲＴ
９  計算機バス
１０，２０，３０  記憶装置
１２  構造検証プログラム
１３  図形表示プログラム
１４  文書要素挿入プログラム
１５  距離算出プログラム
３１  文書データ
３２  挿入文書要素名
３３  親文書要素名
３４  対象文書要素
３５  内容要素間位置
３６  文書要素型対応テーブル
３７  挿入可能位置
４００  ＣＲＴ４の表示画面
４０１  マウスカーソル
４０２  挿入カーソル
４０３，４０４  開始、終了記号
４０５  入力可能文書要素表示ウィンドウ
４０９  特定図形
４１０  パレット表示部
４１１，４１２，４１３  パレット表示部内の文書要素領域
【図１】
0003774519.tif 000002
【図２】
0003774519.tif 000003
【図３】
0003774519.tif 000004
【図４】
0003774519.tif 000005
【図５】
0003774519.tif 000006
【図６】
0003774519.tif 000007
【図７】
0003774519.tif 000008
【図８】
0003774519.tif 000009
【図９】
0003774519.tif 000010
【図１０】
0003774519.tif 000011
【図１１】
0003774519.tif 000012
【図１２】
0003774519.tif 000013
【図１３】
0003774519.tif 000014
【図１４】
0003774519.tif 000015
【図１５】
0003774519.tif 000016
【図１６】
0003774519.tif 000017
【図１７】
0003774519.tif 000018
【図１８】
0003774519.tif 000019
【図１９】
0003774519.tif 000020