JPH0652161A - 文書処理方法及び文書処理装置 - Google Patents

文書処理方法及び文書処理装置

Info

Publication number
JPH0652161A
JPH0652161A JP4206722A JP20672292A JPH0652161A JP H0652161 A JPH0652161 A JP H0652161A JP 4206722 A JP4206722 A JP 4206722A JP 20672292 A JP20672292 A JP 20672292A JP H0652161 A JPH0652161 A JP H0652161A
Authority
JP
Japan
Prior art keywords
string
identifier
document
constituent
identifier string
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.)
Pending
Application number
JP4206722A
Other languages
English (en)
Inventor
Hisashi Nakatsuyama
恒 中津山
Koji Kusumoto
浩二 楠本
Makoto Murata
真 村田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP4206722A priority Critical patent/JPH0652161A/ja
Publication of JPH0652161A publication Critical patent/JPH0652161A/ja
Priority to US08/815,584 priority patent/US5765177A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/131Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/117Tagging; Marking up; Designating a block; Setting of attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Document Processing Apparatus (AREA)

Abstract

(57)【要約】 【目的】他の文書処理機能と組合わせて、文書或いは文
書部品の検索、挿入、合成、更新を正確に処理すること
のできる文書処理方法及び文書処理装置を提供する。 【構成】構成子記述列保持部110には、予め記述され
た文書の内容である構成子記述列群が格納されている。
第1の識別子列取得部130は、指定された第1の条件
に適合する構成子に対応する識別子列を、構成子記述列
保持部110内の構成子記述列群から取得する。この取
得結果である識別子列は、識別子列保持部120に保持
される。第2の識別子列取部140は、識別子列保持部
120に保持されている識別子列から、指定された第2
の条件に適合する識別子列を取得する。また取得した識
別子列を、既に保持されている他の識別子列と区別でき
るように識別子列保持部120に格納する。構成子記述
列取得部150は、識別子列保持部120に保持されて
いる第2の識別子列取得部140により得られた識別子
列に対応する構成子記述列を、構成子記述列保持部11
0内の指定された構成子記述列から取得する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、グラフ理論における
グラフによって表現される文書を処理する文書処理方法
及び文書処理装置に関する。
【0002】
【従来の技術野】電子文書の論理構造をグラフ(木や一
般のネットワーク)によって表すことは従来から広く行
われている。例えば国際規格ODA(ISO/IS 8613、Info
rmationProcessing-Text and Office System-Office Do
cument Architecture(ODA) andInterchange Format(198
8))では、文書の論理構造をノード(オブジェクト)に
よって表現している。またハイパーテキストでは、ノー
ドとリンクとで構成するネットワークが文書である。
【0003】論理構造を利用して、記憶装置に記憶され
た文書を対象として、文書や文書部品の検索、挿入、合
成、更新を行う文書処理装置が実現されている。このよ
うな文書処理装置を用いて、文書や文書部品の検索、挿
入、合成、更新を行うには、通常、問合せ言語を用いて
条件や動作を指定する。
【0004】文書処理装置においては、何等かの手段に
よって、文書中のノードのうち処理の対象となるものを
特定する必要がある。
【0005】この処理の対象となるものを特定する文書
処理装置としては、本願出願人によって出願された特願
平2−235740号(発明の名称:電子文書生成方
式)、特願平4−15463号(発明の名称:文書デー
タベース装置)に開示されたものがある。
【0006】特願平2−235740号に開示されたも
のにおいては、図18に示す様な論文の論理構造を有す
る構造化文書である入力文書群から出力文書を得るため
に、以下に述べる様なLISP言語に似た構造を有する
手続き的な操作言語によって記述されたプログラムを実
行するようにしている。
【0007】文書プログラム識別子:論文抄録作成 (SetID “論文抄録作成” (MakerRoot (MakeNewNode “論文抄録”)) (AddChild 論文抄録(MakeNewNode “文献1”)) (AddChild 論文抄録(MakeNewNode “文献2”)) (AddChild 論文抄録(MakeNewNode “文献3”)) (AddSubTree 文献1 表題@論文A) (AddSubTree 文献1 著者名@論文A) (AddSubTree 文献1 所属@論文A) (AddSubTree 文献1 要約@論文A) (AddSubTree 文献2 表題@論文B) (AddSubTree 文献2 著者名@論文B) (AddSubTree 文献2 所属@論文B) (AddSubTree 文献2 要約@論文B) (AddSubTree 文献3 表題@論文C) (AddSubTree 文献3 著者名@論文C) (AddSubTree 文献3 所属@論文C) (AddSubTree 文献3 要約@論文C) (ChangeText “えっくす研究所”“Our laborator
y”) (SetAttribute“編集者”“Auto”) (SetAttribute“編集日”(Date)) 図18に示す様な入力文書に対し、このようなプログラ
ムを実行することにより、図19に示す様な出力文書が
得られる。
【0008】一方、特願平4−15463号に開示され
たものにおいては、図20に示すような論文の論理構造
を有する構造化文書からの文書部品の抽出のために、以
下に述べるようなSQL言語に似た問合せ言語によって
記述されたプログラムを実行するようにしている。
【0009】 図20に示す様な文書に対し、このようなプログラムを
実行することにより、図21に示すような結果が得られ
る。この文書による検索結果は文書あるいは文書部品の
並びである。
【0010】これらの公報に開示されたものでは、ノー
ドの属性値についての条件を指定することによって、処
理の対象となるノードを特定する方法をとっている。こ
の方法では、例えば、「“著者”というタグが付随して
いる」という条件の指定を行って、処理の対象となるノ
ードを特定する。
【0011】文書部品の検索は、上記の様な指定によっ
て特定されたノードを、文書中から抜き出すことであ
る。また文書部品の属性更新は、特定されたノードに属
性を追加、削除、変更することである。さらに文書部品
の挿入は、特定されたノードからの相対位置(例えば直
後)を指定して、指定されたノードを挿入することであ
る。
【0012】
【発明が解決しようとする課題】しかしながら、上記従
来の各公報に開示されたものでは、文書あるいは文書部
品の操作は、全て操作言語で記述されている必要があ
る。従って、文書部品の抽出、構造の変更、属性の設
定、テキストの変更といった一連の処理は、一つの処理
系で一括して行われる。
【0013】これらの処理方式においては、ひとつの処
理を行う際に、操作言語の処理系である文書処理機能
(装置)と他の文書処理機能(装置)とを連携させ、き
め細かな処理を行う事は極めて難しい。
【0014】以上の問題点を具体例を用いて説明する。
ノードがテキストで表現されている場合は、汎用のテキ
スト処理機能(装置)も文書処理機能(装置)として機
能し得る。従って、この汎用テキスト処理機能(装置)
と、上述した文書処理機能(装置)(上記各公報に開示
されたもの)とを組合せて、 (1)文書処理機能によって、操作対象となるノード列
を取り出す。 (2)テキスト処理機能によって、ノード列に含まれる
文字列の挿入、置換を行う。 (3)文書処理機能によって、上記(2)の処理で得ら
れたノード列を他のノード列に挿入する。 といった処理を行うことが考えられる。
【0015】ところが、汎用テキスト処理機能と、問合
せ言語の処理系である従来の文書処理機能とを組合せて
使用することは容易ではない。そのため上記(1)〜
(3)の処理を分けて実現することができず、以下の問
題が生じる。
【0016】テキスト処理機能における操作対象は、上
記(1)の処理で取り出された中で更に限定されたノー
ド列のみであるが、この処理が全て終わったときに得ら
れるノード列全体に対して、上記(2)の処理の操作を
行うことになってしまう。このため、本来は変更すべき
でないノード列も変更されてしまうことがある。
【0017】また上記(1)の処理によって文書から操
作対象となるノード列を取り出し、上記(2)の処理が
終了した後、元の文書に戻そうとしても、各々のノード
列がその文書の中で属していた部分を特定することがで
きない。何故なら、ノードの属性値についての条件を指
定することによってノード列を特定したので、ノード列
が元の文書でどこに属していたか正確にはわからない。
このため上記(3)の処理を行うことができない。
【0018】このように従来の文書処理機能では、他の
文書処理機能と組合せてきめ細かな処理を行うことは出
来なかった。
【0019】この発明は、他の文書処理機能と組み合わ
せて、文書あるいは文書部品の検索、挿入、合成、更新
を正確に処理することのできる文書処理方法及び文書処
理装置を提供することを目的とする。
【0020】
【課題を解決するための手段】第1の発明は、グラフ理
論におけるグラフによって表現される文書に対する所定
の処理を行う文書処理方法において、予め記述された単
数又は複数の文書或いは単数又は複数の文書部品に対応
し、且つ、識別子が付与されている1つ以上の構成子を
有する構成子記述列から、指定された第1の条件に適合
する構成子に対応する識別子列を取得するステップと、
前記識別子列から、指定された第2の条件に適合する識
別子列を取得するステップと、前記第2の条件に適合す
る識別子列に基づいて、前記予め記述された単数又は複
数の文書或いは単数又は複数の文書部品に対応する構成
子記述列に対する所定の処理を実行するステップとを含
むことを特徴とする。
【0021】第2の発明は、第1の発明において、前記
所定の処理を実行するステップは、前記第2の条件に適
合する識別子列に対応する構成子記述列を、前記予め記
述された単数又は複数の文書或いは単数又は複数の文書
部品に対応する構成子記述列から取得するステップ、前
記第2の条件に適合する識別子列に対応する構成子記述
列を、指定された条件に従って、前記予め記述された単
数又は複数の文書或いは単数又は複数の文書部品に対応
する構成子記述列に挿入するステップ、前記第2の条件
に適合する識別子列に対応する構成子記述列を、指定さ
れた条件に従って変更するステップ、前記第2の条件に
適合する識別子列を検査し、この検査結果が指定された
第3の条件に適合する場合のみに、当該識別子列に対応
する構成子群を有する前記予め記述された単数又は複数
の文書の文書名を出力するステップのうち、いずれかの
ステップ又は複数のステップを含むことを特徴とする。
【0022】第3の発明は、グラフ理論におけるグラフ
によって表現される文書の部品を検索する文書処理装置
において、予め記述された単数又は複数の文書或いは単
数又は複数の文書部品に対応し、且つ、識別子が付与さ
れている1つ以上の構成子を有する構成子記述列から、
指定された第1の条件に適合する構成子に対応する識別
子列を取得する第1の識別子列取得手段と、該第1の識
別子列取得手段により得られた識別子列を保持する識別
子列保持手段と、該識別子列保持手段に保持されている
識別子列から、指定された第2の条件に適合する識別子
列を取得する第2の識別子列取得手段と、該第2の識別
子列取得手段により得られた識別子列に対応する構成子
記述列を、前記予め記述された単数又は複数の文書或い
は単数又は複数の文書部品に対応する構成子記述列から
取得する構成子記述列取得手段とを具えている。
【0023】第4の発明は、グラフ理論におけるグラフ
によって表現される文書の部品を所定の文書に挿入する
文書処理装置において、予め記述された単数又は複数の
文書或いは単数又は複数の文書部品に対応し、且つ、識
別子が付与されている1つ以上の構成子を有する構成子
記述列から、指定された第1の条件に適合する構成子に
対応する識別子列を取得する第1の識別子列取得手段
と、該第1の識別子列取得手段により得られた識別子列
を保持する識別子列保持手段と、該識別子列保持手段に
保持されている識別子列から、指定された第2の条件に
適合する識別子列を取得する第2の識別子列取得手段
と、該第2の識別子列取得手段により得られた識別子列
に対応する構成子記述列を、指定された条件に従って、
前記予め記述された単数又は複数の文書或いは単数又は
複数の文書部品に対応する構成子記述列に挿入する構成
子記述列挿入手段とを具えている。
【0024】第5の発明は、グラフ理論におけるグラフ
によって表現される文書の部品の属性値を更新する文書
処理装置において、予め記述された単数又は複数の文書
或いは単数又は複数の文書部品に対応し、且つ、識別子
が付与されている1つ以上の構成子を有する構成子記述
列から、指定された第1の条件に適合する構成子に対応
する識別子列を取得する第1の識別子列取得手段と、該
第1の識別子列取得手段により得られた識別子列を保持
する識別子列保持手段と、該識別子列保持手段に保持さ
れている識別子列から、指定された第2の条件に適合す
る識別子列を取得する第2の識別子列取得手段と、該第
2の識別子列取得手段により得られた識別子列に対応す
る構成子記述列を、指定された変更指示情報に従って変
更する構成子記述列変更手段とを具えている。
【0025】第6の発明では、グラフ理論におけるグラ
フによって表現される文書を検索する文書処理装置にお
いて、予め記述された単数又は複数の文書或いは単数又
は複数の文書部品に対応し、且つ、識別子が付与されて
いる1つ以上の構成子を有する構成子記述列から、指定
された第1の条件に適合する構成子に対応する識別子列
を取得する第1の識別子列取得手段と、該第1の識別子
列取得手段により得られた識別子列を保持する識別子列
保持手段と、該識別子列保持手段に保持されている識別
子列から、指定された第2の条件を満たす識別子列を取
得する第2の識別子列取得手段と、該第2の識別子列取
得手段により得られた識別子列を検査し、この結果が指
定された第3の条件に適合する場合は、当該識別子列に
対応する構成子群を有する前記予め記述された単数又は
複数の文書の文書名を出力する文書名出力手段とを具え
ている。
【0026】第7の発明は、第3の発明において、前記
構成子記述列取得手段により得られた前記構成子記述列
を、指定された条件に従って、前記予め記述された単数
又は複数の文書或いは単数又は複数の文書部品に対応す
る構成子記述列に挿入する構成子記述列挿入手段を更に
具えたことを特徴とする。
【0027】第8の発明は、第3の発明において、前記
構成子記述列取得手段により得られた構成子記述列を、
指定された変更指示情報に従って変更する構成子記述列
変更手段を更に具えたこと特徴とする。
【0028】第9の発明は、グラフ理論におけるグラフ
によって表現される文書に対する処理を行う文書処理装
置において、予め記述された単数又は複数の文書或いは
単数又は複数の文書部品に対応し、且つ、識別子が付与
されている1つ以上の構成子を有する構成子記述列か
ら、指定された第1の条件に適合する構成子に対応する
識別子列を取得する第1の識別子列取得手段と、該第1
の識別子列取得手段により得られた識別子列を保持する
識別子列保持手段と、該識別子列保持手段に保持されて
いる識別子列から、指定された第2の条件に適合する識
別子列を取得する第2の識別子列取得手段と、該第2の
識別子列取得手段により得られた識別子列に対応する構
成子記述列を、指定された変更指示情報に従って変更す
る構成子記述列変更手段と、該構成子記述列変更手段に
より得られた前記構成子記述列を、指定された条件に従
って、前記予め記述された単数又は複数の文書或いは単
数又は複数の文書部品の構成子記述列に挿入する構成子
記述列挿入手段とを具えている。
【0029】第10の発明は、グラフ理論におけるグラ
フによって表現される文書に対する処理を行う文書処理
装置において、予め記述された単数又は複数の文書或い
は単数又は複数の文書部品に対応し、且つ識別子が付与
されている1つ以上の構成子を有する構成子記述列か
ら、指定された第1の条件に適合する構成子に対応する
識別子列を取得する第1の識別子列取得手段と、該第1
の識別子列取得手段により得られた識別子列を保持する
識別子列保持手段と、該識別子列保持手段に保持されて
いる識別子列から、指定された第2の条件に適合する識
別子列を取得する第2の識別子列取得手段と、前記予め
記述された単数又は複数の文書の構成子記述列から、前
記第2の識別子列取得手段により得られた識別子列に対
応する構成子記述列を取得する構成子記述列取得手段
と、該構成子記述列取得手により得られた構成子記述列
を、指定された変更指示情報に従って変更する構成子記
述列変更手段と、該構成子記述列変更手段により得られ
た前記構成子記述列を、指定された条件に従って、前記
予め記述された単数又は複数の文書或いは単数又は複数
の文書部品の構成子記述列に挿入する構成子記述列挿入
手段とを具えている。
【0030】
【作用】第1の発明では、予め記述された単数又は複数
の文書或いは単数又は複数の文書部品に対応し、且つ、
識別子が付与されている1つ以上の構成子を有する構成
子記述列から、指定された第1の条件に適合する構成子
に対応する識別子列を取得し、この識別子列から、指定
された第2の条件に適合する識別子列を取得し、この第
2の条件に適合する識別子列に基づいて、前記予め記述
された単数又は複数の文書或いは単数又は複数の文書部
品に対応する構成子記述列に対する所定の処理を実行す
る。
【0031】第2の発明では、第1の発明において、前
記所定の処理をするに際し、前記第2の条件に適合する
識別子列に対応する構成子記述列を、前記予め記述され
た単数又は複数の文書或いは単数又は複数の文書部品に
対応する構成子記述列から取得する処理、前記第2の条
件に適合する識別子列に対応する構成子記述列を、指定
された条件に従って、前記予め記述された単数又は複数
の文書或いは単数又は複数の文書部品に対応する構成子
記述列に挿入する処理、前記第2の条件に適合する識別
子列に対応する構成子記述列を、指定された条件に従っ
て変更する処理、前記第2の条件に適合する識別子列を
検査し、この検査結果が指定された第3の条件に適合す
る場合のみに、前記予め記述された単数又は複数の文書
の文書名を出力する処理のうち、いずれかの処理又は複
数の処理を実行する。
【0032】第3の発明では、第1の識別子列取得手段
が、予め記述された単数又は複数の文書或いは単数又は
複数の文書部品に対応し、且つ識別子が付与されている
1つ以上の構成子を有する構成子記述列から、指定され
た第1の条件に適合する構成子に対応する識別子列を取
得し、更にこの識別子列を識別子列保持手段に格納す
る。第2の識別子列取得手段が、該識別子列保持手段に
保持されている識別子列中から、指定された第2の条件
に適合する識別子列を取得し、構成子記述列取得手段
が、この識別子列に対応する構成子記述列を、前記予め
記述された単数又は複数の文書或いは単数又は複数の文
書部品の構成子記述列から取得する。従って、指定され
た文書から条件に適合する文書部品を検索することがで
きる。
【0033】第4の発明では、第1の識別子列取得手段
が、予め記述された単数又は複数の文書或いは単数又は
複数の文書部品に対応し、且つ識別子が付与されている
1つ以上の構成子を有する構成子記述列から、指定され
た第1の条件に適合する構成子に対応する識別子列を取
得し、更にこの識別子列を識別子列保持手段に格納す
る。第2の識別子列取得手段が、該識別子列保持手段に
保持されている識別子列中から、指定された第2の条件
に適合する識別子列を取得し、構成子記述列挿入手段
が、この識別子列に対応する構成子記述列を、指定され
た条件に従って、前記予め記述された単数又は複数の文
書或いは単数又は複数の文書部品の構成子記述列に挿入
する。従って、ある文書中の文書部品を抽出し、これを
他の文書中に挿入することができる。
【0034】第5の発明では、第1の識別子列取得手段
が、予め記述された単数又は複数の文書或いは単数又は
複数の文書部品に対応し、且つ識別子が付与されている
1つ以上の構成子を有する構成子記述列から、指定され
た第1の条件に適合する構成子に対応する識別子列を取
得し、更にこの識別子列を識別子列保持手段に格納す
る。第2の識別子列取得手段が、該識別子列保持手段に
保持されている識別子列中から、指定された第2の条件
に適合する識別子列を取得し、構成子記述列変更手段
が、この識別子列に対応する構成子記述列を、指定され
た変更指示情報に従って変更する。従って、指定された
文書中の文書部品の属性を指定された属性値に変更する
ことができる。
【0035】第6の発明では、第1の識別子列取得手段
が、予め記述された単数又は複数の文書或いは単数又は
複数の文書部品に対応し、且つ識別子が付与されている
1つ以上の構成子を有する構成子記述列から、指定され
た第1の条件に適合する構成子に対応する識別子列を取
得し、更にこの識別子列を識別子列保持手段に格納す
る。第2の識別子列取得手段が、該識別子列保持手段に
保持されている識別子列中から、指定された第2の条件
に適合する識別子列を取得し、文書名出力手段が、この
識別子列を検査し、この結果が指定された第3の条件に
適合する場合は、当該識別子列に対応する構成子群を有
する前記予め記述された単数又は複数の文書の文書名を
出力する。従って、指定された条件に適合する文書の文
書名のみを得ることができる。
【0036】第7の発明では、第1の発明において、構
成子記述列挿入手段が、前記構成子記述列取得手段によ
り得られた構成子記述列を、指定された条件に従って、
前記予め記述された単数又は複数の文書或いは単数又は
複数の文書部品の構成子記述列に挿入する。従って、指
定された文書中から指定された条件に適合する文書部品
を検索し、この文書部品を他の文書中に挿入することが
できる。
【0037】第8の発明では、第1の発明において、構
成子記述列変更手段が、前記構成子記述列取得手段によ
り得られた構成子記述列を、指定された変更指示情報に
従って変更する。従って、指定された文書中から指定さ
れた条件に適合する文書部品を検索し、この文書部品の
属性を指定された属性値に変更することができる。
【0038】第9の発明では、第1の識別子列取得手段
が、予め記述された単数又は複数の文書或いは単数又は
複数の文書部品に対応し、且つ識別子が付与されている
1つ以上の構成子を有する構成子記述列から、指定され
た第1の条件に適合する構成子に対応する識別子列を取
得し、更にこの識別子列を識別子列保持手段に格納す
る。第2の識別子列取得手段が、該識別子列保持手段に
保持されている識別子列中から、指定された第2の条件
に適合する識別子列を取得し、構成子記述列変更手段
が、この識別子列に対応する構成子記述列を指定された
変更指示情報に従って変更し、更に構成子記述列挿入手
段が、この変更処理後の構成子記述列を、指定された条
件に従って、前記予め記述された単数又は複数の文書或
いは単数又は複数の文書部品の構成子記述列に挿入す
る。従って、指定された文書中から指定された条件に適
合する文書部品を検索し、該文書部品の属性を指定され
た属性値に変更することができる。
【0039】第10の発明では、第1の識別子列取得手
段が、予め記述された単数又は複数の文書或いは単数又
は複数の文書部品に対応し、且つ識別子が付与されてい
る1つ以上の構成子を有する構成子記述列から、指定さ
れた第1の条件に適合する構成子に対応する識別子列を
取得し、更に、この識別子列を識別子列保持手段に格納
する。第2の識別子列取得手段が、該識別子列保持手段
に保持されている識別子列から、指定された第2の条件
に適合する識別子列を取得し、構成子記述列取得手段
が、この識別子列に対応する構成子記述列を、前記予め
記述された単数又は複数の文書の構成子記述列から取得
し、構成子記述列変更手段が、この構成子記述列を指定
された変更指示情報に従って変更し、更に構成子記述列
挿入手段が、この変更処理後の構成子記述列を、指定さ
れた条件に従って、前記予め記述された単数又は複数の
文書或いは単数又は複数の文書部品の構成子記述列に挿
入する。従って、指定された文書中から指定された条件
に適合する文書部品を検索し、この文書文品の属性を指
定された属性値に変更し、更に、この文書部品を指定さ
れた文書中に挿入することができる。
【0040】
【実施例】以下、本発明の第1〜第5の実施例を添付図
面を参照して説明する。
【0041】第1の実施例を図1乃至図11を参照して
説明する。
【0042】図1は本発明に係る文書処理装置の第1の
実施例を機能ブロックで示したものである。
【0043】同図において、文書処理装置は、構成子記
述列保持部110と、識別子列保持部120と、第1の
識別子列取得部130と、第2の識別子列取得部140
と、構成子記述列取得部150とを有して構成されてい
る。
【0044】構成子記述列保持部110には構造化文書
である電子文書が単数又は複数格納されている。この文
書の論理構造はグラフ理論におけるグラフによって表現
することができるので、この実施例においては、グラフ
のノードを構成子と定義し、また構成子に対応する記述
を構成子記述と定義し、更に構成子を複数並べたものを
構成子記述列と定義すると、文書全体は、グラフの全て
のノードをそれぞれ表す構成子記述列によって表現され
る。テキストや図形など、文書の内容を持つ構成子を特
に内容部と呼ぶ。また、文書の部品(例えば、章、見出
し、図など)も、それを構成するノードを表す構成子記
述列によって表現される。
【0045】ここで、論理構造の構成子記述列の例を以
下に示す。 ここで、例えば で記述される様に「logical-object{ }」が構成子
であり、「object-identifier "3"」が識別子である。
【0046】なお上記の例では、5つの構成子で意味の
ある1つの構成子記述列が表現されている。また上記の
構成子記述列から、ある条件に従って、例えば任意の2
つの構成子が抽出された場合は、その2つの構成子で意
味のある1つの構成子記述列が表現されることとなる。
【0047】第1の識別子列取得部130では、構成子
レゾルバ131が、予め設定された第1の条件としての
条件情報132に基づいて、構成子記述列保持部110
内の構成子記述列群から、その条件に適合する構成子に
対応する識別子列を取得するものである。なお条件情報
132は構成子の検索条件を示す情報である。
【0048】識別子列保持部120は、第1の識別子列
取得部130により得られた識別子列を保持する。
【0049】第2の識別子列取得部140では、識別子
オペレータ141が、予め設定された第2の条件として
の条件情報142に基づいて、識別子列保持部120に
保持されている識別子列から、その条件に適合する識別
子列を取得する。なお条件情報142は1つ又は複数の
識別子を得るための条件を示す情報である。
【0050】識別子オペレータ141によって取得され
た識別子列は識別子列保持部120に保持される。なお
このとき、識別子列保持部120には、第1の識別子列
取得部130によって取得された識別子列と、第2の識
別子列取得部140によって取得された識別子列とは、
区別されるように保持される。
【0051】構成子記述列取得部150では、構成子ア
クセサ151が、構成子記述の取得条件を示す条件情報
152に基づいて、構成子記述列保持部110内の構成
子記述列群から該当する構成子記述列を取得する。ここ
では、構成子アクセサ151が、第2の識別子列取得部
140により得られた識別子列を識別子列保持部120
から得ると共に、この得た識別子列に対応する構成子記
述列を、構成子記述列保持部110内の構成子記述列群
から取得するようになっている。こうして取得された構
成子記述列は、既に保持されている他の構成子記述列と
区別できるように構成子記述列保持部110に保持さ
れ、さらに処理操作の対象にもなり得るものである。
【0052】なおこの実施例においては、第1の識別子
列取得部130、第2の識別子列取得部140、構成子
記述列取得部150は、それぞれの構成要素の機能を遂
行させるためのソフトウェア(プログラム)をプロセッ
サや中央処理装置などの制御手段が実行することにより
実現されている。ここでは、前記各構成要素をそれぞれ
独立したプログラム(コマンド)として実現し、構成子
記述列、識別子列を表すデータ構造を定め、コマンド間
で授受するようにしている。勿論、これを、1つのコマ
ンドに2つ以上の手段に相当する機能を持たせるように
しても良い。この場合は、そのコマンドの入出力のイン
タフェースは各手段を独立なコマンドとした場合のイン
タフェースに準ずるものとする。なおこの実施例で使用
したコマンドの一例については後述する。
【0053】上記各コマンドは、UNIXの汎用オペレ
ーティングシステムで動作するようになっている。ま
た、各コマンドは単純な機能のみを有するもので、実際
に文書処理を行うときには各コマンドが組合わされて使
用される。このとき、シェルと呼ばれるコマンドプロセ
ッサ(コマンドインタプリタ)の制御機能を使用して、
シェルスクリプトと呼ばれるコマンドプロシジャを作成
することにより、高度な処理を実現することができる。
あるコマンドの出力を他のコマンド入力とするには、パ
イプを使用したり、入出力切り替え(リダイレクショ
ン)により一時ファイルを生成して使用することができ
る。
【0054】例えば、パーソナルメディアから1987
年に発行された「落水浩一郎、大木敦男 共訳、UNIX C
SHELL フィールドガイド」(原本:「Gail Anderson
andPaul Anderson. The UNIX C Shell Field Guide)
の文献を参照することにより、シェルを実現することが
できる。
【0055】構成子記述列保持部110、識別子列保持
部120は、ファイルシステムとパイプ(キュー)を用
いて実現している。従ってこれらの構成要素は、格納時
に内容と名前を関連付ける機能と、名前で内容をアクセ
スする機能とを持っており、また内容が一度だけ用いら
れる場合は、パイプを用いて名前を使わずに一時的に保
持する機能を持っている。
【0056】図2は、第1に示した実施例の装置を実現
するためのハードウェア構成を示したものであり、例え
ば、ワークステーションやコンピュータなどの装置のブ
ロック図を示している。
【0057】同図において、装置は、入力装置210、
ディスプレイ220、ディスク230、主メモリ24
0、中央処理装置(以下、CPUという)250とがバ
ス260を介してそれぞれ接続されている。
【0058】入力装置210は、キーボード及びマウス
から構成されており、コマンドプロシジャなどの各種の
データの入力や、各種の指令を与えるものである。
【0059】ディスプレイ220は、文書の論理構造、
構成子記述列、文書内容、コマンドプロシジャを表示す
るものである。
【0060】ディスク230には、電子文書(ファイ
ル)つまり文書の論理構造や構成子記述列や文書内容、
この実施例の文書処理機能を有するコマンドインタプリ
タ(プログラム)、コマンドプロシジャ、各種データな
どが格納されている。
【0061】主メモリ240には、ディスク230から
ロードされた電子文書ファイル、コマンドインタプリ
タ、コマンドプロシジャ、各種データ、及び入力装置2
10によって入力されたコマンドプロシジャや各種デー
タや指令を記憶する。なお、この主メモリ240には、
CPU250がデータに対する操作を行うための作業領
域が設けられており、この作業領域中に、キュー(パイ
プ)が作成される。また主メモリ240に示されている
各データやプログラムの配置は、説明用のために配置し
たものであり、これらは、図示されているデータ構造で
配置されるものではない。
【0062】CPU250は、コマンドインタプリタを
ディスク230から主メモリ240にロードして実行す
ることにより、コマンドプロシジャに対する処理を行
う。すなわち、電子文書あるいは文書部品の検索、挿
入、合成、更新などの文書処理を行う。またCPU25
0は、バス260を介してこれに接続された各構成要素
を制御する。
【0063】コマンドの説明は、原則的にUNIXのオ
ンラインマニュアルの形式に従っている。従って、大括
弧([ ])で囲まれたものは、それが省略可能である
ことを示す。ここでは、縦棒(|)と中括弧({ })
を導入している。縦棒は、その両方のうちいずれかを選
択することを示し、中括弧は、その中の1つが必ず選ば
れることを示す。
【0064】次に、図1に示した機能ブロック図の構成
要素と図2に示したブロック図との対応関係について説
明する。
【0065】図1に示した構成子記述列保持部110及
び識別子保持部120はディスク230、主メモリ24
0に対応し、第1の識別子列取得部130、第2の識別
子列取得部140、構成子記述列取得部150はCPU
250(実際にはCPU250がコマンドインタプリタ
を実行して、コマンドを解釈することにより実現され
る)に対応している。
【0066】なお後述する第2〜第5の実施例の装置も
図2に示したハードウェア構成で実現されている。
【0067】次に、この実施例で使用するコマンドにつ
いて説明する。ここでは、以下のようにコマンド群のカ
テゴリ(範疇)を定義する。 [カテゴリ :機能説明] ◇構成子レゾルバ :構成子記述列から条件を満たす識
別子列を得る。 ◇識別子オペレータ:識別子列(の列)から条件を満た
す識別子列を得る。 ◇構成子アクセサ :識別子列と文書から構成子記述列
を得る。 ◇部品挿入 :文書に部品を挿入する。 ◇属性更新 :指定された構成子記述の属性値を
更新する。 ◇文書オペレータ :識別子列と文書名から条件を満た
す文書名を得る。 ◇文書レゾルバ :文書名の列から条件を満たす文書
名の列を得る。 ◇文書アクセサ :文書名から文書の内容を得る。 なお、図1に示した構成子レゾルバ131は上記コマン
ドの構成子レゾルバに相当し、図1に示した識別子オペ
レータ141は上記コマンドの識別子オペレータに相当
し、図1に示した構成子アクセサ151は上記コマンド
の構成子アクセサに相当する。
【0068】次に、カテゴリ毎に、カテゴリに属するコ
マンドの名前、形式、機能、オプションについて説明す
る。
【0069】◇構成子レゾルバ 構成子記述列と条件を入力として、条件を満たす構成子
の識別子列を得るコマンドである。条件としては、属性
と指定された数値との比較(=、≠、<、>、≦、
≧)、属性値と指定された文字列との辞書順比較や照合
などがあげられる。このカテゴリに属するコマンドの例
を2つ挙げる。
【0070】[名前]select-content :内容部を扱う
構成子レゾルバ [形式]select-content string [filename] [機能説明]filename(ファイル名)で指定された文書
ファイルから、stringで与えられた文字列が部分文字列
として現れる構成子(内容部)を求める。大文字・小文
字は区別されない(例えばstringとして“abc”が指
定されたとき、“ABC”という文字列とも一致す
る。)。filenameが与えられなかったときには、標準入
力(例えば端末。以下同様とする)から構成子記述列を
読み込む。
【0071】[名前]select-type :属性“uobject-
type”を扱う構成子レゾルバ [形式]select-type [-e]string[filename] [機能説明]filename(ファイル名)で指定された文書
ファイルから、属性“uobject-type”の値が与えられた
条件に適合する構成子の識別子を求め、標準出力(例え
ば端末。以下同様とする)に書き出す。filenameが与え
られなかったときには、標準入力から構成子記述列を読
み込む。-eオプションが指定されない場合は、属性“uo
bject-type”の値がstringで与えられた文字列と完全に
一致するものを求める。なお大文字・小文字は区別され
ない。 [オプション]−e :stringが属性“uobject-type”
の値の部分文字列として出現する構成子を求める。
【0072】◇識別子オペレータ 識別子列と条件を入力として、指定された属性の値が条
件を満たすような構成子の識別子を列挙するコマンドで
ある。
【0073】このカテゴリに属するコマンドの例を、4
つ挙げる。
【0074】[名前]above [形式]above [filename] [機能説明]filename(ファイル名)で指定された2つ
の識別子列を読み、最初の識別子列に含まれる識別子の
うち、2番目の識別子列に含まれるいずれかの識別子の
祖先になっている識別子を選択し、標準出力に書き出
す。filenameが省略された場合には、標準入力から識別
子列を読み込む。
【0075】[名前]below [形式]below [filename] [機能説明]filename(ファイル名)で指定された2つ
の識別子列を読み、最初の識別子列に含まれる識別子の
うち、2番目の識別子列に含まれるいずれかの識別子の
子孫になっている識別子を選択し、標準出力に書き出
す。filenameが省略された場合には、標準入力から識別
子列を読み込む。
【0076】[名前]bottom [形式]bottom[filename] [機能説明]filename(ファイル名)で指定された識別
子列ファイルから、他の識別子の先祖になっていない識
別子だけを選び出して標準出力に書き出す。filenameが
指定されなければ、標準入力から識別子列を読み込む。
例えば入力として、<31> <312> <3123
> <313> <333>が与えられると(上記例で
は5つの識別子からなる1つの識別子列)、出力とし
て、<3123> <313> <333>が得られる
(1つの識別子列)。
【0077】[名前]union [形式]union [filename] [機能説明]filename(ファイル名)で指定されたファ
イルに含まれる2つの識別子列から和集合を求め、標準
出力する。filenameが指定されなければ、標準入力から
識別子列を読み込む。例えば入力として、<31> <
3123> <333>と<312> <3123>
<333>の2つの識別子列が与えられると(上記例で
は、3つの識別子列からなる1つの識別子列と、3つの
識別子列からなる1つの識別子列とからなる複数の識別
子列)、出力として、<31> <312> <312
3> <333>が得られる(1つの識別子列)。
【0078】なおこのunionコマンドの様に、2つ
の識別子列(集合)を入力として、集合演算を行う他の
例としては、次のようなコマンドがある。 (a)intersection:2つの識別子列(集合)を入力と
して共通集合を求める。 (b)differrence :2つの識別子列(集合)を入力と
して差集合を求める。 (c)unique:識別子列を入力として、識別子の集合を
求める(重複しないようにする)。 などがある。
【0079】◇構成子アクセサ 構成子記述列と識別子と条件を入力として、条件を満た
す構成子記述列を得るコマンドである。条件として、識
別子オペレータの項で説明した接続情報を用いることが
できる。条件が与えられなければ、識別子列中の各識別
子に対応する構成子の構成子記述を取り出す。
【0080】このカテゴリのコマンドの例を1つ挙げ
る。
【0081】[名前]extract [形式]extract [-s]id-file filename [機能説明]id-file (識別子列ファイル)で指定され
た文書ファイルから、id-file で指定された識別子列に
対応する構成子記述を求める。id-file として“−”が
与えられたときには、標準入力から識別子を読み込む。
filename(ファイル名)として“−”が与えられたとき
には、標準入力から構成子記述列を読み込む。id-file
とfilenameの両方に“−”を与えることはできない。 [オプション]−s :指定された識別子を持つ構成子
を頂点とする部分木の構成子記述列を取り出す。
【0082】◇部品挿入 挿入箇所を示す識別子と、文書部品ファイル(構成子記
述列)と、文書ファイル(構成子記述列)とを入力し
て、文書ファイルに部品を挿入するコマンドである。部
品を挿入したときには、識別子が文書内で一意になるよ
うに、必要に応じて識別子の再割り当てを行う。
【0083】このカテゴリに属するコマンドの例を1つ
挙げる。
【0084】[名前]insert [形式] insert {-ec |-yc |-eb |-yb}[-q]{-p id| id-filename} part-filename doc-filename [機能説明]構成子記述列を、文書中の指定された挿入
位置に挿入して、標準出力に書き出す。構成子記述列と
文書ファイルはそれぞれ、part-filename 、doc-filena
meで指定したファイルから読み込まれる。挿入位置は、
識別子ファイルid-filename の先頭か、−pオプション
で指定された識別子を基準に、他のオプションによって
決定される。part-filename 、doc-filename、id-filen
ame のうちいずれかに“−”を指定したときは、それを
標準入力から読み込む。“−”を複数回指定することは
できない。出力中の構成子記述の識別子は、Dewey
の10進分類法(Donald E.Knuth, “The Art of Progr
amming”, Addison-Wesley Publishing Company,1973。
邦訳:筧捷彦・米田信夫共訳、“基本算法/情報構
造”, サイエンス社,1987年)に従うよう振り直さ
れる。 [オプション] −ec :指定された識別子を持つ構成子の最初の子供に
なるように挿入する(eldest child)。 −yc :指定された識別子を持つ構成子の最後の子供に
なるように挿入する(youngest child)。 −eb :指定された識別子を持つ構成子の兄になるよに
挿入する(elder brother )。 −yb :指定された識別子を持つ構成子の弟になるよう
に挿入する(younger brother )。 −p id :構成子記述列を挿入するノードの識別子を
指定する。例えば、−p“301”のように指定する。
【0085】◇属性更新 構成子記述列と識別子列と変更指示を入力として、指示
に従って属性の更新を行うコマンドである。識別子が与
えられない場合には、全構成子記述の属性の更新を行
う。
【0086】このカテゴリに属するコマンドの例を1つ
挙げる。
【0087】[名前]chval [形式] chval {-n|-t} old new {id-file |-} doc-file [機能説明]doc-file(文書ファイル)中の構成子記述
列のうち、id-file (識別子列ファイル)の識別子列に
対応する構成子の属性値に含まれる文字列old を文字列
new で置換する。id-file の代わりに、“−”が与えら
れたときには、標準入力から識別子列を読み込む。id-f
ile に識別子が全く含まれていないときには、doc-file
のすべての構成子を操作対象とする。 [オプション] −n :属性 "user visible name"を操作対象とする。 −t :属性 "uobject type" を操作対象とする。
【0088】◇文書オペレータ 識別子列と文書名と条件を入力とし、文書名を得るオペ
レータである。与えられた条件が満たされればその文書
名を出力し、そうでなければ何も出力しない。このカテ
ゴリに属するコマンドの例を1つ挙げる。
【0089】[名前]id−doc [形式] id-doc {-gt |-lt |-ge |-le |-eq |-ne} num{id-file |-} doc-file [機能説明]id-file (識別子列ファイル)で指定され
たファイルに含まれる識別子の数が、与えられた条件を
満たすときdoc-file(文書ファイル)を出力する。id-f
ile の代わりに“−”が与えられたときは、標準入力か
ら識別子列を読み込む。 [オプション] −gt num :id-file に含まれる識別子の数がnum より
大きいときに真。 −lt num :id-file に含まれる識別子の数がnum より
小さいときに真。 −ge num :id-file に含まれる識別子の数がnum 以上
のときに真。 −le num :id-file に含まれる識別子の数がnum 以下
のときに真。 −eq num :id-file に含まれる識別子の数がnum と等
しいときに真。 −ne num :id-file に含まれる識別子の数がnum と等
しくないときに真。
【0090】◇文書レゾルバ 文書名列と条件を入力として、条件を満たす文書名列を
得るコマンドである。このカテゴリに属するコマンド
は、指定された属性の値が条件を満たすような文書の名
前を列挙する。条件としては、属性と指定された数値の
比較(=、≠、<、>、≦、≧)、属性値と指定された
文字列の辞書順比較や照合などがあげられるる。例え
ば、文書名、著者、キーワードに特定の文字列を含む文
書の列挙、ページ数が指定された値以上(あるいは以
下)の文書の列挙、を行うコマンドがある。
【0091】◇文書アクセサ 文書名を引数として文書の内容である構成子記述列を得
るコマンドである。例えば、指定された文書ファイルの
内容を標準出力に書き出すコマンドがある。なおこのカ
テゴリのコマンドの機能は、ファイルシステムに持たせ
ても良い。
【0092】ところで、接続関係に基づく識別子オペレ
ータの例としては、指定された識別子に対応する構成子
との距離が指定された値以下である構成子の識別子を列
挙すコマンドがある。例えば、図3に示すようなネット
ワーク構造において、ノード1との距離が1以下のノー
ドは{1,2}である。なお4つの図形“○”はノード
を表している。
【0093】接続関係に基づく演算を行うコマンドの実
現方法について述べる。
【0094】簡単のため、入力となる各構成子記述に対
しては、構成子に文書内で一意な識別子があらかじめ付
与されているものとする。
【0095】データ構造としては、識別子を添数とする
隣接行列を用いる。識別子は自然数とあるとし、論理構
造がなすグラフがストリクトであるとすれば、n個の構
成子記述に対して、隣接行列として以下の様なn次の正
方行列A=aij(1≦i、j≦n)を用意することに
より、隣接情報を得ることができる。
【0096】ここにストリクトとはループと多重弧が存
在しないこと。ここで、ループとはあるノードからそれ
自身へのアークであり、多重弧とはあるノードから他の
特定のノードに至る複数のアークである。
【0097】 例えば、A1 (=A)、A2 (=A・A)、…A
ら、それぞれあるノードから1、2、…、n回リンクを
辿って到達できるノードを求めることができる。 リンクをn以下の回数だけ辿ったときに到達可能なノー
ドを求めることができる。
【0098】ところで、図3に示すようなネットワーク
であれば、隣接行列Aは、 となる。このとき、 である。
【0099】Aで定義されるグラフは、DAG(direct
ed acyclic graph)であるので、 となる。
【0100】C=cij(0≦i,j≦n)の成分c
ijは、ノードiからノードjに至る経路の総数を表
す。
【0101】このような接続情報に関する性質を用い
て、識別子と条件を入力として、識別子列を出力するコ
マンドを実現することができる。
【0102】一般に構造化文書の論理構造は木構造で表
されるが、木構造は接続に制限を設けた特殊なネットワ
ーク構造であるので、上述した隣接行列を用いて親子関
係などの子孫関係を求めることができる。従って、本実
施例により、構造化文書もネットワーク構造で表現され
る文書と全く同様に操作することができる。
【0103】構成子記述がテキストで表現されている場
合には、本実施例に組み合わせて、UNIXの標準コマ
ンドsed、awkといった汎用のテキスト操作ツール
(あるいは言語)を用いることができる。
【0104】オブジェクト指向データベースでは、オブ
ジェクトに対して内部的に一意な識別子を割り当ててい
る。従って、オブジェクト指向データベースにおいて
も、識別子の内部表現に自然数が1対1に対応するよう
にすれば、隣接行列を用いることにより、識別子と条件
を入力して識別子列を出力するようなプログラムを作成
することができる。
【0105】次に、図4に示すような木構造によって表
現される文書を処理対象とする場合について説明する。
【0106】ここでは、木構造の各ノードにアドレスを
割り当て、アドレスの集合に対する演算を定義し、その
演算を行うコマンドの実現方法を説明する。また、構成
子アクセサでの処理において、アドレスの集合に対する
演算に基づいてアクセスする方法も説明する。
【0107】図5に示すように、図4に示す木構造の各
ノードにDeweyの10進分類法によってアドレスを
割り当てる。アドレスは数値の並びである。
【0108】このようにして与えられたアドレスから、
ただちに接続関係を得ることができる。アドレスadd
rの長さをlength(addr)、アドレスaddrの先頭の
len桁をhd(addr,len)で表すことにする
と、アドレスaに対応するオブジェクトがアドレスbに
対応するオブジェクトの先祖であるための必要十分条件
は、a=hd(b,length(a))である。
【0109】例えば、a=〈12〉,b=〈1212〉
とすれば、 hd(b,length(a))=hd(〈1212〉,2)=〈12〉=a である。
【0110】2つのアドレスを引数とする関数lubを
次のように定義する。 lub(a,b) =hd(a,max{i|hd(a,i)=hd(b,i)}) lub(a,b)はアドレスa,bに対応するオブジェ
クトの共通の祖先のうち、もっとも若いもののアドレス
である。
【0111】この関数は図6に示すような処理手順によ
り、プログラムとして実現することができる。
【0112】第2の識別子列取得部は、アドレスa、b
を入力し(ステップ601)、iを値「1」と定義する
(ステップ602)。次に、a(i)=b(i)の式が
成立するか否かを判断し(ステップ603)、成立する
場合は、a(i)をprint(つまり出力)し(ステ
ップ604)、iをi+1と再定義する(ステップ60
5)。その後、a(i)=b(i)の式が成立するか否
かを判断し(ステップ606)、成立する場合は上記ス
テップ604に戻りこのステップ以降を実行し、不成立
の場合は、リターンする。ステップ603で式が不成立
の場合はリターンする。
【0113】次に関数lubを用いて、述語anc、d
escを定義する。 すなわち、anc(a,b)はaがbの祖先であるか等
しいとき、かつそのときに限り真、desc(a,b)
はaがbの子孫であるか等しいとき、かつそのときに限
り真である。
【0114】また述語anc、descを用いて、集合
演算above、bellowを定義する。 above(A,B)を求めることは、Aの要素のうち
Bのどれかの祖先であるか等しいものを選択する操作に
等しい。below(A,B)を求めることは、Aの要
素のうちBのどれかの子孫であるか等しいものを選択す
る操作に等しい。
【0115】更に、述語anc、descを用いて、集
合演算top、bottomを定義する。 top(A)を求めることは、Aの要素のうち他の要素
の子孫になっていないものだけを選択する操作に等し
い。bottom(A)を求めることは、Aの要素のうち他の
要素の先祖になっていないものだけを選択する操作に等
しい。
【0116】同様にして述語mother、daughterを定義
し、これらを用いて集合演算parent、child を定義でき
る。 parent(A,B)を求めることは、Aの要素のうちBの
どれかの親であるか等しいものを選択する操作に等し
い。child (A,B)を求めることは、Aの要素のうち
Bのどれかの子であるか等しいものを選択する操作に等
しい。
【0117】図4に示す木構造に、行きがけ順(preord
er)に番号を振ったものを図7に示す。構造化文書の論
理構造においては、ほとんどの場合、行きがけ順に従っ
てレイアウトされるので、この順番は特別な意味を持
つ。例えば図4の論理構造は、通常、第1章、1.1
節、1.2節、1.3節、第2章、2.1節、2.2
節、2.2.1節、2.2.2節、2.2.3節、の順
にレイアウトされる。
【0118】図4に示す木構造の各ノードのアドレスを
行きかけ順に並べると、〈1〉、〈11〉、〈11
1〉、〈112〉、〈113〉、〈12〉、〈12
1〉、〈122〉、〈1221〉、〈1222〉、〈1
23〉となる。
【0119】2つのアドレスのうち行きがけ順でどちら
が先にあるかをアドレスが持つ情報だけから判定するこ
とができる。アドレスaddrのi番目の要素をadd
で表すことにする。i>len(addr)のとき
には、addr=0と定める。
【0120】ここで述語predを次のように定義す
る。 pred(a,b)は、a、bのうち行きがけ順で先に
表されるものを求める関数である。
【0121】同様に、述語succを次のように定義す
る。 succ(a,b)はa,bのうち行きがけ順で後に表
されるものを求める関数である。
【0122】そして述語pred、succを用いて、
集合演算head、tailを定義する。 head(A,B)を求めることは、Aの要素のうちB
のどれかに等しいか、行きがけ順でそれよりも早く出現
するものを選択する操作にひとしい。tail(A,
B)を求めることは、Aの要素のうちBのどれかに等し
いか、行きがけ順でそれよりも後に出現するものを選択
する操作に等しい。
【0123】上述の様に、接続関係(木構造における子
孫関係、行きがけ順での順序関係)に基づく演算が定義
でき、それに従って処理を行う識別子オペレータを実現
することができる。
【0124】いま、Tを与えられた木構造に属する構成
子の識別子の全体として、 T\below(T,A)はAの各要素を頂点とする部
分木を、もとの木構造から除去する操作に等しい。この
ような操作を行う構成子アクセサを実現することができ
る。
【0125】次に第1の実施例の処理動作について、図
8乃至図11を参照して説明する。なお、図8は全体の
処理の流れを示すメインルーチンを示し、図9はその処
理において実行されるスクリプトの実行処理を示すサブ
ルーチンを示し、図10はそのスクリプトの実行処理に
おいて実行される基本単位の処理を示すサブルーチンを
示し、図11はその実行単位の処理において実行される
基本実行単位の処理を示すサブルーチンを示している。
【0126】ここで、実行単位と基本実行単位を次の様
に定義する。
【0127】a,b,c、…,zをコマンドとする。単
独のコマンドは基本実行単位である。コマンドとその引
数も基本実行単位である。コマンド(とその引数)の入
力、出力の一方あるいは両方をリダイレクト(切り替
え)したものも基本実行単位である。基本実行単位は実
行単位である。コマンドをセミコロンで繋いもの、例え
ば、 a;b は個々のコマンドがそれぞれ1つの基本実行単位であ
る。つまり、上記の例では、a,bの2つの基本実行単
位がある。コマンドをパイプでつないだもの、例えば、 a|b は、全体で1つの実行単位である。実行単位を対になっ
た丸括弧でくくったもの、例えば、 (a;b) は、1つの基本実行単位である。より複雑な例として、 (a;b)|c を考えると、これ全体で1つの実行単位である。
【0128】さて全体の処理の流れについて説明する。
図8に示すように、シェル(コマンドインタプリタ)
は、スクリプトの実行か否かを判断し(ステップ80
1)、スクリプトの実行の場合には、そのスクリプトを
実行する(ステップ802)。
【0129】一方、ステップ801においてスクリプト
の実行でない場合は、スクリプトを実行単位に分割し
(ステップ803)、未実行の実行単位が存在するか否
かを判断する(ステップ804)。ここで、未実行の実
行単位が存在する場合は、最も左の実行単位を取り出し
(ステップ805)、この実行単位を処理し(ステップ
806)、その後、未実行の実行単位が存在するか否か
を判断する(ステップ807)。ここで、未実行の実行
単位が存在する場合は、上記ステップ805に戻りこの
ステップ以降を実行する。
【0130】なお、ステップ804、807において、
未実行の実行単位が存在しない場合はリターンする。
【0131】次に、スクリプトの実行処理について説明
する。
【0132】図9に示すように、シェルは、ファイルの
終りであるかを判断し(ステップ901)、ファイルの
終りでない場合はバッファをクリアし(ステップ90
2)、スクリプト中の1行を読み込んで、バッファに追
加(格納)すると共に(ステップ903)、その読み込
んだ行の最後のトークンが“\”であるか否かを判断す
る(ステップ904)。
【0133】ステップ904において、“\”の場合は
上記ステップ903に戻りこのステップ以降を実行し、
反対に、“\”でない場合は変数を展開すると共に(ス
テップ905)、スクリプトを実行単位に分割し(ステ
ップ906)、更に未実行の実行単位は存在するか否か
を判断する(ステップ907)。
【0134】ステップ907において、未実行の実行単
位が存在する場合は、最も左の実行単位を取り出し(ス
テップ908)、該実行単位を処理し(ステップ90
9)、未実行の実行単位はあるか否かを判断する(ステ
ップ910)。
【0135】ステップ910において、未実行の実行単
位が存在する場合は上記ステップ908に戻りこのステ
ップ以降を実行し、反対に未実行の実行単位が存在しな
い場合はファイルの終りであるかを判断する(ステップ
911)。
【0136】なおステップ907において未実行の実行
単位が存在しない場合はステップ911に進む。
【0137】ステップ911において、ファイルの終り
でない場合は上記ステップ902に戻りこのステップ以
降を実行する。ステップ911、ステップ901におい
てファイルの終りの場合は処理を終了し、図8のステッ
プ802にリターンする。
【0138】次に、実行単位の処理について説明する。
【0139】図10に示すように、シェルは、実行単位
を基本実行単位に分割し(ステップ1001)、パイ
プ、リダイレクションの処理を行う(ステップ100
2)。
【0140】次に未実行の基本実行単位が存在するか否
かを判断し(ステップ1003)、未実行の基本実行単
位がある場合は、最も左の基本実行単位を取り出し(ス
テップ1004)、この基本実行単位の処理を実行し
(ステップ1005)、その後、未実行の基本実行単位
が存在する否かを判断する(ステップ1006)。
【0141】ステップ1006において、未実行の基本
実行単位が存在する場合は、上記ステップ1004に戻
りこのステップ以降を実行する。なおステップ1006
及びステップ1003において、未実行の基本実行単位
が存在しない場合は、処理を終了し、リターンする。こ
こで、この実行単位の処理が、スクリプトの実行処理の
サブルーチンとして実行されたときは図8のステップ8
02にリターンし、コマンドの実行処理のサブルーチン
として実行されたときは図9のステップ909にリター
ンする。
【0142】次に、基本実行単位の処理について説明す
る。
【0143】図11に示すように、シェルは、該当する
基本実行単位における最も左のトークンが“(”である
か否かを判断し(ステップ1101)、“(”である場
合は基本実行単位から左右の丸括弧を除去した文字列を
引数として、サブシェルを起動し(ステップ110
2)、一方、“(”でない場合はコマンドを起動する
(ステップ1103)。ステップ1102において、サ
ブシェルが起動されると、このサプシェルによって、図
8〜図11に示される処理手順が実行される(つまり図
8〜図11に示される処理が再帰的に実行される)。
【0144】ステップ1102、1103が終了した場
合は、図10のステップ1005にリターンする。
【0145】なお、スクリプトの実行には既存のシェル
を用いることができる。
【0146】ここで、図12、図13に示される様な、
処理対象となる文書を用いて文書処理を説明する。
【0147】なお図12は図の論理構造を示したもので
あり、図13は章の論理構造を示したものであり、これ
ら各図において、矩形内に示されている文字列が属性
“uobject-type”の値として構成子に指定されているも
のとする。
【0148】また図12に示した論理構造では、図は、
グラフィックスとオプショナルな図見出しからなってい
る。“Figure”と記述された構成子が、図を表す論理構
造の根である。また"Raster Graphics" と記述された構
成子がグラフィックスを含む内容部である。また“Capt
ion Number”と記述された構成子が、図見出し番号を持
つ内容部である。更に“Caption Number”と記述された
構成子が、図見出しのテキストを持つ内容部である。
【0149】更に図13に示した論理構造では、章(或
いは節)は、見出し、段落の繰り返し、オプショナルな
部分節からなっている。従って、章(あるいは節)は入
れ子になって良い。“Numbered Segment”と記述された
構成子が、章(節)を表す論理構造の根である。"Titl
e" と記述された構成子が見出しを表す部分木の根であ
る。“Title Number”と記述された構成子が、章(節)
見出し番号をもつ内容部である。“Title Text”と記述
された構成子が、章(節)見出しのテキストを持つ内容
部である。
【0150】次に、実際に処理を行うためのコマンドの
仕様例、及びそのコマンドを用いたスクリプト(コマン
ドプロシジャ)の例を以下に示す。すなわちBourneシェ
ルのスクリプトである(Bourneシェルの仕様については
UNIXのオンラインマニュアルを参照)。
【0151】セミコロンで区切られたコマンドは順次実
行される。丸括弧(すなわち“(”や“)”である)で
囲まれたコマンドの列はサブシェルで実行され、あたか
も単独のコマンドであるかの様に扱われる。行末のバッ
クスラッシュは、次の行が継続行であることを示す。
【0152】$1、$2などは、スクリプトに与えられ
た引数を参照するための変数(positional parameter)
てある(具体的には文書名つまりファイル名である)。
例えばスクリプト名がfooであるとして、コマンドラ
インから % foo who are you と入力したとすると、$1はwho、$2はare、$
3はyouである。
【0153】◇[スクリプト例1] #!/bin/sh (select-type -e Figure $1; select-type -e Title $1) |union |\ extract -s - $1 このスクリプトは指定された文書の図と見出しを検索す
る例である。引数は検索対象となる文書名である。複数
の引数が与えられた場合、2つ目以降の引数は無視され
る。
【0154】最初のselect-type コマンドの実行によ
り、指定されたファイル中の構成子記述列のうち、属性
“uobject-type”の値が“Figure”を含む構成子(すな
わち図を表す部分木の根)の識別子列が求められる。同
様に、2番目のselect-type コマンドの実行により、属
性“uobject-type”の値が"Title" を含む構成子(すな
わち見出しの部分木の根)の識別子列が求められる。un
ion コマンドの実行により、最初のselect-type コマン
ドの実行と2番目のselect-type コマンドの実行とによ
って得られた2つの識別子列(集合)の和集合が得られ
る。最後にextract コマンドの実行により、union コマ
ンドの実行により得られた識別子列に含まれる識別子を
持つ構成子を頂点とする部分木の構成子記述列がファイ
ルから抜き出される。
【0155】上述したように第1の実施例によれば、指
定された構造化文書から条件に適合する文書部品を検索
することができる。
【0156】次に本発明の第2の実施例を図14を参照
して説明する。
【0157】図14は本発明に係る文書処理装置の第2
の実施例を機能ブロック図で示したものである。この機
能ブロック図は、図1に示した第1の実施例の機能ブロ
ック図の構成において、構成子記述列取得部150を削
除し、構成子記述列挿入部1200を追加した構成にな
っている。なお同図において、図1に示した構成要素と
同様の機能を果たす部分には同一の符号を付している。
【0158】構成子記述列挿入部1200では、部品挿
入部1210が、第2の識別子列取得部140により得
られた識別子列に対応する構成子記述列を、指定された
条件としての条件情報1220に従って、構成子記述列
保持部110に保持されている構成子記述列群に挿入す
る。なお条件情報1220は文書部品を挿入するための
条件を示す情報である。部品挿入部1210による挿入
処理後の構成子記述列は、既に保持されている他の構成
子記述列と区別できるように構成子記述列保持部110
に保持され、さらに処理操作の対象にもなり得るもので
ある。
【0159】この第2の実施例においても、構成子記述
列挿入部1200は、この構成要素の機能を遂行させる
ためのソフトウェア(プログラム)を制御手段が実行す
ることにより実現される。従って、部品挿入部1210
は上述した部品挿入のコマンド(つまりinsertコ
マンド)に相当する。
【0160】なおこの第2の実施例では、第2の識別子
列取得部140の識別子オペレータ141は上述したb
ottomコマンドに相当するように設定されている。
またスクリプトを実行するシェルの処理は、上記第1の
実施例の図8乃至図11で説明した処理と同様である。
【0161】次に、実際に処理を行うためのコマンドの
仕様例、及びそのコマンドを用いたスクリプトの例を以
下に示す。
【0162】◇[スクリプト例2] このスクリプトは、部品として挿入されるファイル(以
下、部品ファイルという)中の構成子記述子列を他のフ
ァイル(以下、文書ファイルという)中の構成子記述列
に含まれる最下位の節のうち先頭にあるものの末子にな
るように挿入される例である。
【0163】このスクリプトの第1引数は部品として挿
入される部品ファイル、第2引数は部品が挿入される文
書ファイルである。3個以上の引数が与えられた場合、
3つ目以降の引数は無視される。
【0164】select-type コマンドの実行により、文書
ファイルの構成子のうち、属性“uobject-type”の値
が"Segment" を含む構成子(すなわち節を表す部分木の
根)の識別子列が求められる。次に、bottomコマンドの
実行により、select-type コマンドの実行により得られ
た識別子列のうち最下位にある構成子の識別子列だけが
得られる。bottomコマンドの実行による出力は、作業用
のファイルpid に格納される。最後に、insertコマンド
の実行により、部品ファイルの構成子記述列が、文書フ
ァイルに挿入される。挿入位置は、ファイルpid 中の先
頭の識別子に対応する構成子の末子である。
【0165】上述した様に第2の実施例によれば、ある
構造化文書中の文書部品を抽出し、この文書部品を他の
構造化文書中に挿入することができる。
【0166】次に本発明の第3の実施例を図15を参照
して説明する。
【0167】図15は本発明に係る文書処理装置の第3
の実施例を機能ブロック図で示したものである。この機
能ブロック図は、図1に示した第1の実施例の機能ブロ
ック図の構成において、構成子記述列取得部150を削
除し、構成子記述列変更部1300を追加した構成にな
っている。なお同図において、図1に示した構成要素と
同様の機能を果たす部分には同一の符号を付している。
【0168】構成子記述列変更部1300では、部品変
更部1310が、第2の識別子列取得部140により得
られた識別子列に対応する構成子記述列を、文書部品の
属性を変更するための条件を示す情報である指定された
変更指示情報1320に従って変更する。この結果であ
る変更処理後の構成子記述列は、既に保持されている他
の構成子記述列と区別できるように構成子記述列保持部
110に保持され、さらに処理操作の対象にもなり得る
ものである。
【0169】この第3の実施例においても、構成子記述
列変更部1300は、この構成要素の機能を遂行させる
ためのソフトウェア(プログラム)を制御手段が実行す
ることにより実現される。従って、部品変更部1310
は上述した部品変更のコマンド(つまりchvalコマ
ンド)に相当する。
【0170】なおこの第3の実施例では、第1の識別子
列取得部130の構成子レゾルバ141は上述したse
lect−typeコマンドに相当し、第2の識別子列
取得部140の識別子オペレータ141は上述したun
ionコマンドに相当するように設定されている。また
スクリプトを実行するシェルの処理は、上記第1の実施
例の図8乃至図11で説明した処理と同様である。
【0171】次に、実際に処理を行うためのコマンドの
仕様例、及びそのコマンドを用いたスクリプトの例を以
下に示す。
【0172】◇[スクリプト例3] #!/bin/sh (select-type -e Figure $1 ;select-type -e Segment $1)|union |\ chval -n Patent 特許 - $1 > $1.$$ mv $1.$$ $1 このスクリプトは、指定された文書の図或いは節を表す
部分木の根の属性"user visible name" に現れる文字列
“Patent”を“特許”に変更する例である。
【0173】変数$$は、このスクリプトが実行されたと
きの/bin/sh のプロセス番号に展開される。
【0174】2つのselect-type コマンドは、第1の実
施例のスクリプト例1におけるselect-type コマンドと
同様の目的で用いられる。union コマンドの実行によ
り、2つのselect-type コマンドそれぞれの実行結果で
ある識別子列の和集合が求められる。chval コマンドの
実行により、union コマンドの実行によって得られた識
別子列で指定された構成子記述列の属性"user visible
name" に含まれる文字列“Patent”が“特許”に置換さ
れる。chval コマンドの実行結果である構成子記述列
は、作業用ファイルに格納される。最後に、UNIXの
標準コマンドmvの実行によって、作業用ファイルの名前
をもとの文書の名前に付け換えられる。
【0175】上述したように第3の実施例によれば、指
定された構造化文書中の文書部品の属性を指定された属
性値に変更することができる。
【0176】次に本発明の第4の実施例を図16を参照
して説明する。
【0177】図16は本発明に係る文書処理装置の第4
の実施例を機能ブロック図で示したものである。この機
能ブロック図は、図1に示した第1の実施例の機能ブロ
ック図の構成において、構成子記述列取得部150を削
除し、文書名出力部1400を追加した構成になってい
る。なお同図において、図1に示した構成要素と同様の
機能を果たす部分には同一の符号を付している。
【0178】文書名出力部1400では、文書オペレー
タ1410が、第2の識別子列取得部140により得ら
れた識別子列の識別子数を検査し、この結果が指定され
た第3の条件としての条件情報1420に適合する場合
は、予め記述された文書の文書名を出力する。なお条件
情報1420文書名を取得するための条件を示す情報で
ある。
【0179】この第4の実施例においても、文書名出力
部1400は、この構成要素の機能を遂行させるための
ソフトウェア(プログラム)を制御手段が実行すること
により実現される。従って、文書オペレータ1410は
上述した文書オペレータのコマンド(つまりid−do
c)に相当する。
【0180】なおこの第4の実施例では、第1の識別子
列取得部130の構成子レゾルバ141は上述したse
lect−typeコマンドに相当し、第2の識別子列
取得部140の識別子オペレータ141は上述したun
ionコマンドに相当するように設定されている。また
スクリプトを実行するシェルの処理は、上記第1の実施
例の図8乃至図11で説明した処理と同様である。
【0181】次に、実際に処理を行うためのコマンドの
仕様例、及びそのコマンドを用いたスクリプトの例を以
下に示す。
【0182】◇[スクリプト例4] #!/bin/sh (select-type -e Figure $1 ; select-type -e Segment $1) |union |\ id-doc -gt 10 $1 このスクリプトは、与えられた文書にある図と節の数を
調べ、図と節が計10個以上あったときには、与えられ
た文書の名前を出力するものである。条件を満たさない
ときには、何も出力しない。
【0183】select-type コマンドとunion コマンド
は、第3の実施例のスクリプト例3におけるselect-typ
e コマンド及びunion コマンドと同様の目的で用いられ
る。id-docコマンドの実行により、union コマンドの実
行によって得られた識別子の数を検査し、この検査結果
が10よりも多い場合は、与えられた文書名が標準出力
に書き出される。
【0184】上述したように第4の実施例によれば、指
定された条件に適合する構造化文書の文書名のみを得る
ことができる。
【0185】次に本発明の第5の実施例を図17を参照
して説明する。
【0186】図17は、本発明に係る文書処理装置の第
5の実施例を機能ブロック図で示したものである。この
機能ブロック図は、第1〜第4の実施例の機能ブロック
図を合成した構成になっている。すなわち、図1に示し
た第1の実施例の構成に、図14に示した第2の実施例
の機能ブロック図の構成子記述列挿入部1200、図1
5に示した第3の実施例の機能ブロック図の構成子記述
列変更部1300、図16に示した第4の実施例の機能
ブロック図の文書名出力部1400を追加した構成にな
っている。
【0187】なおこの第5の実施例では、スクリプトを
実行するシェルの処理は、上記第1の実施例の図8乃至
図11で説明した処理と同様である。
【0188】次に、実際に処理を行うためのコマンドの
仕様例、及びそのコマンドを用いたスクリプトの例を以
下に示す。
【0189】◇[スクリプト例5] #!/bin/sh select-type -e Segment $2 | bottom > pid select-type -e Figure $1 | extract -s - $1 |\ insert -yc pid - $2 このスクリプトは、二つの文書を入力として、第1引数
で指定された文書に含まれる図を、第2引数で指定され
た文書の最下位の節のうち最初のものの末子として挿入
するものである。
【0190】実行文の1行目は、第3の実施例のスクリ
プト例3で説明した通りである。2番目のselect-type
コマンドは、第3の実施例のスクリプト例3における最
初のselect-type コマンドと同様の目的で使用される。
extract コマンドの実行により、第1引数で指定された
文書の図を表す構成子記述列が抜き出される。最後に、
extract コマンドの実行によって得られた構成子記述列
を、insert コマンドの実行によって、第2引数で指定
された文書に挿入する。挿入は、第2の実施例のスクリ
プト例2と全く同様にして行われる。
【0191】◇[スクリプト例6] #!/bin/sh select-type -e Segment $2 | bottom > pid select-type -e Figure $1 | chval -n Patent 特許 - $1 |\ insert -yc pid - $2 このスクリプトは、スクリプト例5とほぼ同じ働きをす
るが、図を表す部分木の根の構成子の属性値を更新する
ものである。
【0192】実行文の1行目は第3の実施例のスクリプ
ト例3で説明した通りである。2番目のselect-type コ
マンドは第2の実施例のスクリプト例2における最初の
select-type コマンドと同様の目的で使用される。chva
l コマンドは、第3の実施例のスクリプト例3における
chval コマンドと同様にして用いられる。最後に、inse
rtコマンドの実行により、上記スクリプト例5における
insertコマンドの実行による挿入と同様の処理が行われ
る。
【0193】◇[スクリプト例7] #!/bin/sh (select-type -e Figure $1 ; select-type -e Segment $1) |union |\ extract -s $1 > part echo -n > empty chval -n Patent 特許 empty part このスクリプトは、図あるいは節を表す構成子記述列を
検索した後、構成子の属性“user visible name ”の値
を変更するものである。
【0194】select-type コマンド、union コマンド、
extract コマンドにより、引数で指定された文書から図
あるいは節を表す部分木が検索され、対応する構成子記
述列が作業用ファイルpartに格納される。次に、UNI
Xの標準コマンドecho を引数なしで使用することによ
り、空きのファイルempty が生成される。最後にchval
コマンドの実行により、ファイルpartに格納された全構
成子記述列を操作対象として、属性"user visible nam
e" の値に出現する文字列“Patent”が“特許”で置換
される。
【0195】◇[スクリプト例8] #!/bin/sh select-type -e Segment $2 | bottom > pid select-type -e Figure $1 > fig extract -s fig $1 | chval -n Patent 特許 fig $1 |\ insert -yc pid - $2 このスクリプトは、上記スクリプト例7の例とほぼ同じ
働きをする。なお、このスクリプト例8においては、最
終的に挿入を行う位置を、上記スクリプト例6の例と同
様に決定している点が、上記スクリプト例7と異なる。
【0196】◇[スクリプト例9=テキスト処理機能と
の組み合わせの例] #!/bin/sh select-type -e Figure $1| extract -s - $1 |\ sed -e "user-visibe-name/s/Patent/特許/g" この例では、テキスト操作を行うUNIXの標準コマン
ドsedを用いて、検索結果得られた構成子記述列中の
属性“user visible name ”の値に含まれる文字列“Pa
tent”を“特許”に置換するものである。
【0197】次に、図12に示した図の論理構造を有す
る文書に対して処理を行う場合について説明する。
【0198】ある文書から図だけを検索して、それらだ
けから文書を生成するためのスクリプトの例を以下に示
す。
【0199】◇[スクリプト例10] % select-type -e Figure test.doc |extract -s - test.doc |\ insert -yc -p "3" - skeleton.doc > result.doc 最初に、select-type コマンドの実行により、test.doc
なるファイルから、属性“uobject-type”の値に部分文
字列“Figure”を含む構成子の識別子列を列挙し、標準
出力に書き出される。次に、extract コマンドの実行に
より、標準入力から識別子列が読み込まれ、各識別子を
根とする部分木に対応する構成子記述列がファイルtes
t.docから抜き出される。最後にinsertコマンドの実行
により、抜き出された部分木が標準入力から読み込ま
れ、この部分木がファイルskeleton.docに繋ぎ込まれ、
こうして得られた構成子記述列が標準出力に書き出され
る。ここで、ファイルskeleton.docは文書のヘッダ部分
と特定論理根だけからなる。結果として得られた構成子
記述列は、result.docなるファイルにリダイレクトさ
れ、出力文書となる。
【0200】次に、コマンドプロシジャ例9の修正版
で、見出しに"viewpoint" という文字列を含む図を検索
して、そのような図だけからなる文書を生成するための
スクリプト例を以下に示す。
【0201】◇[スクリプト例11] % (select-type Figure test.doc ;select-content\ viewpoint test.doc) |above |extract -s - test.doc |\ insert -yc -p "3" - skeleton.doc > result.doc ファイルskeletonは上記スクリプト例10と同様であ
る。この例では、select-contentコマンドは、"viewpoi
nt" という文字列を含む内容部の識別子を列挙するため
に用いられる。above コマンドの実行により、2つの識
別子列が読み込まれ、述語above が成立する構成子の識
別子列が出力される。各識別子列は構成子レゾルバ(se
lect-type 、select-content)によって生成されたもの
であり、従ってある述語が成立する構成子の識別子列で
ある。従ってabove コマンドの実行結果(出力)は見出
しに"viewpoint" という文字列を含む図の識別子列であ
る。
【0202】次に、見出しに“introduction”という文
字列を含む章(或いは節)に含まれる最下位の節を選
び、それらを一つの文書にまとめるためのスクリプト例
を以下に示す。
【0203】◇[スクリプト例12] #!/bin/sh (select-type -e Segment test.doc;\ (select-content -p introduction test.doc ;\ select-type -e title test.doc)|\ below) |\ above |\ bottom|extract -s - test.doc |\ insert -yc -p "3" - skeleton.doc > result.doc below コマンドは2つの構成子記述列を読み込み、述語
below が成立する構成子の識別子列を出力する。従っ
て、この例では、属性“uobject-type”の値が文字列"t
itle" を含む構成子に従属する内容部のうち、introduc
tionという文字列を含むものを列挙する。
【0204】bottomコマンドは、一つの識別子列を読み
込み、述語bottomが成立する構成子記述列を出力する。
【0205】上記各実施例では、文書名を得る方法とし
て、(a)文書名をスクリプトに記述する。(b)スク
リプトに実行する引数として文書名を与える。の2通り
の方法があるが、これを、構成子記述列から得るように
しても良い。
【0206】すなわち、図17中点線で示されるよう
に、文書名列取得部1510と、文書名列保持部152
0を設ける。
【0207】文書名列取得部1510においては、文書
レゾルバ1511が、文書名列を取得するための条件を
示す情報である指定された条件情報1512に基づい
て、構成子記述列保存部110から文書名(単数又は複
数)を取得し、この文書名を文書名列保持部1520に
格納する。
【0208】そして文書名出力部1400が、識別子列
保持部120に保持されている第2の識別子列取得部1
40により得られた識別子列の識別子数を検査し、この
結果が指定された第3の条件に適合する場合は、文書名
列保持部1520に保持されている文書名を出力する。
【0209】上述したように第5の実施例によれば、指
定された構造化文書中から指定された条件に適合する文
書部品を検索し、この文書部品を他の構造化文書中に挿
入することができる。
【0210】また、指定された構造化文書中から指定さ
れた条件に適合する文書部品を検索し、この文書部品の
属性を指定された属性値に変更することができる。
【0211】さらに、指定された構造化文書中から指定
された条件に適合する文書部品を検索し、この文書文品
の属性を指定された属性値に変更し、更に、この文書部
品を指定された構造化文書中に挿入することができる。
【0212】上述した各実施例によれば、構成子記述
列、識別子列、文書名列のいずれかを扱える文書処理機
能(装置)であれば、上述した様な各文書処理を実行す
ることができる。
【0213】
【発明の効果】以上説明したように本発明によれば、予
め記述された単数又は複数の文書に対応し、且つ、識別
子が付与されている複数の構成子を有する構成子記述列
から、指定された第1の条件に適合する構成子に対応す
る識別子列を取得し、この識別子列から、指定された第
2の条件に適合する識別子列を取得し、この第2の条件
に適合する識別子列に基づいて、前記予め記述された単
数又は複数の文書に対応する構成子記述列に対する所定
の処理を実行するようにし、この所定の処理をするに際
し、構成子記述列の取得(検索)、挿入、構成子記述列
の属性値の変更、文書名の出力、の各処理のうち、いず
れかの処理又は複数の処理を実行するようにしたので、
指定された文書から条件に適合する文書部品を検索する
ことができるという利点がある。
【0214】また、ある文書中の文書部品を抽出し、こ
の文書部品を、他の文書中に挿入することができるとい
う利点がある。
【0215】また、指定された条件に適合する文書の文
書名のみを得ることができるという利点がある。
【0216】また、指定された文書中から指定された条
件に適合する文書部品を検索し、この文書部品を、他の
文書中に挿入することができるという利点がある。
【0217】また、指定された文書中から指定された条
件に適合する文書部品を検索し、この文書部品の属性
を、指定された属性値に変更することができるという利
点がある。
【0218】また、指定された構造化文書中から指定さ
れた条件に適合する文書部品を検索し、この文書文品の
属性を指定された属性値に変更し、更に、この文書部品
を指定された構造化文書中に挿入することができるとい
う利点がある。
【0219】さらに、構成子記述列、識別子列に基づい
て文書処理を行うようにしているので、これらの情報を
扱える他の文書処理機能と込み合わせて、文書あるいは
文書部品の検索、挿入、合成、更新を正確に処理するこ
とのできる文書処理方法および文書処理装置を提供する
ことができるという効果を奏する。
【図面の簡単な説明】
【図1】本発明に係る文書処理装置の第1の実施例を示
す機能ブロック図。
【図2】図1に示した実施例の装置を実現するためのハ
ードウェア構成を示すブロック図。
【図3】ネットワーク構造の一例を示す図。
【図4】構造化文書における論理構造の一例を示す図。
【図5】図4に示す木構造の各ノードにDeweyの1
0進分類法に従ってアドレスを割り当てた様子を示す。
【図6】共通の祖先のうち、最も若いものを求めるため
の処理手順を示すフローチャート。
【図7】図4に示す木構造の各ノードに行きがけ順に辿
ったときに出現する順番に従って番号を割り当てた様子
を示す図。
【図8】全体の処理の流れを示すメインルーチン。
【図9】全体の処理において実行されるスクリプトの実
行処理を示すサブルーチン。
【図10】スクリプトの実行処理において実行される基
本単位の処理を示すサブルーチン。
【図11】実行単位の処理において実行される基本実行
単位の処理を示すサブルーチン。
【図12】構造化文書における図の論理構造の一例を示
す図。
【図13】構造化文書における章・節の論理構造の一例
を示す図。
【図14】本発明に係る文書処理装置の第2の実施例を
示す機能ブロック図。
【図15】本発明に係る文書処理装置の第3の実施例を
示す機能ブロック図。
【図16】本発明に係る文書処理装置の第4の実施例を
示す機能ブロック図。
【図17】本発明に係る文書処理装置の第5の実施例を
示す機能ブロック図。
【図18】従来の文書処理を説明するために使用した構
造化文書の論理構造を示す図。
【図19】図18に示す構造化文書に対する処理結果と
しての出力文書を示す図。
【図20】従来の文書処理を説明するために使用した構
造化文書の論理構造を示す図。
【図21】図20に示す構造化文書に対する処理結果と
しての出力文書を示す図。
【符号の説明】
110…構成子記述列保持部、120…識別子列保持
部、130…第1の識別子列取得部、140…第2の識
別子列取得部、150…構成子記述列取得部、210…
入力装置、220…ディスプレイ、230…ディスク、
240…主メモリ、250…中央処理装置、1200…
構成子記述列挿入部、1300…構成子記述列変更部、
1400…文書名出力部、1510…文書名列取得部、
1520…文書名列取得部。
【手続補正書】
【提出日】平成5年3月19日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0120
【補正方法】変更
【補正内容】
【0120】ここで述語predを次のように定義す
る。 pred(a,b)⇔alength(lub(a,b))+1≦blength(lub(a,b))+1 なおpred(a,b)はa、bのうち行きがけ順で先
に表されるものを求める関数である。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0121
【補正方法】変更
【補正内容】
【0121】同様に、述語succを次の様に定義す
る。 succ(a,b)⇔alength(lub(a,b))+1≧blength(lub(a,b))+1 なおsucc(a,b)はa、bのうち行きがけ順で後
に表されるものを求める関数である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 村田 真 神奈川県横浜市保土ケ谷区神戸町134番地 横浜ビジネスパーク イーストタワー 富士ゼロックス株式会社内

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】グラフ理論におけるグラフによって表現さ
    れる文書に対する所定の処理を行う文書処理方法におい
    て、 予め記述された単数又は複数の文書或いは単数又は複数
    の文書部品に対応し、且つ識別子が付与されている1つ
    以上の構成子を有する構成子記述列から、指定された第
    1の条件に適合する構成子に対応する識別子列を取得す
    るステップと、 前記識別子列から、指定された第2の条件に適合する識
    別子列を取得するステップと、 前記第2の条件に適合する識別子列に基づいて、前記予
    め記述された単数又は複数の文書或いは単数又は複数の
    文書部品に対応する構成子記述列に対する所定の処理を
    実行するステップとを含むことを特徴とする文書処理方
    法。
  2. 【請求項2】前記所定の処理を実行するステップは、 前記第2の条件に適合する識別子列に対応する構成子記
    述列を、前記予め記述された単数又は複数の文書或いは
    単数又は複数の文書部品に対応する構成子記述列から取
    得するステップ、 或いは前記第2の条件に適合する識別子列に対応する構
    成子記述列を、指定された条件に従って、前記予め記述
    された単数又は複数の文書或いは単数又は複数の文書部
    品に対応する構成子記述列に挿入するステップ、 或いは前記第2の条件に適合する識別子列に対応する構
    成子記述列を、指定された条件に従って変更するステッ
    プ、 或いは前記第2の条件に適合する識別子列を検査し、こ
    の検査結果が指定された第3の条件に適合する場合のみ
    に、当該識別子列に対応する構成子群を有する前記予め
    記述された単数又は複数の文書の文書名を出力するステ
    ップのうち、いずれかのステップ又は複数のステップを
    含むことを特徴とする請求項1記載の文書処理方法。
  3. 【請求項3】グラフ理論におけるグラフによって表現さ
    れる文書の部品を検索する文書処理装置において、 予め記述された単数又は複数の文書或いは単数又は複数
    の文書部品に対応し、且つ識別子が付与されている1つ
    以上の構成子を有する構成子記述列から、指定された第
    1の条件に適合する構成子に対応する識別子列を取得す
    る第1の識別子列取得手段と、 前記第1の識別子列取得手段により得られた識別子列を
    保持する識別子列保持手段と、 前記識別子列保持手段に保持されている識別子列から、
    指定された第2の条件に適合する識別子列を取得する第
    2の識別子列取得手段と、 前記第2の識別子列取得手段により得られた識別子列に
    対応する構成子記述列を、前記予め記述された単数又は
    複数の文書或いは単数又は複数の文書部品に対応する構
    成子記述列から取得する構成子記述列取得手段とを具え
    たことを特徴とする文書処理装置。
  4. 【請求項4】グラフ理論におけるグラフによって表現さ
    れる文書の部品を所定の文書に挿入する文書処理装置に
    おいて、 予め記述された単数又は複数の文書或いは単数又は複数
    の文書部品に対応し、且つ、識別子が付与されている1
    つ以上の構成子を有する構成子記述列から、指定された
    第1の条件に適合する構成子に対応する識別子列を取得
    する第1の識別子列取得手段と、 前記第1の識別子列取得手段により得られた識別子列を
    保持する識別子列保持手段と、 前記識別子列保持手段に保持されている識別子列から、
    指定された第2の条件に適合する識別子列を取得する第
    2の識別子列取得手段と、 前記第2の識別子列取得手段により得られた識別子列に
    対応する構成子記述列を、指定された条件に従って、前
    記予め記述された単数又は複数の文書或いは単数又は複
    数の文書部品に対応する構成子記述列に挿入する構成子
    記述列挿入手段とを具えたことを特徴とする文書処理装
    置。
  5. 【請求項5】グラフ理論におけるグラフによって表現さ
    れる文書の部品の属性値を更新する文書処理装置におい
    て、 予め記述された単数又は複数の文書或いは単数又は複数
    の文書部品に対応し、且つ、識別子が付与されている1
    つ以上の構成子を有する構成子記述列から、指定された
    第1の条件に適合する構成子に対応する識別子列を取得
    する第1の識別子列取得手段と、 前記第1の識別子列取得手段により得られた識別子列を
    保持する識別子列保持手段と、 前記識別子列保持手段に保持されている識別子列から、
    指定された第2の条件に適合する識別子列を取得する第
    2の識別子列取得手段と、 前記第2の識別子列取得手段により得られた識別子列に
    対応する構成子記述列を、指定された変更指示情報に従
    って変更する構成子記述列変更手段とを具えたことを特
    徴とする文書処理装置。
  6. 【請求項6】グラフ理論におけるグラフによって表現さ
    れる文書を検索する文書処理装置において、 予め記述された単数又は複数の文書或いは単数又は複数
    の文書部品に対応し、且つ、識別子が付与されている1
    つ以上の構成子を有する構成子記述列から、指定された
    第1の条件に適合する構成子に対応する識別子列を取得
    する第1の識別子列取得手段と、 前記第1の識別子列取得手段により得られた識別子列を
    保持する識別子列保持手段と、 前記識別子列保持手段に保持されている識別子列から、
    指定された第2の条件を満たす識別子列を取得する第2
    の識別子列取得手段と、 前記第2の識別子列取得手段により得られた識別子列を
    検査し、この結果が指定された第3の条件に適合する場
    合は、当該識別子列に対応する構成子群を有する前記予
    め記述された単数又は複数の文書の文書名を出力する文
    書名出力手段とを具えたことを特徴とする文書処理装
    置。
  7. 【請求項7】前記構成子記述列取得手段により得られた
    前記構成子記述列を、指定された条件に従って、前記予
    め記述された単数又は複数の文書或いは単数又は複数の
    文書部品に対応する構成子記述列に挿入する構成子記述
    列挿入手段を更に具えたことを特徴とする請求項3記載
    の文書処理装置。
  8. 【請求項8】前記構成子記述列取得手段により得られた
    構成子記述列を、指定された変更指示情報に従って変更
    する構成子記述列変更手段を更に具えたことを特徴とす
    る請求項3記載の文書処理装置。
  9. 【請求項9】グラフ理論におけるグラフによって表現さ
    れる文書に対する処理を行う文書処理装置において、 予め記述された単数又は複数の文書或いは単数又は複数
    の文書部品に対応し、且つ、識別子が付与されている1
    つ以上の構成子を有する構成子記述列から、指定された
    第1の条件に適合する構成子に対応する識別子列を取得
    する第1の識別子列取得手段と、 前記第1の識別子列取得手段により得られた識別子列を
    保持する識別子列保持手段と、 前記識別子列保持手段に保持されている識別子列から、
    指定された第2の条件に適合する識別子列を取得する第
    2の識別子列取得手段と、 前記第2の識別子列取得手段により得られた識別子列に
    対応する構成子記述列を、指定された変更指示情報に従
    って変更する構成子記述列変更手段と、 前記構成子記述列変更手段により得られた前記構成子記
    述列を、指定された条件に従って、前記予め記述された
    単数又は複数の文書或いは単数又は複数の文書部品の構
    成子記述列に挿入する構成子記述列挿入手段とを具えた
    ことを特徴とする文書処理装置。
  10. 【請求項10】グラフ理論におけるグラフによって表現
    される文書に対する処理を行う文書処理装置において、 予め記述された単数又は複数の文書或いは単数又は複数
    の文書部品に対応し、且つ、識別子が付与されている1
    つ以上の構成子を有する構成子記述列から、指定された
    第1の条件に適合する構成子に対応する識別子列を取得
    する第1の識別子列取得手段と、 前記第1の識別子列取得手段により得られた識別子列を
    保持する識別子列保持手段と、 前記識別子列保持手段に保持されている識別子列から、
    指定された第2の条件に適合する識別子列を取得する第
    2の識別子列取得手段と、 前記予め記述された単数又は複数の文書の構成子記述列
    から、前記第2の識別子列取得手段により得られた識別
    子列に対応する構成子記述列を取得する構成子記述列取
    得手段と、 前記構成子記述列取得手により得られた構成子記述列
    を、指定された変更指示情報に従って変更する構成子記
    述列変更手段と、 前記構成子記述列変更手段により得られた前記構成子記
    述列を、指定された条件に従って、前記予め記述された
    単数又は複数の文書或いは単数又は複数の文書部品の構
    成子記述列に挿入する構成子記述列挿入手段とを具えた
    ことを特徴とする文書処理装置。
JP4206722A 1992-08-03 1992-08-03 文書処理方法及び文書処理装置 Pending JPH0652161A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP4206722A JPH0652161A (ja) 1992-08-03 1992-08-03 文書処理方法及び文書処理装置
US08/815,584 US5765177A (en) 1992-08-03 1997-03-12 Document processing method and apparatus for searching documents having a graph based document logic structure

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4206722A JPH0652161A (ja) 1992-08-03 1992-08-03 文書処理方法及び文書処理装置

Publications (1)

Publication Number Publication Date
JPH0652161A true JPH0652161A (ja) 1994-02-25

Family

ID=16528027

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4206722A Pending JPH0652161A (ja) 1992-08-03 1992-08-03 文書処理方法及び文書処理装置

Country Status (2)

Country Link
US (1) US5765177A (ja)
JP (1) JPH0652161A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7069501B2 (en) 2000-01-25 2006-06-27 Fuji Xerox Co., Ltd. Structured document processing system and structured document processing method
US7685157B2 (en) 2002-06-28 2010-03-23 Nippon Telegraph And Telephone Corporation Extraction of information from structured documents
JP2012118618A (ja) * 2010-11-29 2012-06-21 Pronexus Inc 電子文書作成装置、電子文書作成方法、プログラム、及び、記録媒体

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6480206B2 (en) 1998-02-24 2002-11-12 Sun Microsystems, Inc. Method and apparatus for an extensible editor
US6592628B1 (en) * 1999-02-23 2003-07-15 Sun Microsystems, Inc. Modular storage method and apparatus for use with software applications
US6629096B1 (en) 1999-08-09 2003-09-30 Mindflow Technologies, Inc. System and method for performing a mindflow process
US6519590B1 (en) * 1999-08-09 2003-02-11 Mindflow Technologies, Inc. System and method for performing a mindflow process using a mindflow document archive
JP4059488B2 (ja) * 2002-12-20 2008-03-12 キヤノン株式会社 文書処理方法および装置
KR100568234B1 (ko) 2003-12-13 2006-04-07 삼성전자주식회사 마크업 랭귀지 기반의 데이터 관리 방법과 그 장치 및기록매체
JP2006107142A (ja) * 2004-10-05 2006-04-20 Canon Inc 文書処理装置及び方法
US10558679B2 (en) * 2016-02-10 2020-02-11 Fuji Xerox Co., Ltd. Systems and methods for presenting a topic-centric visualization of collaboration data
US10445319B2 (en) * 2017-05-10 2019-10-15 Oracle International Corporation Defining subgraphs declaratively with vertex and edge filters

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03105559A (ja) * 1989-09-20 1991-05-02 Hitachi Ltd 文書作成装置
JPH04111051A (ja) * 1990-08-31 1992-04-13 Fuji Xerox Co Ltd 文書処理装置
JPH04116765A (ja) * 1990-09-07 1992-04-17 Fuji Xerox Co Ltd 電子文書処理装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4945475A (en) * 1986-10-30 1990-07-31 Apple Computer, Inc. Hierarchical file system to provide cataloging and retrieval of data
EP0362369B1 (en) * 1988-04-15 1996-09-18 Digital Equipment Corporation System for managing hierarchical information in a digital data processing system
US5369763A (en) * 1989-02-01 1994-11-29 Kansas State University Research Foundation Data storage and retrieval system with improved data base structure
JPH0715681B2 (ja) * 1989-02-28 1995-02-22 富士通株式会社 木構造を分割し統合可能にした構造化文書処理システム
US5276874A (en) * 1989-08-11 1994-01-04 Digital Equipment Corporation Method for creating a directory tree in main memory using an index file in secondary memory
US5181162A (en) * 1989-12-06 1993-01-19 Eastman Kodak Company Document management and production system
US5197001A (en) * 1990-05-14 1993-03-23 International Business Machines Corp. Bill of material and project network processing
US5295261A (en) * 1990-07-27 1994-03-15 Pacific Bell Corporation Hybrid database structure linking navigational fields having a hierarchial database structure to informational fields having a relational database structure
CA2048039A1 (en) * 1991-07-19 1993-01-20 Steven Derose Data processing system and method for generating a representation for and random access rendering of electronic documents
US5454101A (en) * 1992-09-15 1995-09-26 Universal Firmware Industries, Ltd. Data storage system with set lists which contain elements associated with parents for defining a logical hierarchy and general record pointers identifying specific data sets

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03105559A (ja) * 1989-09-20 1991-05-02 Hitachi Ltd 文書作成装置
JPH04111051A (ja) * 1990-08-31 1992-04-13 Fuji Xerox Co Ltd 文書処理装置
JPH04116765A (ja) * 1990-09-07 1992-04-17 Fuji Xerox Co Ltd 電子文書処理装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7069501B2 (en) 2000-01-25 2006-06-27 Fuji Xerox Co., Ltd. Structured document processing system and structured document processing method
US7685157B2 (en) 2002-06-28 2010-03-23 Nippon Telegraph And Telephone Corporation Extraction of information from structured documents
US7730104B2 (en) 2002-06-28 2010-06-01 Nippon Telegraph And Telephone Corporation Extraction of information from structured documents
JP2012118618A (ja) * 2010-11-29 2012-06-21 Pronexus Inc 電子文書作成装置、電子文書作成方法、プログラム、及び、記録媒体

Also Published As

Publication number Publication date
US5765177A (en) 1998-06-09

Similar Documents

Publication Publication Date Title
JP4448881B2 (ja) コンピュータプログラムを発生する方法及びシステム
JP4141556B2 (ja) 構造化文書管理方法及びその実施装置並びにその処理プログラムを記録した媒体
CN108351768B (zh) 用标记语言编写文档的同时实现处理信息系统的数据的用户界面的方法
US20060080361A1 (en) Document information processing apparatus, document information processing method, and document information processing program
EP1764710A1 (en) Layout generation method, information processing device, and program
JP4246186B2 (ja) 構造化文書のデータ展開方法、データ処理方法及び処理システム
WO2007020850A1 (ja) 情報処理方法、情報処理装置および情報処理プログラム
CN109614329B (zh) 一种基于接口控制文件的软件测试用例辅助设计方法
JP3871832B2 (ja) データ処理プログラム自動生成システム及びその方法並びにコンピュータ可読記録媒体
JPH0652161A (ja) 文書処理方法及び文書処理装置
CA2581219A1 (en) Arrangement generation method and arrangement generation program
JP2006202308A (ja) グラフィカルユーザインターフェース方法、グラフィカルユーザインターフェース装置、及び記録媒体
US5907851A (en) Editing nested documents by appointing a portion for insertion with an alternative substitute
JPH07239850A (ja) 構造化文書作成支援システム
CN115016770A (zh) 一种数据处理方法、装置、设备及存储介质
JP3016691B2 (ja) データ検索条件設定方法
US5553278A (en) Method and system for manipulation of database and issuing report thereof
EP0501753A2 (en) System for and method of generating a data structure
WO2013015109A1 (ja) モジュールの構造解析を支援する装置及びプログラム
JPH05225240A (ja) 文書データベース装置
JP4389332B2 (ja) 機械翻訳解析結果選択装置
JPH05135054A (ja) 文書処理方法
JP4334450B2 (ja) 構造化文書検索装置及び構造化文書検索方法
CN117669509A (zh) 一种报告生成方法、装置及设备
Murakawa et al. Graphical expression of SQL statements using clamshell diagram