(57)【特許請求の範囲】
【請求項１】
各文書要素に要素名を持つタグが付与されている構造化文書に対する文書型定義生成装置の制御方法であって、
前記文書型定義生成装置が有する物理的構造判断手段が、前記各文書要素の物理的構造を判断する物理的構造判断ステップと、
前記文書型定義生成装置が有する意味的構造判断手段が、前記各文書要素の意味的構造を判断する意味的構造判断ステップと、
前記文書型定義生成装置が有する文書型定義生成手段が、前記物理的構造判断ステップと前記意味的構造判断ステップとの判断結果に基づいて、前記構造化文書における文書要素の出現状態を定義する文書型定義を生成する文書型定義生成ステップとを有し、
前記文書型定義生成ステップでは、要素名の異なるタグを持つ複数の文書要素の物理的構造と意味的構造とが類似する場合に、それらの文書要素を同一タイプと見なして一方の要素名を文書型定義の生成対象から除外することを特徴とする文書型定義生成方法。
【請求項２】
前記文書型定義生成ステップでは、要素名の異なるタグを持つ文書要素間において物理的構造と意味的構造のそれぞれの一致度合いについての類似度を求め、それらの類似度から算出した総合的な類似度の値が所定のしきい値以上の場合に、それらの文書要素を同一タイプと見なして一方の要素名を文書型定義の生成対象から除外することを特徴とする請求項１記載の文書型定義生成方法。
【請求項３】
前記物理的構造判断ステップにおいて、字下げまたは空白行に基づいて、文書要素の物理的構造を判断することを特徴とする請求項１記載の文書型定義生成方法。
【請求項４】
前記字下げに基づいて、文書要素の物理的構造を判断する際に、引用を表す字下げを除外して判断することを特徴とする請求項３記載の文書型定義生成方法。
【請求項５】
前記空白行に基づいて文書要素の物理的構造を判断する際に、常に所定行ずつ空白行を設けて記述した文書における空白行を除外して判断することを特徴とする請求項３記載の文書型定義生成方法。
【請求項６】
前記物理的構造判断ステップにおいて、文書要素を囲むタグ同士の位置関係に基づいて、文書要素の物理的構造を判断することを特徴とする請求項１記載の文書型定義生成方法。
【請求項７】
前記意味的構造判断ステップにおいて、意味情報データベースを参照して文書中の語句の繋がりや単語の種類を基に文書要素の意味的構造を判断することを特徴とする請求項１記載の文書型定義生成方法。
【請求項８】
前記意味的構造判断ステップにおいて、文書要素を囲むタグの表わす意味に基づいて、文書要素の意味的構造を判断することを特徴とする請求項１記載の文書型定義生成方法。
【請求項９】
前記文書型定義生成ステップにおいては、同一名称の開始タグと終了タグとの間に存在する語句を解析して、当該タグ間に含まれるべき情報を得て、該情報に基づいて文書型定義を生成することを特徴とする請求項１記載の文書型定義生成方法。
【請求項１０】
各文書要素に要素名を持つタグが付与されている構造化文書に対する文書型定義生成装置の制御方法であって、
前記文書型定義生成装置が有する物理的構造判断手段が、前記各文書要素の物理的構造を判断する物理的構造判断ステップと、
前記文書型定義生成装置が有する意味的構造判断手段が、前記各文書要素の意味的構造を判断する意味的構造判断ステップと、
前記文書型定義生成装置が有する文書型定義生成手段が、前記物理的構造判断ステップと前記意味的構造判断ステップとの判断結果に基づいて、前記構造化文書における文書要素の出現状態を定義する文書型定義を生成する文書型定義生成ステップとを有し、
前記文書型定義生成ステップでは、要素名が同一のタグを持つ複数の文書要素の物理的構造と意味的構造とが異なる場合に、それらの文書要素を異なるタイプと見なして一方の要素名を変更することを特徴とする文書型定義生成方法。
【請求項１１】
各文書要素に要素名を持つタグが付与されている構造化文書に対し、
前記各文書要素の物理的構造を判断する物理的構造判断手段と、
前記各文書要素の意味的構造を判断する意味的構造判断手段と、
前記物理的構造判断手段と前記意味的構造判断手段との判断結果に基づいて、前記構造化文書における文書要素の出現状態を定義する文書型定義を生成する文書型定義生成手段とを有し、
前記文書型定義生成手段では、要素名の異なるタグを持つ複数の文書要素の物理的構造と意味的構造とが類似する場合に、それらの文書要素を同一タイプと見なして一方の要素名を文書型定義の生成対象から除外することを特徴とする文書型定義生成装置。
【請求項１２】
各文書要素に要素名を持つタグが付与されている構造化文書に対し、
前記各文書要素の物理的構造を判断する物理的構造判断手段と、
前記各文書要素の意味的構造を判断する意味的構造判断手段と、
前記物理的構造判断手段と前記意味的構造判断手段との判断結果に基づいて、前記構造化文書における文書要素の出現状態を定義する文書型定義を生成する文書型定義生成手段とを有し、
前記文書型定義生成手段では、要素名が同一のタグを持つ複数の文書要素の物理的構造と意味的構造とが異なる場合に、それらの文書要素を異なるタイプと見なして一方の要素名を変更することを特徴とする文書型定義生成装置。
【請求項１３】
各文書要素に要素名を持つタグが付与されている構造化文書に対し、
前記各文書要素の物理的構造を判断する物理的構造判断手順と、
前記各文書要素の意味的構造を判断する意味的構造判断手順と、
前記物理的構造判断手順と前記意味的構造判断手順との判断結果に基づいて、前記構造化文書における文書要素の出現状態を定義する文書型定義を生成する文書型定義生成手順とをコンピュータに実行させるためのプログラムを記憶しているコンピュータ読み取り可能な記憶媒体であって、
前記文書型定義生成手順では、要素名の異なるタグを持つ複数の文書要素の物理的構造と意味的構造とが類似する場合に、それらの文書要素を同一タイプと見なして一方の要素名を文書型定義の生成対象から除外することを特徴とするコンピュータ読み取り可能な記憶媒体。
【請求項１４】
各文書要素に要素名を持つタグが付与されている構造化文書に対し、
前記各文書要素の物理的構造を判断する物理的構造判断手順と、
前記各文書要素の意味的構造を判断する意味的構造判断手順と、
前記物理的構造判断手順と前記意味的構造判断手順との判断結果に基づいて、前記構造化文書における文書要素の出現状態を定義する文書型定義を生成する文書型定義生成手順とをコンピュータに実行させるためのプログラムを記憶しているコンピュータ読み取り可能な記憶媒体であって、
前記文書型定義生成手順では、要素名が同一のタグを持つ複数の文書要素の物理的構造と意味的構造とが異なる場合に、それらの文書要素を異なるタイプと見なして一方の要素名を変更することを特徴とするコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、パーソナルコンピュータやワードプロセッサ等で実行される電子化文書の処理に関し、特に構造化文書の文書型定義を生成する方法及びその装置、及びそのプログラムを記憶した記憶媒体に関するものである。
【０００２】
【従来の技術】
近年、パーソナルコンピュータやワードプロセッサ等で作成された電子化された文書が広く用いられている。このような電子化文書を統一的に扱え、文書を構成する各要素に意味情報を付与した構造化文書の導入が進められている。この構造化文書は、各文書要素が要素名（タグ名）を含むタグで前後が挟まれており、文書のタイプ毎に、要素が出現する場所、順序、回数などを定義した文書型定義（DTD）に従って記述することが多い。
【０００３】
【発明が解決しようとする課題】
一方、文書型定義を予め用意しておかなくても、構造化文書を記述することはできる。しかしながら、例えば、複数のユーザが作成した文書を統合して1つの文書を作成するような場合、ユーザ各々が勝手な名称のタグを使ってしまうと、同一の要素に異なるタグ名を付与したり、逆に異なる要素に同一のタグ名を付与したりしてしまう可能性がある。
【０００４】
そのような場合、タグに付与された意味情報を正しく扱うことができなくなったり、タグに対する冗長性が生じたりしてしまうという問題がある。
【０００５】
本発明は上述した課題を解決するためになされたものであり、タグ付の構造化文書から、文書型定義を生成する方法及びその装置、及びそのプログラムを記憶した記憶媒体を提供することを目的とする。
【０００６】
また、本発明は、タグに与えられた意味情報を正しく扱うことができる文書型定義を生成する方法及びその装置、及びそのプログラムを記憶した記憶媒体を提供することを目的とする。
【０００７】
また、本発明は、タグに対する冗長性を排除した文書型定義を生成することが可能な文書型定義を生成する方法及びその装置、及びそのプログラムを記憶した記憶媒体を提供することを目的とする。
【０００８】
【課題を解決するための手段】
上述した目的を達成するための本発明の一態様による文書型定義生成方法は、各文書要素に要素名を持つタグが付与されている構造化文書に対する文書型定義生成装置の制御方法であって、前記文書型定義生成装置が有する物理的構造判断手段が、前記各文書要素の物理的構造を判断する物理的構造判断ステップと、前記文書型定義生成装置が有する意味的構造判断手段が、前記各文書要素の意味的構造を判断する意味的構造判断ステップと、前記文書型定義生成装置が有する文書型定義生成手段が、前記物理的構造判断ステップと前記意味的構造判断ステップとの判断結果に基づいて、前記構造化文書における文書要素の出現状態を定義する文書型定義を生成する文書型定義生成ステップとを有し、前記文書型定義生成ステップでは、要素名の異なるタグを持つ複数の文書要素の物理的構造と意味的構造とが類似する場合に、それらの文書要素を同一タイプと見なして一方の要素名を文書型定義の生成対象から除外することを特徴とする。
【０００９】
上述した目的を達成するための本発明の一態様による文書型定義生成方法は、各文書要素に要素名を持つタグが付与されている構造化文書に対する文書型定義生成装置の制御方法であって、前記文書型定義生成装置が有する物理的構造判断手段が、前記各文書要素の物理的構造を判断する物理的構造判断ステップと、前記文書型定義生成装置が有する意味的構造判断手段が、前記各文書要素の意味的構造を判断する意味的構造判断ステップと、前記文書型定義生成装置が有する文書型定義生成手段が、前記物理的構造判断ステップと前記意味的構造判断ステップとの判断結果に基づいて、前記構造化文書における文書要素の出現状態を定義する文書型定義を生成する文書型定義生成ステップとを有し、前記文書型定義生成ステップでは、要素名が同一のタグを持つ複数の文書要素の物理的構造と意味的構造とが異なる場合に、それらの文書要素を異なるタイプと見なして一方の要素名を変更することを特徴とする。
【００１１】
【発明の実施の形態】
以下、添付図面を参照しながら、本発明に係る好適な一実施例を詳細に説明する。
【００１２】
＜第１の実施の形態＞
図１は、本実施形態に係る文書型定義生成装置のブロック構成を示す図である。
【００１３】
同図において、入力部101は、キーボードやポインティング装置などで構成され、ユーザがデータやコマンドを入力するために用いられる。外部記憶部102はハードディスクなどを媒体とする記憶装置で構成され、処理対象となる構造化文書データや後述する意味情報ＤＢ（データベース）のデータ、生成された文書型定義などを記憶するものである。表示部103はCRTや液晶表示器などで構成され、構造化文書データや生成された文書型定義などを表示するものである。
【００１４】
CPU104は、装置各部の制御を司り、プログラムを読み出して実行し、各種処理を実現する。ROM105は、固定的なデータやプログラムを記憶する。図２―６のフローチャートを参照して後述する処理手順を実現するための制御プログラムは、ROM105に格納されていてもよいし、外部記憶部102から読み出すようにしてもよい。RAM106は、本装置の処理に必要な作業領域を提供する。バス107は、装置各部を接続する。
【００１５】
図２は、本実施形態に係る文書型定義生成処理の手順を示すフローチャートである。
【００１６】
まず、ステップＳ２０１において構造化文書の入力が行われる。これは、外部記憶部１０２から構造化文書を読み出すことで実行される。ここで与える構造化文書の一例を図３に示す。
【００１７】
例えば、図３の（ａ）の第１行の“<Title>”がスタートタグ、“</Title>”がエンドタグであり、これらのタグで挟まれた“テレビの使用説明書”がタグの内容となる文書要素である。また、“Title”が要素名（タグ名）である。更に、タグ内に要素の属性とその値とを記述することもできる。
【００１８】
図３の(a) は、他人の作成した文書に８行目の（<Sect>4.音量を調整する</Sect>）を追加したものであり、図３の(b)は、複数人がそれぞれ作成した章（<Chap>から</Chap>まで）を１つの文書に統合したものである。このため、同一種の要素に対して、異なるタグ名（SectとSection）が付されてしまっている。
【００１９】
図２に戻り、次のステップＳ２０２において、この構造化文書の中から各タグの位置が検出され、例えば、図３の(a) では、先頭の“<Title>”から順番にタグ番号が振られる。
【００２０】
続いて、ステップＳ２０３において、上記文書における物理的構造の検出が行われる。例えば、図３の（ｃ）において、段落を表すタグ“＜Ｐａｒａ＞”において模式的に表現されているように、字下げで始まる文章群を段落と見なすという特徴の検出を行う。このような物理的構造を検出するための処理手順を図４のフローチャートに示す。
【００２１】
まず、ステップＳ４０１で文書中の字下げが行われている行を見つけ出し、次のステップＳ４０２でその行に続く文章群を検出する。このときに字下げが行われている行から次の字下げが行われている行、あるいは空白行の直前の行までを文章群とすることができる。このとき、字下げを行うことによって引用を表す引用中に行われている字下げ（２重の字下げ）や、一行あるいはそれ以上に行を常に飛ばして記述されている場合の空白行は、ステップＳ４０２において、文書全体のパターンから、それらは物理的構造検出にとって無意味な構造として除外して処理を行う。
【００２２】
図２に戻り、次のステップＳ２０４では、入力された構造化文書が持つ意味的構造を検出する。一例として、上記の図３の（ａ）において、“<Section>”タグの内容は、先頭に「１．」，「２．」，「３．」を付した形式をしている。ここで意味的に、“<Section>”タグの内容は、「数字．」を先頭とすると推察できる。この意味的構造を検出する処理手順の一例を図５のフローチャートに示す。
【００２３】
まず、ステップＳ５０１において、文書中の全ての単語、記号について意味情報ＤＢ（データベース）５１と通信をして、文書中の語間の繋がりや単語・記号の種類を与える。この結果を元に、次のステップＳ５０２において、各文書要素において見られる意味的な構造を検出する。
【００２４】
図２に戻り、次のステップＳ２０５において、処理すべきタグを最初に出現したタグとし、ステップＳ２０６でタグの処理が全て終了したか否かを判断する。
【００２５】
タグの処理が全て終了していない場合は、ステップＳ２０７に移行して、現在処理対象としているタグと、上記ステップＳ２０３―２０４において検出された物理的構造・意味的構造の情報との統合を行う。ここで、統合とは、現在、処理対象としているタグに関わる行に、物理的・意味的な特徴が存在するならば、タグとその情報とを結びつけることを言う。続いてステップＳ２０８で、次に出現したタグに処理を移し、上記ステップＳ２０６に戻る。
【００２６】
一方、ステップＳ２０６においてタグの処理が全て終了したと判断した場合は、ステップＳ２０９に移行し、異なった名称のタグの間において類似度を求め、その類似度が予め設定したあるしきい値以上の場合にはそれらタグは互いに同一のタグと見なして、一方のタグを、生成する文書型定義に出現しないようにする。この類似度を求めて同じ内容を持つタグであるか否かを判定する処理手順を図６のフローチャートに示す。
【００２７】
まず、ステップＳ６０１では、異なる名称をもつタグＡ，Ｂの類似度を算出する。この算出方法は、物理的構造が一致する場合は物理的構造の類似度を１とし、物理的構造が完全には一致しないが一部は一致する場合は、物理的構造の類似度をその一致した割合に対応する１未満の値にする。意味的構造についても同様の考えをあてはめて意味的構造の類似度を求め、物理的構造の類似度と意味的構造の類似度の和を２で割ったものを、ＡとＢの総合的な類似度ｄABとする。
【００２８】
次のステップＳ６０２では、ステップＳ６０１で求められた上記の類似度ｄABと予め与えられたしきい値δとの比較を行う。その類似度ｄABがδ未満のときは、ステップＳ６０４に飛んで、次の組み合せを試みる。
【００２９】
その類似度ｄABがしきい値δ以上のときは、ステップＳ６０３に移行して、タグＢはタグAと同一タイプと見なし、タグＢを最終的に文書型定義を生成するリストから削除し、冗長性の排除を行う。
【００３０】
ステップＳ６０３の処理が終了したらステップＳ６０４へ進み、全てのタグの組み合わせを試したか否かを判断し、全てのタグの組み合わせを試していない場合はステップＳ６０１に戻り、全てのタグの組み合わせを試した場合は本サブルーチンの処理を終了して図２のメインルーチンに戻る。
【００３１】
また、ステップＳ２０９では、図６につき上述した処理に加え、同一名称を持つ文書要素の物理的構造、意味的構造を比較し、構造が異なっている場合、一方のタグの名称変更も行う。そのために、同一のタグ名を持つタグＡａ，Ａｂ間で上記と同様に類似度を求めて、その類似度の値ｄAaAbがしきい値未満のときは、タグＡｂの名称の変更を行う。このしきい値は、上述のものと異なってもよい。
【００３２】
図２のステップＳ２１０では、同一名称の開始タグと終了タグとの間の文の語句についての解析を行い、タグ中に含まれるべき情報を得る。この解析結果を用いて、次のステップＳ２１１において、文書型定義の生成を行う。
【００３３】
図７は、生成された文書型定義の例を示す図である。図３の(a)に示した構造化文書データから生成された文書型定義を図７の(a)にmanualという文書型として示している。また、図３の(b)に示した構造化文書データから生成された文書型定義を図７の(b)にspecificationという文書型として示している。
【００３４】
ここで、図３の(a)において、<Sect>タグの内容は、<Section>タグの内容と物理的構造が一致しており、かつ「数字．」の形式を持つ点で意味的構造も同一である。このため、ステップＳ２０９において、<Sect>タグは、<Section>タグと同じ内容を持つと判定されている。その結果、生成される文書型定義では、<Sect>は用いず、<Body>は、Section+すなわち<Section>タグの出現の繰り返しとなっている。
【００３５】
また、図３の(b)においても、<Sect>タグは、「数字―数字．」の形式を持ち、<Section>タグと同じ内容を持つと判定され、図７の(b)では、<Chap>は、<Title>に続けて<Section>の繰り返しとされている。
【００３６】
＜第２の実施の形態＞
上述した第１の実施形態においては、文書中の物理的構造、意味的構造の判断を本文（タグ以外の部分）に基づいて行なってきたが、本発明はそれに限らない。
【００３７】
例えば、タグ同士の相対的な位置関係やタグの包含関係についての物理的な情報を物理的構造として検出したり、タグ名や属性が表わす意味を意味的構造として検出したりして、これらの構造を対象として類似度を求めるようにしてもよい。
【００３８】
これによれば、例えば、図３の(b)では、<Sect>と<Section>は、共に<Chap>に含まれ、<Title>の次に現れる点で類似していると判定したり、タグ名であるSectとSectionはどちらもSectionの意味を表わすと考えられる点で類似していると判断することも可能となる。
【００３９】
以上説明した実施形態によれば、タグで囲まれた文書要素の物理的構造や意味的構造を判断して、タグの付与された構造化文書の文書型定義を生成するようにしているので、タグに与えられた意味情報を正しく扱うことが可能となる。
【００４０】
更に、同一内容を持つタグに対する冗長性を排除でき、同一名称で異なる意味のタグが存在することのない文書型定義を生成することが可能となる。
【００４１】
なお、本発明は、複数の機器（例えば、ホストコンピュータ、インターフェース機器、リーダ、プリンタなど）から構成されるコンピュータシステムに適用しても、１つの機器からなる装置（例えば、ワードプロセッサ、複写機、ファクシミリ装置など）に適用してもよい。
【００４２】
また、本発明の目的は、前述した実施の形態の機能を実現するソフトウエアのプログラムコードを記憶した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し、実行することによっても、達成されることは言うまでもない。
【００４３】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードを記録した記憶媒体は本発明を構成することになる。
【００４４】
そのプログラムコードを記憶し、またテーブル等の変数データを記憶する記憶媒体としては、例えばフロッピディスク（ＦＤ）、ハードディスク、光ディスク、光磁気ディスク、ＣＤ―ＲＯＭ、ＣＤ―Ｒ、磁気テープ、不揮発性のメモリカード（ＩＣメモリカード）、ＲＯＭなどを用いことができる。
【００４５】
また、コンピュータが読み出したプログラムコードを実行することにより、前述の実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づいて、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行ない、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【００４６】
【発明の効果】
以上説明したように、本発明によれば、各文書要素に要素名を持つタグが付与されている構造化文書において、各文書要素の物理的構造や意味的構造を判断して、構造化文書の文書型定義を生成するようにしているので、各文書要素に与えられた構造を正しく扱った文書型定義を生成することができるという効果がある。
【００４７】
更に、同一内容を持つタグに対する冗長性を排除でき、同一名称で異なる意味のタグが存在することのない文書型定義を生成することが可能となる。
【図面の簡単な説明】
【図１】本発明に係る一実施形態の文書処理システムの構成を示すブロック図である。
【図２】操作画面の表示例を表わす図である。
【図３】構造化文書データの一例を示す図である。
【図４】物理的構造解析の処理手順を示すフローチャートである。
【図５】意味的構造解析の処理手順を示すフローチャートである。
【図６】タグの冗長性を排除する処理手順を示すフローチャートである。
【図７】文書型定義の例を示す図である。
【符号の説明】
５１  意味情報ＤＢ
１０１  入力部
１０２  外部記憶部
１０３  表示部
１０４  ＣＰＵ
１０５  ＲＯＭ
１０６  ＲＡＭ
１０７  バス
【図１】
0003935296.tif 000002
【図２】
0003935296.tif 000003
【図３】
0003935296.tif 000004
【図４】
0003935296.tif 000005
【図５】
0003935296.tif 000006
【図６】
0003935296.tif 000007
【図７】
0003935296.tif 000008