JP3901228B2 - 文書編集装置及び文書編集方法 - Google Patents
文書編集装置及び文書編集方法 Download PDFInfo
- Publication number
- JP3901228B2 JP3901228B2 JP05452395A JP5452395A JP3901228B2 JP 3901228 B2 JP3901228 B2 JP 3901228B2 JP 05452395 A JP05452395 A JP 05452395A JP 5452395 A JP5452395 A JP 5452395A JP 3901228 B2 JP3901228 B2 JP 3901228B2
- Authority
- JP
- Japan
- Prior art keywords
- document
- attribute
- template
- relation
- relationship
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Description
【産業上の利用分野】
本発明は、計算機を利用して文書を作成する際に、文書作成者による編集作業を支援する文書編集装置及び文書編集方法に関するものである。
【0002】
【従来の技術】
ワープロなどを用いて作成される電子文書中の章や段落、図表などの文書部品には、文字フォントサイズや背景色、マージンなどの多様な属性が定義されている。
【0003】
従来の文書編集装置で提供されてきた支援機能の一つとして、文書部品属性そのものの設定に関しての種々の機能がサポートされている。この機能としては、同一部品に関する属性群の操作環境を提供するものと、複数の部品にわたって一括して属性を設定するものの2種類に大別できる。
【0004】
例えば、Interleaf5(商品名)では、文書作成者に対し「プロパティシート」と呼ばれる属性操作環境が提供される。文書作成者が文書部品を選択してプロパティシートの表示指示を出すと、その部品に設定されている属性のうち、あらかじめ文書作成者からの操作が設定されるものを対象とした操作環境がプロパティシートとして表示される。このプロパティシートを用いることによって、ある文書部品に関する属性群の操作を行なうことができる。
【0005】
また、あるシステムでは、文書作成者が複数の文書部品に同一の属性を付与したい状況を支援するために、スタイル機構が提供されている。スタイル機構では、文書作成者が共通の属性をスタイルシート上に設定する一方、任意の数の部品にスタイルシートの参照を指示することにより、それら部品群に同一の属性を一括して設定することができる。この技術は、例えば、上述のInterleaf5や、特開平4−84359号公報記載の文書作成処理装置においても提供されている。
【0006】
これら機能は、あくまでも単一の部品に関する情報からその部品の属性が決定される場合に有効なものである。よって、他の文書部品の属性との関係から属性を決定しようとする場合には、文書作成者は文書編集装置からの有効な支援を期待することができない。
【0007】
文書部品の属性を設定する際に、他の文書部品の属性との関係を考慮して属性を設定する機能として、文書部品に対し、直前の部品の属性から自らの属性の値を計算する機構を提供する機能が提供されている。例えば、上述のInterleaf5で作成される文書部品の一種であるインラインコンポーネントでは、プロパティシート上で、直前のテキストの属性を引数とし、自らの属性を計算して設定する機構が提供されている。これにより、例えば、「自らの文字サイズを、直前のテキストの文字サイズよりも常に1ポイント大きくする」といった設定が可能となる。しかしながら、この機能を利用するためには、連続する文書部品でなければならず、しかも、その連続する文書部品に付された同じ属性に対してのみに限られていた。
【0008】
また、特開平4−118693号公報に記載されている技術では、表の行または列を単位として、指定された行または列に含まれる複数のフィールドの属性を、例えば、隣接する行または列の属性とは違う属性に変更する旨の設定を行なうことができる。しかしこの技術においても、隣接する行または列の間のみで属性の関係の指定が可能となるのみである。しかも、この文献では、表の属性に限られ、一般の文書についての技術を開示するものではない。
【0009】
このように、従来の文書編集装置では、文書部品間に成り立つ関係は全く考慮されていないか、考慮されている場合でも、極めて限定された関係のみが支援の対象となっていた。従って、従来より提供されてきた技術またはこれらの単なる組合わせでは、現実の文書作成における属性間の多様な関係を統一的に管理することは困難であった。従って、従来より提供されてきた技術またはこれらの単なる組合せでは、現実の文書作成における属性間の多様な関係を統一的に管理することは困難であった。管理すべき属性間の関係には、例えば以下のものがある。
(1)見出しと段落、段落と脚注の文字フォントサイズの大小関係
(2)表中の各行または列の背景色パターン
【0010】
【発明が解決しようとする課題】
本発明は、上述した問題点に鑑みてなされたもので、電子文書の作成時に発生する文書部品の属性間の多様な関係を管理し、文書作成に伴う文書構造の変化や文書部品の属性の変更が生じた場合でも、適切な支援を行なうことができる文書編集装置を提供することを目的とするものである。
【0011】
【課題を解決するための手段】
本発明は、文書編集装置において、文書部品の集合を示す情報と該文書部品に付与されている属性間の関係を示す関係テンプレートを保持する関係テンプレート保持手段と、編集の対象となる文書データを保持する文書保持手段と、前記関係テンプレート中の記述に従って前記文書保持手段中に保持される前記文書データ中の文書部品の同定および特定の文書部品の属性値の取得を任意の回数繰り返し行なって関係付けられる文書部品の組合わせを決定しさらに該組み合わせ中の各文書部品に適用される属性を決定して特定された文書部品の特定された属性に関する属性値設定指示を出力する関係テンプレート評価手段と、文書データの状態又は状態遷移が文書作成者により指示された条件を満たすとき前記関係テンプレート評価手段に対して関係テンプレートの評価を指示する関係テンプレート評価指示手段と、該関係テンプレート評価手段から出力される属性値設定指示およびその他の文書データ編集指示を受理しその指示内容に基づき前記文書保持手段中の文書データに対して少なくとも文書属性記述部分の更新処理を含む編集処理を行なう文書編集手段を具備することを特徴とするものである。
また本発明は、文書編集方法において、文書部品の集合を示す情報と該文書部品に付与されている属性間の関係を示す関係テンプレートを関係テンプレート保持手段に保持しておき、文書データの状態又は状態遷移が文書作成者により指示された条件を満たすときに関係テンプレート評価指示手段が関係テンプレート評価手段に対して関係テンプレートの評価を指示し、該関係テンプレート評価手段は、前記関係テンプレート中の記述に従って文書保持手段中に保持されている編集の対象となる文書データ中の文書部品の同定および特定の文書部品の属性値の取得を任意の回数繰り返し行なって関係付けられる文書部品の組合わせを決定し、さらに該組み合わせ中の各文書部品に適用される属性を決定し、特定された文書部品の特定された属性に関する属性値設定指示を出力し、出力された前記属性値設定指示およびその他の文書データ編集指示を文書編集手段が受理してその指示内容に基づき前記文書データに対して少なくとも文書属性記述部分の更新処理を含む編集処理を行なうことを特徴とするものである。
【0012】
【作用】
本発明によれば、文書部品の集合を示す情報と、その文書部品に付与されている属性間の関係は、関係テンプレートとして関係テンプレート定義手段で定義され、関係テンプレート保持手段で保持、管理される。そして、この関係テンプレートを関係テンプレート評価手段で評価し、該当する文書部品の属性の間の関係が生成され、文書編集手段でそれらの文書部品の属性の更新処理を行なう。このように、文書作成者は、関係テンプレートとして、ある文書部品の集合を示す例えば代表的な文書部品と、それらの文書部品の属性間の関係を記述することによって、任意の文書部品に付与された属性を他の文書部品の属性との関係に基づき変更することが可能となる。また、関係テンプレートによって複数の文書部品の集合を指定することができるので、一括した属性の変更を行なうことができる。このとき、関係テンプレートと文書データとは別々に保持されており、文書データ中の属性データと関係テンプレート中の属性値設定指示との対応づけは動的に実行される。このため、文書データの文書構造の変化や文書部品の属性の変更が生じた場合でも、対応づけの契機を適切に設定しておくことにより、あらかじめ意図した関係を維持することができる。
【0013】
【実施例】
図1は、本発明の文書編集装置の第1の実施例を示す構成図である。図中、1は文書編集装置、2は入出力装置、3は文書作成者、11は関係テンプレート定義部、12は関係テンプレート保持部、13は文書保持部、14は文書編集部、15は文書部品属性設定部、16は関係テンプレート評価部、17は文書部品属性参照部、18は文書部品同定部である。文書編集装置1は、関係テンプレート定義部11、関係テンプレート保持部12、文書保持部13、文書編集部14、および、関係テンプレート評価部16から構成されている。また、入出力装置2は、キーボートやマウスなどの入力装置、および、CRTディスプレイや表示制御を行なうウィンドウ生成装置などの出力装置等によって構成され、文書作成者3とのインタフェースの機能を果たす。
【0014】
関係テンプレート定義部11は、文書作成者3が関係テンプレートを作成するための機能を提供するもので、入出力装置2から入力された関係テンプレート生成指示に応じて、関係テンプレートを作成していく。作成された関係テンプレートは、関係テンプレート保持部12に保持される。関係テンプレート保持部12は、関係テンプレート定義部11で定義された関係テンプレートを受理し、保持管理する。文書保持部13は、文書編集部14による編集の対象となる文書データを保持する。
【0015】
文書編集部14は、関係テンプレート評価部16や、文書作成者3などの装置外部からの文書データ編集の指示を受理し、その指示内容を文書保持部13中の文書データに反映させる。文書編集部14は、その内部に文書部品属性設定部15を有している。文書部品属性設定部15は、文書編集部14または関係テンプレート評価部16からの指示に基づき、文書保持部13に保持されている文書データに対して、指示された文書部品の指示された属性として指示された値を設定する。
【0016】
関係テンプレート評価部16は、文書作成者からの明示的な指示、あるいは、文書データの変更に起因する文書部品の属性間の関係の変化などを契機として、関係テンプレートを評価する。そして、関係テンプレート中の記述にしたがって、文書保持部13に保持された文書データ中の文書部品の同定(例えば、文書部品識別子の取得)、および、特定の文書部品の属性値の取得の2つの処理を任意の時点で任意の回数繰り返す。このように、必要に応じて取得される文書部品および属性を用いて、関係テンプレート中の記述を評価していくことで、関係テンプレートによって関係付けられる文書部品の組み合わせを決定し、さらに、その組み合わせ中の各文書部品に適用される属性を決定する。
【0017】
関係テンプレート評価部16は、その内部に文書部品属性参照部17および文書部品同定部18を有している。文書部品の属性値の取得の処理の際には、文書部品属性参照部17を起動する。文書部品属性参照部17は、関係テンプレートの特定部分を解釈することにより、属性値を取得する。また、文書部品の同定の処理の際には、文書部品同定部18を起動する。文書部品同定部18は、関係テンプレートの特定部分を解釈することにより、文書部品を同定する。そして、関係テンプレート評価部16は、特定された文書部品の特定された属性に関する設定が文書データに対してなされるように、文書部品属性設定部15に指示を送る。
【0018】
図2は、関係テンプレートの記述言語の文法の一例を示す説明図である。関係テンプレートは、文書部品の集合を示す情報と、その文書部品に付与されている属性間の関係を示す情報により構成される。これらの情報を記述するため、関係テンプレートでは、「部品集合定義部」と、それに続く「本体部」からなる。「部品集合定義部」は、関係テンプレートの冒頭に一回だけ記述され、その開始記号「BEGINDEF」から終了記号「ENDDEF」までの間に記述される。そして、「本体部」は、部品集合定義部の後、コマンド「END」までの部分に記述される。この本体部には、生成したい関係の内容をプログラムとして記述することができる。このようにプログラムとして生成したい関係を記述することによって、多様な関係を記述することができる。本体部の記述には、既存のいかなるプログラム言語(例えば、BASIC,Prolog,C,lispなど)の形式を用いることも可能である。以下の説明では、一例としてBASIC言語の記法に準ずる言語を仮定する。
【0019】
関係テンプレートの記述言語では、「部品変数」と「属性プリミティブ変数」という2種類の特殊な変数の使用を許している。部品変数は、‘$’に続く1以上の数字列によって表現される。図2において、‘[’と‘]’に挟まれた部分は、その部分に含まれている文字の中からの選択を示し、‘+’は1回以上の繰り返しを示す。すなわち、「[0−9]+」の表現により、0から9までの数字の選択を1回以上繰り返すことを示している。
【0020】
属性プリミティブ変数は、‘<’と‘>’に挟まれた部品変数と属性名の組により表現される。部品変数と属性名は、‘,’で区切られる。属性名は、2つの‘”’により挟まれた1以上の文字列によって表現される。使用できる文字は、英大文字、英小文字、数字、‘_’である。図2における‘[’,‘]’および‘+’を用いた表現方法は、部品変数の場合と同様である。
【0021】
関係テンプレートの記述言語では、本体部に特殊なコマンド「eval_def」を用いることができる。関係テンプレート評価部16において関係テンプレートを解釈する際に、このコマンドを読み込むたびに文書部品同定部18を呼び出し、部品集合定義部の記述に基づいて部品変数に値をバインドさせ、属性プリミティブ変数に値が代入されるごとに(部品識別子,属性名,値)の3つ組を生成させる。このとき、コマンド「eval_def」の後に引数として部品変数または属性名の列が記述されている場合は、それらの引数のみを対象として上述の処理を行なう。
【0022】
関係テンプレートの本体部には、このコマンド「eval_def」をはじめとして、部品変数、属性プリミティブ変数を用いて、生成したい関係がプログラムとして記述される。この本体部には、上述のコマンド「eval_def」による部品集合定義部の記述に基づいた文書部品の集合の特定指示、属性プリミティブ変数による文書保持部13中の文書部品に関する属性値の参照指示、および、文書保持部13中の文書部品属性への値の代入指示等を行なうことができる。
【0023】
このように、関係テンプレートでは、部品変数や属性プリミティブ変数等の部品を代表する変数および任意の属性を指定することができるので、文書作成者3が望む属性の関係を指定することができる。また、これらの変数およびコマンド「eval_def」等により、本体部に単一のプログラムが記述されているのみであっても、関係する複数の文書部品の属性に対して記述されたプログラムの内容を一括して適用することが可能である。このような関係テンプレートを用いることによって、文書部品属性間に成り立つ多様な関係の統一的な取り扱いおよび管理を可能にしている。
【0024】
以下、本発明の文書編集装置の第1の実施例における動作の一例について説明する。文書作成者3は、文書編集装置1に対し、文書の編集処理および関係テンプレートの記述処理、関係テンプレートに対する評価指示等の操作を任意のタイミングで繰り返し行なう。これらの操作によって、文書を作成していくことができる。
【0025】
まず、文書を編集するときには、文書編集部14に対して編集指示を出すことによって文書保持部13中の文書データを更新する。また、文書中の文書部品属性の間の関係を保持させるときには、関係テンプレート定義部11を介して関係テンプレートを記述し、関係テンプレート保持部12に保持させる。
【0026】
一方、関係テンプレート保持部12中の関係テンプレートに対する評価指示は、関係テンプレート評価部16に伝えられる。関係テンプレートに対する評価指示が出されると、関係テンプレート評価部16は、その関係テンプレートを対象として、文書保持部13に保持された文書データ中の文書部品を特定し、文書部品の属性値を取得する。文書部品の同定には、文書部品同定部18を用いる。また、文書部品の属性値の取得には、文書部品属性参照部17を用いる。そして、文書部品属性設定部15は、特定された文書部品に対する特定された属性の設定を、文書保持部13中の文書データに対して行なう。
【0027】
このように、文書編集装置の第1の実施例では、文書作成者3によって定義された文書部品属性間の関係を、文書編集を通じて管理することができる。このとき、文書作成者3は、定義する関係の要素として、文書編集部14中の文書部品属性設定部15で操作され得る任意の文書部品属性を指定できるだけでなく、それら要素間に定義される関係をも関係テンプレート評価部16が解釈可能な範囲で自由に記述することができる。
【0028】
以下、上述の第1の実施例における動作の一例を、具体例を用いながら説明する。まず、関係テンプレートの作成過程について説明する。図3は、関係テンプレートの作成手順の一例を示すフローチャートである。ここでは、比較的単純な関係テンプレートを例に取り、文書作成者がGUI(グラフィカルユーザインタフェース)を用いて関係テンプレートを作成する場合を例に説明する。なお、これらの動作は、文書作成者による文書編集と並行して、任意のタイミングで実行される。
【0029】
まず、図3のS21において、文書作成者3がメニュー等から「関係テンプレート作成」を選択する。すると、関係テンプレート定義部11は、「関係テンプレートシート」を表示する。図4は、関係テンプレートシートの一例の説明図である。図4に示した「関係テンプレートシート」は、「基点属性プリミティブフィールド」と「関連属性プリミティブフィールド」から構成されている。「基点属性プリミティブフィールド」には、関係を定義する際に基となる文書部品の属性を指定するフィールドである。また、「関連属性プリミティブフィールド」には、「基点属性プリミティブフィールド」で指定した文書部品の属性と関係づけたい文書部品の属性を指定するフィールドである。
【0030】
S22では、「基点属性プリミティブフィールド」の設定を行なう。文書作成者3に対して「プロパティシート」と呼ばれる属性操作環境が提供されている場合には、文書作成者3は、属性関係の基点となる文書部品のプロパティシートを開き、さらに、関係を定義したい属性に対応する属性アイコンをプロパティシート中で選択し、「基点属性プリミティブフィールド」にドラッグアンドドロップする。すると、関係テンプレート定義部11は、選択された文書部品の識別子と属性からなる属性プリミティブを生成し、「基点属性プリミティブフィールド」に割り当てる。「基点属性プリミティブフィールド」には1つの属性プリミティブしか割り当てることができない。
【0031】
図5は、基点属性プリミティブフィールドへの設定の一例の説明図である。図5に示した例では、部品識別子[3001]を持つ文書部品の「文字フォントサイズ」属性を「基点属性プリミティブフィールド」に指定した様子を示している。このとき、部品識別子[3001]を持つ文書部品は、最下層の文書部品であってもよいし、下位に複数の文書部品を有する文書部品であってもよい。
【0032】
さらに、S23では、基点属性プリミティブと関係付けたい任意個数の文書部品を選択し、「関係属性プリミティブフィールド」にその属性を設定する。関係テンプレート定義部11は、選択された文書部品と基点属性プリミティブに指定された属性から属性プリミティブを必要な個数だけ生成し、「関係属性プリミティブフィールド」に割り当て、表示する。
【0033】
図6は、関係属性プリミティブフィールドへの設定の一例の説明図である。図6に示す例では、文書の編集画面上で、基点属性プリミティブと関係づけたい文書部品を選択し、「関係属性プリミティブフィールド」にドラッグアンドドロップする。図6では、部品識別子[3000]を持つ見出しの段落を含む文書部品を選択し、「関係属性プリミティブフィールド」にドラッグアンドドロップした後、部品識別子[3002]を持つ脚注である段落の集合を含む文書部品を選択し、「関係属性プリミティブフィールド」にドラッグアンドドロップしようとしている。既に指定されている部品識別子[3000]を持つ文書部品については、関係テンプレート定義部11によって、「基点属性プリミティブフィールド」で設定された「文字フォントサイズ」属性をもとに、この部品識別子[3000]についても「文字フォントサイズ」属性を設定するための属性プリミティブが生成され、表示されている。部品識別子[3002]を持つ文書部品についても、ドラッグアンドドロップ後、属性プリミティブが生成され、表示される。
【0034】
そして、S24では、文書作成者3は「関係属性プリミティブフィールド」中の各属性プリミティブに対して、属性値の絶対値、あるいは、基点属性プリミティブの属性値からの変化を指定する。基点属性プリミティブの属性値からの変化を指定する場合、その変化の指定方法は属性によって異なる。例えば、属性が「文字フォントサイズ」のように数値を属性値を取る場合には、“+1”,“+2”,“−1”,“−2”のような指定が可能である。属性が「ボールド」のように2値の属性値を取る場合には、「継承」あるいは「反転」のいずれかを指定することができる。
【0035】
図7は、関係属性プリミティブフィールド中の属性に対する属性値決定方法の一例の説明図である。図7では、基点属性プリミティブの属性値からの変化を指定する場合の一例を示している。図7に示した例では、部品識別子[3000]を持つ文書部品に、部品識別子[3001]を持つ文書部品より1ポイント大きい「文字フォントサイズ」を指定し、部品識別子[3002]を持つ文書部品に1ポイント小さい「文字フォントサイズ」を指定している。
【0036】
この具体例では、文書作成者による関係テンプレートの作成の際に、上述のような関係テンプレートシートを用いたが、これ以外の任意の方法を利用することが可能である。例えば、上述の具体例では、異なる文書部品の同一属性の間の関係のみを記述したが、関係属性プリミティブフィールド中の属性プリミティブの全部または一部の記述に対してコピー、ペースト、削除等の操作を可能としたり、属性プリミティブの属性欄の記述の変更を可能とすることで、同一部品の属性間の関係や、異なる部品の異なる属性の間の関係をも記述できるようにすることが考えられる。
【0037】
S25では、文書作成者3による「登録」の指示を受けて、関係テンプレート定義部が関係テンプレートを作成し、関係テンプレート保持部12に登録する。図8は、作成された関係テンプレートの一例の説明図である。基点属性プリミティブフィールドおよび関連属性プリミティブフィールドで指定された文書部品は、部品集合定義部で定義される。このとき、各文書部品は、それぞれの部品変数として定義されている。また、属性「文字フォントサイズ」は、属性名「”font_size”」で表わされ、それぞれの部品変数とともに定義される属性プリミティブ変数を用いて本体部が定義されている。ここでは、図7に示すように、部品識別子[3000]を持つ文書部品(部品変数「$2」)の属性「文字フォントサイズ」に、部品識別子[3001]を持つ文書部品(部品変数「$1」)より1ポイント大きい「文字フォントサイズ」を指定する手続きとして、「<$2,”font_size”>=<$1,”font_size”>+1;」が生成されている。同様に、部品識別子[3002]を持つ文書部品(部品変数「$3」)に、部品識別子[3001]を持つ文書部品(部品変数「$1」)より1ポイント小さい「文字フォントサイズ」を指定する手続きとして、「<$3,”font_size”>=<$1,”font_size”>−1;」が生成されている。
【0038】
このようにして、文書作成者3は、属性テンプレート定義部11により属性テンプレートを定義し、属性テンプレート保持部12に格納することができる。上述の例では、GUIを用いた例を示したが、もちろん、文書の編集処理と同様にして、例えば、図8に示すような属性テンプレートを定義し、属性テンプレート保持部12に格納するように構成してもよい。また、上述のようにして属性テンプレートを生成した後、適宜編集処理が可能なように構成してもよい。
【0039】
次に、上述のようにして定義され、格納されている属性テンプレートを評価し、文書部品の属性を設定する動作について説明する。なお、この動作は、文書作成者による文書編集と並行して、任意のタイミングで実行される。
【0040】
図9は、関係テンプレート評価部16および文書部品属性設定部15による関係テンプレート評価および属性設定の手順の一例を示すフローチャートである。S31において、文書作成者3により、例えばメニュー等から「関係維持」が選択されると、文書編集部14は関係テンプレート評価部16に対して関係テンプレートの評価を指示する。S32では、関係テンプレート評価部16が、関係テンプレート保持部12から関係テンプレートを順次取得し、評価する。評価の際には、適宜、文書部品属性参照部17および文書部品同定部18が用いられる。S33では、関係テンプレート評価部16が、関係テンプレートの評価に基づいて部品属性の設定を文書編集部14中の文書部品属性設定部15に指示する。最後にS34において、文書部品属性設定部15が、関係テンプレート評価部16からの指示に基づいて適切な文書部品の属性に属性値を設定する。
【0041】
図10は、関係テンプレート評価部における関係テンプレートの評価手順の一例を示すフローチャートである。この関係テンプレート評価部16における関係テンプレートの評価は、図9におけるS32において行なわれる。まず、S41において、処理対象となる行を、関係テンプレートの部品集合定義部の直後の行に設定する。次に、S42では、現在の処理対象の行の内容がコマンド「END」であるか否かを判断し、もしコマンド「END」であれば評価を終了し、そうでなければ処理をS43に進める。
【0042】
S43では、評価すべき行がコマンド「eval_def」か、「属性プリミティブ変数=評価式」の形か、もしくはその他の式であるかを判断し、コマンド「eval_def」であればS44に、「属性プリミティブ変数=評価式」であればS46に、その他の式であればS49に処理を進める。
【0043】
S44では、文書部品同定部18を呼び出し、部品集合定義部の定義を評価する。このとき、評価対象の行中でコマンド「eval_def」の後に部品変数が指定されている場合には、部品集合定義部中の指定された部品変数の定義記述の評価から始める。さらに、S45では、評価すべき部品変数の定義記述が、部品集合定義部中で定義記述が与えられる部品変数に依存している場合には、依存関係にある全ての部品変数にわたって定義記述の評価が行なわれる。評価か完了したら、処理対象の行を次の行に進めて処理をS42に戻す。
【0044】
S46では、まず一般のプログラム言語の場合と同様に右辺を評価して、左辺の属性プリミティブ変数に評価値をバインドする。そして、S47において、左辺の属性プリミティブ変数中の部品変数に対し、文書部品同定部18によって得られた部品識別子を順次割り当て、部品識別子と属性名のペアをその部品変数に割り当てられた部品の数だけ生成する。S48では、生成した各ペアに対して、属性プリミティブ変数にバインドされた評価値を割り当てて、3つ組(部品識別子,属性名,属性値)を生成する。そして、処理対象の行を次の行に進め、処理をS42に戻す。
【0045】
S49では、一般のプログラム言語の場合と同様に式を評価し、処理をS42に戻す。S49で評価される式は、一般のプログラミング言語に見い出されるもので、例えば、IF文、GOTO文、GOSUB文、WHILE文などを仮定している。
【0046】
関係テンプレートの解釈後、保持されている(部品識別子,属性名,属性値)の3つ組が文書部品属性設定部15に引き渡される。文書部品属性設定部15では、引き渡された3つ組ごとに文書部品と属性名を同定し、その文書部品の属性として属性値を割り当てる。
【0047】
図8に示した関係テンプレートでは、部品集合定義部の直後のコマンド「eval_def」によって部品集合定義部が評価される。そして、次の行において、部品識別子[3001]の属性「文字フォントサイズ」の値に1が加えられ、属性プリミティブ変数「<$2,”font_size”>」とバインドされる。例えば、部品識別子[3001]の属性「文字フォントサイズ」の値が10ポイントであれば、属性値「11」が得られる。部品変数$2は部品識別子[3000]であるから、3つ組([3000],文字フォントサイズ,11ポイント)が得られ、文書部品属性設定部15に引き渡される。文書部品属性設定部15では、部品識別子[3000]の属性「文字フォントサイズ」を11ポイントに設定する。同様に、部品識別子[3002]の属性「文字フォントサイズ」は、9ポイントに設定される。
【0048】
図8に示した関係テンプレートの例において、部品識別子[3000]を持つ部品は見出しであり、部品識別子[3001]を持つ部品は本文であり、部品識別子[3002]を持つ部品は脚注であった。文書作成者3が関係テンプレート定義部11を用いて図8に示すような関係テンプレートを作成し、関係テンプレート保持部12に登録しておくことにより、文書作成者3が本文の文字フォントサイズを変更しても、「関係維持」を指示するだけで、自動的に見出しと脚注の文字フォントサイズが本文の文字フォントサイズに応じて変更される。すなわち、文書作成者3は、ある部品の属性の値を変更するたびに関連する全ての属性を変更しなければならなかったという、従来の煩雑な作業から開放される。
【0049】
次に、多少複雑な関係テンプレートを具体例として用い、関係テンプレート評価部16の動作をより詳しく説明する。図11は、この例における作成対象の文書に設定されている文書構造の説明図、図12は、関係テンプレートの別の例の説明図である。この具体例では、図11に示すような文書構造を仮定する。以下の説明において、‘[’と‘]’で囲まれた数字列は部品識別子を示している。
【0050】
図11に示す文書構造では、文書根[3]の直下には4つの文書部品[30],[31],[32],[33]があり、そのうち[30]と[32]の属性”type”には値TABLEが与えられている。この文書部品には、ハッチングを施して示している。さらに、表部品[30]の直下には4つの行を示す部品[300],[301],[302],[303]があり、レイアウトにおいて上からこの順で並んでいる行を表現しているものとする。同様に、表部品[32]の直下には5つの行を示す部品[320],[321],[322],[323],[324]がある。
【0051】
図12に示す関係テンプレートは、文書中の各表部品について奇数行の背景色を青色に、偶数行の背景色を黄色に設定するべきことを記述している。この関係テンプレートを関係テンプレート評価部が管理することにより、例えば、表の任意の箇所への行の挿入等の編集作業が行なわれた場合でも、文書作成者が「関係維持」を指示するだけで、本発明の文書編集装置によって関係テンプレートに記述された関係が成立するように部品属性の再設定が行なわれる。
【0052】
図12に示す関係テンプレートの概要を説明する。図12において、ハッチングを施した部分が部品集合定義部である。上述のように、この部分は「BEGINDEF」および「ENDDEF」によって挟まれている。部品変数$1は、「select(”type”=TABLE),sub*([3])」と定義されている。文書根[3]の下に展開されているすべての文書部品のうち、属性”type”が「TABLE」であるものを選択することを示している。図11に示す文書構造では、部品[30]と部品[32]が選択される。部品変数$2は、「top_sub($10)+next($3)」と定義されており、部品変数$10の直下に展開されている部品のうち、先頭の部品と部品変数$3の次の部品を示している。部品変数$3は、「next($2)」と定義されており、部品変数$2の次の部品を示している。この部品変数$2と$3の定義によって、部品変数$2と$3に表中の行が交互に与えられる。
【0053】
本体部では、まず、コマンド「eval_def$1」は部品変数$1の評価を示している。次の「FOR_EACH」文は、部品変数$1の各要素を順次部品変数$10に代入し、それぞれの要素について「DO{」から「}」までの命令を実行する。次のコマンド「eval_def$2」では、部品変数$2を評価する。このとき、部品変数$3の定義にも依存しているので、部品変数$3も評価される。次の「<$2,”back_ground_color”>=BLUE」は、部品変数$2の属性”back_ground_color”の属性値をBLUEに設定する命令である。同様に、「<$3,”back_ground_color”>=YELLOW」は、部品変数$2の属性”back_ground_color”の属性値をYELLOWに設定する命令である。
【0054】
図13は、関係テンプレート評価部16において行なわれる具体的な関係テンプレートの評価手順を示すフローチャートである。図13に示したフローチャートは、図10に示した一般的な手順に基づき、図11に示した関係テンプレートの具体例を評価する際の具体的な手順を示している。
【0055】
S51では、本体部の1行目におけるコマンド「eval_def$1」を評価する。部品集合定義部において部品変数$1は他の部品定義に依存していないので、部品集合定義部中の部品変数$1の定義記述のみを評価する。ここでは、属性”type”が「TABLE」である文書部品が選択される。評価の結果、2つの部品識別子[30],[32]を得る。
【0056】
S52では、本体部の2行目の「FOR_EACH」文によって、部品変数$10に部品変数$1の1つの要素である部品識別子[30]が代入される。続いて、S53では、本体部の3行目においてコマンド「eval_def$2」を評価する。部品変数$2は、部品変数$3と依存関係があるので、それぞれに対する定義記述が評価される。得られる評価値は、部品変数$2={[300],[302]}、部品変数$3={[301],[303]}となる。部品変数$2は部品識別子[30]を持つ表の第1行、第3行に対応する文書部品の識別子であり、部品変数$3は部品識別子[30]を持つ表の第2行、第4行に対応する文書部品の識別子を与える。
【0057】
S54では、本体部の4行目において属性プリミティブ変数<$2,”back_ground_colour”>に色属性値BLUEがバインドされる。S55では、属性プリミティブ変数<$2,”back_ground_colour”>から2組の3つ組([300],”back_ground_colour”,BLUE)および([302],”back_ground_colour”,BLUE)を生成して追加、保持する。S56では、同様にして本体部の5行目が評価され、2組の3つ組([301],”back_ground_colour”,YELLOW),([303],”back_ground_colour”,YELLOW)が生成され、保持される。
【0058】
S57では、FOR_EACH文の解釈にしたがい、部品変数$1の次の要素である部品識別子[31]が部品変数$10に代入される。続いて、S58では、部品変数$10=[30]の場合と同様に、S53からS56と同様の処理が行なわれて、本体部の4行目から3組の3つ組([310],”back_ground_colour”,BLUE),([312],”back_ground_colour”,BLUE),([314],”back_ground_colour”,BLUE)と、本体部の5行目から2つの3つ組([311],”back_ground_colour”,YELLOW),([313],”back_ground_colour”,YELLOW)を生成し、追加、保持する。
【0059】
最後に、S59において、関係テンプレート評価部16は、保持された3つ組を文書部品属性設定部15に引き渡す。文書部品属性設定部15は、指示された文書部品の指示された属性に対し、指示された属性値を設定する。
【0060】
図14は、本発明の文書編集装置の第2の実施例を示す構成図である。図中、図1と同様の部分には同じ符号を付して説明を省略する。19は関係テンプレート評価指示部である。関係テンプレート評価指示部19は、文書作成者3が指示した条件が満たされたとき、関係テンプレート評価部16に対して関係テンプレートの評価を指示する。
【0061】
文書作成者3からの条件の指示は、対応関係表の作成によって行なわれる。すなわち、この実施例において、文書作成者3は、関係テンプレート作成作業以外に対応関係表の作成作業を行なう。図15は、対応関係表の一例の説明図である。図15に示した対応関係表の一例では、対応関係表は「文書の状態または状態遷移に関する論理式」と「論理式が真である場合に評価すべき関係テンプレート」の組からなる対応関係を各行に記述したものとして表現される。
【0062】
図15(A)に示した対応関係表は、「文書部品識別子が[3001]の文書部品のフォントサイズ属性(属性”font_size”)の値が変化したら、識別子『101』が付与されている関係テンプレートを評価せよ」という指示を示している。また、図15(B)に示した対応関係表のは、「識別子『101』が付与されている関係テンプレート中の部品変数$1で表現される部品のフォントサイズ属性(属性”font_size”)の値が『14』になったら、識別子『101』が付与されている関係テンプレートを評価せよ」という指示を示している。
【0063】
上述のように、対応関係表には関係テンプレートを評価すべき文書の状態または状態遷移を記述することができる。対応関係表における文書の状態または状態遷移に関する論理式の記述では、以下の方法を採ることができる。
○ 属性プリミティブを記述することにより、その属性プリミティブの属性値の変化を「文書の状態遷移」として指定する。
○ 属性プリミティブの属性値に関する条件を記述することにより、その条件を満足する状態を「文書の状態」として指定する。
○ 属性プリミティブの指定方法として、「部品識別子および属性名の組」だけでなく、「部品変数、関係テンプレート識別子および属性名の組」を用いる。なお、論理式として単独の文書状態または文書状態遷移だけでなく、「複数の文書状態または文書状態遷移と論理演算子との組み合わせ」を記述することも可能である。また、複数の条件と関係テンプレートの組を記述することが可能である。さらに、本実施例では関係テンプレートと対応関係表が別個に用意されるものとしているが、関係テンプレートと対応関係表が同一の情報として用意されていてもかまわない。
【0064】
以下、本発明の第2の実施例における動作の一例を説明する。ここでは、文書作成者3による関係テンプレートの作成作業は第1の実施例と同様に行なうことができるので、説明を省略する。簡単のため、以下の説明で用いられる関係テンプレートの記述は図8に示したものとする。ただし、この第2の実施例では、作成された関係テンプレートには識別子が付与される。ここでは、作成された関係テンプレートに識別子「101」が付与され、関係テンプレート保持部12に格納されるものとする。もちろん、図12に示した関係テンプレートが記述される場合でも、同様の処理の流れによって所望の効果をあげることができる。この場合にも関係テンプレートには識別子が付与される。一方、文書作成者3は、上述の図15に示すような対応関係表を作成する。
【0065】
関係テンプレートおよび対応関係表が作成された状態で、対応関係表に記述された条件にしたがって関係テンプレート評価指示部19が起動する。図16は、本発明の第2の実施例における関係テンプレート評価指示部19の動作の一例を示すフローチャートである。まず、S61において、文書作成者3などによる文書編集を監視し、対応関係表の各行で表現されている論理式が満足されているか否かを調べる。その結果、論理式を満足する状態または状態遷移が発生していると判断された場合は処理をS62に移す。一方、論理式を満足する状態または状態遷移が発生していないと判断された場合は、処理をS63に移す。
【0066】
S62では、発生した状態または状態状態に対応する関係テンプレート識別子を対応関係表から特定し、関係テンプレート評価部16に渡して評価を促し、処理をS63に進める。S63では、文書作成者3からの処理終了の指示が発生しているか否かを判断し、処理終了の指示が発生していると判断した場合には動作を終了し、そうでない場合には処理をS61に戻して監視を続ける。
【0067】
S61における監視の動作について具体的に説明する。例えば、対応関係表として図15(A)に示したものが記述されている場合には、S61が実行されるごとに文書部品属性参照部17などを利用して部品識別子[3001]を持つ文書部品のフォントサイズ属性値が参照され、内部的に保持される。そして、再びS61が実行されるときに参照される属性値と保持されている属性値との比較が行なわれ、値が異なる場合には処理がS62に進み、対応する識別子「101」を持つ関係テンプレートの評価が指示される。
【0068】
また、対応関係表として図15(B)に示したものが記述されている場合には、S61が実行されるごとに、論理式に記述されている識別子「101」の関係テンプレートに対する部品変数の評価指示が「$1」の記述とともに関係テンプレート評価部16に対して出される。これに対応して関係テンプレート評価部16は、例えば、図10におけるS44およびS45と同様の定義記述の評価を、部品変数$1を対象に行ない、得られる部品識別子の集合を関係テンプレート評価指示部19に返す。関係テンプレート評価指示部19は、これを受け取ると、得られた部品識別子の集合(ここでは[3001]の1個の要素からなる集合)を論理式中の記述「$1:101」と置き換え、図15(B)の対応関係表に対する動作を行なう。このとき、部品識別子の集合が複数の要素から構成される場合には、それぞれの部品識別子に対応する論理式を生成し、それらの和集合からなる論理式を評価対象とする。また、部品識別子集合が空集合の場合はその行に対応する処理を終了する。図15(B)に示した例では、部品識別子[3001]を持つ文書部品のフォントサイズ属性値が「14」であるか否かを監視することになる。
【0069】
このように、関係テンプレート展開指示部19を有することにより、文書編集装置1は、文書作成者3があらかじめ行なう指示に基づいて、関係テンプレートの再展開を自動的に実行することができる。これにより、文書作成者の負担はいっそう軽減される。上述の例では、文書作成者3が行なう編集処理を常に監視する場合を示したが、例えば、一定時間ごとに、あるいはある特定の処理操作ごとに、評価指示を繰り返し行なうように構成することも可能である。
【0070】
【発明の効果】
以上の説明から明らかなように、本発明によれば、文書作成時に文書作成者自身によって生成される文書部品属性間の多様な関係を記述することができ、文書編集による文書構造の変化および文書部品属性値の変動を通じて、記述された文書部品属性間の関係を管理することができるという効果がある。
【図面の簡単な説明】
【図1】 本発明の文書編集装置の第1の実施例を示す構成図である。
【図2】 関係テンプレートの記述言語の文法の一例を示す説明図である。
【図3】 関係テンプレートの作成手順の一例を示すフローチャートである。
【図4】 関係テンプレートシートの一例の説明図である。
【図5】 基点属性プリミティブフィールドへの設定の一例の説明図である。
【図6】 関係属性プリミティブフィールドへの設定の一例の説明図である。
【図7】 関係属性プリミティブフィールド中の属性に対する属性値決定方法の一例の説明図である。
【図8】 作成された関係テンプレートの一例の説明図である。
【図9】 関係テンプレート評価部16および文書部品属性設定部15による関係テンプレート評価および属性設定の手順の一例を示すフローチャートである。
【図10】 関係テンプレート評価部における関係テンプレートの評価手順の一例を示すフローチャートである。
【図11】 具体例における作成対象の文書に設定されている文書構造の説明図である。
【図12】 関係テンプレートの別の例の説明図である。
【図13】 関係テンプレート評価部16において行なわれる具体的な関係テンプレートの評価手順を示すフローチャートである。
【図14】 本発明の文書編集装置の第2の実施例を示す構成図である。
【図15】 対応関係表の一例の説明図である。
【図16】 本発明の第2の実施例における関係テンプレート評価指示部19の動作の一例を示すフローチャートである。
【符号の説明】
1…文書編集装置、2…入出力装置、3…文書作成者、11…関係テンプレート定義部、12…関係テンプレート保持部、13…文書保持部、14…文書編集部、15…文書部品属性設定部、16…関係テンプレート評価部、17…文書部品属性参照部、18…文書部品同定部。
Claims (2)
- 文書部品の集合を示す情報と該文書部品に付与されている属性間の関係を示す関係テンプレートを保持する関係テンプレート保持手段と、編集の対象となる文書データを保持する文書保持手段と、前記関係テンプレート中の記述に従って前記文書保持手段中に保持される前記文書データ中の文書部品の同定および特定の文書部品の属性値の取得を任意の回数繰り返し行なって関係付けられる文書部品の組合わせを決定しさらに該組み合わせ中の各文書部品に適用される属性を決定して特定された文書部品の特定された属性に関する属性値設定指示を出力する関係テンプレート評価手段と、文書データの状態又は状態遷移が文書作成者により指示された条件を満たすとき前記関係テンプレート評価手段に対して関係テンプレートの評価を指示する関係テンプレート評価指示手段と、該関係テンプレート評価手段から出力される属性値設定指示およびその他の文書データ編集指示を受理しその指示内容に基づき前記文書保持手段中の文書データに対して少なくとも文書属性記述部分の更新処理を含む編集処理を行なう文書編集手段を具備することを特徴とする文書編集装置。
- 文書部品の集合を示す情報と該文書部品に付与されている属性間の関係を示す関係テンプレートを関係テンプレート保持手段に保持しておき、文書データの状態又は状態遷移が文書作成者により指示された条件を満たすときに関係テンプレート評価指示手段が関係テンプレート評価手段に対して関係テンプレートの評価を指示し、該関係テンプレート評価手段は、前記関係テンプレート中の記述に従って文書保持手段中に保持されている編集の対象となる文書データ中の文書部品の同定および特定の文書部品の属性値の取得を任意の回数繰り返し行なって関係付けられる文書部品の組合わせを決定し、さらに該組み合わせ中の各文書部品に適用される属性を決定し、特定された文書部品の特定された属性に関する属性値設定指示を出力し、出力された前記属性値設定指示およびその他の文書データ編集指示を文書編集手段が受理してその指示内容に基づき前記文書データに対して少なくとも文書属性記述部分の更新処理を含む編集処理を行なうことを特徴とする文書編集方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP05452395A JP3901228B2 (ja) | 1995-03-14 | 1995-03-14 | 文書編集装置及び文書編集方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP05452395A JP3901228B2 (ja) | 1995-03-14 | 1995-03-14 | 文書編集装置及び文書編集方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08249320A JPH08249320A (ja) | 1996-09-27 |
JP3901228B2 true JP3901228B2 (ja) | 2007-04-04 |
Family
ID=12973028
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP05452395A Expired - Fee Related JP3901228B2 (ja) | 1995-03-14 | 1995-03-14 | 文書編集装置及び文書編集方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3901228B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3922372B2 (ja) * | 2003-07-28 | 2007-05-30 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 構造化文書処理装置、およびプログラム |
-
1995
- 1995-03-14 JP JP05452395A patent/JP3901228B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH08249320A (ja) | 1996-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3136035B2 (ja) | データベースシステム用インターフェースのための自動レイアウト・ジェネレータ及びその生成方法 | |
US5999178A (en) | Selection, type matching and manipulation of resource objects by a computer program | |
US8935602B2 (en) | Hierarchical drag and drop structure editor for web sites | |
KR101688554B1 (ko) | 데이터 객체의 관리 및 자동 링킹 | |
JP3634323B2 (ja) | 図形編集システム | |
US9552331B2 (en) | Method and apparatus for implementing web pages having smart tables | |
US20080222514A1 (en) | Systems and Methods for Editing XML Documents | |
CN109597954A (zh) | 数据项展示方法、装置、计算设备和介质 | |
JPS61229168A (ja) | コンピユ−タを用いてグラフを作成する方法 | |
JPS61229164A (ja) | ビジネス用図表のデータの更新方法 | |
US6311196B1 (en) | Method and apparatus for implementing web pages having master borders | |
EP1811399A1 (en) | Data processing device and data processing method | |
Krosnick et al. | Expresso: Building responsive interfaces with keyframes | |
CN112130851B (zh) | 一种用于人工智能的建模方法、电子设备和存储介质 | |
JP3901228B2 (ja) | 文書編集装置及び文書編集方法 | |
US7620937B2 (en) | System and method for debugging programs | |
Koutsofios et al. | Editing graphs with dotty | |
JPH11102293A (ja) | プログラム自動生成方法 | |
Salleh et al. | Numerical simulations and case studies using Visual C++. Net | |
JP2001273125A (ja) | ソースプログラム自動生成方法およびシステム、ならびにそのプログラム記録媒体 | |
Dehne et al. | Toolkit for Conceptual Modeling (TCM): User's Guide and Reference | |
Lichter et al. | vis-A-vis: An Object-Oriented Aplication Framework for Graphical Design-Tools. | |
EP0410062A2 (en) | Dynamic selection of logical element data format | |
Weninger | Flowchart Visualization in JavaWiz | |
EP1208426A2 (en) | Hierarchically structured control information editor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060426 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060622 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060623 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20061213 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061226 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110112 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120112 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120112 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130112 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130112 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140112 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |