JP2000090091A - データ処理装置、文書処理装置、データ処理プログラムを記録したコンピュータ読み取り可能な記録媒体及び文書処理プログラムを記録したコンピュータ読み取り可能な記録媒体 - Google Patents
データ処理装置、文書処理装置、データ処理プログラムを記録したコンピュータ読み取り可能な記録媒体及び文書処理プログラムを記録したコンピュータ読み取り可能な記録媒体Info
- Publication number
- JP2000090091A JP2000090091A JP10253427A JP25342798A JP2000090091A JP 2000090091 A JP2000090091 A JP 2000090091A JP 10253427 A JP10253427 A JP 10253427A JP 25342798 A JP25342798 A JP 25342798A JP 2000090091 A JP2000090091 A JP 2000090091A
- Authority
- JP
- Japan
- Prior art keywords
- document
- ordered tree
- processing
- search condition
- node
- 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.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
が、情報の構造に関する正確な知識を持たなくても、構
造に関する条件を与えることにより、その条件に合致す
る部分構造を抽出することができるようにする。 【解決手段】 有向順序木を構成するノードの内容及び
ノード間の接続関係を定義した検索条件3が入力される
と、マッチング手段2は、情報格納手段1に格納された
処理対象情報1aの有向順序木の中間ノードを削除し、
中間ノードのあった位置に中間ノード直下のノード列を
配置する操作を行った結果得られる均質化有向順序木生
成を処理対象として、均質化有向順序木内の検索条件3
に適合する有向順序木を抽出する。これにより、論理構
造が異なる多数の情報に対する検索を行う際において
も、ノード間の接続関係を利用した検索条件を利用でき
る。
Description
れた情報に対する処理を行うデータ処理装置および構造
化文書を対象とする文書処理装置に関し、特に大量の情
報に対して処理を行うデータ処理装置および大量の構造
化文書から必要な部分構造を検索して処理する文書処理
装置に関する。
に関する利便性を向上させるために、文書を電子的に管
理することが広く行われている。さらに、章、節、段
落、図表などの文書要素レベルでの再利用を可能とする
ために、文書要素と要素間の論理的な関係(論理構造)
を伴う文書(構造化文書)による文書管理が先進的なユ
ーザによって行われている。なお、以下単に「文書」と
いった場合には、すべて構造化文書を指すものとする。
である。図68に示す文書91の矩形は文書要素を表わ
し、矩形中の文字列は文書要素の名前を表わす。各文書
要素には、「001 」〜「012 」の識別子が付与されてい
る。この図に示すように、構造化文書の論理構造は有向
順序木として表現される。また、文書要素に接続された
楕円は、文書要素に対応する内容を表わす。
が対応付けられているが、名前以外にもさまざまな属性
を対応付けることが広く行われている。構造化文書フォ
ーマットの標準としては、SGML(Standard Genera1ized
Markup Language)とXML(eXtensible Markup Language)
が広く知られている。SGMLは1986年にISO(Internat
ional Standard Organization)の標準として規定され、
現在に至るまで主に出版分野における電子文書フォーマ
ットとして利用されてきた。いっぽうXML は、インター
ネット上の構造化文書フォーマットの標準としてSGMLの
一部の機能を継承しつつインターネット文書フォーマッ
トの実質的な標準であるHTML(Hyper Text Markup Langu
age)による運用の知見を取り入れて、1997年の2月
にW3C(World Wide Web Consortium)の勧告として制定さ
れた。W3C は、インターネット関連の標準を制定するた
めの国際的な非営利団体である。
序木で表現される論理構造を持つ。HTML文書も有向順序
木で表現される論理構造を備えているが、HTMLは文書の
表示処理を主眼において設計されているため、表示処理
では不要な要素名や要素間の関係を利用できないよう
に、文書構造に対してあらかじめ制限が加えられてい
る。いっぽう、XML 文書では、論理構造が有向順序木で
表現されていればよく、要素名や要素間の関係に関する
制限を文書作成者自身が定義できる。とはいえ、文書作
成者が好き勝手に要素名を決めてしまっては、文書を利
用するシステムが文書要素を誤った用途に用いることに
もなりかねない。このため、W3C では、XMLの拡張とし
て、XML 文書の要素名の意味を文書処理システムが一意
に特定するための機構の標準化活動を進めている。この
標準化が達成されれば、インターネット上の構造化文書
を文書要素単位で再利用するためのインフラが整うこと
になる。以上のことから、インターネット上に存在する
大量かつ多様な構造をもつ構造化文書から、文書利用者
が必要とする文書要素を検索する必要性が増大すること
は明らかである。
について説明する。例えば、検索対象となる構造化文書
として、図68に示した文書91以外に以下のような文
書を想定する。
である。図69の文書92は、図68の文書91と類似
した内容を、別の構造で表したものである。この文書9
2は、根となる識別子「001 」の文書要素の子供の要素
として、他の全ての文書要素が接続されている。
ら、参考文献エントリに対応する文書要素(以下、エン
トリ要素)を検索する処理を考える。なお、参考文献エ
ントリとは、図68の"1.momma."や"1.numata..." に対
応する文書要素、及び図69の" [1 ]門馬...."
や" [2]沼田...." に対応する文書要素を指すも
のとする。
すると、さまざまな相違点が見出される。たとえば、文
書91のエントリ要素の名前は"ITEM"であるのに対して
文書92のエントリ要素の名前は"PARA"である。また、
文書91のエントリ要素はリストを意味するLIST要素で
まとめられているのに対し文書92のエントリ要素は文
書全体を意味するDOC 要素の直下に位置している。
の論理構造では、同一の用途で用いられるべき文書内容
が、多様な構造で表現されるようになる。構造化文書を
対象とした検索では、文書要素の名前、属性や文書要素
に対応付けられた内容に関する条件だけでなく、文書要
素間の接続関係も検索条件に利用することにより、再現
率を維持したまま適合率を向上させることができる。例
えば特開平7−225770号公報記載のデータ検索装
置では、検索対象となる構造化文書の文書要素間の祖孫
関係に関する索引をあらかじめ作成しておくことによ
り、文書要素間の接続関係を利用した高速な検索を可能
としている。
は、検索対象の文書構造の類似度が高い場合には大きな
効果を発揮するが、前述の文書91と文書92のよう
に、文書構造上の類似度の比較的低い文書を一括して検
索する場合には、文書要素間の祖孫関係に関する条件を
利用するのが困難となる。たとえば、文書91と文書9
2のエントリ要素を一括して検索する場合、両者のエン
トリ要素に共通する祖孫関係は、エントリ要素が文書全
体を意味するDOC 要素の子孫であるという関係のみであ
る。上記の技術によりこれらの文書を同時に検索するに
は、DOC 要素の子孫として特定のエントリ要素が存在す
るという検索条件を入力しなければならない。この場
合、DOC 要素は文書全体を表しているに過ぎないため、
文書要素間の接続関係を利用せずに検索した場合と同様
の検索結果しか得ることができず、適合率の向上が図れ
ない。
行う場合、利用者がその文書の構造を詳細に記憶してい
ることは少ない。そのため、文書要素間の接続関係を用
いた検索を行う場合においても、曖昧な記憶に基づいて
検索条件が入力される。従来の技術では、検索条件にお
いて指定された構造に適合した場合にのみ検出されるた
め、曖昧な記憶に基づいた検索条件では利用者が探して
いる文書が検出されない可能性がある。
同等の文書と認識される範囲内の一定の処理を施すこと
で検索条件に適合するような文書であれば、その文書が
検出できるような文書検索処理を行えることが望まれて
いる。
造化文書だけではない。オブジェクト指向プログラミン
グにおけるプログラムの関係も有向順序木で表現するこ
とができる。従って、有向順序木で表現される各種情報
においても同様に、一定の処理を行うことで検索条件に
適合する論理構造を、処理対象となる情報の中から抽出
できることが望まれる。
のであり、有向序木で表現された情報に対してあいまい
な検索条件が入力されても、検索条件に合致する部分構
造を抽出することができるデータ処理装置を提供するこ
とを目的とする。
に一定の処理を施すことにより、利用者により指定され
た論理構造に合致する部分構造が生成される場合には、
その合致した部分構造を抽出することができる文書処理
装置を提供することである。
で表現された情報に一定の処理を施すことにより、利用
者により指定された論理構造に合致する部分構造が生成
される場合には、その合致した部分構造を抽出するよう
な処理をコンピュータに行わせることができるデータ処
理プログラムを記録したコンピュータ読み取り可能な記
録媒体を提供することである。
に一定の処理を施すことにより、利用者により指定され
た論理構造に合致する部分構造が生成される場合には、
その合致した部分構造を抽出するような処理をコンピュ
ータに行わせることができる文書処理プログラムを記録
したコンピュータ読み取り可能な記録媒体を提供するこ
とである。
決するために、有向順序木で表現された情報に対する処
理を行うデータ処理装置において、有向順序木で表現さ
れた処理対象情報を格納する情報格納手段と、有向順序
木を構成するノードの内容及びノード間の接続関係に関
する条件を記述した検索条件が入力されると、前記情報
格納手段に格納された前記処理対象情報の有向順序木の
中間ノードを削除し、前記中間ノードのあった位置に前
記中間ノード直下のノード列を配置する操作を行った結
果得られる均質化有向順序木を処理対象として、前記均
質化有向順序木内の前記検索条件に適合する有向順序木
を抽出するマッチング手段と、を有することを特徴とす
るデータ処理装置が提供される。
順序木を構成するノードの内容及びノード間の接続関係
に関する条件を記述した検索条件が入力されると、マッ
チング手段により、情報格納手段に格納された処理対象
情報の有向順序木の中間ノードを削除し、中間ノードの
あった位置に中間ノード直下のノード列を配置する操作
を行った結果得られる均質化有向順序木を処理対象とし
て、均質化有向順序木内の検索条件に適合する有向順序
木の抽出処理が行われる。
序木で表現された情報に対する処理を行うデータ処理装
置において、有向順序木で表現された処理対象情報を格
納する情報格納手段と、有向順序木を構成するノードの
内容及びノード間の接続関係を定義した検索条件が入力
されると、前記情報格納手段に格納された前記処理対象
情報の有向順序木中のいずれかのノードを頂点とする部
分木を削除する操作を行った結果得られる均質化有向順
序木を処理対象として、前記均質化有向順序木内の検索
条件に適合する有向順序木を抽出するマッチング手段
と、を有することを特徴とするデータ処理装置が提供さ
れる。
順序木を構成するノードの内容及びノード間の接続関係
を指定した検索条件が入力されると、マッチング手段に
より、情報格納手段に格納された処理対象情報の有向順
序木中のいずれかのノードを頂点とする部分木を削除す
る操作を行った結果得られる均質化有向順序木を処理対
象として、均質化有向順序木内の検索条件に適合する有
向順序木の抽出処理が行われる。
序木で表現された構造化文書に対する処理を行う文書処
理装置において、有向順序木で表現された処理対象構造
化文書を格納する情報格納手段と、有向順序木を構成す
るノードの内容及びノード間の接続関係を定義した検索
条件が入力されると、前記情報格納手段に格納された前
記処理対象情報の有向順序木の中間ノードを削除し、前
記中間ノードのあった位置に前記中間ノード直下のノー
ド列を配置する操作を行った結果得られる均質化有向順
序木を処理対象として、前記均質化有向順序木内の前記
検索条件に適合する有向順序木を抽出するマッチング手
段と、前記マッチング手段が抽出した有向順序木を論理
構造とする構造化文書に対して既定の処理を実行する文
書処理手段と、を有することを特徴とする文書処理装置
が提供される。
序木を構成するノードの内容及びノード間の接続関係に
関する条件を記述した検索条件が入力されると、マッチ
ング手段により、情報格納手段に格納された処理対象情
報の有向順序木の中間ノードを削除し、中間ノードのあ
った位置に中間ノード直下のノード列を配置する操作を
行った結果得られる均質化有向順序木を処理対象とし
て、均質化有向順序木内の検索条件に適合する有向順序
木の抽出処理が行われる。すると、文書処理手段によ
り、マッチング手段が抽出した有向順序木を論理構造と
する構造化文書に対して既定の処理が行われる。
序木で表現された構造化文書に対する処理を行う文書処
理装置において、有向順序木で表現された処理対象構造
化文書を格納する情報格納手段と、有向順序木を構成す
るノードの内容及びノード間の接続関係を定義した検索
条件が入力されると、前記情報格納手段に格納された前
記処理対象情報の有向順序木中のいずれかのノードを頂
点とする部分木を削除する操作を行った結果得られる均
質化有向順序木を処理対象として、前記均質化有向順序
木内の前記検索条件に適合する有向順序木を抽出するマ
ッチング手段と、前記マッチング手段が抽出した有向順
序木を論理構造とする構造化文書に対して既定の処理を
実行する文書処理手段と、を有することを特徴とする文
書処理装置が提供される。
序木を構成するノードの内容及びノード間の接続関係に
関する条件を記述した検索条件が入力されると、マッチ
ング手段により、情報格納手段に格納された処理対象情
報の有向順序木中のいずれかのノードを頂点とする部分
木を削除する操作を行った結果得られる均質化有向順序
木を処理対象として、均質化有向順序木内の検索条件に
適合する有向順序木の抽出処理が行われる。すると、文
書処理手段により、マッチング手段が抽出した有向順序
木を論理構造とする構造化文書に対して既定の処理が行
われる。
序木で表現された情報に対する処理を行うデータ処理プ
ログラムを記録したコンピュータ読み取り可能な記録媒
体において、有向順序木で表現された処理対象情報を格
納する情報格納手段、有向順序木を構成するノードの内
容及びノード間の接続関係を定義した検索条件が入力さ
れると、前記情報格納手段に格納された前記処理対象情
報の有向順序木の中間ノードを削除し、前記中間ノード
のあった位置に前記中間ノード直下のノード列を配置す
る操作を行った結果得られる均質化有向順序木を処理対
象として、前記均質化有向順序木内の前記検索条件に適
合する有向順序木を抽出するマッチング手段、としてコ
ンピュータを機能させることを特徴とするデータ処理プ
ログラムを記録したコンピュータ読み取り可能な記録媒
体が提供される。
理プログラムをコンピュータに実行させれば、有向順序
木を構成するノードの内容及びノード間の接続関係に関
する条件を記述した検索条件が入力されると、情報格納
手段に格納された処理対象情報の有向順序木の中間ノー
ドを削除し、中間ノードのあった位置に中間ノード直下
のノード列を配置する操作を行った結果得られる均質化
有向順序木を処理対象として、均質化有向順序木内の検
索条件に適合する有向順序木を抽出するような処理機能
がコンピュータ上に構築される。
序木で表現された構造化文書に対する処理を行う文書処
理プログラムを記録したコンピュータ読み取り可能な記
録媒体において、有向順序木で表現された処理対象構造
化文書を格納する情報格納手段、有向順序木を構成する
ノードの内容及びノード間の接続関係を定義した検索条
件が入力されると、前記情報格納手段に格納された前記
処理対象情報の有向順序木の中間ノードを削除し、前記
中間ノードのあった位置に前記中間ノード直下のノード
列を配置する操作を行った結果得られる均質化有向順序
木を処理対象として、前記均質化有向順序木内の前記検
索条件に適合する有向順序木を抽出するマッチング手
段、前記マッチング手段が抽出した有向順序木を論理構
造とする構造化文書に対して既定の処理を実行する文書
処理手段、としてコンピュータを機能させることを特徴
とする文書処理プログラムを記録したコンピュータ読み
取り可能な記録媒体が提供される。
理プログラムをコンピュータに実行させれば、有向順序
木を構成するノードの内容及びノード間の接続関係に関
する条件を記述した検索条件が入力されると、情報格納
手段に格納された処理対象情報の有向順序木中のいずれ
かのノードを頂点とする部分木を削除する操作を行った
結果得られる均質化有向順序木を処理対象として、均質
化有向順序木内の検索条件に適合する有向順序木が抽出
するような処理機能がコンピュータ上に構築される。
を参照して説明する。図1は、本発明の原理構成図であ
る。本発明のデータ処理装置は、情報格納手段1とマッ
チング手段2とからなる。
た処理対象情報1aを格納する。マッチング手段2は、
有向順序木を構成するノードの内容及びノード間の接続
関係に関する条件を記述した検索条件3が入力される
と、情報格納手段1に格納された処理対象情報1aの有
向順序木の中間ノードを削除し、中間ノードのあった位
置に中間ノード直下のノード列を配置する操作を行った
結果得られる均質化有向順序木を生成する。この均質化
有向順序木は複数生成される。そして、生成された均質
化有向順序木を処理対象として、均質化有向順序木内の
検索条件に適合する有向順序木4を抽出する。
条件3によって指定したノード間の接続関係が曖昧であ
っても、処理対象情報1aの中間ノードを削除し、その
下位のノード列を削除した中間ノードのあった位置に配
置することで検索条件に適合する構造が生成できれば、
その構造を示す有向順序木が抽出される。したがって、
曖昧な記憶に基づいて検索条件を定義しても、利用者の
意図した構造の情報を処理対象情報1a内から抽出可能
となる。
主なものとして構造化文書がある。構造化文書に対して
本発明に係るデータ処理を行えば、文書構造を検索条件
に用いて、比較的類似度の低い構造化文書群に対する検
索処理を有効に行うことができる。そこで、このような
文書検索を行うことができる文書処理装置を、第1の実
施の形態として以下に説明する。
ロック図である。文書処理システムは、文書処理装置1
0と入出力装置20とからなる。文書処理装置10は、
文書保持部11、検索条件保持部12、階層オートマト
ン生成部13、マッチング部14、及び文書処理部15
で構成される。
を保持する。検索条件保持部12は、検索条件を保持す
る。本実施の形態における検索条件は、有向順序グラフ
として表現される。階層オートマトン生成部13は、入
出力装置20を介した利用者30からの検索指令によっ
て、検索条件保持部12中の検索条件を入力として階層
オートマトンを生成する。生成した階層オートマトン
は、マッチング部14に入力される。マッチング部14
は、階層オートマトンと文書保持部11中の構造化文書
を入力として、論理構造のマッチング処理を行う。マッ
チングの結果として得られる文書要素セット(文書要素
の集合)の集合は、文書処理部15に出力される。文書
処理部15は、文書要素セットの集合を入力として、文
書の自動生成や表示、印刷などの文書処理を実行し、入
出力装置20を介して処理結果を利用者30に提供す
る。
どの入力装置と、CRT(Cathode Ray Tube)、LCD(L
iquid Crystal Display)などの表示装置、及びプリンタ
などの出力装置からなる。利用者30が入出力装置20
から指示を入力すると、その指示は文書処置装置に入力
される。また、文書処置装置の処置結果が表示装置の画
面を通じて文書の利用者30に通知される。あるいは、
処理結果が出力装置を介して紙に印刷される。
の対応関係は次のとおりである。すなわち、図1の情報
格納手段1は、文書保持部11に対応する。マッチング
手段2は、マッチング部14に対応する。
のような処理が行われる。図3は、文書処理装置の処理
手順を示すフローチャートである。以下の処理をステッ
プ番号に沿って説明する(後述する他のフローチャート
においても同様)。なお、この処理は、利用者30によ
って検索指令が入力された際に開始される。検索指令に
は、検索条件保持部12内のどの検索条件によって検索
を行うのかが指定されている。 [S1]階層オートマトン生成部13が、利用者30に
よって指定された検索条件を検索条件保持部12から抽
出し、その検索条件に基づいて階層オートマトンを生成
する。 [S2]マッチング部14が、文書保持部11中の構造
化文書と、階層オートマトン生成部13が生成した階層
オートマトンとのマッチングを行う。 [S3]文書処理部15が、マッチング結果の文書要素
の集合を対象とした文書処理を行う。
体例を交えながら詳細に説明する。この例では、文書保
持部11内に、図68に示した文書91に加えて、以下
のような文書が保持されているものとする。
ある。この文書93は、図68の文書91と同様の内容
を有しているが、論理構造が異なる。文書91では、参
考文献エントリの並びを意味するLIST要素(識別子「00
7 」)が参考文献全体を意味するSECT要素(識別子「00
5 」)直下の子供として表現されている。いっぽう、文
書93では、参考文献エントリの並びを意味する要素は
存在せず、参考文献エントリはエントリ数が1のLISTリ
スト要素(識別子「007 」「008 」)として表現されて
いる。
るときに論理構造上の文書要素間の接続関係を用いるこ
とがある。たとえば、「図68の文書91の識別子「00
2 」の文書要素の長子」とは、「図68の文書91の識
別子が「002 」である文書要素の先頭の子供要素」、す
なわち識別子が「003 」の文書要素を意味するものとす
る。また、「図68の文書91の識別子が「002 」であ
る文書要素の弟要素」とは「図68の文書の識別子「00
2 」の文書要素と親要素を共有する要素で、識別子「00
2 」の文書要素より後に出現する要素のうち最初に出現
する要素」すなわち識別子が「005 」の文書要素を意味
するものとする。
うな検索条件が保持されているものとする。図5は、検
索条件の例を示す図である。この検索条件40は、破線
で示された矩形(検索条件ノード)からなる有向順序グ
ラフとして表現される。この検索条件40は、図68の
文書91と図4の文書93に含まれている参考文献エン
トリを一括して得るための検索条件である。
とする述語41,43,45,47である。この例で
は、文書要素に対応づけられたテキスト内容がマッチす
べきパターン、及び論理演算子が矩形中に示されてい
る。たとえば、述語43に示す「" 参考文献"or"Refere
nces" 」という記述は、「" 参考文献" または「Refere
nces" という文字列を含むテキスト内容に対応づけられ
た文書要素が引数に与えられた場合、真を返す」という
条件を意味する。また、述語45に示す「" [(数字)
*]"or"(数字)*." 」という記述は、「" [1]、
[2]、・・・" または" 1.、2.、・・・" という
文字列を含むテキスト内容に対応づけられた文書要素が
引数に与えられた場合、真を返す」という条件を意味す
る。
る条件を設定するために、パターン指定42,44,4
6を述語の直下に記述することができる。パターン指定
42,44,46は、直上の述語に対応する文書要素直
下の文書要素列のパターンを指定する。図5では、パタ
ーン指定は楕円で表現されている。図5におけるパター
ン指定42,44,46中の文字列はパターンの種類を
意味する。たとえば、"SEQ" は、直下の文書要素列が図
で示された順序(左側が上位)で出現することを意味す
る。また、"OPTREP"は、直下の文書要素が0回以上任意
の回数出現することを意味する。
には述語またはパターン指定の列が出現する。検索条件
では、パターン指定と述語の関係を階層的に記述できる
ことから、検索条件を階層的なパターン指定と見なすこ
とができる。さらに図5では用いられていないが、直下
の文書要素列のいずれか1つが一度だけ出現することを
意味する"CHO" をパターン指定中の文字列("SEQ"およ
び"OPTREP") に追加すれば、検索条件によって、前述の
述語からなる任意の階層的な正規表現を表現することが
可能となる。
追加することができる。"+r"は、パターン指定直下の文
書要素列を決定する処理において、処理対象の文書要素
をその文書要素直下の文書要素列と置き換えて処理を進
めてもよいこと意味する。たとえば、処理対象の文書要
素が図68のLIST要素(識別子「007 」)であった場
合、LIST要素と2つのITEM要素(識別子「008 」、「00
9 」)からなる要素列を置き換えて処理を進めることが
できる。もちろん、LIST要素をそのまま用いて処理を進
めることもできる。
ている状態で、利用者が図5に示した検索条件40に適
合する構造を有する文書を検索する場合を考える。その
場合、まず階層オートマトン生成部13により階層オー
トマトンが生成される。以下に、図5の検索条件40か
ら生成される階層オートマトンを示す。
す図である。この階層オートマトン100は、4つのオ
ートマトン110,120,130,140から構成さ
れている。これらのオートマトンの最上位に位置するオ
ートマトン110を、根オートマトンと呼ぶ。
40の中で、○で示されているのが状態である。状態に
は、それぞれ「11」、「12」、「21」、「22」、「2
3」、「31」、「32」、「33」、「41」、「42」、「4
3」、「44」の識別子が割り振られている。そのうち、
始点のない矢印で指される状態「11」、「21」、「3
1」、「41」が初期状態である。また、◎で示されてい
る状態「12」、「23」、「33」、「44」が受理状態であ
る。さらに、矢印で示されているのが状態遷移であり、
状態遷移には、それぞれ「1a」、「2a」、「2b」、「3
a」、「3b」、「4a」、「4b」、「4c」、「4d」、「4
e」の識別子が割り振られている。状態遷移は、矢印の
前の状態で所定の条件を満たす入力があれば、先の状態
へ移ることを意味する。
が記されているものと、矩形の記されていないものとが
ある。前者は述語を伴う検索条件ノードに対応する状態
遷移を意味し、後者は述語を伴わない検索条件ノードに
対応する状態遷移を意味する。また、矩形の記述は、状
態遷移と文書要素とを対応付けるための条件である。こ
の条件の意味は、検索条件ノードの記述の意味と同一で
ある。図中のオートマトン130,140には、右上
に"+r"が記されている。この記号は、オートマトン上で
文書要素と直下の文書要素列との置き換えが許されるこ
とを意味する。
トマトン間の矢印)は、マッチング部14の処理におい
て状態遷移がマッチング対象の構造化文書の文書要素と
マッチしたときに、マッチした文書要素を頂点とする部
分木のマッチングに用いるオートマトンへの参照を意味
する。部分木のマッチングの結果、参照したオートマト
ンにおいて受理状態に達すれば、参照した矢印の元に位
置する状態遷移の先の状態へ移る。
が付与された状態遷移がある。これはε遷移であり、空
列を読んで次の状態へ移ることを示している。すなわ
ち、入力が無くても次の状態へ遷移できることを意味す
る。
理の詳細を説明する。図7は、階層オートマトン生成処
理部が行う処理を示すフローチャートである。この処理
は、すべて階層オートマトン生成部13が行う。 [S11]検索条件の根ノードを引数にして、根オート
マトン生成処理を呼び出す。根オートマトン生成処理の
結果、変数Tに出力された階層オートマトンが返され
る。この処理の詳細は、図8に示す。 [S12]変数Tに出力された階層オートマトンをマッ
チング部14へ出力し、処理を終了する。
すフローチャートである。この処理は、全て階層オート
マトン生成部13が行う処理である。この処理の入力
は、検索条件の根ノードであり、出力は変数Tに対して
出力されたオートマトンである。 [S21]初期状態と受理状態とを1つずつ有するオー
トマトンを生成し、変数Tに格納する。 [S22]検索条件の根ノードに保持されている条件を
伴う状態遷移を生成する。そして、生成した状態遷移の
開始端をステップS21で格納したオートマトンの初期
状態とし、生成した状態遷移の終了端をステップS21
で格納したオートマトンの受理状態とする。 [S23]検索条件の根ノードを含む検索条件ノードと
状態遷移を引数にして、オートマトン生成処理を呼び出
す。この処理の詳細は、図9に示す。
フローチャートの前半である。この処理は、すべて階層
オートマトン生成部13が行う。この処理の入力は検索
条件ノードと状態遷移であり、出力は変数Tへ出力され
るオートマトンである。 [S31]検索条件ノードに対応するオートマトンが、
変数Tに含まれるか否かを判断する。含まれる場合は処
理をステップS32に進め、含まれない場合は処理をス
テップS33に進める。 [S32]入力の状態遷移から検索条件ノードに対応す
るオートマトンへの参照を生成し、処理を終了する。 [S33]オートマトンを生成し、入力の状態遷移から
生成したオートマトンへの参照を生成する。 [S34]入力の検索条件ノードのパターン指定に"+r"
が設定されているか否かを判断する。"+r"が設定されて
いれば処理をステップS35に進め、設定されていなけ
れば処理をステップS36に進める。 [S35]生成したオートマトンに"+r"を設定する。 [S36]生成したオートマトン上に、初期状態と受理
状態を生成する。 [S37]検索条件ノードのパターン指定の種類を判断
する。パターン指定が"SEQ" なら処理をステップS38
に進め、パターン指定が"CHO" なら処理をステップS3
9に進め、パターン指定が"OPTREP"なら処理をステップ
S40に進める。
すフローチャートの後半である。 [S38]生成したオートマトンを引数にしてSEQ パタ
ーン指定生成処理を呼び出す。その後、処理をステップ
S41に進める。SEQ パターン指定生成処理の詳細は、
図11、図12において説明する。 [S39]生成したオートマトンを引数にしてCHO パタ
ーン指定生成処理を呼び出す。その後、処理をステップ
S41に進める。CHO パターン指定生成処理の詳細は、
図13において説明する。 [S40]生成したオートマトンを引数にしてOPTREPパ
ターン指定生成処理を呼び出す。その後、処理をステッ
プS41に進める。OPTREPパターン指定生成処理の詳細
は、図14において説明する。 [S41]ステップS38〜S40の各処理の返り値の
オートマトンを変数Tに格納する。
すフローチャートの前半である。この処理は、全て階層
オートマトン生成部13が行う処理である。この処理の
入力はオートマトンと検索条件ノードであり、出力はオ
ートマトンである。 [S51]SEQ パターン指定直下のすべての検索条件ノ
ードを処理したか否かを判断する。すべての検索条件ノ
ードを処理したのであれば、処理をステップS61に進
め、そうでなければ処理をステップS52に進める。 [S52]SEQ パターン指定直下の未処理の検索条件ノ
ードのうち、先頭の検索条件ノードを処理対象とする。 [S53]処理対象の検索条件ノードの位置を判断す
る。先頭の検索条件ノードであれば処理をステップS5
4に進め、末尾の検索条件ノードであれば処理をステッ
プS55に進め、それらのいずれでもない検索条件ノー
ドであれば処理をステップS56に進める。 [S54]状態を1つ生成する。そして、初期状態を開
始端とし、このステップで生成した状態を終了端とした
状態遷移を生成する。その後、処理をステップS57に
進める。 [S55]直前に作成された状態を開始端とし、受理状
態を終了端とする状態遷移を生成する。その後、処理を
ステップS57に進める。 [S56]状態を1つ生成する。そして、直前に生成さ
れた状態を開始端として、このステップで生成された状
態を終了端とする状態遷移を生成する。 [S57]処理対象の検索条件ノードに述語が含まれて
いるか否かを判断する。述語が含まれている場合には処
理をステップS58に進め、そうでない場合には処理を
ステップS59に進める。 [S58]直前に生成された状態遷移に、処理対象の検
索条件ノードの述語を対応付ける。
すフローチャートの後半である。 [S59]処理対象の検索条件ノードにパターン指定が
含まれるか否かを判断する。パターン指定が含まれる場
合には処理をステップS60に進め、そうでない場合に
は処理をステップS51に進める。 [S60]処理対象の検索条件ノードと直前に生成され
た状態遷移とを引数として、オートマトン生成処理(図
9、図10に示す)を呼び出す。その後、処理をステッ
プS51に進める。 [S61(図11に示す)]オートマトンを出力し、処
理を終了する。
すフローチャートである。この処理は、すべて階層オー
トマトン生成部13が行う。この処理の入力はオートマ
トンと検索条件ノードであり、出力はオートマトンであ
る。 [S71]CHO パターン指定直下のすべての検索条件ノ
ードを処理したか否かを判断する。すべての検索条件ノ
ードを処理していれば処理をステップS78に進め、そ
うでなければ処理をステップS72に進める。 [S72]CHO パターン指定直下の未処理の検索条件ノ
ードのうち、先頭の検索条件ノードを処理対象とする。 [S73]初期状態を開始端とし、受理状態を終了端と
する状態遷移を生成する。 [S74]処理対象の検索条件ノードに述語が含まれて
いるか否かを判断する。述語が含まれている場合には処
理をステップS75に進め、述語が含まれていない場合
には処理をステップS76に進める。 [S75]直前に生成された状態遷移に処理対象の検索
条件ノードの述語を対応付ける。 [S76]処理対象の検索条件ノードにパターン指定が
含まれるか否かを判断する。パターン指定が含まれる場
合には処理をステップS77に進め、パターン指定が含
まれない場合には処理をステップS71に進める。 [S77]処理対象の検索条件ノードと、直前に生成さ
れた状態遷移とを引数としてオートマトン生成処理(図
9、図10に示す)を呼び出す。その後、処理をステッ
プS71に進める。 [S78]オートマトンを出力し、処理を終了する。
示すフローチャートである。この処理は、すべて階層オ
ートマトン生成部13が行う。この処理の入力はオート
マトンと検索条件ノードであり、出力はオートマトンで
ある。 [S81]オートマトン上に2つの状態(第1の状態、
第2の状態)を生成する。 [S82]初期状態を開始端として第1の状態を終了端
とするε遷移、初期状態を開始端として受理状態を終了
端とするε遷移、第2の状態を開始端として第1の状態
を終了端とするε遷移、及び第2の状態を開始端として
受理状態を終了端とするε遷移を生成する。 [S83]第1の状態を開始端として第2の状態を終了
端とする状態遷移を生成する。 [S84]処理対象の検索条件ノードに述語が含まれる
か否かを判断する。述語が含まれる場合には処理をステ
ップS85に進め、述語が含まれない場合には処理をス
テップS86に進める。 [S85]ステップS83で生成された状態遷移に、処
理対象の検索条件ノードの述語を対応付ける。 [S86]処理対象の検索条件ノードにパターン指定が
含まれるか否かを判断する。パターン指定が含まれる場
合には処理をステップS87に進め、パターン指定が含
まれない場合には処理をステップS88に進める。 [S87]処理対象の検索条件ノードと、ステップS8
3で生成された状態遷移とを引数としてオートマトン生
成処理(図9、図10に示す)を呼び出す。 [S88]オートマトンを出力する。
13が実行することにより、図5に示す検索条件40か
ら図6に示す階層オートマトン100が生成される。生
成された階層オートマトン100は、マッチング部14
に渡される。
を説明する。図15は、マッチング部の処理手順を示す
フローチャートである。この処理は、すべてマッチング
部14によって行われる。また、この処理の入力は階層
オートマトンと構造化文書であり、出力は入力の構造化
文書の文書要素セット(文書要素の集合)の集合であ
る。なお、マッチング部14では、以下の処理で利用さ
れる変数Vを保持する。変数Vには、任意の数の文書要
素セットが保持されるものとする。また、以下のステッ
プS103の処理で利用されているスタックは、文書要
素と状態との組を要素とする。 [S101]処理対象の文書要素を構造化文書の根文書
要素とする。 [S102]階層オートマトンの根オートマトンの初期
状態、処置対象の文書要素、空の文書要素セット、及び
空のスタックを引数にしてオートマトンマッチング処理
を呼び出す。この処理の詳細は、図16に示す。 [S103]構造化文書の論理構造を前から順に走査し
た場合に、処理対象の文書要素の次の文書要素が存在す
るか否かを判断する。次の文書要素が存在する場合には
処理をステップS104に進め、存在しない場合には処
理をステップS105に進める。なお、論理構造上の文
書要素の順番とは、親子の文書要素間では親の方が先の
順である。兄弟の文書要素間では兄の方が先の順であ
る。さらに、弟の文書要素は、兄の文書要素の子孫にあ
たる文書要素の最後尾の文書要素の次になる。文書要素
の識別子は、論理構造上の順番にしたがって振られてい
る。 [S104]処理対象の文書要素の次の文書要素を処理
対象とする。 [S105]変数Vの値である文書要素セットを出力す
る。
順を示す第1のフローチャートである。この処理は、す
べてマッチング部14が行う。また、この処理の入力は
階層オートマトン中のオートマトンの状態、構造化文書
の文書要素、文書要素セット、及びスタックであり、出
力は変数Vに書き込まれる。なお、入力の文書要素とし
てNULL(空の値)を設定することも可能である。 [S111]入力の文書要素がスタックの先頭の文書要
素であるか否かを判断する。先頭の文書要素であれば処
理をステップS112に進め、そうでない場合は処理を
ステップS116に進める。 [S112]入力の状態とスタック先頭の状態を引数に
した到達可能状態特定処理の返り値である状態の集合に
スタック先頭の状態が含まれるか否かを判断する。含ま
れる場合は処理をステップS113に進め、そうでない
場合は処理を終了する。なお、到達可能状態特定処理の
詳細は、図19に示す。 [S113]スタック先頭の文書要素と状態の組をpop
し、入力の状態をpop した状態と置き換える。 [S114]スタックが空であるか否かを判定する。ス
タックが空の場合は処理をステップS115へ、そうで
ない場合は処理をステップS116へ進める。 [S115]変数Vに入力の文書要素セットを書き出
す。 [S116]入力の状態を引数にしてマッチング可能状
態遷移特定処理を起動した結果の返り値の状態遷移を変
数Xに格納する。マッチング可能状態遷移特定処理の詳
細は、図22に示す。 [S117]変数Xのすべての状態遷移が処理済みか否
かを判断する。すべての状態遷移が処理済の場合は処理
を終了し、そうでない場合は処理をステップS118に
進める。
順を示す第2のフローチャートである。 [S118]変数Xの未処理の状態遷移の1つを処理対
象とする。 [S119]処理対象の状態遷移と入力の文書要素を引
数として文書要素マッチング処理を呼び出し、返り値が
真か否かを判断する。戻り値が真なら処理をステップS
120に進め、偽なら処理をS127に進める。なお、
文書要素マッチング処理の詳細は、図24に示す。 [S120]入力の文書要素セットのコピーを作成し、
文書要素セットのコピーに入力の文書要素を追加する。 [S121]入力の文書要素を引数にして次要素特定処
理を起動した結果の返り値が入力の文書要素の長子であ
るか否かを判定する。長子である場合は処理をステップ
S122に進め、そうでない場合は処理をステップS1
26に進める。なお、次要素特定処理の詳細は、図25
に示す。 [S122]処理対象の状態遷移がオートマトンを参照
しているか否か判定する。オートマトンを参照している
場合は処理をステップS123へ進め、そうでない場合
は処理をステップS126へ進める。 [S123]スタックのコピーを生成する。 [S124]スタックのコピーに、処理対象の状態遷移
の終了端の状態と、入力の文書要素を引数とした弟要素
特定処理の返り値との組をpushする。
順を示す第3のフローチャートである。 [S125]処理対象の状態遷移が参照するオートマト
ンの初期状態を引数として到達可能状態特定処理を呼び
出した場合の返り値の状態ごとに、入力の文書要素の長
子、返り値の状態、ステップS120で作成した文書要
素セットのコピー、及びステップS124で作成したス
タックのコピーを入力としてオートマトンマッチング処
理を呼び出し、処理をステップS127に進める。 [S126]処理対象の状態遷移の終了端の状態を引数
として到達可能状態特定処理を呼び出した場合の返り値
の状態ごとに、入力の文書要素を引数として弟要素特定
処理を起動した結果の返り値、返り値の状態、ステップ
S120で作成した文書要素セットのコピー、及び入力
のスタックのコピーを入力としてオートマトンマッチン
グ処理を呼び出す。 [S127]処理対象の状態遷移が属するオートマトン
に"+r"が記されているか否か判定する。"+r"が記されて
いる場合は処理をステップS128へ進め、そうでない
場合は処理をステップS117に進める。 [S128]入力の文書要素を引数にして次要素特定処
理を起動した結果の返り値が入力の文書要素の長子であ
るか否か判定する。入力の文書要素の長子である場合は
処理をステップS129に、そうでない場合は処理をス
テップS117に進める。 [S129]入力の状態、入力の文書要素の長子の文書
要素、入力の文書要素セットのコピー、及び入力のスタ
ックのコピーを入力としてオートマトンマッチング処理
を呼び出す。その後、処理をステップS117に進め
る。
能状態特定処理の手順を説明する。図19は、到達可能
状態特定処理の手順を示すフローチャートである。この
処理は、すべてマッチング部14で行われる。また、こ
の処理の入力は階層オートマトン中のオートマトンの状
態の組(第1の状態と第2の状態)であり、出力は階層
オートマトン中のオートマトンの状態の集合である。本
処理および本処理で呼び出される処理では、任意の数の
状態を保持する共通の変数Yを保持する。 [S131]入力の第1の状態と第2の状態とを引数に
して状態チェック処理を呼び出す。状態チェック処理の
詳細は、図20に示す。 [S132]変数Yを出力する。
ートの前半である。この処理は、すべてマッチング部1
4で行われる。また、この処理の入力はオートマトンの
状態の組(第1の状態と第2の状態)であり、出力は変
数Yに反映される。 [S141]入力の第1の状態が変数Yに含まれている
か否か判定する。変数Yに含まれている場合には処理を
終了し、含まれていない場合には処理をステップS14
2に進める。 [S142]入力の第1の状態を変数Yに追加する。 [S143]入力の第1の状態と第2の状態が同一であ
るか否か判定する。これらが同一である場合は処理を終
了し、そうでない場合は処理をステップS144に進め
る。 [S144]入力の第1の状態を開始端とするすべての
状態遷移を処理したか否か判定する。未処理の状態遷移
がある場合は処理をステップS145へ進め、すべての
状態遷移が処理済みの場合は処理を終了する。 [S145]未処理の状態遷移を1つ選択し、処理対象
とする。 [S146]処理対象の状態遷移がε遷移の場合は処理
をステップS147へ進め、述語を伴う状態遷移の場合
は処理をステップS144に進め、いずれでもない場合
は処理をステップS148へ進める。 [S147]処理対象の状態遷移の終了端の状態と第2
の状態とを引数にして状態チェック処理を呼び出し、処
理をステップS149に進める。 [S148]処理対象の状態遷移が参照するオートマト
ンの初期状態を引数にして状態チェック処理を呼び出
し、処理をステップS149に進める。
ートの後半である。 [S149]入力の第1の状態が受理状態である場合に
は処理をステップS150に進め、そうでない場合は処
理をステップS144に進める。 [S150]第1の状態を含むオートマトンを参照して
いる状態遷移の終了端の状態と第2の状態とを引数にし
て状態チェック処理を呼び出す。その後、処理をステッ
プS144に進める。
理の手順を示すフローチャートである。この処理は、す
べてマッチング部14が行う。また、この処理の入力は
オートマトンの状態の組(第1の状態と第2の状態)で
あり、出力は状態遷移の集合である。この処理およびこ
の処理から呼び出される処理では、任意の数の状態を保
持する共通の変数Zと、任意の数の状態遷移を保持する
共通の状態Wを保持する。 [S161]入力の第1の状態と第2の状態を引数にし
て状態遷移チェック処理を呼び出す。状態遷移チェック
処理の詳細は、図23に示す。 [S162]変数Wを出力する。
示すフローチャートである。この処理は、すべてマッチ
ング部14が行う。また、この処理の入力はオートマト
ンの状態であり、出力は変数Zおよび変数Wに反映され
る。 [S171]入力の第1の状態が変数Zに含まれている
か否か判定する。変数Zに含まれている場合は処理を終
了し、含まれていない場合には処理をステップS172
に進める。 [S172]入力の第1の状態を変数Zに追加する。 [S173]入力の第1の状態と第2の状態が同一であ
るか否か判定する。同一である場合は処理を終了し、そ
うでない場合は処理をステップS174に進める。 [S174]入力の第1の状態を開始端とするすべての
状態遷移を処理したか否か判定し、処理済みの場合は処
理を終了し、そうでない場合は処理をステップS175
へ進める。 [S175]未処理の状態遷移を1つ選択し、処理対象
とする。 [S176]処理対象の状態遷移の種別を判別する。状
態遷移がε遷移の場合は処理をステップS177へ進
め、条件を伴う状態遷移の場合は処理をステップS17
9へ進め、いずれでもない場合は処理をステップS17
8へ進める。 [S177]処理対象の状態遷移の終了端の状態と第2
の状態を引数にして状態遷移チェック処理を呼び出し、
処理をステップS180に進める。 [S178]処理対象の状態遷移が参照するオートマト
ンの初期状態と第1の状態を引数にして状態遷移チェッ
ク処理を呼び出し、処理をステップS180に進める。 [S179]処理対象の状態遷移を変数Wに追加し、処
理をステップS180に進める。 [S180]入力の第1の状態が受理状態であるか否か
を判断し、受理状態の場合には処理をステップS181
に進め、そうでない場合は処理をステップS174に進
める。 [S181]第1の状態を含むオートマトンを参照して
いる状態遷移の終了端の状態と第2の状態を引数にして
状態遷移チェック処理を呼び出す。その後、処理をステ
ップS174に進める。
ング可能状態遷移特定処理はマッチング部に入力される
構造化文書とは無関係に実行できるので、これらの処理
をあらかじめ一度だけ実行して処理結果を保持し、オー
トマトンマッチング処理では保持されている処理結果を
適宜利用することにより、同一の引数に対する到達可能
状態特定処理およびマッチング可能状態遷移特定処理を
繰り返し実行することによるオーバヘッドを未然に防ぐ
ように構成することも可能である。
を示すフローチャートである。この処理は、すべてマッ
チング部14が行う。また、この処理の入力は文書要素
と状態遷移であり、出力は真偽値である。 [S191]文書要素に対応付けられた文書内容の文字
列が、状態遷移に対応付けられた文字列パターンにマッ
チするか否かを判断する。文字列パターンにマッチする
場合は処理をステップS192へ進め、そうでない場合
は処理をステップS193に進める。 [S192]真を返し、処理を終了する。 [S193]偽を返し、処理を終了する。
付けられる条件として文書内容の文字列パターンのみが
利用可能と想定したが、状態遷移に対応付けられる条件
は、文書要素を入力として真偽値を返す述語であればど
のようなものでも構わない。このような条件には、文書
要素の名称の完全一致・部分一致・パターンマッチ、文
書要素の属性値の完全一致・部分一致・パターンマッ
チ、属性値の範囲指定、属性値と他の状態遷移にマッチ
した文書要素の属性値との同値関係・大小関係、およ
び、これらの条件を論理結合子で結合したものが含まれ
る。
ローチャートである。この処理は、すべてマッチング部
14が行う。また、本処理の入力は構造化文書中の文書
要素であり、出力は入力の文書要素と同一の構造化文書
中の文書要素である。 [S201]入力の文書要素に子供がいるか否か判定す
る。子供がいる場合は処理をステップS202へ進め、
子供がいない場合は処理をS203へ進める。 [S202]入力の文書要素の長子を出力し、処理を終
了する。 [S203]入力の文書要素を引数にして弟要素特定処
理を呼び出す。弟要素特定処理の詳細は、図26に示
す。 [S204]弟処理特定処理の返り値を出力し、処理を
終了する。
ローチャートである。この処理は、すべてマッチング部
14が行う。また、この処理の入力は構造化文書中の文
書要素であり、出力は入力の文書要素と同一の構造化文
書中の文書要素である。 [S211]入力の文書要素に弟がいるか否か判定す
る。弟がいる場合は処理をステップS212へ進め、弟
がいない場合は処理をステップS213へ進める。 [S212]入力の文書要素の弟要素を出力し、処理を
終了する。 [S213]入力の文書要素に親がいるか否か判定す
る。親がいる場合は処理をステップS214へ進め、親
がいない場合は処理をステップS216へ進める。 [S214]入力の文書要素の親要素を引数にして弟要
素特定処理を呼び出す。 [S215]ステップS214で呼び出した弟要素特定
処理の返り値を出力し、処理を終了する。 [S216]空(NULL値)を出力し、処理を終了する。
り、文書保持部11に格納されている文書の中で、階層
オートマトン生成部13が生成した階層オートマトンに
適合する文書を抽出することができる。たとえば、図6
の階層オートマトン100を入力とするオートマトンマ
ッチング処理では、図68の文書91と図4の文書93
のどちらを入力の文書としても、参考文献エントリに対
応する文書要素を得ることができる。以下に、図68の
文書91と図4の文書93を対象としたオートマトンマ
ッチング処理の呼び出し関係について説明する。
の識別子「1 a」の状態遷移と識別子「005 」の文書要
素がマッチングする場合にのみ参考文献エントリが得ら
れる。識別子「1 a」の状態遷移の開始端の状態である
識別子「11」の状態と識別子「005 」の文書要素との組
を入力とするオートマトンマッチング処理、および、こ
の処理から直接または間接的に呼び出されるオートマト
ンマッチング処理の呼び出し関係を以下に示す。
び出し関係を示す第1の図である。また、図28は、図
68に示した文書における呼び出し関係を示す第2の図
である。
オートマトンマッチング処理を意味し、ノード間の実線
の矢印は処理の間の直接的な呼び出し関係、ノード間の
破線は処理の間の間接的な呼び出し関係を意味する。ま
た、○印は文書要素セットを変数Vに書き込めることを
意味し、×印は文書要素セットを変数Vに書き込めない
ことを意味する。ノード中の4つ組は、入力の状態の識
別子、入力の文書要素の識別子、入力の文書要素セッ
ト、及び入力のスタックを意味する。
合の呼び出し関係は一般には有向木となるが、オートマ
トンマッチング処理起動の履歴を内部的に保持し、この
履歴を利用して同一の引数に対する処理呼び出しをただ
一1度に抑えることができる。図27、図28の有向グ
ラフは、同一の引数に対する処理呼び出しをただ一度に
抑えた場合の呼び出し関係を表現している。
が実行されるオートマトン(図6のオートマトン13
0)に記号"+r"が設定されているためノード205の処
理が呼び出される。この呼び出しにより、識別子「007
」の文書要素を読み飛ばし、識別子「008 」の文書要
素や識別子「009 」の文書要素を対象としたオートマト
ンマッチング処理を呼び出すことを可能としている。こ
の結果、識別子「008 」の文書要素と識別子「009 」の
文書要素を参考文献エントリとして得ることができる。
状態遷移1aと識別子「005 」の文書要素がマッチング
する場合にのみ参考文献が得られる。状態遷移1aの開
始端の状態である識別子「11」の状態と識別子「005 」
の文書要素の組を入力とするオートマトンマッチング処
理、および、この処理から直接または間接的に呼び出さ
れるオートマトンマッチング処理の呼び出し関係を以下
に示す。
出し関係を示す第1の図である。また、図30は、図4
に示した文書における呼び出し関係を示す第2の図であ
る。図29、図30の表記方法は図27、図28と同一
であり、各ノード301〜319がオートマトンマッチ
ング処理を示している。
様、ノード304の処理からノード305の処理を呼び
出すことによって識別子「007 」の文書要素を読み飛ば
すことが可能となっている。さらに、ノード306〜3
09の処理からノード310〜ノード313の処理を呼
び出すことによって識別子「009 」の文書要素を読み飛
ばすことを可能としている。この結果、識別子「008 」
の文書要素と識別子「010 」の文書要素を参考文献エン
トリとして得ることができる。
8の文書をマッチング部に入力した結果得られる文書要
素セットを示す図である。また、図32は、図6の階層
オートマトンと図4の文書をマッチング部に入力した結
果得られる文書要素セットを示す図である。なお、本実
施の形態で示した処理の流れでは、同一の文書要素セッ
トが複数出力されることがあるが、簡単にするため図3
1、図32では同一の文書要素セットを1つだけ示して
いる。
する。本実施の形態における文書処理部15は、マッチ
ング部14で得られた文書要素セットごとに、処理対象
の文書の論理構造を縮退した結果得られる構造化文書か
ら可視化データを生成し、入出力装置20のCRTディ
スプレイに出力するものとする。
としたときにCRTディスプレイに表示される画面を示
す図である。この画面410は、部分構造表示部411
と適合内容表示部412とがある。部分構造表示部41
1には、マッチング部14で得られた文書要素セットに
含まれる文書要素の構造が表示されている。また、適合
内容表示部412には、部分構造表示部411に表示さ
れた文書要素の内容が表示されている。
したときにCRTディスプレイに表示される画面を示す
図である。なお、図68の文書91と図4の文書93と
は論理構造が異なるだけで文書の内容は同じであるた
め、この画面420の部分構造表示部421と適合内容
表示部422との表示内容は、図33の画面410の表
示内容と同じである。
理装置の処理は終了する。なお、第1の実施の形態で用
いた検索条件ノードおよび階層オートマトンでは、パタ
ーン指定やオートマトンに記号"+r"を明示的に表示する
表記法を採用したが、他の表記方法を採用してもよい。
すなわち、パターン指定直下の文書要素列を決定する処
理において、処理対象の文書要素をその文書要素直下の
文書要素列と置き換えて処理を進めることができるパタ
ーン指定やオートマトンを、他のパターン指定等と区別
できればよい。たとえば、上記の例で記号"+r"を伴わな
いパターン指定やオートマトンに記号"-r"を設定し、記
号"+r"を伴うパターン指定やオートマトンには記号を設
定しない表記法を採用することもできる。この場合で
も、第1の実施の形態で示した処理の流れにおいて記
号"+r"を扱う処理を適切に変更することにより、同一の
処理の流れを実現することが容易に可能である。
成処理(図9、図10に示す)の流れでは、SEQ パター
ン指定、CHO パターン指定、またはOPTREPパターン指定
に対応するオートマトンが生成される。しかし、オート
マトン生成処理を以下のように実現することで、正規表
現に対応するオートマトンを生成することも可能であ
る。その例を、第1の実施の形態に関する応用例として
以下に説明する。
例のオートマトン生成処理手順を示すフローチャートで
ある。この処理は、すべて階層オートマトン生成部13
が行う。 [S301]検索条件ノードに対応するオートマトンが
変数Tに含まれる場合には処理をステップS302へ進
め、そうでない場合は処理をステップS303へ進め
る。 [S302]入力の状態遷移から、検索条件ノードに対
応するオートマトンへの参照を生成し、処理を終了す
る。 [S303]オートマトンを生成し、入力の状態遷移か
らオートマトンへの参照を生成する。 [S304]入力の検索条件ノードのパターン指定に"+
r"が設定されているか否か判定し、設定されている場合
には処理をステップS305へ進め、そうでない場合に
は処理をステップS306へ進める。 [S305]生成したオートマトンに"+r"を設定する。 [S306]オートマトンに初期状態と受理状態を1つ
ずつ生成する。 [S307]検索条件ノードの正規表現とオートマトン
を引数にして属性変換文法評価処理を呼び出す。この処
理の詳細は、図36に示す。 [S308]ステップS307で生成されたオートマト
ンを変数Tに出力する。
示すフローチャートである。この処理は、すべて階層オ
ートマトン生成部13で行われる。また、この処理の入
力は正規表現とオートマトンであり、出力はオートマト
ンである。 [S311]「プログラミング言語処理系」(佐々政孝
著、岩波書店)65ページ図3.5記載の属性変換文法
で入力の正規表現を解析し、構文木を構成する。 [S312]構文木の根を処理対象とする。 [S313]処理対象に対応する生成規則を上記属性変
換文法から特定し、特定した生成規則に対応する操作を
行う。 [S314]ステップS313で特定された生成規則が
生成規則(2) であり、かつ、ステップS313で状態遷
移に対応付けられた述語と同一の検索条件ノードに正規
表現が含まれる場合には処理をステップS315へ進
め、そうでない場合には処理をステップS316へ進め
る。 [S315]ステップS313で生成された状態遷移
と、ステップS313で状態遷移に対応付けられた述語
と同一の検索条件ノードに含まれる正規表現を引数にし
て、図35のオートマトン生成処理を呼び出す。 [S316]構文木を前順に走査したときに処理対象の
次に走査される記号が存在すれば処理をステップS31
7へ進め、そうでなければステップS318に進む。 [S317]ステップS316の記号を処理対象とし、
処理をステップS313に進める。 [S318]オートマトンを出力し、処理を終了する。
ことで、検索条件ノードのパターン指定として任意の正
規表現を用いることができる。ただし、この場合の検索
条件ノードには常に述語が含まれる。
処理を以下のように実現することにより、検索条件ノー
ドのパターン指定として任意の正規表現を用いることが
できるだけでなく、検索条件中に述語を含まない検索条
件ノードを用いることが可能となる。
を示す図である。この処理は、図36の処理に代えて行
われ、すべての処理が階層オートマトン生成部13で行
われる。また、この処理の入力は正規表現とオートマト
ンであり、出力はオートマトンである。 [S321]「プログラミング言語処理系」(佐々政孝
著、岩波書店)65ページ図3.5記載の属性変換文法
で入力の正規表現を解析し、構文木を構成する。 [S322]構文木の根を処理対象とする。 [S323]処理対象に対応する生成規則を上記属性変
換文法から特定し、特定した生成規則に対応する操作を
行う。 [S324]ステップS323で状態遷移に対応付けら
れた検索条件ノードに正規表現が含まれる場合には処理
をステップS325へ進め、そうでない場合には処理を
ステップS326へ進める。 [S325]ステップS323で生成された状態遷移
と、ステップS323で状態遷移に対応付けられた述語
と同一の検索条件ノードに含まれる正規表現を引数にし
て、図35のオートマトン生成処理を呼び出す。 [S326]構文木を前順に走査したときに処理対象の
次に走査される記号が存在するか否かを判断する。存在
すれば処理をステップS327へ進め、そうでなければ
処理をステップS328に進める。 [S327]ステップS326の記号を処理対象とし、
処理をステップS323に進める。 [S328]オートマトンを出力し、処理を終了する。
る。第2の実施の形態における処理対象の構造化文書
は、図69の構造化文書である。第1の実施の形態で示
した文書処理装置に図5の検索条件と図69の文書92
を入力しても、識別子「002 」の文書要素が検索条件ノ
ード中の述語にマッチしないために参考文献エントリを
得ることができない。
の結果を得るため、本実施の形態の文書処理装置では、
検索条件のパターン指定に"+p"を設定することができる
ようにする。"+p"は、このパターン指定と文書要素との
マッチング中に、マッチング対象の文書要素を読み飛ば
してもよいことを意味する。
に示す。図38は、"+p"を用いて検索条件の例を示す図
である。この検索条件50は、図5の検索条件40のパ
ターン指定42に記号"+p"を追加し、パターン指定44
およびパターン指定46から記号"+r"を取り除いたもの
であり、文書要素を引数とする述語51,53,55,
57と、パターン指定52,54,56とで表されてい
る。
文書要素の前に出現する文書要素群、述語53にマッチ
する文書要素とパターン指定54にマッチする文書要素
列の間の文書要素群、及びパターン指定54にマッチす
る文書要素列の後に出現する文書要素群を読み飛ばして
マッチングを行うことが可能となる。具体的には、図6
9の文書に対する処理では識別子が「002 」、「003
」、「007 」、「008 」の文書要素を読み飛ばして所
望の文書要素を得ることができる。
現するための構成要素は、第1の実施の形態と同様であ
る。そのため、図2に示した構成を用いて第2の実施の
形態を説明する。第2の実施の形態では、"+p"を含む検
索条件を処理するため、本実施の形態の文書処理装置で
は、第1の実施の形態の文書処理装置のオートマトン生
成処理とオートマトンマッチング処理に以下の変更を施
した処理が実行される。
トマトン生成処理の手順を示すフローチャートである。
これは、第1の実施の形態の図9、図10の処理に代え
て階層オートマトン生成部13で行われる。 [S401]検索条件ノードに対応するオートマトンが
変数Tに含まれるか否かを判断する。変数Tに含まれる
場合は処理をステップS402へ進め、そうでない場合
は処理をステップS403へ進める。 [S402]入力の状態遷移から、検索条件ノードに対
応するオートマトンへの参照を生成し、処理を終了す
る。 [S403]オートマトンを生成し、入力の状態遷移か
らオートマトンへの参照を生成する。 [S404]入力の検索条件ノードのパターン指定に"+
p"が設定されているか否か判定し、設定されている場合
には処理をステップS405へ進め、そうでない場合に
は処理をステップS406へ進める。 [S405]生成したオートマトンに"+p"を設定する。 [S406]オートマトン上に初期状態と受理状態を生
成する。 [S407]検索条件ノードのパターン指定の種別を判
別する。パターン指定が"SEQ" なら処理をステップS4
08へ進め、"CHO" なら処理をステップS409へ進
め、"OPTREP"なら処理をステップS410へ進める。 [S408]オートマトンを引数にしてSEQ パターン指
定生成処理を呼び出す。その後、処理をステップS41
1に進める。なお、SEQ パターン指定生成処理の詳細
は、図11、図12に示した処理と同様である。 [S409]オートマトンを引数にしてCHO パターン指
定生成処理を呼び出す。その後、処理をステップS41
1に進める。なお、CHO パターン指定生成処理の詳細
は、図13に示した処理と同様である。 [S410]オートマトンを引数にしてOPTREPパターン
指定生成処理を呼び出す。その後、処理をステップS4
11に進める。なお、OPTREPパターン指定生成処理の詳
細は、図14に示した処理と同様である。 [S411]各生成処理の返り値のオートマトンを変数
Tに格納する。
のオートマトン生成処理に入力した結果出力される階層
オートマトンを以下に示す。図40は、第2の実施の形
態の文書処理装置により生成された階層オートマトンを
示す図である。階層オートマトン500は、4つのオー
トマトン510,520,530,540からなる。各
オートマトン510,520,530,540の状態
と、状態遷移とには、図6の例と同様の識別子が割り振
られている。
トン520の右上に"P" が設定されている。この記号
は、オートマトン上でマッチング対象の文書要素を読み
飛ばしてもよいことを意味する。
ッチング処理は、以下のように変更される。図41は、
第2の実施の形態におけるオートマトンマッチング処理
の手順を示すフローチャートの前半である。この処理
は、第1の実施の形態の図16〜図18の処理に代えて
行われる。 [S421]入力の文書要素がスタック先頭の文書要素
であるか否かを判断する。スタック先頭の文書要素であ
れば処理をステップS422へ進め、そうでない場合は
処理をステップS426に進める。 [S422]入力の状態とスタック先頭の状態を引数に
した到達可能状態特定処理の返り値である状態の集合
に、スタック先頭の状態が含まれるか否かを判断する。
スタック先頭の状態が含まれる場合は処理をステップS
423に進め、そうでない場合は処理を終了する。 [S423]スタック先頭の文書要素と状態の組をpop
し、入力の状態をpop した状態と置き換える。 [S424]スタックが空であるか否かを判定し、空の
場合は処理をステップS425へ進め、そうでない場合
は処理をステップS426へ進める。 [S425]変数Vに入力の文書要素セットを書き出
す。 [S426]入力の状態を引数にしてマッチング可能状
態遷移特定処理を起動した結果の返り値の状態遷移を変
数Xに格納する。マッチング可能状態遷移特定処理の詳
細は、図22に示す通りである。 [S427]変数Xのすべての状態遷移が処理済みの場
合は処理を終了し、そうでない場合は処理をステップS
428に進める。 [S428]変数Xの未処理の状態遷移の1つを処理対
象とする。 [S429]処理対象の状態遷移と入力の文書要素を引
数として文書要素マッチング処理を呼び出し、返り値の
値を判断する。返り値が真なら処理をステップS430
に進め、返り値が偽なら処理をステップS437に進め
る。なお、文書要素マッチング処理の詳細は、図24に
示す通りである。 [S430]入力の文書要素セットのコピーを作成し、
文書要素セットのコピーに入力の文書要素を追加する。
トマトンマッチング処理の手順を示すフローチャートの
後半である。 [S431]入力の文書要素を引数にして次要素特定処
理を起動した結果の返り値が入力の文書要素の長子であ
るか否かを判定する。長子である場合は処理をステップ
S432に進め、そうでない場合は処理をステップS4
36に進める。なお、次要素特定処理の詳細は、図25
に示す通りである。 [S432]処理対象の状態遷移がオートマトンを参照
しているか否か判定し、参照している場合は処理をステ
ップS433へ進め、そうでない場合は処理をステップ
S436へ進める。 [S433]スタックのコピーを作成する。 [S434]スタックのコピーに、処理対象の状態遷移
の終了端の状態と、入力の文書要素を引数とした弟要素
特定処理の返り値の組をpushする。 [S435]処理対象の状態遷移が参照するオートマト
ンの初期状態を引数として到達可能状態特定処理を呼び
出した場合の返り値の状態ごとに、入力の文書要素の長
子と、返り値の状態と、ステップS430で作成した文
書要素セットのコピーと、ステップS434で作成した
スタックのコピーを入力としてオートマトンマッチング
処理を呼び出す。その後、処理をステップS437に進
める。 [S436]処理対象の状態遷移の終了端の状態を引数
として到達可能状態特定処理を呼び出した場合の返り値
の状態ごとに、入力の文書要素を引数として弟要素特定
処理を起動した結果の返り値と、返り値の状態と、ステ
ップS430で作成した文書要素セットのコピーと、入
力のスタックのコピーを入力としてオートマトンマッチ
ング処理を呼び出す。 [S437]処理対象の状態遷移が属するオートマトン
に"+p"が記されているか否か判定し、記されている場合
は処理をステップS438へ進め、そうでない場合は処
理をステップS427に進める。 [S438]入力の状態、入力の文書要素を弟要素特定
処理に入力した場合の返り値の文書要素、入力の文書要
素セットのコピー、入力のスタックのコピーを入力とし
てオートマトンマッチング処理を呼び出す。その後、処
理をステップS427に進める。
69の構造化文書と図40の階層オートマトンを入力し
たときのオートマトンマッチング処理の呼び出し関係を
以下に示す。
トマッチング処理の呼び出し関係を示す第1の図であ
る。また、図44は、第2の実施の形態におけるオート
マッチング処理の呼び出し関係を示す第2の図である。
図43、図44の表記法は図27、図28の表記法と同
一であり、ノード601〜614はオートマトンマッチ
ング処理を意味する。なお、簡単のため、図43、図4
4では文書要素セット(001,004,005,006) の出力に至る
呼び出し関係のみを示し、文書要素セット(001,004) お
よび文書要素セット(001,004,005) の出力に至る呼び出
し関係は省略してある。
が実行されるオートマトン(図40のオートマトン52
0)に記号"+p"が設定されているため、ノード603の
処理およびノード604の処理が呼び出される。この呼
び出しにより、識別子が「002 」の文書要素および識別
子が「003 」の文書要素を読み飛ばし、識別子が「004
」、「005 」、「006 」の文書要素を対象としたオー
トマトンマッチング処理を呼び出すことを可能としてい
る。さらに、ノード611の処理が実行されているオー
トマトン(図40のオートマトン520)に記号"+p"が
設定されているため、ノード612の処理およびノード
614の処理が呼び出される。この呼び出しにより、識
別子が「007 」の文書要素と「008 」の文書要素を読み
飛ばすことができる。この結果、識別子が「005 」の文
書要素と「006 」の文書要素を参考文献エントリとして
得ることができる。
検索条件を第2の実施の形態の文書処理装置に入力した
結果得られるマッチング部の出力を示す図である。この
ように、第2の実施の形態によれば、図69のような文
書の中からも、図38の検索条件に適合する構造を抽出
することができる。また、第1の実施の形態の応用例
(図35に示す)と同様の変更を、第2の実施の形態に
対して行うこともできる。そのような、第2の実施の形
態に対する応用例を以下に示す。
るオートマトン生成処理のフローチャートである。これ
は、図39の処理に代えて階層オートマトン生成部13
で行われる処理である。 [S501]検索条件ノードに対応するオートマトンが
変数Tに含まれるか否かを判断する。変数Tに含まれる
場合には処理をステップS502へ進め、そうでない場
合は処理をステップS503へ進める。 [S502]入力の状態遷移から、検索条件ノードに対
応するオートマトンへの参照を生成し、処理を終了す
る。 [S503]オートマトンを生成し、入力の状態遷移か
らオートマトンへの参照を生成する。 [S504]入力の検索条件ノードのパターン指定に"+
p"が設定されているか否か判定する。"+p"が設定されて
いる場合には処理をステップS505へ進め、そうでな
い場合には処理をステップS506へ進める。 [S505]生成したオートマトンに"+p"を設定する。 [S506]オートマトンに初期状態と受理状態を1つ
ずつ生成する。 [S507]検索条件ノードの正規表現とオートマトン
を引数にして属性変換文法評価処理を呼び出す。 [S508]ステップS507で生成されたオートマト
ンを変数Tに出力し、処理を終了する。
例と同様の変更を、第2の実施の形態に対して行うこと
ができる。次に、第3の実施の形態について説明する。
第3の実施の形態は、第1の実施の形態の機能と、第2
の実施の形態の機能とを併せ持った文書処理装置であ
る。
想定している構造化文書は、次のような文書である。図
47は、構造化文書の第4の例を示す図である。第1の
実施の形態で示した文書処理装置に図5の検索条件40
と図47の文書94を入力しても、識別子「007 」のPA
RA要素が検索条件ノード中の述語にマッチしないために
参考文献エントリを得ることができない。また、第2の
実施の形態で示した文書処理装置に図5の検索条件40
と図47の文書94を入力しても、識別子「008 」のLI
ST要素が検索条件ノード中の述語にマッチしないために
参考文献エントリを得ることができない。
の結果を得るため、第3の実施の形態の文書処理装置で
は、検索条件のパターン指定に"+r"と"+p"の両方を設定
することができるようにする。
を示す図である。図48の検索条件60は、図5の検索
条件40のパターン指定42に記号"+p"を追加したもの
であり、文書要素を引数とする述語61,63,65,
67と、パターン指定62,64,66とで表されてい
る。この追加により、述語63にマッチする文書要素の
前に出現する文書要素群、述語63にマッチする文書要
素とパターン指定64にマッチする文書要素列の間の文
書要素群、及びパターン指定64にマッチする文書要素
列の後に出現する文書要素群を読み飛ばしてマッチング
を行うことが可能となる。具体的には、図47の文書9
4に対する処理では識別子「007 」「009 」の文書要素
を読み飛ばして所望の文書要素を得ることができる。
するため、第3の実施の形態の文書処理装置では、第1
の実施の形態の文書処理装置のオートマトン生成処理と
オートマトンマッチング処理に以下の変更を施した処理
が実行される。なお、第3の実施の形態に係る文書処理
装置に必要な構成要素は、第1の実施の形態と同様であ
るため、図2に示した構成を用いて第3の実施の形態を
説明する。
トマトン生成処理手順を示すフローチャートである。こ
の処理は、第1の実施の形態のオートマトン生成処理
(図9、図10に示す)に代えて行われる処理であり、
すべて階層オートマトン生成部13で行われる。 [S601]検索条件ノードに対応するオートマトンが
変数Tに含まれるか否かを判断し、変数Tに含まれる場
合は処理をステップS602へ進め、そうでない場合は
処理をステップS603へ進める。 [S602]入力の状態遷移から、検索条件ノードに対
応するオートマトンへの参照を生成し、処理を終了す
る。 [S603]オートマトンを生成し、入力の状態遷移か
らオートマトンへの参照を生成する。 [S604]入力の検索条件ノードのパターン指定に"+
r"が設定されているか否か判定し、設定されている場合
には処理をステップS605へ進め、そうでない場合に
は処理をステップS606へ進める。 [S605]生成したオートマトンに"+r"を設定する。 [S606]入力の検索条件ノードのパターン指定に"+
p"が設定されているか否か判定し、設定されている場合
には処理をステップS607へ進め、そうでない場合に
は処理をステップS608へ進める。 [S607]生成したオートマトンに"+p"を設定する。 [S608]オートマトン上に初期状態と受理状態を生
成する。 [S609]検索条件ノードのパターン指定の種別を判
別する。パターン指定が"SEQ" なら処理をステップS6
10へ進め、"CHO" なら処理をステップS611へ進
め、"OPTREP"なら処理をステップS612へ進める。 [S610]オートマトンを引数にしてSEQ パターン指
定生成処理を呼び出す。その後、処理をステップS61
3に進める。なお、SEQ パターン指定生成処理の詳細
は、図11、図12に示した処理と同様である。 [S611]オートマトンを引数にしてCHO パターン指
定生成処理を呼び出す。その後、処理をステップS61
3に進める。なお、CHO パターン指定生成処理の詳細
は、図13に示した処理と同様である。 [S612]オートマトンを引数にしてOPTREPパターン
指定生成処理を呼び出す。なお、OPTREPパターン指定生
成処理の詳細は、図14に示した処理と同様である。 [S613]各生成処理の返り値のオートマトンを変数
Tに格納する。
用した検索条件に対する階層オートマトンが生成され
る。図50は、第3の実施の形態の文書処理装置により
生成された階層オートマトンを示す図である。これは、
図48の検索条件を第3の実施の形態のオートマトン生
成処理に入力した結果出力される階層オートマトン70
0である。この階層オートマトン700は、4つのオー
トマトン710,720,730,740で構成され
る。オートマトン720には"+p"の記号が付与されてお
り、オートマトン730,740には"+r"の記号が付与
されている。
てオートマトンマッチング処理が行われる。オートマト
ンマッチング処理は以下のように変更される。図51
は、第3の実施の形態におけるオートマトンマッチング
処理の手順を示すフローチャートの前半である。この処
理は、第1の実施の形態のオートマトンマッチング処理
(図16〜図18)に代えて、マッチング部14によっ
て行われる処理である。 [S621]入力の文書要素がスタック先頭の文書要素
であるか否かを判断する。スタック先頭の文書要素であ
れば処理をステップS622へ進め、そうでない場合は
処理をステップS626に進める。 [S622]入力の状態とスタック先頭の状態を引数に
した到達可能状態特定処理の返り値である状態の集合
に、スタック先頭の状態が含まれるか否かを判断する。
含まれる場合は処理をステップS623に進め、そうで
ない場合は処理を終了する。なお、到達可能状態特定処
理の詳細は、図19に示す通りである。 [S623]スタック先頭の文書要素と状態の組をpop
し、入力の状態をpop した状態と置き換える。 [S624]スタックが空であるか否かを判定し、空の
場合は処理をステップS625へ進め、そうでない場合
は処理をステップS626へ進める。 [S625]変数Vに入力の文書要素セットを書き出
す。 [S626]入力の状態を引数にしてマッチング可能状
態遷移特定処理を起動した結果の返り値の状態遷移を変
数Xに格納する。マッチング可能状態遷移特定処理の詳
細は、図22に示す通りである。 [S627]変数Xのすべての状態遷移が処理済みであ
るか否かを判断し、処理済みの場合は処理を終了し、そ
うでない場合は処理をステップS628に進める。 [S827]変数Xの未処理の状態遷移の1つを処理対
象とする。 [S629]処理対象の状態遷移と入力の文書要素を引
数として文書要素マッチング処理を呼び出し、返り値を
判断する。返り値が真なら処理をステップS630に進
め、偽なら処理をステップS637に進める。なお、文
書要素マッチング処理の詳細は、図24に示す通りであ
る。 [S630]入力の文書要素セットのコピーを作成し、
文書要素セットのコピーに入力の文書要素を追加する。
トマトンマッチング処理の手順を示すフローチャートの
後半である。 [S631]入力の文書要素を引数にして次要素特定処
理を起動した結果の返り値が入力の文書要素の長子であ
るか否かを判定する。返り値が長子である場合は処理を
ステップS632に進め、そうでない場合は処理をステ
ップS636に進める。なお、次要素特定処理の詳細
は、図25に示す通りである。 [S632]処理対象の状態遷移がオートマトンを参照
しているか否か判定し、参照している場合は処理をステ
ップS633へ進め、そうでない場合は処理をステップ
S636へ進める。 [S633]スタックのコピーを作成する。 [S634]スタックのコピーに、処理対象の状態遷移
の終了端の状態と、入力の文書要素を引数とした弟要素
特定処理の返り値の組をpushする。 [S635]処理対象の状態遷移が参照するオートマト
ンの初期状態を引数として到達可能状態特定処理を呼び
出した場合の返り値の状態ごとに、入力の文書要素の長
子と、返り値の状態と、ステップS630で作成した文
書要素セットのコピーと、ステップS634で作成した
スタックのコピーとを入力としてオートマトンマッチン
グ処理を呼び出し、処理をステップS637に進める。 [S636]処理対象の状態遷移の終了端の状態を引数
として到達可能状態特定処理を呼び出した場合の返り値
の状態ごとに、入力の文書要素を引数として弟要素特定
処理を起動した結果の返り値と、返り値の状態と、ステ
ップS630で作成した文書要素セットのコピーと、入
力のスタックのコピーを入力としてオートマトンマッチ
ング処理を呼び出す。 [S637]処理対象の状態遷移が属するオートマトン
に"+r"が記されているか否か判定し、記されている場合
は処理をステップS638へ進め、そうでない場合は処
理をステップS640に進める。 [S638]入力の文書要素を引数にして次要素特定処
理を起動した結果の返り値が入力の文書要素の長子であ
るか否か判定し、長子である場合は処理をステップS6
39に、そうでない場合は処理をステップS640に進
める。 [S639]入力の状態、入力の文書要素の長子の文書
要素、入力の文書要素セットのコピー、入力のスタック
のコピーを入力としてオートマトンマッチング処理を呼
び出す。 [S640]処理対象の状態遷移が属するオートマトン
に"+p"が記されているか否か判定し、記されている場合
はステップS641へ進め、そうでない場合は処理をS
627に進める。 [S641]入力の状態、入力の文書要素を弟要素特定
処理に入力した場合の返り値の文書要素、入力の文書要
素セットのコピー、入力のスタックのコピーを入力とし
てオートマトンマッチング処理を呼び出す。その後、処
理をステップS627に進める。
14に図47の文書94と図50の階層オートマトン7
00を入力したときの、オートマトンマッチング処理の
呼び出し関係を示す。
トマトンマッチング処理の呼び出し関係を示す第1の図
である。また、図54は、第3の実施の形態におけるオ
ートマッチング処理の呼び出し関係を示す第2の図であ
る。図53、図43の表記法は図27、図28の表記法
と同一であり、ノード801〜813はオートマトンマ
ッチング処理を意味する。なお、簡単のため、図53、
図54では、オートマトンマッチング処理に4つ組(11,
005,NULL,NULL)が入力された時点からの呼び出し関係の
みを示す。さらに、文書要素セット(005,006,009,010)
の出力に至る呼び出し関係のみを示し、文書要素セット
(005,006) および文書要素セット(005,006,009) の出力
に至る呼び出し関係は省略してある。
が実行されるオートマトン(図50のオートマトン72
0)に記号"+p"が設定されているため、識別子「007 」
の文書要素を読み飛ばしてノード803の処理を呼び出
すことができる。また、ノード805の処理が実行され
るオートマトン(図50のオートマトン730)に記
号"+r が設定されているため、識別子「008 」の文書要
素を読み飛ばしてノード806の処理を呼び出すことが
できる。さらに、ノード811の処理が実行されるオー
トマトン(図50のオートマトン720)に記号"+p"が
設定されているため、識別子「011 」の文書要素を読み
飛ばしてノード812の処理を呼び出し、結果的に識別
子「009 」の文書要素と識別子「010 」の文書要素を参
考文献エントリとして得ることができる。
チング部の出力例を示す図である。これは、図47の構
造化文書と図48の検索条件を本実施例の文書処理装置
に入力した結果得られるマッチング部の出力結果であ
る。
2の実施の形態の機能とを兼ね備えることで、様々な構
造化文書の中から、利用者の意図に合った部分構造をマ
ッチング処理により検出することができる。
した応用例(図35に示す)と同様の応用を、第3の実
施の形態に対して行うこともできる。その場合図35に
示したオートマトン生成処理は以下のように変更され
る。
ン生成処理に関する応用例を示すフローチャートであ
る。この処理は、図49の処理に代えて階層オートマト
ン生成部13で行われる処理である。 [S701]検索条件ノードに対応するオートマトンが
変数Tに含まれるか否かを判断し、変数Tに含まれる場
合には処理をステップS702へ進め、そうでない場合
は処理をステップS703へ進める。 [S702]入力の状態遷移から、検索条件ノードに対
応するオートマトンへの参照を生成し、処理を終了す
る。 [S703]オートマトンを生成し、入力の状態遷移か
らオートマトンへの参照を生成する。 [S704]入力の検索条件ノードのパターン指定に"+
r"が設定されているか否か判定し、設定されている場合
には処理をステップS705へ進め、そうでない場合に
は処理をステップS706へ進める。 [S705]生成したオートマトンに"+r"を設定する。 [S706]入力の検索条件ノードのパターン指定に"+
p"が設定されているか否か判定し、設定されている場合
には処理をステップS707へ進め、そうでない場合に
は処理をステップS708へ進める。 [S707]生成したオートマトンに"+p"を設定する。 [S708]オートマトンに初期状態と受理状態を1つ
ずつ生成する。 [S709]検索条件ノードの正規表現とオートマトン
を引数にして属性変換文法評価処理を呼び出す。 [S710]ステップS707で生成されたオートマト
ンを、変数Tに出力する。
る。第4の実施の形態は、要素に対して属性が与えられ
ている場合に、その属性を、該当する要素の子孫に対し
て継承させながらマッチングを行うものである。
化文書を処理対象として想定している。図57は、構造
化文書の第5の例を示す図である。この文書95の一部
の文書要素には、名前だけでなく属性も設定されてい
る。たとえば識別子「003 」の文書要素では、要素名と
して"LIST"が設定されているだけでなく、属性として"A
LIGN="C"" が設定されている。本実施例では、文書要素
の属性ALIGN はその文書要素を頂点とする部分木に対応
する文書内容を表示するときの配置を規定するものとす
る。そして、属性値"C" は、文書内容がセンタリングさ
れて表示されることを意味するものとする。
を得るための検索条件を以下に示す。図58は、第4の
実施の形態に用いる検索条件を示す図である。この検索
条件70は、文書要素を引数とする述語71,73,7
5,77と、パターン指定72,74,76とで表され
ている。検索条件70の述語73,75,77には、"C
ONTENT" と"ATTR"という2種類の条件が示されてい
る。"CONTENT" は文書要素の内容に関する条件を意味
し、"ATTR"は文書要素の属性に関する条件を意味する。
たとえば図58の検索条件の述語73に示されている条
件は「" 参考文献" または"References"を内容に含み、
属性ALIGN の値が"C" である文書要素」となる。
成される階層オートマトンを示す図である。この階層オ
ートマトン800は、4つのオートマトン810,82
0,830,840からなる。
装置構成および処理の流れは、基本的には第3の実施の
形態で示したものと同一である。ただし、図48に示し
た検索条件を処理できるようにするため、図51、図5
2のオートマトンマッチング処理は次のように変更され
る。
ンマッチング処理手順を示す第1のフローチャートであ
る。 [S801]入力の文書要素がスタック先頭の文書要素
であるか否かを判断し、スタック先頭の文書要素である
場合は処理をステップS802へ進め、そうでない場合
は処理をステップS806に進める。 [S802]入力の状態とスタック先頭の状態を引数に
した到達可能状態特定処理の返り値である状態の集合
に、スタック先頭の状態が含まれるか否かを判断する。
スタック先頭の状態が含まれる場合は処理をステップS
803に進め、そうでない場合は処理を終了する。 [S803]スタック先頭の文書要素と状態の組をpop
し、入力の状態をpop した状態と置き換える。 [S804]スタックが空であるか否かを判定し、空の
場合は処理をステップS805へ進め、そうでない場合
は処理をステップS806へ進める。 [S805]変数Vに入力の文書要素セットを書き出
す。 [S806]入力の状態を引数にしてマッチング可能状
態遷移特定処理を起動した結果の返り値の状態遷移を変
数Xに格納する。なお、マッチング可能状態遷移特定処
理の詳細は、図22に示す通りである。 [S807]変数Xのすべての状態遷移が処理済みか否
かを判断し、処理済みの場合は処理を終了し、そうでな
い場合は処理をステップS808に進める。 [S808]変数Xの未処理の状態遷移の1つを処理対
象とする。 [S809]処理対象の状態遷移と入力の文書要素を引
数として文書要素マッチング処理を呼び出し、返り値が
真なら処理をステップS810に進め、偽なら処理をス
テップS817に進める。文書要素マッチング処理の詳
細は、図63に示す。
ンマッチング処理手順を示す第2のフローチャートであ
る。 [S810]入力の文書要素セットのコピーを作成し、
文書要素セットのコピーに入力の文書要素を追加する。 [S811]入力の文書要素を引数にして次要素特定処
理を起動した結果の返り値が入力の文書要素の長子であ
るか否かを判定し、長子である場合は処理をステップS
812に進め、そうでない場合は処理をステップS81
6に進める。 [S812]処理対象の状態遷移がオートマトンを参照
しているか否か判定し、参照している場合は処理をステ
ップS813へ進め、そうでない場合は処理をステップ
S816へ進める。 [S813]スタックのコピーを作成する。 [S814]スタックのコピーに、処理対象の状態遷移
の終了端の状態と、入力の文書要素を引数とした弟要素
特定処理の返り値の組をpushする。 [S815]処理対象の状態遷移が参照するオートマト
ンの初期状態を引数として到達可能状態特定処理を呼び
出した場合の返り値の状態ごとに、入力の文書要素の長
子と、返り値の状態と、ステップS810で作成した文
書要素セットのコピーと、ステップS814で作成した
スタックのコピーを入力としてオートマトンマッチング
処理を呼び出し、処理をステップS817に進める。 [S816]処理対象の状態遷移の終了端の状態を引数
として到達可能状態特定処理を呼び出した場合の返り値
の状態ごとに、入力の文書要素を引数として弟要素特定
処理を起動した結果の返り値と、返り値の状態と、ステ
ップS810で作成した文書要素セットのコピーと、入
力のスタックのコピーを入力としてオートマトンマッチ
ング処理を呼び出す。 [S817]処理対象の状態遷移が属するオートマトン
に"+r"が記されているか否か判定し、記されている場合
は処理をステップS818へ進め、そうでない場合は処
理を終了する。 [S818]入力の文書要素を引数にして次要素特定処
理を起動した結果の返り値が入力の文書要素の長子であ
るか否か判定し、長子である場合は処理をステップS8
19に進め、そうでない場合は処理をステップS821
に進める。 [S819]入力の文書要素に設定されている属性を入
力の文書要素の子供の文書要素に設定する。
ンマッチング処理手順を示す第3のフローチャートであ
る。 [S820]入力の状態、入力の文書要素の長子の文書
要素、入力の文書要素セットのコピー、入力のスタック
のコピーを入力としてオートマトンマッチング処理を呼
び出す。 [S821]処理対象の状態遷移が属するオートマトン
に"+p"が記されているか否か判定し、記されている場合
は処理をステップS822へ進め、そうでない場合は処
理をステップS807に進める。 [S822]入力の状態、入力の文書要素を弟要素特定
処理に入力した場合の返り値の文書要素、入力の文書要
素セットのコピー、入力のスタックのコピーを入力とし
てオートマトンマッチング処理を呼び出す。その後、処
理をステップS807に進める。
図52の処理の流れにステップS819の処理が追加さ
れたものである。また、図24の文書要素マッチング処
理は以下のように変更される。
要素マッチング処理の手順を示すフローチャートであ
る。この処理は、すべてマッチング部14によって行わ
れる。 [S831]文書要素に対応付けられた文書内容の文字
列が、状態遷移に対応付けられた述語のCONTENT エント
リの文字列パターンにマッチするか否かを判断する。マ
ッチする場合は処理をステップS832へ進め、そうで
ない場合は処理をステップS834に進める。 [S832]状態遷移に対応付けられた属性の名前と値
の組が、文書要素に対応付けられた述語のATTRエントリ
の属性の名前と値の組の中に存在するか否かを判断す
る。存在する場合は処理をステップS833へ進め、そ
うでない場合は処理をステップS834に進める。 [S833]真を返し、処理を終了する。 [S834]偽を返し、処理を終了する。
14に図57に示す文書95と図59に示す階層オート
マトン800とを入力した際の、オートマトンマッチン
グ処理の呼び出し関係を以下に示す。
し関係を示す図である。図64の表記法は図27、図2
8などの表記法と同一であり、ノード901〜905は
オートマトンマッチング処理を意味する。なお、図64
では、本実施の形態の文書処理装置の特徴的な処理の流
れを説明するのに必要な呼び出し関係のみを示してい
る。
ード902の処理が実行されるオートマトン(図59の
オートマトン820)に記号"+p"が設定されているた
め、識別子「003 」の文書要素から識別子「009 」の文
書要素を読み飛ばし、識別子「010 」文書要素を処理対
象とすることができる(ノード903の処理)。ここ
で、第3の実施の形態の文書処理装置では、識別子「00
1 」の文書要素をマッチングの対象にするか、識別子
「010 」の文書要素を読み飛ばして識別子「011 」の文
書要素をマッチング対象にすることしかできなかった。
そのため、識別子「3a」の状態遷移の条件を満足する
文書要素を得ることはできない。
では、識別子「010 」の文書要素の属性を識別子「011
」の文書要素に追加して得られる文書要素をマッチン
グの対象とすることができる(ノード904の処理)。
したがって、識別子「011 」の文書要素を識別子「3
a」の状態遷移とマッチさせ、識別子「012 」の文書要
素以降を対象とした処理を続けることができる。そし
て、結果的に、識別子「013」の文書要素と識別子「014
」の文書要素とを参考文献エントリとして得ることが
できる。
る。第5の実施の形態は、検索条件に適合した構造の内
容を、別の内容に置き換えて出力するようにしたもので
ある。構造化文書を対象とした処理では、処理対象の文
書の部分構造を検索するだけでなく、検索された部分構
造の文書要素の名前や属性を変換することにより、文書
作成時に想定された用途以外の用途に利用することが行
われている。この処理に対応するため、第5の実施の形
態の文書処理装置では、第3の実施の形態の文書処理装
置の入力となる検索条件の述語に、述語にマッチした文
書要素に設定すべき名前や属性を対応付けておく。この
ような検索条件の例を以下に示す。
条件を示す図である。この検索条件80は、文書要素を
引数とする述語81,84,86,88と、パターン指
定82,83,85,87とで表されている。図65の
述語に対応する矩形には、記号" →" に続いて文字列が
記載されている。これは、述語にマッチした文書要素の
名前を" →" に続く文字列に置き換えることを意味す
る。
装置構成および処理の流れは、第3の実施の形態におけ
る装置構成および処理の流れと基本的に同一である。唯
一の差異は、図51に示したオートマトンマッチング処
理のステップS630が、以下のように変更される点で
ある。 [S630a]入力の文書要素セットのコピーを作成
し、入力の状態遷移に対応する検索条件ノードに設定さ
れた名前や属性を入力の文書要素のコピーに設定して、
このコピーを文書要素セットのコピーに追加する。
図65の検索条件と図69の構造化文書を入力した場合
のオートマトンマッチング処理の呼び出し関係を、以下
に示す。
し関係を示す図である。図66の表記法は図27、図2
8などの表記法と同一であり、ノード1001〜100
8はオートマトンマッチング処理を意味する。図66の
呼び出し関係は図43、図44の呼び出し関係と基本的
に同一であるが、処理呼び出し時の第3引数の文書要素
セットには、文書要素識別子と文書要素に設定された要
素名が記号"-" で接続されたものが記されている。たと
えば、ノード1002の処理の第3引数である「001-"
参考文献" 」は、「文書要素セットがマッチング部から
出力されるときには、識別子「001 」である文書要素
(DOC 要素)の名前を" 参考文献" に変更して出力する
こと」を意味する。
に図65の検索条件と図69の構造化文書を入力した結
果得られる文書要素セット(001,004,005,006) について
ディスプレイに表示されるイメージの例を以下に示す。
される画面を示す図である。この画面430は図33と
同様に、部分構造表示部431と適合内容表示部432
とで構成されている。そして、部分構造表示部431の
表示内容は、要素名が置き換えられた状態で表示されて
いる。
処理の流れは、第3の実施の形態における文書処理装置
との差異を示すことによって説明した。しかし、他の実
施例における文書処理装置に対しても、上記の説明で示
した変更と同様の変更を施すことで、図65の検索条件
を処理することが可能となる。
よって実現することができる。その場合、データ処理装
置及び文書処理装置が有すべき機能の処理内容は、コン
ピュータで読み取り可能な記録媒体に記録されたプログ
ラムに記述しておく。そして、このプログラムをコンピ
ュータで実行することにより、上記処理がコンピュータ
で実現される。コンピュータで読み取り可能な記録媒体
としては、磁気記録装置や半導体メモリ等がある。市場
に流通させる場合には、CD−ROM(CompactDisk Rea
d Only Memory) やフロッピーディスク等の可搬型記録
媒体にプログラムを格納して流通させたり、ネットワー
クを介して接続されたコンピュータの記憶装置に格納し
ておき、ネットワークを通じて他のコンピュータに転送
することもできる。コンピュータで実行する際には、コ
ンピュータ内のハードディスク装置等にプログラムを格
納しておき、メインメモリにロードして実行する。
タ処理装置では、有向順序木の中間ノードを削除し、中
間ノードのあった位置に中間ノード直下のノード列を配
置する操作を行った結果得られる均質化有向順序木を処
理対象として、検索条件に対する適合構造の抽出を行う
ようにしたため、論理構造が異なる多数の情報に対する
検索を行う際においても、ノード間の接続関係を利用し
た検索条件を利用できる。
は、有向順序木中のいずれかのノードを頂点とする部分
木を削除する操作を行った結果得られる均質化有向順序
木を処理対象として、検索条件に対する適合構造の抽出
を行うようにしたため、論理構造が異なる多数の情報に
対する検索を行う際においても、ノード間の接続関係を
利用した検索条件を利用できる。
有向順序木の中間ノードを削除し、中間ノードのあった
位置に中間ノード直下のノード列を配置する操作を行っ
た結果得られる均質化有向順序木を処理対象として、検
索条件に対する適合構造の抽出を行うようにしたため、
論理構造が異なる多数の構造化文書に対する検索を行う
際においても、文書要素間の接続関係を利用した検索条
件を利用できる。
有向順序木中のいずれかのノードを頂点とする部分木を
削除する操作を行った結果得られる均質化有向順序木を
処理対象として、検索条件に対する適合構造の抽出を行
うようにしたため、論理構造が異なる多数の構造化文書
に対する検索を行う際においても、文書要素間の接続関
係を利用した検索条件を利用できる。
ムを記録したコンピュータ読み取り可能な記録媒体で
は、有向順序木の中間ノードを削除し、中間ノードのあ
った位置に中間ノード直下のノード列を配置する操作を
行った結果得られる均質化有向順序木を処理対象とし
て、検索条件に対する適合構造の抽出を行うような処理
をコンピュータに行わせることができるため、ノード間
の接続関係を利用した検索条件を利用して論理構造が異
なる多数の情報に対する検索を行う機能を、コンピュー
タ上に構築することができる。
ムを記録したコンピュータ読み取り可能な記録媒体で
は、有向順序木中のいずれかのノードを頂点とする部分
木を削除する操作を行った結果得られる均質化有向順序
木を処理対象として、検索条件に対する適合構造の抽出
を行うような処理をコンピュータに行わせることができ
るため、ノード間の接続関係を利用した検索条件を利用
して論理構造が異なる多数の情報に対する検索を行う機
能を、コンピュータ上に構築することができる。
を記録したコンピュータ読み取り可能な記録媒体では、
有向順序木の中間ノードを削除し、中間ノードのあった
位置に中間ノード直下のノード列を配置する操作を行っ
た結果得られる均質化有向順序木を処理対象として、検
索条件に対する適合構造の抽出を行うような処理をコン
ピュータに行わせることができるため、ノード間の接続
関係を利用した検索条件を利用して論理構造が異なる多
数の構造化文書に対する検索を行う機能を、コンピュー
タ上に構築することができる。
を記録したコンピュータ読み取り可能な記録媒体では、
有向順序木中のいずれかのノードを頂点とする部分木を
削除する操作を行った結果得られる均質化有向順序木を
処理対象として、検索条件に対する適合構造の抽出を行
うような処理をコンピュータに行わせることができるた
め、ノード間の接続関係を利用した検索条件を利用して
論理構造が異なる多数の構造化文書に対する検索を行う
機能を、コンピュータ上に構築することができる。
ある。
トである。
る。
すフローチャートである。
ャートである。
ートの前半である。
ャートの後半である。
ャートの前半である。
ャートの後半である。
ャートである。
チャートである。
ートである。
1のフローチャートである。
2のフローチャートである。
3のフローチャートである。
チャートである。
である。
である。
示すフローチャートである。
チャートである。
ーチャートである。
トである。
トである。
を示す第1の図である。
を示す第2の図である。
示す第1の図である。
示す第2の図である。
マッチング部に入力した結果得られる文書要素セットを
示す図である。
ッチング部に入力した結果得られる文書要素セットを示
す図である。
にCRTディスプレイに表示される画面を示す図であ
る。
CRTディスプレイに表示される画面を示す図である。
マトン生成処理手順を示すフローチャートである。
チャートである。
ある。
る。
成処理の手順を示すフローチャートである。
成された階層オートマトンを示す図である。
ッチング処理の手順を示すフローチャートの前半であ
る。
ッチング処理の手順を示すフローチャートの後半であ
る。
グ処理の呼び出し関係を示す第1の図である。
グ処理の呼び出し関係を示す第2の図である。
第2の実施の形態の文書処理装置に入力した結果得られ
るマッチング部の出力を示す図である。
トン生成処理のフローチャートである。
ある。
成処理手順を示すフローチャートである。
成された階層オートマトンを示す図である。
ッチング処理の手順を示すフローチャートの前半であ
る。
ッチング処理の手順を示すフローチャートの後半であ
る。
グ処理の呼び出し関係を示す第1の図である。
グ処理の呼び出し関係を示す第2の図である。
出力例を示す図である。
に関する応用例を示すフローチャートである。
図である。
層オートマトンを示す図である。
グ処理手順を示す第1のフローチャートである。
グ処理手順を示す第2のフローチャートである。
グ処理手順を示す第3のフローチャートである。
ング処理の手順を示すフローチャートである。
す図である。
図である。
す図である。
を示す図である。
Claims (14)
- 【請求項1】 有向順序木で表現された情報に対する処
理を行うデータ処理装置において、 有向順序木で表現された処理対象情報を格納する情報格
納手段と、 有向順序木を構成するノードの内容及びノード間の接続
関係に関する条件を記述した検索条件が入力されると、
前記情報格納手段に格納された前記処理対象情報の有向
順序木の中間ノードを削除し、前記中間ノードのあった
位置に前記中間ノード直下のノード列を配置する操作を
行った結果得られる均質化有向順序木を処理対象とし
て、前記均質化有向順序木内の前記検索条件に適合する
有向順序木を抽出するマッチング手段と、 を有することを特徴とするデータ処理装置。 - 【請求項2】 前記マッチング手段は、前記検索条件の
ノード間の接続関係に対して前記中間ノードの削除の可
否が設定されていた場合には、削除不可とされている接
続関係に関しては前記中間ノードの削除を伴わずに前記
検索条件に適合するような有向順序木を抽出することを
特徴とする請求項1記載のデータ処理装置。 - 【請求項3】 前記マッチング手段は、前記情報格納手
段に格納された前記処理対象情報の有向順序木の中間ノ
ードを削除し、前記中間ノードのあった位置に前記中間
ノード直下のノード列を配置する操作を行うとともに、
前記処理対象情報の有向順序木中のいずれかのノードを
頂点とする部分木を削除する操作を行った結果得られる
均質化有向順序木を処理対象とすることを特徴とする請
求項1記載のデータ処理装置。 - 【請求項4】 前記マッチング手段は、ノードの属性の
指定を含む前記検索条件が入力された場合には、削除さ
れた中間ノードに定義されている属性を、前記中間ノー
ドのあった位置に配置されるノード列の属性とみなし
て、前記均質化有向順序木内の前記検索条件に適合する
有向順序木の出力を行うことを特徴とする請求項1記載
のデータ処理装置。 - 【請求項5】 前記マッチング手段は、ノード属性の変
換規則を含む前記検索条件が入力された場合には、前記
検索条件に適合する有向順序木の各ノードに定義されて
いる属性を対応する変換規則に従って変換した結果得ら
れる有向順序木を出力することを特徴とする請求項1記
載のデータ処理装置。 - 【請求項6】 有向順序木で表現された情報に対する処
理を行うデータ処理装置において、 有向順序木で表現された処理対象情報を格納する情報格
納手段と、 有向順序木を構成するノードの内容及びノード間の接続
関係に関する条件を記述した検索条件が入力されると、
前記情報格納手段に格納された前記処理対象情報の有向
順序木中のいずれかのノードを頂点とする部分木を削除
する操作を行った結果得られる均質化有向順序木を処理
対象として、前記均質化有向順序木内の前記検索条件に
適合する有向順序木を抽出するマッチング手段と、 を有することを特徴とするデータ処理装置。 - 【請求項7】 前記マッチング手段は、前記検索条件の
ノード間の接続関係に対して前記部分木の削除の可否が
設定されていた場合には、削除不可とされている接続関
係に関しては前記部分木の削除を伴わずに前記検索条件
に適合するような有向順序木を抽出することを特徴とす
る請求項6記載のデータ処理装置。 - 【請求項8】 前記マッチング手段は、ノード属性の変
換規則を含む前記検索条件が入力された場合には、前記
検索条件に適合する有向順序木の各ノードに定義されて
いる属性を対応する変換規則に従って変換した結果得ら
れる有向順序木を出力することを特徴とする請求項6記
載のデータ処理装置。 - 【請求項9】 有向順序木で表現された構造化文書に対
する処理を行う文書処理装置において、 有向順序木で表現された処理対象構造化文書を格納する
情報格納手段と、 有向順序木を構成するノードの内容及びノード間の接続
関係に関する条件を記述した検索条件が入力されると、
前記情報格納手段に格納された前記処理対象情報の有向
順序木の中間ノードを削除し、前記中間ノードのあった
位置に前記中間ノード直下のノード列を配置する操作を
行った結果得られる均質化有向順序木を処理対象とし
て、前記均質化有向順序木内の前記検索条件に適合する
有向順序木を抽出するマッチング手段と、 前記マッチング手段が抽出した有向順序木を論理構造と
する構造化文書に対して既定の処理を実行する文書処理
手段と、 を有することを特徴とする文書処理装置。 - 【請求項10】 有向順序木で表現された構造化文書に
対する処理を行う文書処理装置において、 有向順序木で表現された処理対象構造化文書を格納する
情報格納手段と、 有向順序木を構成するノードの内容及びノード間の接続
関係に関する条件を記述した検索条件が入力されると、
前記情報格納手段に格納された前記処理対象情報の有向
順序木中のいずれかのノードを頂点とする部分木を削除
する操作を行った結果得られる均質化有向順序木を処理
対象として、前記均質化有向順序木内の前記検索条件に
適合する有向順序木を抽出するマッチング手段と、 前記マッチング手段が抽出した有向順序木を論理構造と
する構造化文書に対して既定の処理を実行する文書処理
手段と、 を有することを特徴とする文書処理装置。 - 【請求項11】 有向順序木で表現された情報に対する
処理を行うデータ処理プログラムを記録したコンピュー
タ読み取り可能な記録媒体において、 有向順序木で表現された処理対象情報を格納する情報格
納手段、 有向順序木を構成するノードの内容及びノード間の接続
関係に関する条件を記述した検索条件が入力されると、
前記情報格納手段に格納された前記処理対象情報の有向
順序木の中間ノードを削除し、前記中間ノードのあった
位置に前記中間ノード直下のノード列を配置する操作を
行った結果得られる均質化有向順序木を処理対象とし
て、前記均質化有向順序木内の前記検索条件に適合する
有向順序木を抽出するマッチング手段、 としてコンピュータを機能させることを特徴とするデー
タ処理プログラムを記録したコンピュータ読み取り可能
な記録媒体。 - 【請求項12】 有向順序木で表現された情報に対する
処理を行うデータ処理プログラムを記録したコンピュー
タ読み取り可能な記録媒体において、 有向順序木で表現された処理対象情報を格納する情報格
納手段、 有向順序木を構成するノードの内容及びノード間の接続
関係に関する条件を記述した検索条件が入力されると、
前記情報格納手段に格納された前記処理対象情報の有向
順序木中のいずれかのノードを頂点とする部分木を削除
する操作を行った結果得られる均質化有向順序木を処理
対象として、前記均質化有向順序木内の前記検索条件に
適合する有向順序木を抽出するマッチング手段、 としてコンピュータを機能させることを特徴とするデー
タ処理プログラムを記録したコンピュータ読み取り可能
な記録媒体。 - 【請求項13】 有向順序木で表現された構造化文書に
対する処理を行う文書処理プログラムを記録したコンピ
ュータ読み取り可能な記録媒体において、 有向順序木で表現された処理対象構造化文書を格納する
情報格納手段、 有向順序木を構成するノードの内容及びノード間の接続
関係に関する条件を記述した検索条件が入力されると、
前記情報格納手段に格納された前記処理対象情報の有向
順序木の中間ノードを削除し、前記中間ノードのあった
位置に前記中間ノード直下のノード列を配置する操作を
行った結果得られる均質化有向順序木を処理対象とし
て、前記均質化有向順序木内の前記検索条件に適合する
有向順序木を抽出するマッチング手段、 前記マッチング手段が抽出した有向順序木を論理構造と
する構造化文書に対して既定の処理を実行する文書処理
手段、 としてコンピュータを機能させることを特徴とする文書
処理プログラムを記録したコンピュータ読み取り可能な
記録媒体。 - 【請求項14】 有向順序木で表現された構造化文書に
対する処理を行う文書処理プログラムを記録したコンピ
ュータ読み取り可能な記録媒体において、 有向順序木で表現された処理対象構造化文書を格納する
情報格納手段、 有向順序木を構成するノードの内容及びノード間の接続
関係に関する条件を記述した検索条件が入力されると、
前記情報格納手段に格納された前記処理対象情報の有向
順序木中のいずれかのノードを頂点とする部分木を削除
する操作を行った結果得られる均質化有向順序木を処理
対象として、前記均質化有向順序木内の前記検索条件に
適合する有向順序木を抽出するマッチング手段、 前記マッチング手段が抽出した有向順序木を論理構造と
する構造化文書に対して既定の処理を実行する文書処理
手段、 としてコンピュータを機能させることを特徴とする文書
処理プログラムを記録したコンピュータ読み取り可能な
記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP25342798A JP3965798B2 (ja) | 1998-09-08 | 1998-09-08 | データ処理装置、文書処理装置、データ処理プログラムを記録したコンピュータ読み取り可能な記録媒体、文書処理プログラムを記録したコンピュータ読み取り可能な記録媒体、データ処理方法、および文書処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP25342798A JP3965798B2 (ja) | 1998-09-08 | 1998-09-08 | データ処理装置、文書処理装置、データ処理プログラムを記録したコンピュータ読み取り可能な記録媒体、文書処理プログラムを記録したコンピュータ読み取り可能な記録媒体、データ処理方法、および文書処理方法 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2000090091A true JP2000090091A (ja) | 2000-03-31 |
JP2000090091A5 JP2000090091A5 (ja) | 2005-01-13 |
JP3965798B2 JP3965798B2 (ja) | 2007-08-29 |
Family
ID=17251254
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP25342798A Expired - Fee Related JP3965798B2 (ja) | 1998-09-08 | 1998-09-08 | データ処理装置、文書処理装置、データ処理プログラムを記録したコンピュータ読み取り可能な記録媒体、文書処理プログラムを記録したコンピュータ読み取り可能な記録媒体、データ処理方法、および文書処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3965798B2 (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002132834A (ja) * | 2000-10-20 | 2002-05-10 | Sharp Corp | 検索情報伝送装置 |
JP2006302082A (ja) * | 2005-04-22 | 2006-11-02 | Mitsubishi Electric Corp | 文字列検索装置 |
US7293018B2 (en) | 2001-03-30 | 2007-11-06 | Kabushiki Kaisha Toshiba | Apparatus, method, and program for retrieving structured documents |
WO2008117454A1 (ja) * | 2007-03-27 | 2008-10-02 | Fujitsu Limited | 情報検索プログラム、該プログラムを記録した記録媒体、情報検索装置、および情報検索方法 |
US7457799B2 (en) | 2003-08-20 | 2008-11-25 | Fujitsu Limited | Apparatus and method for searching data of structured document |
JP2012027685A (ja) * | 2010-07-23 | 2012-02-09 | Internatl Business Mach Corp <Ibm> | 情報管理システム、方法及びプログラム |
-
1998
- 1998-09-08 JP JP25342798A patent/JP3965798B2/ja not_active Expired - Fee Related
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002132834A (ja) * | 2000-10-20 | 2002-05-10 | Sharp Corp | 検索情報伝送装置 |
JP4592171B2 (ja) * | 2000-10-20 | 2010-12-01 | シャープ株式会社 | 検索情報生成装置 |
US7293018B2 (en) | 2001-03-30 | 2007-11-06 | Kabushiki Kaisha Toshiba | Apparatus, method, and program for retrieving structured documents |
US7457799B2 (en) | 2003-08-20 | 2008-11-25 | Fujitsu Limited | Apparatus and method for searching data of structured document |
JP2006302082A (ja) * | 2005-04-22 | 2006-11-02 | Mitsubishi Electric Corp | 文字列検索装置 |
JP4726046B2 (ja) * | 2005-04-22 | 2011-07-20 | 三菱電機株式会社 | 文字列検索装置及びコンピュータプログラム及び文字列検索方法 |
WO2008117454A1 (ja) * | 2007-03-27 | 2008-10-02 | Fujitsu Limited | 情報検索プログラム、該プログラムを記録した記録媒体、情報検索装置、および情報検索方法 |
JPWO2008117454A1 (ja) * | 2007-03-27 | 2010-07-08 | 富士通株式会社 | 情報検索プログラム、該プログラムを記録した記録媒体、情報検索装置、および情報検索方法 |
US8190632B2 (en) | 2007-03-27 | 2012-05-29 | Fujitsu Limited | Computer product, information retrieving apparatus, and information retrieving method |
JP5067420B2 (ja) * | 2007-03-27 | 2012-11-07 | 富士通株式会社 | 情報検索プログラム、該プログラムを記録した記録媒体、情報検索装置、および情報検索方法 |
JP2012027685A (ja) * | 2010-07-23 | 2012-02-09 | Internatl Business Mach Corp <Ibm> | 情報管理システム、方法及びプログラム |
US8766980B2 (en) | 2010-07-23 | 2014-07-01 | International Business Machines Corporation | Information management system, method and program |
Also Published As
Publication number | Publication date |
---|---|
JP3965798B2 (ja) | 2007-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9542622B2 (en) | Framework for data extraction by examples | |
US11720631B2 (en) | Tool to build and store a data model and queries for a graph database | |
US6947923B2 (en) | Information generation and retrieval method based on standardized format of sentence structure and semantic structure and system using the same | |
Chang et al. | A survey of web information extraction systems | |
RU2605077C2 (ru) | Способ и система для хранения и поиска информации, извлекаемой из текстовых документов | |
US7293018B2 (en) | Apparatus, method, and program for retrieving structured documents | |
US6182062B1 (en) | Knowledge based information retrieval system | |
US8171052B2 (en) | Information search system, method and program | |
US20040181543A1 (en) | Method of using recommendations to visually create new views of data across heterogeneous sources | |
US20020065814A1 (en) | Method and apparatus for searching and displaying structured document | |
CN108351768B (zh) | 用标记语言编写文档的同时实现处理信息系统的数据的用户界面的方法 | |
JPH1078959A (ja) | エッジデータ構造を統一する方法 | |
US6792576B1 (en) | System and method of automatic wrapper grammar generation | |
CN110688118B (zh) | 一种网页优化方法及装置 | |
JPH10105551A (ja) | プロセッサを用いて第1グラフの単一化の一部として第1節と第2節を結合する方法 | |
JP3965798B2 (ja) | データ処理装置、文書処理装置、データ処理プログラムを記録したコンピュータ読み取り可能な記録媒体、文書処理プログラムを記録したコンピュータ読み取り可能な記録媒体、データ処理方法、および文書処理方法 | |
US10706124B2 (en) | Storage and retrieval of structured content in unstructured user-editable content stores | |
Myllymaki et al. | Robust web data extraction with xml path expressions | |
CN115328353B (zh) | 一种生成iconfont资源的方法、装置以及介质 | |
Nielandt et al. | Predicate enrichment of aligned XPaths for wrapper induction | |
Baklouti et al. | Semantic-based approach to improve the description and the discovery of Linguistic Web Services | |
Kalyanpur et al. | Lifecycle of a Casual Web Ontology Development Process. | |
JPH10260992A (ja) | データベース処理装置および記憶媒体 | |
JP2002140338A (ja) | 辞書構築支援装置および辞書構築支援方法 | |
Rouces et al. | Addressing structural and linguistic heterogeneity in the Web |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040218 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040218 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070207 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070220 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070418 |
|
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: 20070508 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070521 |
|
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: 20110608 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110608 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120608 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130608 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130608 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140608 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |