Comments
Description
Transcript
日本語科学技術文書処理支援環境IDE
昭和60年 総合理工学研究科報告 第7巻第1二 一99一’ 日本語科学技術文書処理支援環境IDE H.文書作成における文書モデル 野美山 浩*・宇津宮 孝一**・小鶴康浩榊 (昭和60年3,月23日 受理) An Interactive Japanese Document Preparation Environment・1:DEぐ H.Its Document Model in Document Preparation Hiroshi NOMIYAMA, Kouichi UTSUMIYA and Yasuhiro KOZURU Aprototype system supporting the whole document preparation stage in its life cycle has been designed for aJapanese Document Preparation Environment(IDE)with good user illterfaces suitable for scientists or engineers. This system integrates three major functions used at the stage, namely editing, formatting, and text− critiquing. To make the system easy to understand, a simple conceptual model of documents has been proposed, This paper describes the concept and Qしblgn of the document modeL 1.はじめに 近年の日本語文書処理システムの普及により,計算 機を用いて文書を処理するということが,ようやく ここでは,このような統合化された文書処理環境構 築の端緒として,まず文書の作成という段階を考えて いる.これは文書のライフ・サイクルの一部分に過ぎ ないが,非常に重要な段階の1つである. 我々の身近なものとなってきた1)2}.学会の予稿なども 我々の研究室においては,大学の研究者等を対象と これらのシステムで作成されたものが少なくない.し した日本語文書処理システムの開発を行っている.こ かし,現在の個々の日本語文書処理システムが果たし れまでに開発したシステムは,日本語文の入力・編集 ている役割は,文書のライフ・サイクルから見るとほ 方式の研究に主眼を置いたものである3)4).今回,この んの一部に過ぎない. システムに清力出力するための書式化系を統合し,日 計算機は,文書のライフ・サイクルの多くの段階に 本語文書作成支援環境として新たに設計を行った.こ おいてユーザを支援できる可能性を持っている.それ のシステムは,文書作成において,より多くの側面で らの可能性は,別々なものとして研究され,個々のシ ユーザを支援し,ユーザが快適に文書作成を行えるよ ステムとして実現されている. 1人のユーザが文書処理のためにこれらのシステム を用いる場合,それらが別々のものとしてではなく, 1つの統合化されたシステムとして用いることができ うな環境を構築することを目的としていろ.当面の目 標としては,表・図などを含まないテキストのみから なる文書を対象とする. 本論文では,この日本語文書作成支援環境について, ることが望ましい.もちろん,そのようなシステムは 最も基本となる文書のモデルを中心に述べる. 単なるツールの寄せ集めであってはならない.それら 1.1.設計方針 は,一貫した概念に基づいて構築されることが必要で あるし,そのユーザ・インターフェースにおいては, 一様なモデルを提供しなければならない. 日本語文書作成支援環境の設計方針を以下に挙げ る. (1)わかりやすいモデルの設定 文書の作成過程やユーザ・インターフェースの設計 *工学研究科情報工学専攻修士課程 紳情報システム学専攻 桝情報システム学専攻修士課程 において,理解しやすい一貫したモデルを採用する. (2)柔軟性・拡張性の考慮 日本語科学技術文書処理支援環境IDE 一100一 システムが採用したモデルのもとで,ユーザがシス テムに充分に順応できるように,機能の柔軟性及び拡 2.2.文書作成の流れ 今回設計するシステムにおいては,文書のライフ・ サイクルの中の文書の作成という段階に目を向けてい 張性を考慮する. (3)ユーザの人間的要因の考慮 る.この文書の作成という段階について,より詳しく ユーザが,システムと直接的に接するところである 考察する5}. ユーザ・インターフェースの使い易さを考慮する. 1.2.設計の接近法 典型的な文書作成の流れは,どのようなものであろ うか.ここでは,1人の人間が自分で文書を作成する ときを考える.つまり全く無の状態から文書内容を考 システムを設計してゆくには様々な接近法がある が,ここぞは以下の段階に沿って進めていくことを試 え出し,文書を作成する場合を考え,他の文書の参照 みた. や変更は考慮しないことにしている.というのは,こ (1)人間が文書を作成する過程を解析する. のような文書の参照は文書の流通と深くかかわりあっ (2)その過程を基にして,文書の作成という作業を ているからである.文書の作成という1つの段階に 計算機上の仕事として構戒する. (3)計算機の能力を利用して,文書作成を容易にす るような手段を提供する. (4)人間的要因を考慮してユーザ・インターフェー 限って議論するために,これらの参照は考えない. 我々は,なんらかの文書の作成の要求が生じるとき に文書を書くことになる.その際,まず最初に,その 要求に沿って文書の主題を定義する.次に,その主題 スを設計する. に沿って自分の書きたいことをまとめる.そして,そ 本論文ではこの段階に沿って,(1),(2)を中心に述 のまとめられた概念を文字列,表,図形などとして表 現する.最後に,これらの具体対象に文書としての外 べる. 2.文書の作成 観を持たせる.こうして文書の完成となる. 文書の作成段階は上述した4つの段階からなって 2.1.文書のライフ・サイクル いる,これらの段階は,一般的にはそれぞれ立案・構 文書のライフ・サイクルには次に示すように大きく 想・下書き・清書に対応するが,これらの用語は厳密 分けて3つの段階がある(Fig.1). に各々の段階を表しているわけではない.ここでは, (1)文書の作成 これらの段階を,それぞれ主題の決定,抽象的文書内 文書がどのような媒体上で表現されるかにかかわら 容の定義,具体対象の定義,外観の定義として区別す ず,文書の本質的な実体を作る段階である. (2)文書の流通 Requlrement of Document Preparatlon ここでは,文書はなんらかの媒体上で表現されてお り,閲覧されたり,保管されている状態にある. Decision of a Subject (3)文書の消滅 文書が不用になったり,他のなんらかの要因によっ て,その本質的実体が消滅する段階である. Definition of Abstract Contents Document Preparatlon Definition of Concrete Objects Document Circulation Formattlng Document Extinction Completion of a Document Fig.1 Life cycle of document Fig・2 Document preparation process 第7巻第1号 総合理工学研究科報告 昭和60年 る.一般に人が文書を書く場合の川頁序も含めた文書の 作成の流れをFig.2に示す. 次に典型的な文書作成の流れに沿って,各々の段階 一101一 ザが作るものであって,システムが文書の内容に関し て明白なモデルを提示しているものではない.しかし, 文書作成者にとって,文書の内容を決める段階は重要 な段階であるし,もっと手軽に用いることができるほ について見ていく. (1γ主題の決定 うが望ましい. この段階においては,まず目的を明らかにし,何に 文書作成の創造的側面に関して計算機が支援するの ついて書かなければならないかということを明確に認 は,現在1よ技術的に困難であるように思われる.その 識しなければならない.自分がどのような種類の文書 ために,ここでは文書の形式的な側面に注目する.文 を書くかはこの段階で決まる. 書作成の各段階を形式的な側面から眺めてみるとどの (2)抽象的文書内容の定義 決定した主題に沿って,どのようなことを書くのか を決めなければならない.次に,書きたいと思ったこ とを章・節・段落などのような論理的なまとまりに分 け,それらのまとまりの間の流れを決める. ようなことが重要であるかということを以下に考察す る. (1)主題の決定 主題を決定するのは書き手にしかできないが,よく 用いるいくつかの文書の範疇(例えば,論文,手紙な ど)をシステムが用意しておくことは可能である.ユー ’(3)具体対象の定義 前段階で得られた抽象的な概念を論理的なまとまり ザが文書を作成するときは,それらの中から選択する に沿って,文字列・数式・表・図形・画像などの具体 ことになる.その範疇には,文書作成の以降の段階で 的な対象として表す.この段階は書き手の表現力が重 用いる文書の形式的側面に関する情報が含まれていな 要となる段階である.例えば,文の表現においては, ければならない.言い換えれば,それらの情報が共通 ある事柄を能動態で表すかあるいは受動態で表すかと するものを1つの文書の範疇としてとらえるわけで いうような文法上の選択などがある. ある.そのため,それらの情報の記述は一般性を持た (4)外観の定義 ’ ここでは,具体対象に対して文書として外観を整え る.具体的な動作として,文の改行,センタリングな なければならない.以降の段階では,これらの範疇で 共通する情報について述べる. , コ (2)抽象的文書内容の定義 どがある.論理的なまとまりは概して同じ見え方の属 ここでは,論理的なまとまりの問の流れが考えられ 性を持つ.例えば,題名は普通中央にそろえ,段落は る.例えば,文書が“前書き一本文一後書き”といっ 先頭に1文字分の空白を入れ,最後で改行する.こ た構成を持つというような情報の記述である.一般に のような動作とは別に,形式的な具体対象を加えるこ 文書の構成は一意的ではないので(例えば,章がいく ともこの段階で行われる.例えば,日付,ページ番号 つあるかということは前もってわからない),一般的 などである. 記法で表すことが必要である. 2.3 文書作成過程の考察 (3)具体対象の定義 これまでに人が文書を作成する過程を見てきたわけ ここでは定型的なテキストを記述することができ であるが,この過程を計算機上の仕事として構成する る.定型的なテキストの例として,催し物の案内は, にはどのような点が重要であろうか. 催す会の名前,日付,時間が決れば文書の具体対象の 現在のほとんどの文書処理システムは,文書の作成 ほとんどすべての部分が決ってしまう.この記述に従 段階に限ってみると,具体対象の定義あるいは外観の い,書き手がなんらかの指示を与えることによって, 定義という2つの段階でしかユーザを支援していな テキストが自動的に生成される. い.そのようなシステムは,文書の外観に重点が置か (4)外観の定義 れている.しかし,自分の思うように清書出力するに (2)で定義した論理的なまとまりごとにフォーマッ は書式化系特有のコマンドを覚えなければならないた め,一般にはかなりの学習が必要である.また,文書 トを記述する.実際の書式化においては,(2)で定 義したような論理的なまとまりに対してのみフ才こ・ の内容を決める段階における機能としては,マクロ機 マットを指定するだけでは不十分なので,それらに加 能,定型文書などの機能が挙げられるが,これらはユー えてフォーマッティング・コマンドの定義の記述も行 日本語科学技術文書処理支援環境IDE 一102一 実際に作成する文書は,このような文書クラスの1 う必要がある. 上で述べたことは,2つのレベルで文書の形式的 つの実現例(文書インスタンス)としてとらえられる 側面をとらえていることに注意されたい.最初のレベ 6}.文書インスタンスは,文書クラスの文書構成規則 ルは文書自身の範疇であり,2番目は,文書中の論 に対して構成,テキスト生成記述に対してテキスト列, 理的なまとまりである. フォーマッティング記述に対してフォーマッティン グ・コマンドの割り当てという3つの側面を持つ. 3.文書モデル 以上が本システムで扱う文書のモデルである(Fig. 人が1人で文書を作成するときの思考及び動作の 過程を基にして設計した本システムで扱う文書のモデ 5参照).その特徴は,文書の抽象的な構成要素を形 式的にとらえていることにある. 3.2.文書クラスの階層構造 ルについて述べる. 3.1,モデルの構成 文書クラスの階層構造の1例をFig.3に示した, 書き手が文書を作成しようとするとき,その文書は‘ この図においては分類学的な上下関係が表されている 1つの範疇に属している.ここでは,この範疇を文書 が,実際のシステムでは階層構造中の上下関係は,単 クラスと呼ぶ.この文書クラスは,更に小さな文書ク にクラスにある3つの記述の継承関係を表すだけで ある. Document T㎞ u= Abstract Graduation thesis しかし,この構造に対して,論理的な階層関係を持 たせることは可能である.親クラスに,より一般的な Paper Report 記述を持たせ,子クラスにはその記述に制限あるいは 変更を加えるといった方針を採れば,分類学的な階層 関係(例えば,論文には卒業論文や学会論文がある) といったことを自然に表すことができる,また,構造 Letter Fig.3 An example of hierarchy of document classes 中の上下関係は継承関係であるので,分類学的に下位 に属するもので各々の記述が全く異なったクラスもこ の文書クラスの階層構造中で表現することができる. 3.3.文書クラスの記述 ラスに分けることができる(例えば}自分が作成しよ 3.3.1.文書構成規則 うとする文書は論文の中の卒業論文であるといった具 文書は,題章,節のような論理的なまとまりであ 合に).このように,作成しようとする文書の文書ク る文書構成要素からなる.文書の同じ範疇においては, ラスFig.3のような階層構造中に位置付けることが これらの間の構成を1つの規則のもとでとらえる. できる. この文書クラスは,3つの記述を含む.第1は, これらの構成は,先に挙げたFig.4のような木構造 で表される。一般的規則を表現するために,繰り返し, 文書を構成するための文書構成要素間の規則を明らか にする文書構成規則である.ここで文書構成要素とは, 題,章,節のような文書を構成する論理的なまとまり Paper Struc加ral Rule of DGcument Paper を意味する.第2は,テキスト生成記述である.こ れは,文書構成要素が固有に持つようなテキストの生 成に関するものである.各々の文書構成要素に対して 記述するが,なくてもよい.第3のフォーマッティ ング記述は,各文書構成要素に対するフォーマッティ ング属性の記述とフォーマッティング・コマンドの記 述を含む.この記述もすべての文書構成要素に対して, Text Creat孟ng Description Formatting Description Abstract Title Abstract Headi㎎ T藍tli qeference `uther’s name Auther’s affiliation bhapter Paragraph Figure tnder】jne Cehtering 必ずしもある必要はない.文書クラスの例をFig.4 に示す. Fig.4 An example of a document class 第7巻第1号 総合理工学研究科韓告 昭和60年 一103一 えば,段落という抽象的フォーマットは,一般に最初 に1つの空白を入れ,最後で改行することを意味す Hlerarchy of Document Classes o O る. 4.機能 O 本システムの文書モデルに基づいて文書を作成する 際入力・編集及び書式化は必須の機能である.また, Document CIass Structural Rule of’Document 文書作成を容易にする機能の1つとして計算機によ る推敲支援を考える.これらの3つの機能にどのよ Formatting Descriptio Text Creating Description うなものが必要であるかを述べる. 4.1.入力・編集 Document Instance (1)入力 Str ure 圓 日本語の入力方式には様々な方式がある.対象とす 國 Fig.5 Proposed document model るユーザやシステムを実現するハードウェアに適した 入力方式を採用しなければならない.更に採用した方 式に応じて入力を容易にするような機能が必要であ る. 省略可能,選択といった表記を取り入れている.これ (2)編集 らの表記を修飾子と呼ぶ.以下に現在考えている修飾 編集には,挿入,削除,移動,複写の基本的な機能 子を挙げる, に加え,文字列の検索や置き換えといったような機能 (1)繰り返し* が必要である.編集の対象は,基本的には文書インス 修飾子*を施した文書構成要素のインスタンスが, タンスと文書クラス及び文書クラスの木構造である. 順にいくつか並んでいる構成を表す. (2)省略可能() 修飾子()を施した文書構成要素のインスタンス を作らなくてもよいことを表す. 4.2.書式化 本システムにおいて書式化は,論理的な記述のみか らなる文書インスタンスに文書クラスのフォーマッ ティング記述を適用することを意味している.ただし, (3)選択〈〉 文書インスタンスの論理的な記述は,抽象的なフォー 修飾子〈〉を施した文書構成要素のうち,どれか マッティング・コマンドを含んでいる. を選択しなければならないことを表す. この書式化の際には,ユーザが手を加えなくてはな 3.3,2.テキスト生成記述 らないことができるだけ少なくなるように,ある程度 文書には定型的な言い回しがある.このなかで,ク 自動的に行う必要がある. ラスに応じ為形式的なものはフォーマッティングに属 4.3.推敲支援 するものであるが,内容的に書き手の選択に委ねられ 推敲は具体対象の定義の段階で重要な動作である. るものは,このテキスト生成記述において記述する. 計算機による推敲支援:は,英語の文章においては ここで考えてレ・る機能は以下の3つである. (1)いくつかのテキストの中からの選択 UNIXのWWBやIBMのEPISTLEなどが知られてい るη.しかし日本語の文章については,単語が分ち書 (2)引き数を与えることによるテキストの生成 きされていないため,意味的あるいは文法的に深くま (3)変数の使用 で解析することは困難である.それでも,単に字面だ 3.3.3.フォーマッティング記述一 けを見ることによっても有効な情報を得ることはでき この記述は,文書構成要素のフォーマッティング属 る.また,入力の際にある程度の文法解析を行うかな 性の記述とフォーマッティング・コマンドの記述を含 漢字変換のような方式を用いれば,そのときの情報も む.各々の記述はプリミテブブなフォーマッティン 利用することができる. グ・コマンドからなる抽象的フォーマットを表す、例 日本語科学技術文書処理支援環境IDE 一104一 要素のインスタンスを生成する必要がある.この生成 5,文書作成の流れ は,文書クラスの文書構成規則を初期状態とした最終 本システムで採用したモデルに沿った文書作成の流 れについて,文書インスタンスを中心として述べる. 文書作成の流れの概略をFig.6に示す. 的な文書インスタンスへの遷移の過程で生じる.この 過程は,文書構成木として表すことができる. この文書構成木は次のものをノードとして持つ. 5.1。文書インスタンスの物理的存在の生成 ・文書構成要素 文書インスタンスの物理的存在の生成には,まず文 ・文書構成要素インスタンス 書クラスの設定が必要となる.この場合には既存の文 ・修飾文書構成要素 B b S 文書構成要素に修飾子を適用したもの 書クラスを指定する場合と新たに文書クラスを作成す (修飾子については後で定義する.) る場合がある. 文書構成規則木は,文書作成の初期状態であり,ノー (1)既存の文書クラス 文書クラスの階層構造中の文書クラスを指定する. ドに文書構成要素インスタンスを含まない.文書イン (2)新規文書クラス スタンス構成木は,文書作成の最終状態であり,文書 文書クラスの階層構造に新たな文書クラスを付け加 構成要素インスタントのみからなる. える.まず,文書クラスの階層構造中でどのクラスを この文書構成木に対して,なんらかの操作を適用す 親クラスするかを決定する.次に,文書クラスの3 ることによって,文書を作成していくわけであるが, つの記述を定義するが,このときは次の3つの場合 この操作はノードに対して行う.これらの基本操作に がある.文書クラスの各々の記述において, は,文書構成規則に従った操作と,木としての編集と ・親クラスの記述をそのまま継承する. いう2つの種類のものがある. ・親クラスの記述を複写し,その記述を変更する. 以下にこれら2つの操作について示す. ・新規クラス独自の記述を作成する. 5.2.1.文書構成規則に従った操作 このようにして文書クラスの指定を行い,次に文書 文書構成規則に従った操作は,文書クラスの文書構 インスタンスの名前を入力することによって,文書イ 成規則に従って文書インスタンスを生成していく操作 ンスタンスの物理的存在が生成される. である.この操作は主としてノードのactivateと 5.2.文書インスタンスのテキストの入力・編集 deactivateという2つの操作からなるが,やや例外的 テキストの入力・編集は,実際は文書構成要素イン な操作としてノードの移動という操作を許している. スタンスに対して行う.そのためには,まず文書構成 (1)ノードのactivateとdeactivate 最終状態である文書インスタンスへ向かう操作を activateと呼び,逆に初期状態へ戻ろうとする操作を Creatlon of ⇔ aDocument Instance Dls!gnatlon of aDocument class deactivateと呼ぶ. 以下,ノードのactivateをN’, deactivateを’Nと ↓ Text Edltlng for ← the Document Instance Structural Rule of Docu ent Text Creatlng Descrlpt ドー F。,m。t i痂≡「⇔F・・m・ttlng D・・crlpt1・・ the Document Instance ↓一㎎ 表す.Nは文書構成要素or文書構成要素インスタン スor修飾文書構成要素, XとYは文書構成要素or修 飾文書構成要素を表す. 各種のノードのactivate及びdeactivateの結果を Fig.7に示す. 図中においては右方向の操作を先に行うものとす る. (2)ノードの移動 Fomattlng 也璽・m・nt lnStanCe Fig.6 Document preparation process based on the proposed document mode1 修飾子*によってactivateされたノード間でのみ可 能である.ノードの移動の例をFig.8に示す. 5.2.2.木としての編集 文書構成規則とは関係なく,単に木として文書構成 昭和60年 第7巻第1唯 総合理工学研究科報告 一105一 (4)バッファからの複写 (1)AStructural Element of Document 単一ノードあるいは部分木をバヅファから複写す d a る. l一・←一一一一一→1−B三ト・ (5)ノード情報の変更 文書構成要素名などのノ「ド情報の変更を行う. (2)An Instance of Structural Element of Document d (6)ノごド情報の表示 文書構成要素名,文書構成要素インスタンス名,作 a 1一・一1一一b 成日時などの情報を表示する. 1 5.3.文書インスタンスのフォーマットの編集 文書クラスにおいては,フォーマッティング記述中 (3)Operator* に文書構成要素のフォーマットとフォーマッティン ・レx d L。X l グ・コマンドの記述がなされている.’ トx ユーザによる文書インスタンスのフォーマットの編 集は,フォーマッティング・コマンドの割り当てであ る.フォーマッティング・コマンドは,その適用範囲 (4)Operator() を指定する必要がある.範囲の対象には,文書構成要 1−x a ト(x) 素インスタンス内のテキスト’列と文書構成要素インス タンスとがある.後者は,文書構成要素のある特定の d インスタンスだけフォーマットを変更したい時に行 (5)Operator 〈〉 う. 5.4.清書出力 d a l一・X,Y,…〉←・→1−X・1−Y・… これまで述べたような操作によって,テキストや フォーマットを割り当てられた個々の文書インスタン Fig.7 Activation and deactivation of a node スに文書クラスのフォーマッティング記述を適用する ことによって清書出力を得る. bl b2 b3 b4 ⇒ *B b2 b3 b4 b1 *B Fig,8 Movement of a node 6.おわりに 以上,本システムが扱う文書のモデルと,それに基 づいてどのように文書を作成していくかについて述べ てきた.この文書モデル及び文書作成過程に対して, ユーザとして大学等の研究者を想定し,ユーザ・イン ターフェースの設計を行った.現在,これらの設計に 木を編集するものである.操作は,ノードあるいは部 基づいてシステムを本専攻計算機HITAC M−240H上 分木を対象とする. に試作中である. (1)挿入 システム全体がまだ完成していないため,現段階で (2)削除 は詳細な評価を行えないが8),このシステムによって (3)バッファへの複写と移動 快適な文書作成環境の提供ができるものと確信してい 単一ノードあるいは部分木をバッファへ移動あるい る. は複写する.この編集においては,ノードの複写を複 今後の課題として,システムを早急に実現し,その 写されるノードあるいは部分木を中間バッファへ複写 評価を通じてシステムの改善を図ることが必要であ する動作と,その中間バッファから複写先へ複写する る.更に,将来的には文書管理システムやネットワー という2つの動作に分けて考えている.ノードの移 クを取り入れ,文書の流通段階までも支援し,総合的 動についても同様である. な文書処理システムとして機能の充実を図らねばなら 日本語科学技術文書処理支援環境IDE 一106一 境IDEの入力編集系の評価,情報処理学会第29回全国大 ない. 最後に,日頃ご指導頂く本専攻駒宮教授に謝意を表 す.また,卒業研究で本システムの実現に協力して頂 いた山口浩司氏に感謝する. 参考文 献 1)B,W. Kernighan and M E. Lesk:UNIX Document Prepa− ration:DOCUMENT PREPARATION SYSTEMS, NORTH HOLLAND, pp.1−20(1982>. 2)R.Furuta, J. Sofield and A。 Shaw:Document Formatting Systems:Survey, Concept, and Issues, ACM COMPUTING SURVEYS,14,3, pp.417−472(1982). 3)宇津宮,野美山,小鶴:日本語科学技術文書処理支援環 ・会,pp,1489−1490(1984)。 4)宇津宮,古保里,野美山:日本語科学技術文書処理支援: 環境IDE I.ヒューマン・インターフェースについて, 九州大学総合理工学研究科報告,6,1,pp.69−76(1984). 5)木下是雄:理科系の作文技術,中公新書(1981). 6)A.Goldberg, D. Robson;Smalltalk−80, The Language and Its Implementation, Addison Wesley(1983). 7)G.E. Heidorn et aL:The EPISTLE text−critiquing system, IBM Systems J.,21,3, pp.305−326(1982). 8)小鶴,野美山,宇津宮:日本語文書処理システムIDEの 自己評価機能,昭和59年度電気関係学会九州支部連合大 会,P,429(1984),