(57)【特許請求の範囲】
【請求項１】
表示画面への表示内容と表示画面への表示形態を指示する属性情報とを有する構成要素を複数組み合わせて構成された構造化文書を編集する構造化文書編集装置であって、
構造化文書を構成する構成要素の構造を解析して認識する文書構造認識部と、
該文書構造認識部により認識された構成要素それぞれの表示内容を認識する表示内容認識部と、
該文書構造認識部により認識された構成要素それぞれの属性情報を認識する属性情報認識部と、
前記表示内容認識部により認識された各構成要素の表示内容を、前記属性情報認識部により認識された各構成要素の属性情報を反映させて、表示画面上に表示する構造化文書表示部と、
文書編集操作を行う入力部と、
該入力部の文書編集操作に伴い入力される情報を認識する編集操作認識部と、
該編集操作認識部により認識された情報が構造化文書中の新規入力位置指定を表わす場合に、当該新規入力位置指定に対して編集対象となる構成要素を特定する編集対象構成要素特定部と、
前記構造化文書表示部により構造化文書を構成する各構成要素の表示内容が各構成要素の属性情報を反映させて表示されている表示画面上に、新規入力位置指定による入力位置を示す入力カーソルを表示するとともに、前記編集対象構成要素特定部によって特定された複数の構成要素の中から、編集対象とする一の構成要素の範囲を識別するための識別マークを表示する一方、前記入力部による編集対象とする一の構成要素を変更するための入力カーソルに対する操作に応じて、当該識別マークの表示範囲を変更し、編集対象とする一の構成要素の変更を案内する編集対象表示部と
を備えていることを特徴とする構造化文書編集装置。
【請求項２】
前記編集対象表示部は、
前記編集対象構成要素特定部によって特定された複数の構成要素の中から、編集対象とする一の構成要素の範囲を識別するための識別マークを表示する場合に、入力カーソルに隣接した当該一の構成要素による表示内容が当該一の構成要素に対して入れ子状態になっている別の構成要素による表示内容による場合は、前記表示画面上に、当該一の構成要素の属性情報並びに当該入れ子状態になっている別の構成要素の属性情報それぞれを表示し、当該表示されている複数の属性情報の中から一の属性情報を選択するための入力カーソルに対する操作に応じて選択された属性情報を有する構成要素の変更を案内する
ことを特徴とする請求項１記載の構造化文書編集装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ワープロなどによって作成された文書データを画面上に表示・編集する機能を持つ文書編集装置に関わり、特に、画面への表示内容と画面への表示形態を指示するための属性情報を有する複数の構成要素からなる構造化文書を編集する構造化文書編集装置に関する。
【０００２】
【従来の技術】
近年、インターネットの普及に伴い、ＨＴＭＬ言語で作成されたＨＴＭＬ文書に代表されるように、画面への表示内容と画面への表示形態を指示するための属性情報を有する複数の構成要素からなる構造化文書が流通している。このような構造化文書では、構成要素ごとに文字サイズ、色、レイアウト方法といった属性が指定されており、その属性値に従って構成要素の内容が画面に表示されるため、操作者の希望どおりの属性を持った文字を追加入力しようとすると、編集対象となる構成要素を特定する必要がある。
編集対象となる構成要素を特定するとき、構成要素が入れ子状態になっている場合、つまり太字・斜体・下線といった属性を複合指定した場合、画面上に表示されている状態では各構成要素が占める領域が同一のため、例えば「太字」属性を示す構成要素だけを特定することが難しい。
【０００３】
一般的に利用されているワープロなどと同様の編集操作方法によって構造化文書の編集を行う既存のアプリケーションでは、画面上に表示されている文字や図形といった編集対象に対してキーボードやマウスなどの入力装置によって編集位置を特定した後に編集操作を実行するが、表示上では所望の編集結果が得られたように見えても、構成要素の構造は期待していた結果になっていない場合が多く見受けられる。そこで、構造化文書における編集対象となる構成要素を特定・編集する手段として、ワープロなどとは異なる操作方法を用いた編集装置が考案され、実際に利用されているが、その方法は概ね以下のようなものである。
【０００４】
方法１：表示モードと編集モードとを切り替え、編集モードにおいては入れ子状態となっている各構成要素の間に隙間を挿入し、所望の構成要素を特定できるようにする。
方法２：構造化文書の表示データを表示する領域と構造化文書の構造を表示する領域をそれぞれ独立に画面上に割り当て、構造化文書の構造を表示する領域上で所望の構成要素を特定できるようにする。
【０００５】
【発明が解決しようとする課題】
しかしながら、前述の方法１では、編集モード時に隙間を挿入することで表示モード時とのレイアウトが異なってしまうため、操作者が望んでいるレイアウトになっているかどうかを編集操作を行った後に表示モードに切り替えて確認しなくてはならない。方法２では、方法１のように編集操作終了後にレイアウトを確認する必要はないが、独立して表示されている別領域で編集対象となる構成要素を特定する操作は、構造化文書に不慣れな操作者にとっては理解しにくい操作である。
【０００６】
また、構成要素の内容として新規入力する場合、方法１、方法２ともに、（１）編集対象となる構成要素を特定する、（２）特定した編集対象となる構成要素の内容のどの位置に新規入力するかを指定する、といった別々の操作が必要であり、構造化文書に不慣れな操作者にとっては煩雑な操作となる。
本発明は、このような従来技術の問題点に鑑み、構造化文書を容易に編集することのできる文書編集装置を提供することを目的とする。
【０００７】
【課題を解決するための手段】
本発明では、一般的に普及しているワープロやテキストエディタなどで文書を編集する際にキーボードやマウスといった入力装置で新規入力位置を指定する操作と全く同じ操作（編集位置指定操作）によって、編集対象となる構成要素を特定する操作と、特定した編集対象となる構成要素中の新規入力位置を指定する操作を行えるようにする。基本的な編集位置の指定と同じ操作によって編集対象となる構成要素を特定し、構成要素が入れ子状態にある場合においては、編集位置の近傍に構成要素が入れ子になっていることを表示し、各構成要素が存在する位置に文字入力可能であることを表示することで、直感的に編集対象となる構成要素の特定を可能にする。この手段により、操作者が所望するレイアウトを確認しながら、単純な編集位置指定操作だけで直感的に編集対象となる構成要素の特定と新規入力位置の指定ができるようになる。
【０００８】
すなわち、本発明による構造化文書編集装置は、表示画面への表示内容と表示画面への表示形態を指示する属性情報とを有する構成要素を複数組み合わせて構成された構造化文書を編集する構造化文書編集装置であって、構造化文書を構成する構成要素の構造を解析して認識する文書構造認識部と、文書構造認識部により認識された構成要素それぞれの表示内容を認識する表示内容認識部と、文書構造認識部により認識された構成要素それぞれの属性情報を認識する属性情報認識部と、表示内容認識部により認識された各構成要素の表示内容を、属性情報認識部により認識された各構成要素の属性情報を反映させて、表示画面上に表示する構造化文書表示部と、文書編集操作を行う入力部と、入力部の文書編集操作に伴い入力される情報を認識する編集操作認識部と、編集操作認識部により認識された情報が構造化文書中の新規入力位置指定を表わす場合に、当該新規入力位置指定に対して編集対象となる構成要素を特定する編集対象構成要素特定部と、構造化文書表示部により構造化文書を構成する各構成要素の表示内容が各構成要素の属性情報を反映させて表示されている表示画面上に、新規入力位置指定による入力位置を示す入力カーソルを表示するとともに、編集対象構成要素特定部によって特定された複数の構成要素の中から、編集対象とする一の構成要素の範囲を識別するための識別マークを表示する一方、入力部による編集対象とする一の構成要素を変更するための入力カーソルに対する操作に応じて、当該識別マークの表示範囲を変更し、編集対象とする一の構成要素の変更を案内する編集対象表示部とを備えていることを特徴とする。識別マークの表示は、例えば前記表示部分にそれを囲む矩形マークを表示すること、あるいは前記表示部分自体を着色表示したり、点滅表示することなど他の表示部分と区別できるような形態で表示することによって行うことができる。
【０００９】
入力カーソルが置かれた位置で編集対象として選択可能な構成要素が複数ある時、入力カーソルの表示位置を移動させる操作と同じ操作によって編集対象となる構成要素を選択できるようにする。編集対象となる構成要素を選択するために入力カーソルの表示位置を移動させる操作を行ったとき、入力カーソルの表示画面上の表示位置は変化せず、識別マークが表示される表示部分が選択された構成要素の変化に応じて変更される。
【００１０】
また、入力カーソルが置かれた位置で編集対象として選択可能な構成要素が複数ある時、選択可能な構成要素の属性情報を表示し、表示された属性情報を元に当該属性情報に対応する構成要素を選択するようにする。このとき、入力カーソルの表示位置を移動させる操作と同じ操作によって表示位置が移動するサブカーソルを前記属性情報の近くに表示し、サブカーソルによって編集対象となる構成要素を選択するようにすることができる。あるいは、サブカーソルの代わりに数字を表示し、数字キー等で選択するようにすることも可能である。
選択された構成要素に対する入力カーソル位置での編集操作の内容、例えば文字の入力や削除等の内容、は構造化文書の文書データに反映される。
【００１１】
また、本発明による構造化文書編集装置の前記編集対象表示部は、編集対象構成要素特定部によって特定された複数の構成要素の中から、編集対象とする一の構成要素の範囲を識別するための識別マークを表示する場合に、入力カーソルに隣接した当該一の構成要素による表示内容が当該一の構成要素に対して入れ子状態になっている別の構成要素による表示内容による場合は、表示画面上に、当該一の構成要素の属性情報並びに当該入れ子状態になっている別の構成要素の属性情報それぞれを表示し、当該表示されている複数の属性情報の中から一の属性情報を選択するための入力カーソルに対する操作に応じて選択された属性情報を有する構成要素の変更を案内することを特徴とする。
【００１２】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を説明する。ここでは、構造化文書としてＨＴＭＬ文書を例にとって説明する。
図１は、本発明による文書編集装置の構成例を示す概略機能ブロック図である。この文書編集装置は、操作者が表示画面上で各種編集操作を指示するためのキーボードやマウス等の入力装置２１、文書データを保存するための補助記憶装置１１、補助記憶装置１１から文書データを読み込む文書データ読み込み部１２、文書データ読み込み部１２で読み込んだ文書の構造を解析し、認識する文書構造認識部１３、文書構造認識部１３で認識した文書構造の各構成要素から表示内容を取り出し、認識する表示内容認識部１４、文書構造認識部１３で認識した文書構造の各構成要素から属性情報を取り出し、認識する属性情報認識部１５、入力装置２１によって指定された新規入力位置から編集対象構成要素を特定する編集対象構成要素特定部１６、表示内容認識部１４と属性情報認識部１５と編集対象構成要素特定部１６からの情報によって表示するデータを生成する表示画面生成部１７、入力装置２１による種々の編集操作入力を認識する編集操作認識部１８、編集操作認識部１８が認識した編集操作に基づき文書構造認識部１３が保持している文書データの内容を更新し、文書構造認識部１３に対して再解析を指示する文書データ更新部１９、表示画面生成部１７が生成した表示画面データを表示するディスプレイ装置２０を備える。
【００１３】
図２は、本発明の文書編集装置が処理対象とする構造化文書（この例ではＨＴＭＬ文書）の文書データ（ソース）例を示す説明図である。図２に示した文書データ例において、「＜」と「＞」で囲まれた部分は属性値を表すタグであり、内部にスラッシュ「／」を含まないタグはその属性の開始位置を示す開始タグ、スラッシュを含むタグはその属性の終了位置を示す終了タグである。タグ＜Ｐ＞は段落、タグ＜Ｂ＞は太字、タグ＜Ｉ＞は斜体、タグ＜Ｕ＞は下線の属性を表す。すなわち、開始タグ＜Ｐ＞と終了タグ＜／Ｐ＞で挟まれた部分は一つの段落を表す。また、開始タグ＜Ｉ＞と終了タグ＜／Ｉ＞で挟まれた部分は斜体属性を有し、開始タグ＜Ｕ＞と終了タグ＜／Ｕ＞で囲まれた部分は下線属性を有する。ある属性の開始タグと終了タグで挟まれた部分はそれぞれ文書の構成要素であり、図２には各構成要素を仮想線で囲んで示した。
【００１４】
＜ＨＴＭＬ＞で始まり＜／ＨＴＭＬ＞で終わる図２の文書は、＜ＨＥＡＤ＞で始まり＜／ＨＥＡＤ＞で終わる構成要素２５と、＜ＢＯＤＹ＞で始まり＜／ＢＯＤＹ＞で終わる構成要素２６とからなっている。なお、タグ＜ＨＴＭＬ＞はＨＴＭＬ言語で作成されていることを示し、タグ＜ＨＥＡＤ＞は本文以外のメタ情報、つまりヘッダ情報を示し、タグ＜ＢＯＤＹ＞は本体情報を示す。
【００１５】
構成要素２６は、開始タグ＜Ｈ１＞で始まり、終了タグ＜／Ｈ１＞で終わる１つの構成要素と、開始タグ＜Ｐ＞で始まり、終了タグ＜／Ｐ＞で終わる３つの構成要素（段落）からなっている。このうち、開始タグ＜Ｐ＞で始まり、終了タグ＜／Ｐ＞で終わる構成要素２７は、段落の属性のみを有する構成要素２７ａと、段落の属性と太字の属性とを併せ持つ構成要素２７ｂを含む。また、構成要素２８は、属性＜Ｂ＞，＜Ｉ＞，＜Ｕ＞の入れ子構造を有する。すなわち、構成要素２８ａは段落属性のみを有するが、構成要素２８ｂは段落と太字の属性を有し、構成要素２８ｃは段落、太字、斜体の属性を合わせて有し、入れ子構造の一番深い位置にある構成要素２８ｄは段落、太字、斜体に加えて下線の属性をも有する。タグ＜H1＞は見出しを示す。
【００１６】
図３は、構造化文書の構成要素と編集操作における新規入力位置の関係を説明する図である。図３（ａ）に示した構成要素において、矢印で示した位置３１は段落であることを示す属性を持つ文字「日時」の末尾位置であり、位置３２は太字属性を持つ文字「１０月７日」の先頭位置である。位置３２に新規に文字入力を行うと、その文字は太字属性を有するため、太字で表示されることになる。また、図３（ｂ）に示した構成要素において、矢印で示した位置３３は段落であることを示す属性を持つ文字「備考」の末尾位置、位置３４は太字属性を持つ構成要素２８ｂが選択されたときの新規入力位置、位置３５は太字属性と斜体属性を構成要素２８ｃが選択されたときの新規入力位置、位置３６は太字属性、斜体属性及び下線属性持つ構成要素２８ｄが選択されたときの新規入力位置である。
【００１７】
図４は、図２に示した文書データを読み込んだときに文書編集装置のディスプレイ１１０に表示される画面構成を示している。表示行４１は、図２の構成要素２７（図３（ａ）に示した構成要素）を表示している部分である。矢印で示した位置４２は、段落であることを示す属性を持つ文字の末尾位置３１に対応する画面上の位置である。また、位置４３は、太字属性を持つ文字の先頭位置３２に対応する画面上の位置である。ここで、図３（ａ）に示した文書データ上の位置３１と位置３２の画面上の位置、すなわち位置４２と位置４３は同一である。
【００１８】
図４の表示行４４は、図２の構成要素２８（図３（ｂ）に示した構成要素）を表示している部分である。矢印で示した位置４５は、段落であることを示す属性を持つ文字の末尾位置３３に対応する画面上の位置である。位置４６は、太字属性を持つ構成要素が選択されたときの文書データ上での新規入力位置３４に対応する画面上の位置である。位置４７は、斜体属性を持つ構成要素が選択されたときの文書データ上での新規入力位置３５に対応する画面上の位置である。また、位置４８は、下線属性を持つ構成要素が選択されたときの文書データ上での新規入力位置３６に対応する画面上の位置である。つまり、文書データ上の位置３３，３４，３５，３６に対応する画面上の位置４５，４６，４７，４８は同一である。
このように、構造化文書においては、構成要素が入れ子構造になっていると、複数の構成要素に対して画面上の編集位置が同じになってしまうことがあり、画面上で構成要素を特定して編集することが困難になる。
【００１９】
本発明では、構造化文書を表示画面上で編集可能とするために、表示画面上での入力位置を示すカーソルは、表示画面に表示されている文字単位ではなく、文書データ中のタグも含めた要素単位で移動するようにする。そして、編集対象として選択した構成要素、すなわち入力カーソルが含まれている文書データ中の構成要素に相当する部分を画面上で他の部分と識別できるようにして表示し、編集対象の構成要素の属性を操作者が画面上で容易に判別できるようにする。選択された構成要素に対応する表示部分を他の部分と識別できるようにして表示する方法示法としては、その構成要素の表示部分を囲む枠状の矩形マークなどの構成要素選択マークを表示する方法、反転表示する方法、点滅表示する方法等があり、任意の方法を採用することができる。以下では、選択された編集対象の構成要素に対応する表示部分を矩形マークで囲って識別する方法によって説明する。
【００２０】
図２に示した文書データに基づき図４のように画面表示されている構造化文書を、本発明に従って図４の表示画面上で編集する方法について説明する。最初に、編集画面での入力位置を示すカーソルの移動について説明する。
図５は、図４に示されている段落４１を表示画面上で編集する際の、編集画面の説明図である。図５（ａ）は、文書編集画面において段落４１上で左から右へ入力カーソル５１を移動してきて、文字「日時」の後に入力カーソル５１を置いた状態を示している。このとき編集対象は段落属性のみを有する構成要素（図２に図示した構成要素２７ａ）であるため、その構成要素に対応する表示部分が矩形マーク５２で囲んで表示され、その矩形マーク５２の内部に入力カーソル５１が表示される。このカーソル５１の位置で文字入力を行うと、入力された文字は矩形マーク５２内に表示されている文字と同じ字体で表示される、すなわち矩形マーク５２内の文字と同じ属性を有するようになる。このとき入力カーソル５１で示される入力位置は、図５（ｃ）に示す文書データ中の位置５４に相当する。
【００２１】
図５（ｂ）は、文書編集画面において入力装置２１のカーソル移動キーを操作して、入力カーソルを図５（ａ）に示した位置５１から右に１ステップ移動する操作を行った後の状態を示す図である。このとき、文書編集画面上でカーソル５１の位置は移動しないが、編集対象である構成要素を識別する矩形マーク５３が太字の文字「１０月７日」を囲むように変化する。こうして、編集対象が文字「日時」から文字「１０月７日」に移ったことを操作者に知らせる。図５（ｂ）に示されているカーソル５１の位置で文字入力を行うと、入力された文字には矩形マーク５３内に表示されている文字と同じ太字属性が付与され、画面上に太字で表示される。このときカーソル５１で示される入力位置は、図５（ｃ）に示す文書データ中の位置５５に相当する。
【００２２】
以上のように、入力装置２１のカーソル移動キーの操作によって編集画面上での入力カーソル位置の移動に加えて編集対象構成要素の選択を明示的に行うことができる。そして、編集対象である構成要素を示す矩形マーク５２あるいは矩形マーク５３内に文字を入力すると、その矩形マーク内に表示されている文字の属性と同じ属性を有する文字が入力されることになるため、操作者は表示画面上で望み通りの属性を有する文字の追加入力、削除等を簡単に行うことができる。
【００２３】
次に、図６を用いて、複数の構成要素が入れ子状態になっている場合の編集方法について説明する。図６は、図４に示されている段落４４を表示画面上で編集する際の、編集画面の説明図である。
図６（ａ）は、文書編集画面において段落４４上で左から右へ入力カーソル６１を移動してきて、文字「備考」の後にカーソルを置いた状態を示している。このとき編集対象は段落属性のみを有する構成要素（図２に図示した構成要素２８ａ）であるため、その構成要素に対応する表示部分が矩形マーク６２で囲んで表示され、その矩形マーク６２内に入力カーソル６１が表示される。この入力カーソル６１の位置で文字入力を行うと、入力された文字は矩形マーク６２内に表示されている文字「備考」と同じ字体で表示される、すなわち矩形マーク６２内の文字と同じ属性を有するようになる。このときカーソル６１で示される入力位置は、図６（ｆ）に示す文書データ中の位置６１ａに相当する。
【００２４】
図６（ｂ）は、文書編集画面において図６（ａ）に示したカーソル６１の位置から入力装置２１のカーソル移動キーを操作してカーソルを右に１ステップ移動する操作を行った後の状態を示す図である。このとき、文書編集画面上でカーソル６１の位置は変化しないが、編集対象である構成要素を指示する矩形マーク６３が太字で、斜体、かつ下線付きの文字「中止」を囲むように変化する。こうして、編集対象が文字「備考」から文字「中止」に移ったことを操作者に知らせる。同時に、太字体と、太字の斜体と、太字の斜体に下線の付いた字体からなる３種類の字体がポップアップ画面６４内に例として表示され、この入力カーソル６１の位置では３種類の字体から選択して文字入力が可能なことが分かる。図には、そのうちの一つ太字体の箇所にサブカーソル６５が表示され、この状態で入力を行うと太字属性の文字が入力されることを知らせる。このときカーソル６１（サブカーソル６５）で示される入力位置は、図６（ｆ）に示す文書データ中の位置６５ａに相当する。
【００２５】
図６（ｃ）は、文書編集画面において図６（ｂ）の状態からカーソル移動キーを操作して入力カーソルを右に１ステップ移動する操作を行った後の状態を示す図である。このとき、文書編集画面上で入力カーソル６１の位置は変化せず、編集対象である構成要素を指示する矩形マーク６３も文字「中止」を囲んだままで変化しないが、３種類の字体を例示するポップアップ画面６４内に表示されているサブカーソル６６が太字で斜体の箇所に移動する。こうして、この状態で入力を行うと太字かつ斜体属性の文字が入力されることを知らせる。このときカーソル６１（サブカーソル６６）で示される入力位置は、図６（ｆ）に示す文書データ中の位置６６ａに相当する。
【００２６】
図６（ｄ）は、文書編集画面において図６（ｃ）に示した状態からカーソル移動キーを操作して入力カーソルを右に１ステップ移動する操作を行った後の状態を示す図である。このとき、文書編集画面上でカーソル６１の位置は変化せず、編集対象である構成要素を指示する矩形マーク６３も変化しないが、３種類の字体を例示するポップアップ画面６４内に表示されているサブカーソル６７が太字の斜体に下線が付いた字体の箇所に移動する。こうして、この状態で入力を行うと太字で斜体かつ下線付きの文字が入力されることを知らせる。このときカーソル６１（サブカーソル６７）で示される入力位置は、図６（ｆ）に示す文書データ中の位置６７ａに相当する。
【００２７】
図６（ｅ）は、文書編集画面において図６（ｄ）に示した状態からカーソル移動キーを操作して入力カーソルを右に３ステップ移動する操作を行った後の状態を示す図である。このとき、文書編集画面上で入力カーソル６８の位置は２ステップ変化して文字「中止」の後に移動する。編集対象である構成要素を指示する矩形マーク６３は変化せず、編集対象は相変わらず文字「中止」であることを指示する。また、これまでと同様に３種類の字体例とサブカーソルを表示するポップアップ画面６４が表示される。そしてポップアップ画面６４内で、太字で斜体の箇所にサブカーソル６９が表示され、この状態で入力を行うと太字で斜体の文字が入力されることを知らせる。このときカーソル６８（サブカーソル６９）で示される入力位置は、図６（ｆ）に示す文書データ中の位置６９ａに相当する。文書データ中の位置６９ａは、構成要素が＜／Ｕ＞＜／Ｉ＞＜／Ｂ＞と入れ子状態になった位置であり、ポップアップ画面６４内に表示される字体例の順序はこの入れ子の状態を反映して、右から見て、「太字・斜体・下線」属性の文字、「太字・斜体」属性の文字、「太字」属性の文字のように変化している。
【００２８】
以上のように、構成要素が入れ子状態になっていて編集画面上の文字等を指定しただけでは編集対象の構成要素を完全に特定することができないような場合には、そのカーソル位置で入力可能な字体等の表示スタイルを例示し、その中の一つをサブカーソル等を用いて選択するように構成した。従って、構成要素が深い入れ子構造になっている場合においても、操作者は表示画面上で望み通りの属性を有する文字の追加入力、削除等を簡単に行うことができる。
【００２９】
図７は、本発明によって表示画面上で構造化文書を編集する編集操作の一例を説明するフローチャートである。
図７のステップ１１において、文書データ読み込み部１２により補助記憶装置１１から文書データを読み込む。次に、ステップ１２において、文書構造認識部１３により読み込んだ文書データの文書構造を解析し認識する。この処理は、構成要素の階層構造を解析し、認識する処理である。例えば、図２に示した文書データは、＜ＨＴＭＬ＞と＜／ＨＴＭＬ＞の間に記述されており、このことからこの文書はＨＴＭＬ文書であることが認識される。また、画面上に表示される内容は＜ＢＯＤＹ＞と＜／ＢＯＤＹ＞の間に記述されており、＜ＢＯＤＹ＞以前に記述されている内容は画面に表示する内容でないことが認識される。さらに、図２の構成要素２８においては、内部に存在する構成要素は、２８ａ〜２８ｄの４種類で、２８ａ〜２８ｄまで段階的に記述されており、その階層構造を認識する。
【００３０】
次に、ステップ１３において、表示内容認識部１４により認識した文書構造から表示内容を取り出す。この処理では、属性を示すタグと、実際に表示する内容、つまり、開始タグと終了タグの間に記述された文字を切り分ける。切り分けられた表示内容は、図４に示すように表示されることとなる。
次に、ステップ１４において、属性情報認識部１５により認識した文書構造から属性情報を取り出す。この処理は、ステップ１２で認識した構成要素の階層構造を用いて、ステップ１３で取り出した表示内容をどのような属性に従って画面上に表示するのかを決定する。例えば、図２の構成要素２８において、「中止」という文字は構成要素２８ａ〜２８ｄの全てに含まれていることから、画面上には、それぞれの属性を反映した「段落、太字、斜体、下線」で表示しなければならないことを決定する。一方で、「備考」という文字は、構成要素２８ａに含まれているが、構成要素２８ｂ〜２８ｄには含まれていないため、「段落」という属性のみを反映して表示することを決定する。
【００３１】
次に、ステップ１５において、取り出した表示内容と属性情報に従ってディスプレイ装置２０に表示内容を表示する。次のステップ１６では、キーボード等の入力装置２１から入力された情報に従って編集操作を認識する。具体的には、文字の入力、削除、コピーといった操作や、それらの操作を実行する位置を決定する操作を認識する。次に、ステップ１７において、入力装置２１から入力された情報が新規入力位置指定を表す場合、編集対象構成要素特定部１６によりカーソル位置を特定し、編集対象となる構成要素を特定する。
【００３２】
次に、ステップ１８において、編集対象となる構成要素にマークを表示し、新規入力位置にカーソルを表示する。新規入力位置指定の操作は、マウスなどのポインティングデバイスで画面上に表示された矢印等のマウスカーソルを編集したい位置まで動かし、そこでポインティングデバイスのボタンを押したり、キーボード上のカーソル移動キーを押して入力カーソルを編集したい位置まで移動させること等によって行う。次に、ステップ１９において、新規入力データに従って編集された結果を文書データに反映し、文書データを更新する。更新されたデータはステップ１３で再度表示内容を認識され、以降同様に処理が実行される。
【００３３】
入力装置２１から文字入力されたときは、まずステップ１９において文書データが更新され、その後、ステップ１３〜１８が実行され、変更された結果が画面に表示される。図７のフローチャートのステップ１３〜１９で、編集操作内容が文字入力の時にはステップ１３〜１９の全ての処理が実行され、カーソル移動の時にはステップ１３，１４の処理は省略される。
ここで、図８を参照して、図４に示すように画面表示された構造化文書において、「日時」に続けて「：」を加入し、更に太字の「１０月７日」を太字の「平成１１年１０月７日」に修正する編集を行う場合の処理手順の例について説明する。
【００３４】
構造化文書の表示画面（編集画面）において、段落４１が表示されている行にカーソルを置き、入力装置２１のカーソル移動キーを操作してカーソルを左から右方向に移動する。すると、図８（ａ）に示すように、「日時」と表示されている部分の周囲に矩形マーク８２が表示され、その矩形マーク８２の内部で「日時」の後ろに入力カーソル８１が表示された状態になる。図８（ａ）は、図２に示した文書データに対して、図７のステップ１１からステップ１８までの処理が実行され、「備考」という文字の末尾にカーソルが表示されている状態である。この状態は、編集対象として「日時」が選択され、入力カーソル８１の位置に文字を入力すると、その入力文字は「日時」と同じ属性となることを示している。
【００３５】
図８（ｂ）は、図８（ａ）の入力カーソル位置に入力装置２１から文字「：」を入力した後の状態を表している。文書編集装置のディスプレイ装置２０には、図７のステップ１９が実行された後、再度ステップ１３からステップ１８を経て、新規入力された文字「：」が矩形マーク８２内に表示されている文字「日時」と同じ字体で表示される。文書データは、図７のステップ１９によって、図８（ｅ）のように更新される。
【００３６】
次に、図８（ｂ）の状態から、入力装置２１のカーソル移動キーを操作して入力カーソルを右方に１ステップ移動させる操作をすると、図８（ｃ）に示すように、カーソル８１の位置は移動せず、編集対象となる構成要素を明示するための矩形マーク８３の表示だけが「１０月７日」の部分を囲むように変更される。また、入力カーソル８１も矩形マーク８３の内部に表示され、入力カーソル８１の位置に入力される文字には文字「１０月７日」と同じく太字属性が付与されることが一見して分かる。この時の新規入力データは、「カーソルを右に１ステップ移動する」ことを示すデータであり、文書データの内容を更新するものではない。そのため、ステップ１９が実行された後、ステップ１３からステップ１４の処理は省略され、ステップ１６からステップ１８が再度実行されることで図８の（ｃ）のように表示されることとなる。
【００３７】
この状態で、入力装置２１のキーボードから「平成１１年」という文字を新規入力すると、図７のステップ１９を経て図８（ｄ）に示すように、新規入力された文字が矩形マーク８４内の他の文字と同様に太字で表示される。最初、図７のステップ１９によって、文書データ更新部１９により新規入力されたデータを文書構造に付加し、文書データを更新する。次に、文字「１０月７日」の部分のみを囲んでいた編集対象の構成要素を示す矩形マーク８３は、ステップ１３からステップ１８が実行されることにより、新規入力された文字分だけ拡大し、「平成１１年１０月７日」の部分全体を囲む矩形マーク８４となる。図８（ｆ）に示すように、文書データ上では、新規入力された文字「平成１１年」と元の文字「１０月７日」とは結合して同じ属性を有する一つの構成要素となる。
【００３８】
図９は、本発明によって表示画面上で構造化文書を編集する編集操作の他の例を説明するフローチャートである。ここで取り上げるのは、編集対象となる構成要素が入れ子構造になっている場合の処理の例である。
図９のステップ３１からステップ３８では、図７にて説明したステップ１１からステップ１８までの処理と同様の処理を行う。次に、ステップ３９において、選択マークとカーソルの表示だけでは入れ子状態の構成要素の中のどの構成要素を選択しているのか判断できない場合、構成要素に対応する入力可能位置をカーソルの近傍に表示する。ステップ４０の処理は、図７のステップ１９における処理と同様の処理である。
【００３９】
次に、図１０から図１２を参照して、図４に示すように画面表示された構造化文書中の、「備考中止」を「備考：今回は残念ながら雨天中止」（「残念ながら」は太字の斜体属性、「雨天中止」は太字の斜体で下線付き属性）に修正する編集を行う場合の処理手順の詳細を説明する。
【００４０】
図４に示されている構造化文書の表示画面（編集画面）において、段落４４が表示されている行に入力カーソルを置き、入力装置２１のカーソル移動キーを操作して入力カーソルを左から右方向に移動する。すると、図１０（ａ）に示すように、「備考」と表示されている部分の周囲に矩形マーク１０２が表示され、その矩形マーク１０２の内部で「備考」の後ろにカーソル１０１が表示された状態になる。図１０（ａ）は、図２に示した文書データに対して、図９のステップ３１からステップ３８までの処理が実行され、「備考」という文字の末尾にカーソルが表示されている状態である。この状態は、編集対象として「備考」が選択され、カーソル１０１の位置に文字を入力すると、その入力文字は「備考」と同じ属性となることを示している。いまの場合、矩形マーク１０２のみで編集対象の構成要素が特定されるため、図９のステップ３９は省略される。
【００４１】
図１０（ｂ）は、図１０（ａ）のカーソル位置に入力装置２１から文字「：」を入力した後の状態を表している。このとき、まず、図９のステップ４０によって、文書データ更新部１９により新規入力されたデータを文書構造に付加し、文書データは図１２（ａ）のように更新される。文書編集装置のディスプレイ２０には、再度図９のステップ３３からステップ３８を経て、新規入力された文字「：」が矩形マーク１０２内に表示されている文字「備考」と同じ字体で表示される。カーソル１０３は文字「：」の隣に位置する。
【００４２】
次に、図１０（ｂ）の状態から、入力装置２１のカーソル移動キーを操作してカーソルを右方に１ステップ移動させる操作をすると、図９のステップ３６〜３８によって、図１０（ｃ）に示すように、カーソル１０３の位置は移動せず、編集対象となる構成要素を明示するための矩形マーク１０４の表示が「中止」の部分を囲むように変更される。しかし、このカーソル１０３の位置では図３（ｂ）に示した文書データ上で見て３箇所の位置３４，３５，３６への入力が可能であり、「中止」の部分の周囲に矩形マーク１０４を表示するだけでは、そのうちのどの位置に新規入力するのか判断できない。
【００４３】
そこで、図９のステップ３９において、カーソル１０３に対応させて選択ウインドウ１０５をポップアップ表示する。選択ウインドウ１０５には、そのカーソル位置で入力可能な３種類の文字、すなわち太字体の文字、太字の斜体の文字、太字の斜体で下線付きの文字が一目で分かるように例示される。各文字の近傍にはボックスが表示され、そのうちの一番左のボックスに選択状態を示すサブカーソル１０６が表示される。この状態で入力カーソル１０３を移動させるための通常の操作を行うと、カーソル１０３の位置は変化せず、代わりに選択ウインドウ１０５内に表示されているサブカーソル１０６の位置を移動させて選択ウインドウ１０５内の文字種を選択することができる。このようにして、表示画面の状態で文字入力すると、どこにどのような属性を持った文字が入力されるのかを直感的に知ることができる。
【００４４】
図１０（ｃ）の状態で、入力装置２１から「今回は」という文字を入力すると、図９のステップ４０において、文書データ更新部１９により新規入力されたデータを文書構造に付加し、文書データが図１２（ｂ）に示すように更新される。次に、図９のステップ３５において更新された文書内容が表示され、ステップ３７，３８において編集対象の構成要素を特定する矩形マークが表示される。こうして、図１０（ｄ）に示すように、新規入力された文字「今回は」が太字で表示されるとともに、編集対象を示す矩形マーク１０８がそれを囲んで表示される。入力カーソル１０７は、矩形マーク１０８内に表示される。この状態では、入力可能な文字は太字文字のみであるため、図１０（ｃ）の場合のように選択ウインドウが表示されることはない。
【００４５】
次に、図１０（ｄ）の状態から、入力装置２１のカーソル移動キーを操作してカーソルを右方に１ステップ移動させる操作をすると、図９のステップ３６〜３８によって、図１０（ｅ）に示すように、カーソル１０７の位置は移動せず、編集対象となる構成要素を明示するための矩形マーク１０９の表示が「中止」の部分を囲むように変更される。しかし、このカーソル１０７の位置では文書データ上で見て２箇所の位置への入力が可能であり、「中止」の部分の周囲に矩形マーク１０９を表示するだけでは、そのうちのどの位置に新規入力するのか判断できない。
【００４６】
そこで、図９のステップ３９において、カーソル１０７に対応させて選択ウインドウ１１０をポップアップ表示する。選択ウインドウ１１０には、そのカーソル位置で入力可能な２種類の文字、すなわち太字の斜体の文字と、太字の斜体で下線付きの文字が一目で分かるように例示される。各文字の近傍にはボックスが表示され、太字の斜体を示す一番左のボックスに選択状態を示すサブカーソル１１１が表示される。
【００４７】
太字の斜体の字体が選択されている図１０（ｅ）の状態で、入力装置２１から「残念ながら」という文字を入力すると、図９のステップ４０において、文書データ更新部１９により新規入力されたデータを文書構造に付加し、文書データが図１２（ｃ）に示すように更新される。次に、図９のステップ３５において更新された文書内容が再表示され、ステップ３７，３８において編集対象の構成要素を特定して矩形マークが表示される。こうして、図１１（ａ）に示すように、新規入力された文字「残念ながら」が太字の斜体で表示されるとともに、編集対象を示す矩形マーク１２２がそれを囲んで表示される。入力カーソル１２１は、矩形マーク１２２内に表示される。この状態では、入力可能な文字は太字の斜体文字のみであるため、図１０（ｅ）の場合のように選択ウインドウが表示されることはない。
【００４８】
次に、図１１（ａ）の状態から、入力装置２１のカーソル移動キーを操作してカーソルを右方に１ステップ移動させる操作をすると、図９のステップ３６〜３８によって、図１１（ｂ）に示すように、カーソル１２１の位置は移動せず、編集対象となる構成要素を明示するための矩形マーク１２３の表示が「中止」の部分を囲むように変更される。カーソル１２１も矩形マーク１２３内に表示され、この位置で文字入力すると、太字の斜体で下線が付いた文字が入力されることが直感的に理解できる。
【００４９】
図１１（ｂ）の状態で入力装置２１から「雨天」という文字を入力すると、図９のステップ４０において、文書データ更新部１９により新規入力されたデータを文書構造に付加し、文書データが図１２（ｄ）に示すように更新される。次に、図９のステップ３５において更新された文書内容が再表示され、ステップ３７，３８において編集対象構成要素を特定して矩形マークが表示される。こうして、図１１（ｃ）に示すように、文字「雨天中止」が太字の斜体で下線が付いた字体で表示され、文字「中止」の部分のみを囲んでいた編集対象の構成要素を示す矩形マークは新規入力された文字分だけ拡大し、「雨天中止」の部分全体を囲む矩形マーク１２４となる。
【００５０】
【発明の効果】
本発明によると、操作者が所望するレイアウトを確認しながら、単純な編集位置指定操作だけで直感的に編集対象となる構成要素の特定と新規入力位置の指定ができるようになる。
【図面の簡単な説明】
【図１】本発明による文書編集装置の構成例を示す概略機能ブロック図。
【図２】文書データの内容例を示す図。
【図３】構造化文書の構成要素と編集操作における新規入力位置の関係を説明する図。
【図４】図２に示した文書データを読み込んだときに文書編集装置のディスプレイに表示される画面構成を示す図。
【図５】編集画面の一例の説明図。
【図６】編集画面の他の例の説明図。
【図７】本発明によって構造化文書を表示画面上で編集する編集操作の一例の処理手順を説明するフローチャート。
【図８】構造化文書編集の手順を説明する図。
【図９】本発明によって構造化文書を表示画面上で編集する編集操作の他の例の処理手順を説明するフローチャート。
【図１０】構造化文書編集の手順を説明する図。
【図１１】構造化文書編集の手順を説明する図。
【図１２】編集中の文書データの状態を示す図。
【符号の説明】
１１…補助記憶装置、１２…文書データ読み込み部、１３…文書構造認識部、１４…表示内容認識部、１５…属性情報認識部、１６…編集対象構成要素特定部、１７…表示画面生成部、１８…編集操作認識部、１９…文書データ更新部、２０…ディスプレイ装置、２１…入力装置、２５〜２８…構成要素、５１…入力カーソル、５２，５３…矩形マーク、６１…入力カーソル、６２，６３…矩形マーク、６４…ポップアップ画面、６５，６６，６７…サブカーソル、６８…入力カーソル、６９…サブカーソル、８１…カーソル、８２〜８４…矩形マーク、１０１…入力カーソル、１０２…矩形マーク、１０３…入力カーソル、１０４…矩形マーク、１０５…選択ウインドウ、１０６…サブカーソル、１０７…入力カーソル、１０８，１０９…矩形マーク、１１０…選択ウインドウ、１１１…サブカーソル、１２１…入力カーソル、１２２，１２３，１２４…矩形マーク
【図１】
0003897273.tif 000002
【図２】
0003897273.tif 000003
【図３】
0003897273.tif 000004
【図４】
0003897273.tif 000005
【図５】
0003897273.tif 000006
【図６】
0003897273.tif 000007
【図７】
0003897273.tif 000008
【図８】
0003897273.tif 000009
【図９】
0003897273.tif 000010
【図１０】
0003897273.tif 000011
【図１１】
0003897273.tif 000012
【図１２】
0003897273.tif 000013