(57)【要約】【課題】従来、作成文書の不具合チェックは作成者がチェックリストを作り、照合するため負担が掛かり、簡易なチェックとなりチェック作業が機能しない。また、作成文書レビュー実施者が配置転換・退職等で他の人に変わると、レビューの内容や質が変わり従来と同等の品質を維持出来ない。【解決手段】入力手段よりの入力文書から文字および文字の位置情報と線分の位置情報を文字・線分抽出手段で抽出し、文書構造化手段で文字および線分の位置情報を用い、属性ＤＢの構造情報を参照して構造化し、この構造化文書を知識ＤＢ照合手段で、知識ＤＢ内の自動チェックリストに従い不具合の有無をチェックし、その結果から知識ＤＢを探索して修正情報を文書修正支援手段で作成して、知識ＤＢ照合結果および修正情報を表示手段に表示する。【選択図】図１
2006330840.tif 000002
【特許請求の範囲】
【請求項１】
文書を入力する入力手段と、
入力手段よりの入力文書から文字と文字の位置情報と線分の位置情報を抽出する文字・線分抽出手段と、
文書構造化のための構造情報を格納する属性ＤＢと、
文字・線分抽出手段からの文字と文字の位置情報と線分の位置情報を用い、属性ＤＢの構造情報を参照して入力文書を構造化する文書構造化手段と、
文書内容解析のための自動チェックリストおよび修正参照知識情報を格納する知識ＤＢと、
前記文書構造化手段が作成する構造化文書を知識ＤＢ内の自動チェックリストに従い不具合の有無をチェックする知識ＤＢ照合手段と、
知識ＤＢ照合手段の結果から知識ＤＢの修正参照知識情報を探索して修正情報を作成する文書修正支援手段と、
知識ＤＢ照合手段の照合結果および文書修正支援手段の修正情報を表示する表示手段を備える文書作成支援装置。
【請求項２】
文書構造化手段は文書の章節情報と、表解析情報を抽出する構成にされた請求項１に記載の文書作成支援装置。
【請求項３】
表示手段は、知識ＤＢ照合結果および修正情報を表示する際、ユーザの指定により表示する順番が変更可能である構成にされた請求項１記載の文書作成支援装置。
【請求項４】
過去の不具合情報を保持する不具合ＤＢを有し、知識ＤＢ照合手段は自動チェックリストに記述された単語をキーワードとして不具合ＤＢを検索して、その結果を出力する構成にされた請求項１記載の文書作成支援装置。
【請求項５】
作成文書の不具合を検索し、修正するためにコンピュータを
入力手段よりの入力文書から文字と文字の位置情報と線分の位置情報を抽出する文字・線分抽出手段、
文字・線分抽出手段からの文字と文字の位置情報と線分の位置情報を用い、文書構造化のための構造情報が格納された属性ＤＢの構造情報を参照して入力文書を構造化する文書構造化手段、
前記文書構造化手段が作成する構造化文書を、文書照合のための自動チェックリストおよび修正参照知識情報が格納された知識ＤＢの自動チェックリストに従い不具合の有無をチェックする知識ＤＢ照合手段、
知識ＤＢ照合手段の結果から知識ＤＢの修正参照知識情報を探索して修正情報を作成する文書修正支援手段、
知識ＤＢ照合結果および修正情報を表示手段に表示する表示制御手段
として動作させるための文書作成支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、作成した仕様書等の文書中に内在する不具合情報を自動的に抽出してその結果を表示する文書作成支援装置および文書作成支援プログラムに関するものである。
【背景技術】
【０００２】
近年、コンピュータの高性能化とディスク容量の増大、ネットワークインフラストラクチャー整備などを背景に、文書や図面をワープロソフトあるいはＣＡＤ（Computer Aided Design)ソフトで作成してワークフローなどで承認・検印し、ファイルサーバに保存して共有する統合ドキュメント管理システムが開発されている。仕様書のレビューの方法はワークフロー提出前または提出中に関係者で行う方法がある。
【０００３】
例えば、特許文献１には、作成者が仕様書の作成時にチェックリストも作成し、仕様書完成時にはチェックリストの項目を全てチェックし、チェックリスト項目の全てをチェック済みにして終了する方法が開示されている。
【０００４】
特許文献２は、ネットワーク環境を利用し、多人数によって非同期に共同で文書を作成し相互レビューを行なうための文書作成方式が開示されている。
【０００５】
【特許文献１】特開平9−114868号公報
【特許文献２】特開平5−225194号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
特許文献１の問題点は、作成者が仕様書を作成する度毎にチェックリストを作成し、作成後にチェックリストとの照合を行う必要があるため、作成者に大きな負担がかかることである。また、チェックリストとの照合が大きな負担となると、作成者によっては、問題となりそうな箇所のみを入念にチェックして、問題となりそうにない部分は簡易なチェックに留めることが考えられる。これは作成者だけでなく、審査者も同様である。このように人手によるチェックを用いると、チェック作業が形骸化してしまい、十分に機能しない課題がある。
【０００７】
特許文献２の問題点は、仕様書をレビューする人間に関するものである。その分野のエキスパートが定常的にレビューに携わる限りにおいては問題となりにくいが、レビューする人間が配置転換・退職他で他の人に変更されると、レビューの内容や質が変わってしまうことがある。このため従来と同等の品質でレビューができないという課題がある。
【課題を解決するための手段】
【０００８】
この発明に係る文書作成支援装置は
文書を入力する入力手段と、
入力手段よりの入力文書から文字と文字の位置情報と線分の位置情報を抽出する文字・線分抽出手段と、
文書構造化のための構造情報を格納する属性ＤＢと、
文字・線分抽出手段からの文字と文字の位置情報と線分の位置情報を用い、属性ＤＢの構造情報を参照して入力文書を構造化する文書構造化手段と、
文書内容解析のための自動チェックリストおよび修正参照知識情報を格納する知識ＤＢと、
前記文書構造化手段が作成する構造化文書を知識ＤＢ内の自動チェックリストに従い不具合の有無をチェックする知識ＤＢ照合手段と、
知識ＤＢ照合手段の結果から知識ＤＢの修正参照知識情報を探索して修正情報を作成する文書修正支援手段と、
知識ＤＢ照合結果および修正情報を表示する表示手段を備える。
【０００９】
この発明に係る文書作成支援プログラムは
作成文書の不具合を検索し、修正するためにコンピュータを
入力手段よりの入力文書から文字と文字の位置情報と線分の位置情報を抽出する文字・線分抽出手段、
文字・線分抽出手段からの文字と文字の位置情報と線分の位置情報を用い、文書構造化のための構造情報が格納された属性ＤＢの構造情報を参照して入力文書を構造化する文書構造化手段、
前記文書構造化手段が作成する構造化文書を、文書照合のための自動チェックリストおよび修正参照知識情報が格納された知識ＤＢの自動チェックリストに従い不具合の有無をチェックする知識ＤＢ照合手段、
知識ＤＢ照合手段の結果から知識ＤＢの修正参照知識情報を探索して修正情報を作成する文書修正支援手段、
知識ＤＢ照合結果および修正情報を表示手段に表示する表示制御手段
として動作させる。
【発明の効果】
【００１０】
本発明によれば、ユーザが作成文書を入力するだけで自動的に知識ＤＢの自動実行チェックリストを照合して作成文書の不具合内容をチェックし結果を表示する。知識ＤＢの自動実行チェックリストは基本的には１度だけ管理者が作成するのみでよいため、文書作成者の負担が軽減される。また、人手によるチェックでは担当者によりチェック結果が異なる場合があるのに対し、本システムでは同一の文書では常に同一の結果を出力するので品質のばらつきがない。また、不具合の修正案を提示することで、作成者の負担を軽減できる。
【発明を実施するための最良の形態】
【００１１】
実施の形態１．
図１は本発明の実施の形態１の構成を示すブロック図である。図１において、１は文書を入力する入力手段、２は入力手段１で入力された入力文書から文字および文字の位置情報と線分の位置情報を抽出する文字・線分抽出手段、７は文書構造化のための情報を格納する属性DB、８は仕様書等を作成するための知識とする情報、即ち文書照合のための自動チェックリストや修正参照知識情報を予め保持する知識DB、９は過去の不具合情報を格納する不具合DB、３は文字・線分抽出手段２で抽出された文字・線分情報を用い、属性DB７を参照して文書を構造化する文書構造化手段、４は文書構造化手段３が構造化した入力文書と、知識DB８とを照合する知識DB照合手段、５は知識DB照合手段４の結果に従い知識DB８を探索して文書の修正代替案を作成する情報文書修正支援手段、６は抽出された不具合情報および代替案を表示する表示手段である。
なお、図１の入力手段１、文字・線分抽出手段２、文書構造化手段３、知識DB照合手段４、文書修正支援手段５、表示手段６は文書作成支援装置における中央演算装置の動作を制御するプログラムのモジュールに従って該中央演算装置を便宜的に分割したものである。
【００１２】
図２は本実施の形態の動作を示すフローチャートである。以下、図２を用いて動作を説明する。
【００１３】
まず、図２のステップS100で、入力手段１が、ユーザが指定したコンピュータ読取り可能な文書を取得する。コンピュータ読取り可能な文書とは、例えばコンピュータで処理可能なワープロソフトを用いて作成した文書ファイル、ＣＡＤソフトを用いて作成した図面ファイル、ＰＤＦ(Portable Document Format)形式のファイル等である。
図４は入力手段１が取得した文書を示す図である。図４は仕様書の一部であり、ここではワープロソフトで作成した文書ファイルを用いる。
【００１４】
続いて、図２のステップS200で、文字・線分抽出手段２が文字抽出処理を行う。文字・線分抽出手段２は入力手段１が取得した文書から、記述されている文字の文字コードおよび文書内における位置座標を抽出する。文字コードおよび位置座標は、ＰＤＦのようにフォーマット仕様が公開されているものは、仕様に従って文書を解析することで抽出可能である。
一方、仕様が公開されていないワープロソフトで作成された文書は、文書を作成したアプリケーションが擬似的な印刷処理を行い作成したＰＤＦファイルを用いて文書解析を行い、文字コード・位置座標を抽出する。文字コードを含まないＰＤＦファイルに対しては、文書を画像処理可能なビットマップファイル等に変換した後、公知である文字認識技術を用いることで文字、および位置座標を抽出することも可能である。
本実施の形態ではワープロソフトで作成した文書を用いているので、一度ＰＤＦに変換した後、文字抽出を実施する。抽出結果を図５に示す。図５では、抽出した各文字と、各文字座標をsx,sy,w,hで記述する。それぞれの意味は、文字の外接矩形の左上点のX座標をsx、同じく外接矩形左上点のY座標をsy、左上点からの横方向の幅をw,左上点からの高さがhである。
【００１５】
次に文書・線分抽出手段２は文書中の線分を抽出する。線分の抽出方法は文字抽出と同様に、仕様が公開されているＰＤＦを文書解析することで抽出可能である。
また文書を画像処理可能なビットマップファイル等に変換した後、公知の処理である２値化処理を行い、黒画素の連結成分を抽出した後、各連結成分の縦横比を求め、縦横比が予め既定する閾値よりも大きな領域を線分と判定して抽出することも可能である。線分の抽出結果を図６に示す。図６では抽出した線分に番号（線番号）を付与し、その矩形座標を図５と同様にsx、sy、w、hを用いて記述する。
【００１６】
次に図２のステップS300で、文書構造化手段３が入力文書から文書構造を抽出する。ここで文書構造抽出とは、文書のレイアウト情報や記述された内容を用いて文書を物理的・論理的な構造で表す処理を指す。本処理では、文書の章・節情報の抽出、文書中の表の構造化を行う。
【００１７】
章節抽出処理のフローを図３に示す。ステップS310で文書構造化手段３は行情報抽出処理を行う。本処理は、Ｓ200で抽出した文字の位置情報を用いて行情報を抽出する。具体的には、図５で示す座標から、連続する文字間のsx座標同士とsy座標同士の差分をとり、差分が少ない座標で縦書きか横書きかを判定する。sx座標の変動が少ない場合は縦書き、sy座標の変動が少ない場合は横書きと判定する。図５では、１文字目「４」101の(sx,sy)が(30,10)であり、２文字目「．」102が(60,10)である。sxの変動量は30、syの変動量は0であるので、sy座標の変動が少ないため横書きと判定する。
横書きの場合は、連続する文字のsy座標が急激に変動する部分を行の変わり目と判定する。図５では、文字「４」101から文字「様」103まではsy座標が10であるが、文字「以」104からsy座標が60と急激に変動するので、ここを行の変わり目と判定する。以上の処理を最後まで実行し、各行とその文字を確定する。
【００１８】
次に図３のステップS320で、各行の文字列を取り出し、ステップS330で章節条件を満たすか否かを判定する。
ここで章節条件は、「開始文字が数字である」、「開始座標が、横書きの場合は開始位置が用紙左端から頁幅の1/4以内、縦書きの場合は用紙右上から頁高さの1/4以内である」、「名詞で終了している」とする。
【００１９】
まず、S310で求めた１行目の文字列「４．部品および一般仕様」について章節条件を解析する。１行目の開始文字は図５の101より数字であるので第１の章節条件を満たす。また開始文字のsx座標が図５の101より30であり、文書幅を1000とすると左端から1/4以内であるので第２の章節条件を満たす。第３の章節条件の検証には、公知の形態素解析処理を行うことで、名詞で終了しているか否かを判定することができる。いま、１行目の形態素解析処理の結果、「４．（名詞）」「部品（名詞）」「および（接続詞）」「一般（名詞）」「仕様（名詞）」が得られたものとすると、最後の品詞「仕様」は名詞である。この結果、１行目は３つの章節条件を全て満たしている。そこでステップS330でYへ進みステップS340で１行目を章節候補として図示しないバッファに行番号を記憶する。次にステップS350で現在の行が最後の行であるか否かを判定する。最後の行でない場合はステップS330へ進み、最後の行である場合はステップS360へ進む。以下同様に繰り返して、図４からは1行目のみを章節候補と判定する。
【００２０】
全ての行の処理の終了後、S360で章節範囲算出を行う。章節範囲算出は、抽出した1つめの章節候補の開始行から次の章節候補の開始行の１行前までを１章節範囲として決定し、これを全ての章節候補に対して実行する。最後の章節候補は文の最後までを章節範囲とする。図４では章節候補が１つしか存在しないため、ページ内の行全てが同一の章節範囲となる。
【００２１】
次に文書構造化手段３は表の構造化を行う。
表の構造化は、図６に示す線分情報を使用して行う。表の判定は、各線分の位置関係を解析して、互いに交差する線分のグループを同一の表とする。具体的には、図６中の線分から１つ取出し、自分以外の線分との交差を検定する。いま、線番号「１」105は、線番号「５」106、線番号「６」107、線番号「７」108、線番号「８」109と交差する。同様に線番号「２」110についても交差の検定を行い、同じく線番号「５」106、線番号「６」107、線番号「７」108、線番号「８」109と交差する。これを繰り返し、交差する線分のグループを選定して表の範囲を決定する。図６では105から112までは互いに交差するので同一の表を構成している。
【００２２】
次に、文書構造化手段３は表のセルを抽出する。ここでは同一の表を構成する線分から隣接する横方向の２線分と縦方向の２線分で囲まれる領域をセルとして抽出する。例えば図６では、隣り合う線分である線番号「５」106、「６」107と、隣り合う縦方向の線分「１」105、「２」110の交点４点を算出して、この４点で囲まれる領域をセルとする。他の線分についても同様に繰り返し、隣接する２つの横方向線分と縦方向線分とで囲まれるセルの矩形座標を全て抽出する。
【００２３】
次に文書構造化手段３は各セル中に記述された文字を抽出する。具体的には図５に示す文字の位置情報と、図示しないセルの矩形座標を用いて、各セルの領域内に含まれる文字を決定する。
【００２４】
表構造の記述にはXML（eXtensible Markup Language）を用いるが、XMLで記述するためには表のタグ名となる文字がどのセルであるかを判定する必要がある。タグ名となる文字のセルの判定方法は、ここでは表のタグ名となる特定のセルの位置を表の縦横セル数毎に予め属性DB７に知識として保持しておき、抽出した縦横セル数に応じて属性DB７からタグ名のセル位置を取得する。例えば横方向のセル数が３、縦方向のセル数が３以上では、表の最上の３つのセルをタグ名とする情報を属性DB７に格納する。この知識を用いると、図４の表４．１の例では、最上セル中の文字である「品名」「型名」「社名」をタグ名セルとする。
次に、表のタイトルとなる文字列を抽出する。これは、表領域の上近辺にある文字列であって文字「表」から始まる文字列を抽出する。
以上のようにして構造化した例を図７に示す。図７では、章節タイトルを「paragraph」タグで記述しており、章節タグ内に表情報を２つ含む構造となっている。
【００２５】
次に、ステップS400で、知識DB照合手段４が知識DB8内に格納された自動実行チェックリストに基づき照合を行う。
【００２６】
知識DB８には、仕様書等を作成するための知識とする情報を格納する。本実施の形態では、修正参照知識情報としても使われる、製品で使用する部品のデータベース、仕様書のチェックリストをプログラム実行可能な形式に記述した自動チェックリストなどを格納する。
【００２７】
自動チェックリストの作成方法について述べる。図９は、人手による仕様書チェックのために作成したチェックリストであり、従来から使用されているものである。これを元にプログラム実行可能な自動チェックリストを人手により作成する。作成方法は、プログラム実行可能ないくつかの条件パターンを予め用意しておき、チェックの内容に応じて使用する条件パターンを選定して記述する。図１０〜図１２は条件パターンの例である。図１０は照合条件を示し、「Ａ」130と「Ｂ」132が「条件」131を満たすか否かを検証する条件パターンである。図１１は「Ａ」136「Ｂ」137「Ｃ」138が「条件」139「全て近辺に存在するか」を検証する条件パターン、図１２は「Ａ」140を「Ｂ」141に対して条件142「置換」行う条件パターンである。
【００２８】
知識DB照合手段４は、図１０〜図１２に示す自動実行チェックリストを用いて照合を行う。いま、図１０のID「10-1」では、「図面名称」133と「台帳の図面名称」135が「＝」134(一致)することが条件となる。図１０では便宜的に口語調で記述するが、実際は「Ａ」130にXMLタグ名、「Ｂ」132に知識DB８内の台帳の図面名称のカラム名を指定する。知識DB照合手段４は構造化文書内の図面名称タグの文字列（図７では存在しない）と、知識DB８内の台帳の図面名称が一致するか否かを検定する。一致しない場合にはId番号と「図面名称」および「台帳の図面名称」および一致しないステータスを出力する。
【００２９】
図１１のID「11-1」では、文書内に「直線」145、「型名」146、「ROMソケット記号」147が近辺に存在するかをチェックする。直線の抽出は文字・線分抽出手段２の線分抽出結果（図６）から、表として使用されていない線分を抽出する。「型名」は知識DB８内の部品ＤＢからROMソケットの型名を抽出する（図示せず）。「ROMソケット記号」は公知である文字認識処理を拡張してROMソケットの記号パターンが識別可能となるように登録することで抽出可能とする。このように抽出した「直線」「型名」「ROMソケット記号」が全て近辺に存在するか否かをチェックし、存在する場合はID番号と「存在する」ステータスを出力し、存在しない場合はID番号と「存在しない」ステータスを出力する。
【００３０】
図１２のID「12-1」は、「チップセラミックコンデンサ」143を「フィルム型コンデンサ」144に「置換」120するものである。知識DB照合手段４は、図７に示す文書構造抽出結果に対して、図８に示す知識DB８内の部品ＤＢ中のチップセラミック型コンデンサの型名（ここでは「C0001」151）が存在するかを調査する。図７中には「C0001」1515が存在するのでID番号と「チップセラミックコンデンサが存在する」ステータスを出力する。
【００３１】
次に知識DB照合手段４は図１０〜図１２に示すチェックリストに存在する単語名を用いて不具合DB９を検索する。不具合DB９の内容を図１３に示す。図１３には不具合内容、原因、対策、費用、重要度等が記述されている。知識DB照合手段４は不具合DB９の検索でヒットした不具合内容の登録番号を出力する。いま、図１２の「チップセラミックコンデンサ」143で検索すると、図１３の登録番号「1」150がヒットする。この不具合情報の登録番号「１」150を出力する。
【００３２】
ステップS500で文書修正支援手段５は知識DB照合手段４の出力結果から、修正可能なものについて修正案を作成する。修正可能な自動チェックリストのID番号は予め保持する。ここではID「12-1」を修正可能なものとして予め登録する。修正案作成は、「12-1」の「チップセラミックコンデンサ」143の代替候補である「フィルム型コンデンサ」144の型名を知識DB８（図８に示す部品ＤＢ）から取得する。フィルム型コンデンサの型名が複数存在する場合には、複数出力する。図８からは「C0002」152が修正候補として出力される。
【００３３】
表示手段６は、以上示した仕様書自動チェック結果とその代替案、および過去の不具合情報を表示する。図１４に結果画面を示す。図１４は照合結果（自動チェック結果）、不具合情報の順に出力しているが、これはユーザ毎の出力内容を知識DB８に保持することでカスタマイズ可能となる。例えば、不具合情報の表示順序について、不具合部品名のみを表示させたり、不具合DB９から得た「原因」「対策」「費用」等の順番をカスタマイズして表示することが可能となる。
【００３４】
以上のように、本実施の形態によれば、ユーザが仕様書を入力するだけで自動的に仕様書の不具合内容をチェックして結果を表示することが可能となる。自動実行チェックリストは基本的には１度だけ管理者が作成するのみでよいため、仕様書作成者の負担が軽減される。また、人手によるチェックでは担当者によりチェック結果が異なる場合があるのに対し、本システムでは同一の仕様書では常に同一の結果を出力するので品質のばらつきがない。また、不具合の修正案を提示することで、作成者の負担を軽減できる。表示内容をユーザ毎にカスタマイズ可能とすることで使い勝手を向上させることができる。
【００３５】
なお、本実施例で文書構造化は文書中の章節情報抽出および表の構造化であったが、これに限らず図面・写真領域の抽出、文書タイトルの抽出なども含むことができる。
また、知識DB８の条件パターンは図１０〜図１２に示す内容に限らず、例えば指定内容の有無のチェックなども考えられる。
【産業上の利用可能性】
【００３６】
或る組織の有する各種知識情報を的確に検索し、業務効率に役立てる統合ドキュメント管理システムや報告書作成支援システム・作成した製品仕様書の自動チェックシステム等に適用されることで、文書作成者の負担軽減・使い勝手を向上が図れる。
【図面の簡単な説明】
【００３７】
【図１】この発明の実施の形態１による文書作成支援装置のブロック図である。
【図２】文書作成支援装置の動作フロー図である。
【図３】文書作成支援装置の動作フロー図である。
【図４】実施の形態１における入力手段が取得した仕様書の説明図である。
【図５】実施の形態１の仕様書から文字情報抽出結果の説明図である。
【図６】実施の形態１の仕様書から線分情報抽出結果の説明図である。
【図７】実施の形態１で仕様書からの構造抽出結果の説明図である。
【図８】実施の形態１の知識DB中の部品ＤＢの説明図である。
【図９】実施の形態１のチェックリストの説明図である。
【図１０】実施の形態１の自動チェックリスト充足条件パターンの説明図である。
【図１１】実施の形態１の自動チェックリスト有無条件パターンの説明図である。
【図１２】実施の形態１の自動チェックリスト置換条件パターンの説明図である。
【図１３】実施の形態１の不具合DBの説明図である。
【図１４】実施の形態１の自動チェック結果表示画面の説明図である。
【符号の説明】
【００３８】
１  入力手段、  ２  文字・線分抽出手段、  ３  文書構造化手段、  ４  知識DB照合手段、  ５  文書修正支援手段、  ６  表示手段、  ７  属性DB、  ８  知識DB，９  不具合DB。
【図１】
2006330840.tif 000003
【図２】
2006330840.tif 000004
【図３】
2006330840.tif 000005
【図４】
2006330840.tif 000006
【図５】
2006330840.tif 000007
【図６】
2006330840.tif 000008
【図７】
2006330840.tif 000009
【図８】
2006330840.tif 000010
【図９】
2006330840.tif 000011
【図１０】
2006330840.tif 000012
【図１１】
2006330840.tif 000013
【図１２】
2006330840.tif 000014
【図１３】
2006330840.tif 000015
【図１４】
2006330840.tif 000016