(57)【要約】【課題】  パブリケーションデザイン問題をチェックし、解決する。【解決手段】  パブリッシングプログラムは、ドキュメントが編集されている、または生成されている最中に起こり得るデザイン問題に関する継続的で、リアルタイムのフィードバックを、提供することができる。このフィードバックは、ドキュメントにおける現在の編集または生成の結果である可能性があるあらゆるデザイン問題のリアルタイムリストを有するユーザインターフェースを表示することを含むことが可能である。このリストは、ドキュメントが生成される、または編集されるにつれて更新される。ユーザは、所望に応じて何回でも、リストとドキュメントの間で切替えを行うことができる。このリストは、電子ドキュメントの全ての現在の潜在的なパブリケーション問題、ならびに電子ドキュメントに存在する可能性があるパブリケーション問題のタイプを明らかにすることができる。【選択図】  図２Ａ
2004240976.tif 000002
【特許請求の範囲】
【請求項１】
ドキュメントのデザインパブリケーション問題をモニタして修正するための、コンピュータによって実施される方法であって、
ドキュメント内でオブジェクトを生成すること、編集すること、および削除することのいずれか１つに関する入力を受け取るステップと、
前記入力を受け取る間に、前記ドキュメントに関して起こり得るパブリケーションデザイン問題のステータスに対処するユーザインターフェースを表示するステップと、
を含むことを特徴とする方法。
【請求項２】
前記ユーザインターフェースにおいて起こり得るパブリケーションデザイン問題のリストを表示するステップを、さらに含むことを特徴とする請求項１に記載の方法。
【請求項３】
起こり得るパブリケーションデザイン問題のステータスに対処する前記ユーザインターフェースにおいて入力を受け取るステップを、さらに含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記起こり得るパブリケーションデザイン問題の前記ステータスに関連したオプションを表示するステップを、さらに含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記入力の構成要素を識別するステップと、
イベントのリストの中に前記構成要素を記憶するステップとを、さらに含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記イベントのリストからパブリケーションに無関係のイベントを濾過して除くステップを、さらに含むことを特徴とする請求項５に記載の方法。
【請求項７】
ドキュメントの起こり得るパブリケーション問題をモニタして解決するための、コンピュータによって実施される対話型方法であって、
ドキュメント内のアクションをモニタするステップと、
前記アクションに応答して、起こり得るパブリケーション問題のステータスに関連した前記ドキュメント内でフィードバックを提供するステップと、
を含むことを特徴とする方法。
【請求項８】
前記ドキュメント内でフィードバックを提供するステップは、前記ドキュメントとは別個の表示領域内でユーザインターフェースを表示するステップを、さらに含むことを特徴とする請求項７に記載の方法。
【請求項９】
前記ドキュメントに関する出力のタイプを特定するステップと、
前記出力のタイプに関連したフィードバックを提供するステップと、をさらに含むことを特徴とする請求項７に記載の方法。
【請求項１０】
ドキュメントに関して起こり得るパブリケーション問題のリストを表示するステップと、
前記リストからの問題の選択に応答して前記ドキュメントにおける問題を識別するステップと、をさらに含むことを特徴とする請求項７に記載の方法。
【請求項１１】
ドキュメントに関して起こり得るパブリケーション問題のリストを表示するステップと、
前記リストからの前記問題の選択に応答して、前記問題の１つを含む前記ドキュメントにおけるページを表示するステップとを、さらに含むことを特徴とする請求項７に記載の方法。
【請求項１２】
ドキュメントに関して起こり得るパブリケーション問題のリストを表示するステップと、
前記リストからの前記問題の選択に応答して、前記ドキュメントにおける問題をスクリーン機構を使用することにより強調表示するステップとを、さらに含むことを特徴とする請求項７に記載の方法。
【請求項１３】
ドキュメントに関して起こり得るパブリケーション問題のリストを表示するステップと、
前記リストからの前記問題の選択に応答して、編集するために前記ドキュメントに戻るステップとを、さらに含むことを特徴とする請求項７に記載の方法。
【請求項１４】
パブリケーション問題を解決するために前記ドキュメントを自動的に編集するステップを、さらに含むことを特徴とする請求項７に記載の方法。
【請求項１５】
作業管理ファイルを生成するためのコンピュータシステムであって、
処理ユニットと、
メモリ記憶デバイスと、
データを表示するために前記処理ユニットに結合された表示デバイスと、
前記処理ユニットに命令を提供するために前記メモリ記憶デバイスの中に記憶されたプログラムとを含み、
前記処理ユニットは、前記プログラムの前記命令に応答して、
ドキュメントを表示する間に起こり得るデザインパブリケーション問題のリストを表示するステップと、
前記ドキュメントを編集すること、および前記問題のリストにおける問題に関するさらなる情報を要求すること、のいずれか一つのための入力を受け取るステップと、を行うように動作することを特徴とするシステム。
【請求項１６】
前記プロセッサは、さらに加えて、
前記ドキュメント内のアクションをモニタするステップと、
前記アクションに関連した問題を識別するステップとを行うように動作する、ことを特徴とする請求項１５に記載のシステム。
【請求項１７】
前記プロセッサは、さらに加えて、
前記ドキュメント内のアクションをモニタするステップと、
前記アクションに応答して前記問題のリストを更新するステップとを行うように動作する、ことを特徴とする請求項１５に記載のシステム。
【請求項１８】
前記プロセッサは、さらに加えて、前記リストから問題が選択されたことに応答して、問題を含む前記ドキュメントにおけるページを表示するステップを行うように動作することを特徴とする請求項１５に記載のシステム。
【請求項１９】
前記プロセッサは、さらに加えて、
ユーザアクションをイベントのリスト中に記憶するステップと、
前記ユーザアクションが前記ドキュメントのパブリケーションにどのように影響するかを特定するステップとを行うように動作する、ことを特徴とする請求項１５に記載のシステム。
【請求項２０】
前記プロセッサは、さらに加えて、
ユーザアクションを潜在的なデザインパブリケーション問題と共にマッピングするステップと、
前記ドキュメントに対して実行するチェックのリストを生成するステップと、
前記チェックのリストを実行するステップとを行うように動作する、ことを特徴とする請求項１５に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子ドキュメント(electronic document)をチェック(check)し、編集(edit)することに関する。より具体的には、本発明は、パブリッシング(publishing)に先立って潜在的な問題(potential problem)について電子ドキュメントを精査(reviewing)し、編集(editing)するための対話型プロセス(interactive process)に関する。
【背景技術】
【０００２】
従来のドキュメント検査プログラム(document inspection program)は、電子ドキュメントがパブリケーションされることに先立ち、起こり得る問題(possible problem)に関して電子ドキュメントを精査し、チェックすることができる。例えば、電子ドキュメントが商業印刷プロセスで出版される場合、ドキュメント編集プログラムによって生成された電子ドキュメントを、起こり得る誤り(possible error)または問題(problem)に関してチェックするのに、しばしば、ドキュメント検査プログラムが使用される。ドキュメント検査プロセス(document inspection process)は、電子ドキュメントをパブリケーションすることに先立って、起こり得る誤りを識別することができる。そのようなプロセスにより、商業印刷(commercial printing)、Ｗｅｂサイトパブリッシング(website publishing)、デスクトップパブリッシング、およびその他の同様のパブリッシングアプリケーションなどのアプリケーションに費やされる時間とお金を相当に節約することが可能である。
【０００３】
具体的には、従来のドキュメント検査チェックプログラムは、ドキュメント編集プログラムによって生成された電子ドキュメントを精査して、ページ際上部の余白が大きすぎないか、オブジェクトがページ上に適切に配置されているかどうか、ページ上に配置されたオブジェクトが見えないことはないかどうか、特定のアプリケーションに関して不適切な色が使用されていないかどうかを判定することができる。以上は、従来のドキュメント検査ソフトウェアによって識別される可能性がある問題のいくつかに過ぎない。
【０００４】
従来のドキュメント検査ソフトウェアは、潜在的なパブリケーション問題を識別するのに非常に役立つ可能性があるが、そのようなソフトウェアは、通常、ドキュメント編集プログラムによってドキュメントが生成された後に別個のステップとして実施され、または実行され、ドキュメントが編集されている最中には行われない。ドキュメント編集プログラムを使用して電子ドキュメントを生成した後でドキュメント検査プログラムを使用することは非効率である可能性がある。というのは、電子ドキュメントにおける多くの問題は互いに関連している可能性があり、ドキュメントが生成されている最中に識別されたなら、かなり迅速に解決することが可能なはずであるからである。
【０００５】
ドキュメント検査ソフトウェアの別の欠点は、このソフトウェアが、通常ドキュメント編集プログラムとは別個のプログラムであることである。つまり、ドキュメント検査ソフトウェアは、通常、ドキュメント編集プログラムの製造業者とは異なる製造業者によって作成される。したがって、ドキュメント検査ソフトウェア製造業者は、ドキュメント編集プログラムのプログラミングコードの全てには精通していない可能性があり、非互換性の問題がもたらされる可能性がある。
【０００６】
さらに、従来のドキュメント検査ソフトウェアは、通常、ドキュメント編集プログラムにおいて存在する可能性がある電子ドキュメントと対話しない可能性がある。言い換えれば、ドキュメント検査ソフトウェアは、通常、ドキュメントに存在する誤りを報告するが、ドキュメント編集プログラムにおいて存在する電子ドキュメントに変更を行うことができない。第三者のドキュメント検査ソフトウェアは、通常、ドキュメント編集プログラムとは完全に別個のアプリケーションとして存在する。
【０００７】
多数の別個のドキュメント検査ソフトウェアプログラムが存在するが、一部のドキュメント編集プログラムは、そのドキュメント編集プログラムに組み込まれたいくつかのドキュメント検査機能(document inspection function)を有している。ただし、それらのドキュメント検査機能は、通常、非常に限られており、ドキュメント検査ソフトウェアの問題のいくつかをも有している。
【０００８】
ドキュメント検査ソフトウェアのいくつかの問題、およびドキュメント検査機能を組み込んだドキュメント編集プログラムの問題の一部には、電子ドキュメントが生成された後に電子ドキュメントのチェックを実行することが含まれる可能性がある。従来技術のドキュメント検査ソフトウェアおよびドキュメント検査機能の別の問題は、チェックプロセスが開始された際に問題が順次提示されることである。言い換えれば、従来のドキュメント検査プロセスが開始されたとき、通常、電子ドキュメントの最初の問題が識別され、ユーザは、識別された現在の問題を解決した後に次の問題に順次に進むことだけができる。問題を識別することには、その問題を含むページ上の領域を拡大すること、および、場合により、その問題を色で強調表示することが含まれる可能性がある。
【０００９】
シーケンシャルチェックプロセス(sequential checking process)の最中、ユーザは、しばしば、識別された問題をどのように修正するかの決定を行うことを余儀なくされる。従来のドキュメント検査技術では、ユーザには、ドキュメントにどれだけの数のパブリッシング問題が存在するか、ドキュメントにどのようなタイプの問題が存在するかについて、全く見当がつかない。従来のドキュメント検査技術(decument inspection technique)の問題の順次提示(sequential presentation)は、非常に硬直した非対話型プロセスとして特徴付けることができる。
【００１０】
ドキュメント検査プロセス中、通常、潜在的なパブリッシング問題が拡大されるため、現在のページ上に存在する可能性がある他の問題を見ることが困難であり、しばしば、不可能である。ユーザが従来のドキュメント検査チェック技術で識別された問題を修正した場合、ユーザによって行われた処置により、現在の問題、またはチェックされなかった残りの問題のいずれかが修正されたことが、通常、ユーザに全く示されない。従来のドキュメント検査チェックプロセスでは、ユーザは、ドキュメント検査プロセスに対して、ほとんど、または全く制御できない。
【発明の開示】
【発明が解決しようとする課題】
【００１１】
したがって、当技術分野において、対話的であり、ユーザがドキュメント検査プロセス中にいくらか制御することを可能にする、パブリケーションデザイン問題(publication design problem)をチェック(check)し、解決(resolve)するためのシステムおよび方法が必要とされている。当技術分野において、ドキュメントが編集(edit)されている、または生成(create)されている最中に、起こり得るデザイン問題(possible design problem)に関する継続的でリアルタイムのフィードバック(continuous and real time feedback)を提供することができるドキュメント検査プロセスがさらに必要とされている。当技術分野において、電子ドキュメントの全ての問題を識別し、電子ドキュメントに存在する可能性がある問題のタイプ(type of problem)識別するドキュメント検査プロセスがさらに必要とされている。当技術分野において、ある繰返し生じる問題を自動修正するためのオプションをユーザに使用可能とすることができるように、パブリッシングプログラムと一体になったドキュメント検査プロセスがさらに必要とされている。最後に、当技術分野において、電子ドキュメントが生成されている、または編集されている最中に使用することが簡単であり、管理することが容易なドキュメント検査プロセスが必要とされている。
【課題を解決するための手段】
【００１２】
パブリッシングプログラム(publishing program)は、ドキュメントが編集されている、または生成されている最中に起こり得るパブリケーションデザイン問題に関する継続的でリアルタイムのフィードバックを提供することができる。デザイン問題(design problem)には、パブリケーションの困難をもたらす可能性があるドキュメントにおける任意の数の誤りを含むことが可能である。例えば、ページ最上部の余白（トップマージン）が大きすぎること、またはオブジェクトが他のオブジェクトを隠していることを、問題と考えることが可能である。
【００１３】
本発明のフィードバックは、ドキュメントにおける現在の編集または生成の結果である可能性があるあらゆるデザイン問題のリアルタイムリストを表示するユーザインターフェースを含むことが可能である。デザイン問題のこのリストは、ドキュメントをパブリケーションするのに先立って修正すべきドキュメントに関する起こり得るデザイン問題の全体的な見通し、つまり全体像を提供することができる。
【００１４】
ユーザインターフェースおよび継続的なフィードバック(continuous feedback)をパブリッシングプログラムに統合して、ユーザインターフェースが表示され、実行されている間に、ドキュメントの編集、削除、または生成を行うことができるようにすることが可能である。これは、フィードバックおよびユーザインターフェースを提供するソフトウェアモジュールをパブリッシングプログラムに統合することができることも意味する。
【００１５】
本発明のユーザインターフェースにより、ドキュメントに存在する可能性があるデザイン問題のリスト(list of design problem)からユーザが選択するのを可能にすることができる。問題のリストからデザイン問題が選択されると、その問題を含むページ、ならびに問題自体を表示することが可能である。問題は、問題を異なる色で強調表示(highlighting)すること、問題の周囲の輪郭を点滅させること、およびデザイン問題に注意を喚起する他の同様の技術など任意の様々なスクリーン機構(screen mechanism)を使用してより目立つようにすることができる。
【００１６】
ユーザインターフェースは、特定のデザイン問題(particular design broblem)を解決する、または修正するために選択することができるオプションを表示し、処理することができる。ユーザインターフェースは、自動修正オプションを表示することができる。この自動修正オプション(autocorrect option)が選択された場合、パブリッシングプログラムは、さらなるユーザアクションなしにデザイン問題を自動的に修正することができる。
【００１７】
本発明の１つの利点は、継続的で、リアルタイムのフィードバックが、ドキュメント編集プログラムにおけるスペルチェッカと同様に、ドキュメントを生成するため、または編集するためのワークフロー(workflow)に統合されることとすることができる。本発明の別の利点は、デザイン問題のリストをユーザがいつでもナビゲートできることとすることができる。言い換えれば、デザイン問題の順次処理(sequential processing)のために、評価されているデザイン問題に関して強制的に判断させられた従来の技術とは異なり、本発明のユーザインターフェースによってリストで表示されたデザイン問題は、ユーザによってランダムに選択することが可能である。
【００１８】
ユーザインターフェースは、デザイン問題のランダムな選択を可能にするので、ユーザインターフェースは、デザイン問題に優先順位を付けることを可能にすることになる。ユーザは、いつデザイン問題を修正することを要望するかを決めることができる。さらに、ユーザが所望する場合、あるチェックを行わないようにパブリッシングプログラムに命令することができる。つまり、潜在的なデザイン問題を識別するためのあるチェックの設定を行って、パブリッシングプログラムによって実行されないようにすることが可能である。
【００１９】
ユーザインターフェースによって表示された問題のリストから、２つまたはそれより多くの問題の間の関係を確かめることができる。さらに、この継続的で、リアルタイムのフィードバックにより、現在の生成、追加、または削除に対する即時のフィードバックを見ることによってデザイン問題をどのように回避するかを学習するようにユーザを訓練することが可能である。
【００２０】
ドキュメントにおける継続的で、リアルタイムのフィードバックとは、ドキュメントで変更が行われるにつれ、その変更に応答してデザイン問題を更新することが可能であることを意味する。したがって、ドキュメントに変更が行われ、この変更によってリストに存在するデザイン問題が修正された場合、変更が完了するとすぐにリストからその問題が取り除かれるようにリストを更新することが可能である。
【００２１】
本発明は、ドキュメントがパブリケーションされた際、出力タイプを自動的に検出することができる。出力タイプは、いくつかの出力タイプだけを挙げると、コンピュータプリンタを介するデスクトップパブリッシング、インターネットを介するＷｅｂサイトのデザインおよびパブリケーション、または商業印刷のいずれか１つとすることが可能である。出力タイプのこの自動検出により、デザイン問題の効率的な検出を可能にすることができる。というのは、パブリッシングプログラムは、別の出力タイプに関して存在する可能性がある問題を回避しながら、または探索せずに、その出力タイプに特有の問題を探索することができるからである。
【発明を実施するための最良の形態】
【００２２】
パブリッシングプログラム(publishing program)は、ドキュメントが編集(edit)されている、または生成(create)されている最中に、起こり得るデザイン問題(possible design problem)に関する継続的で、リアルタイムのフィードバック(continuous and real-time feedback)を提供することができる。このフィードバックは、ドキュメントにおける現在の編集または生成の結果である可能性があるあらゆるデザイン問題のリアルタイムリスト(real-time list)を有するユーザインターフェースを表示することを含むことが可能である。
【００２３】
例示的な動作環境
本発明の例示的な実施形態について、以下に、いくつかの図の全てにおいて同様の符号が同様の要素を表わしている図面を参照して説明する。図１Ａは、本発明の様々な実施形態を実施するための例示的な動作環境を示すブロック図である。例示的な動作環境１００は、従来のパーソナルコンピュータ１２０の形態で汎用コンピューティングデバイスを含む。一般に、パーソナルコンピュータ１２０は、処理ユニット１２１、システムメモリ１２２、ならびにシステムメモリ１２２から処理ユニット１２１までを含む様々なシステム構成要素を結合するシステムバス１２３を含む。システムバス１２３は、様々なバスアーキテクチャのいずれかを使用するメモリバスまたはメモリコントローラ、周辺バス、およびローカルバスを含むいくつかのタイプのバス構造のいずれかであることが可能である。システムメモリは、読み取り専用メモリ（ＲＯＭ）１２４、およびランダムアクセスメモリ（ＲＡＭ）１２５を含む。始動中などにパーソナルコンピュータ１２０内部の要素間で情報を転送するのを助ける基本ルーチンを含む基本入力／出力システム（ＢＩＯＳ）１２６が、ＲＯＭ１２４の中に記憶されている。
【００２４】
パーソナルコンピュータ１２０は、図示していないハードディスクに対して読み取りおよび書込みを行うためのハードディスクドライブ１２７、取外し可能な磁気ディスク１２９に対して読み取りおよび書込みを行うための磁気ディスクドライブ１２８、およびＣＤ−ＲＯＭまたは他の光媒体などの取外し可能な光ディスク１３１に対して読み取りおよび書込みを行うための光ディスクドライブ１３０をさらに含む。ハードディスクドライブ１２７、磁気ディスクドライブ１２８、および光ディスクドライブ１３０は、それぞれ、ハードディスクドライブインターフェース１３２、磁気ディスクドライブインターフェース１３３、および光ディスクドライブインターフェース１３４でシステムバス１２３に接続される。
【００２５】
本明細書で説明する例示的な環境は、ハードディスク１２７、取外し可能な磁気ディスク１２９、および取外し可能な光ディスク１３１を使用するが、磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイカートリッジ、ＲＡＭ、ＲＯＭなどの、コンピュータによってアクセス可能なデータを記憶することができる他のタイプのコンピュータ可読媒体も、例示的な動作環境において使用できることが、当分野の技術者には理解されよう。以上のドライブ、および関連するコンピュータ可読媒体により、コンピュータ実行可能命令、データ構造、プログラムモジュール、およびその他のデータの不揮発性ストレージがパーソナルコンピュータ１２０に提供される。
【００２６】
オペレーティングシステム１３５、スプレッドシートプログラム１３６、データベースプログラム１３７、およびドキュメント編集プログラム１３８Ａを含むいくつかのプログラムモジュールが、ハードディスク１２７、磁気ディスク１２９、光ディスク１３１、ＲＯＭ１２４、またはＲＡＭ１２５に記憶されることが可能である。プログラムモジュールには、特定のタスクを行う、または特定の抽象データタイプ(particular abstract data type)を実行(implement)するルーチン、サブルーチン、プログラム、オブジェクト、構成要素(component)、データ構造(data structure)等が含まれる。本発明の態様は、パブリッシングプログラム１３８Ｂを使用して電子ドキュメントを生成するように実施することが可能である。
【００２７】
ユーザは、キーボード１４０やポインティングデバイス１４２などの入力デバイスを介してコマンドおよび情報をパーソナルコンピュータ１２０に入力することができる。ポインティングデバイスには、マウス、トラックボール、および電子タブレットと併せて使用することができる電子ペンが含まれることが可能である。その他の入力デバイス（図示せず）には、マイクロホン、ジョイスティック、ゲームパッド、サテライトディッシュ、スキャナ等が含まれることが可能である。以上の入力デバイス、およびその他の入力デバイスは、しばしば、システムバス１２３に結合されたシリアルポートインターフェース１４６を介して処理ユニット１２１に接続されるが、パラレルポート、ゲームポート、ユニバーサルシリアルバス（ＵＳＢ）などの他のインターフェースで接続してもよい。また、表示デバイス１４７も、ビデオアダプタ１４８などのインターフェースを介してシステムバス１２３に接続されることが可能である。モニタ１４７に加えて、パーソナルコンピュータは、通常、スピーカやプリンタなどの他の周辺出力デバイス（図示せず）を含む。
【００２８】
パーソナルコンピュータ１２０は、１つまたは複数の遠隔コンピュータ１４９に対する論理接続を使用するネットワーク化された環境において動作することが可能である。遠隔コンピュータ１４９は、別のパーソナルコンピュータ、サーバ、クライアント、ルータ、ネットワークＰＣ、ピアデバイス、または他の一般的なネットワークノードであることが可能である。遠隔コンピュータ１４９は、通常、パーソナルコンピュータ１２０に関連して前述した要素の多く、または全てを含むが、メモリ記憶デバイス１５０だけを図１に示している。図１に描いた論理接続は、ローカルエリアネットワーク（ＬＡＮ）１５１およびワイドエリアネットワーク（ＷＡＮ）１５２を含む。そのようなネットワーキング環境は、オフィス、企業全体のコンピュータ網、イントラネット、およびインターネットで一般的である。
【００２９】
ＬＡＮネットワーキング環境で使用される場合、パーソナルコンピュータ１２０は、しばしば、ネットワークインターフェースまたはネットワークアダプタ１５３を介してローカルエリアネットワーク１５１に接続される。ＷＡＮネットワーキング環境で使用される場合、パーソナルコンピュータ１２０は、通常、インターネットなどのＷＡＮ１５２を介して通信を接続するためのモデム１５４、またはその他の手段を含む。内部にあることも、外部にあることも可能なモデム１５４は、シリアルポートインターフェース１４６を介してシステムバス１２３に接続される。ネットワーク化された環境では、遠隔コンピュータ１４９に関連して描いたプログラムモジュール１５５、１５６、またはプログラムモジュールの部分は、遠隔のメモリ記憶デバイス１５０の中に記憶されることが可能である。図示したネットワーク接続は、例示的であり、コンピュータ間で通信リンクを確立する他の手段も使用できることが認められよう。
【００３０】
さらに、本発明は、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースの家庭用電化製品またはプログラマブル家庭用電化製品、ネットワークパーソナルコンピュータ、ミニコンピュータ、メインフレームコンピュータ等を含む他のコンピュータシステム構成で実施してもよいことが、当分野の技術者には認められよう。また、本発明は、通信網を介してリンクされた遠隔の処理デバイスによってタスクが行われる分散コンピューティング環境においても実施することができる。分散コンピューティング環境では、プログラムモジュールは、ローカルのメモリ記憶デバイスと遠隔のメモリ記憶デバイスの両方の中に配置されることが可能である。
【００３１】
ユーザインターフェースの例示的な表示
図１Ｂを参照すると、電子ドキュメントにおける現在の編集または生成の結果である可能性がある潜在的なデザイン問題１０４Ａ、１０４Ｂ、１０４Ｃ、および１０４Ｄのリアルタイムリスト１０２を含むユーザインターフェース１００が示されている。ユーザインターフェース１００は、コンピュータスクリーン上で表示することが可能なビジュアルオブジェクトを含むが、本発明のリアルタイムのフィードバックは、情報の視覚表示に限定されないことが、当分野の技術者には認識されよう。リアルタイムのフィードバックは、サウンド、音声合成、触覚表示、およびユーザとのその他の形態の対話型通信(interactive communication)を含むことが可能である。
【００３２】
図１Ｂに示した例示的な実施形態では、デザイン問題のリアルタイムリスト(real-time list)１０２の最初のエントリ１０４Ａが、「ページ１でテキストボックスが空である」ことを述べるメッセージを含むことが可能である。この最初のエントリ１０４Ａ、および残りのエントリ１０４Ｂ、１０４Ｃ、１０４Ｄは、ユーザが選択することが可能である。精査(review)されている現在の電子ドキュメントに関して、このリスト１０２は、評価(evaluate)されている電子ドキュメントの起こり得るデザイン問題の完全なリスト(complete list)である。問題リスト１０２がウインドウまたはユーザインターフェース１００のサイズを超えた場合、スクロールボタン１０６を使用して問題リスト１０２をスクロールすることができる。
【００３３】
前述した通り、本発明の利点は、ユーザが電子ドキュメントを生成している、または編集している最中に、そのユーザが、起こり得る(possible)パブリケーションデザイン問題(publication design problem)１０４のリスト１０２をいつでもナビゲートできることである。ユーザインターフェース１００のこのナビゲーション能力により、デザイン問題１０４のランダムな選択も可能になる。ユーザは、リスト１０２に表示された特定のデザイン問題１０４をいつ修正することを要望するかを決めることができる。また、ユーザインターフェース１００によって表示された問題１０４のリスト１０２から見て取ることができる通り、リスト１０２に表示された問題の間の関係を確かめることもできる。
【００３４】
次に、図１Ｃを参照すると、起こり得るデザインパブリケーション問題１０４の最初のエントリ１０４Ａが選択されたことに応答してメニュー１０８が表示されている。メニュー１０８は複数のオプション１１０を含むことが可能である。第１のオプション１１０Ａは、識別された特定の問題にナビゲートするためのコマンドを含むことが可能である。第２のオプション１１０Ｂは、リスト１０２で識別された問題１０４Ａをシステムが自動的に修正する自動修正機能を含むことが可能である。第３のオプション１１０Ｃは、現在の電子ドキュメント内でそのタイプの問題に関して再びチェックしないようにするコマンドを含むことが可能である。第４のオプション１１０Ｄは、リスト１０２から選択された問題の性質およびタイプを説明するテキストを表示するコマンドを含むことが可能である。図１Ｃがさらに強調する通り、ユーザインターフェース１００は、非常に対話的であり、電子ドキュメントを編集している、または生成している最中に同時に実行されることが可能なドキュメント検査プロセスに対してユーザが相当なコントロールを有することを可能にする。
【００３５】
次に、図１Ｄを参照すると、空のテキストボックス１１４を含む電子ドキュメント１１２が、ユーザインターフェース１００に隣接して表示される。電子ドキュメント１１２は、図１Ｃに示されたメニュー１０８の第１のオプション１１０Ａの選択（選択された問題にナビゲートする）に応答して表示される。テキストボックス１１４が、円形マーカ１１４Ａで強調表示され、ユーザの注意を潜在的なデザイン問題に集中させる。本発明は、円形マーカ１１４Ａ、１１４Ｂに限定されない。潜在的なデザイン問題は、問題を異なる色で強調表示すること、問題の周囲の輪郭を点滅させること、ならびにサウンド、音声合成、およびユーザの注意を潜在的なパブリケーションデザイン問題に向けさせる他の同様な方法などの他のコミュニケーションを介してユーザに問題を伝えることなどの円形マーカ１１４Ａ、１１４Ｂ以外の任意の様々なスクリーン機構を使用して、より目立たせることができる。
【００３６】
次に、図１Ｅを参照すると、この図は、ユーザが選択された問題を修正した後のユーザインターフェース１００および電子ドキュメント１１２を示している。ユーザインターフェース１００で見られる通り、アイコン１１６が、図１Ｄに示したアイコンの前の出現(previous iteration)から変化している。具体的には、図１Ｅに示したアイコン１１６は、最初の問題１０４Ａが解決されたことをユーザに示す「チェック」マークを表示するように変化している。ただし、前述した通り、本発明は、電子ドキュメントにおける問題がどのように識別されたか、またはどのように修正されたかについての視覚表示に限定されない。アイコン１１６の変化に加えて、またはその代替えとして、サウンドを再生すること、音声合成を起動すること、または問題１０４Ａが修正されたことにユーザが気付くように何らかの他の仕方でユーザに通知を行うことにより、問題が解決されたことをユーザに知らせることが可能である。
【００３７】
次に、図１Ｆを参照すると、ユーザインターフェース１００が、電子ドキュメントにおいて実行して、または使用して、電子ドキュメントにパブリケーションデザイン問題が存在するかどうか判定することができる例示的なチェックリスト(list of checks)１１６を示している。ユーザインターフェース１００のこのウインドウにより、電子ドキュメントにおいて実行される、または使用されることが可能なチェックの選択(selection)、または選択解除(deselection of checks)が可能になる。例示的なチェックには、ページ最上部の余白（トップマージン）が大きすぎるかどうか、オブジェクトがページからはずれているかどうか、オブジェクトがページ上で見えるかどうか、オブジェクトが不適切な色を有していないかどうか、またはオブジェクトがページ上で不釣り合い(object is disproportional on a page)でないかどうか、あるオブジェクトがページ上の別のオブジェクトを覆っていないかどうかが含まれることが可能であるが、以上には限定されない。図１Ｆは、さらなるチェックを含む。ただし、本発明は、前述したチェック、または図１Ｆに示したチェックに限定されない。起こり得るパブリケーション問題に関する他のチェックも、本発明の範囲および趣旨を超えるものではない。
【００３８】
次に、図１Ｇを参照すると、この表示は、リアルタイムチェックリスト１０２（この図では示さない）に関する表示オプション１１８を含むユーザインターフェース１００を示している。図１Ｇに示したユーザインターフェース１００は、ユーザが、電子ドキュメントのどの特定のページが起こり得るデザインパブリケーション問題に関してチェックされるべきかを選択することができるようにするページ範囲オプション１１９をさらに含んでいる。
【００３９】
例示的なアーキテクチャ
次に、図２Ａを参照すると、この図は、本発明の最終結果の(end-resulting)パブリケーションデザイン問題をチェックするためのシステムおよび方法を提供するように対話するソフトウェア要素(software element)を示している。本発明は、本明細書で説明し、例示的なアーキテクチャ図および添付の流れ図で示す機能を実現する複数のコンピュータプログラム、または単一のコンピュータプログラムを含むことが可能である。
【００４０】
ただし、コンピュータプログラミングにおいて本発明を実施する多数の異なるやり方が存在する可能性があり、本発明が、いずれか１組のコンピュータプログラム命令に限定されるものと解釈すべきではないことは、明白であろう。さらに、例えば、技能を有するプログラマは、例示的なアーキテクチャおよび流れ図、ならびに本出願の本文における関連する説明に基づき、開示する本発明を実施するコンピュータプログラムなどを難なく書くことができる。したがって、特定の１組のプログラムコード命令の開示は、本発明をどのように実施し、使用するかについての十分な理解に必要であるとは考えられていない。請求するコンピュータプログラムの本発明による機能を、機能およびプログラムフローを例示する残りの図面に関連する以下の説明でより詳細に説明する。
【００４１】
システム２００は、イベントマネージャ２０２と、デザインチェッカ２１０と、１つまたは複数の問題チェッカ２１２（Ａ）、２１２（Ｂ）、２１２（Ｃ）と、デザイン問題のリスト１０２を表示するためのユーザインターフェース１００とを含むことが可能である。イベントマネージャ２０２は、電子ドキュメント１１２内で行わるユーザアクション２０４をモニタするプログラムモジュールを含むことが可能である。このユーザアクション２０４は、イベントリストの中に別個のイベントとして記憶されることが可能である。包括的なユーザアクション２０４の終りで、イベントマネージャ２０２が、繰り返し多いイベントをイベントリストから濾過して除くことが可能である。
【００４２】
例えば、ユーザが、あるオブジェクトを１０回、連続して移動した場合、イベント待ち行列２０６の中に存在するイベントリストの中に１０のイベントが記憶される。イベントマネージャ２０２は、イベントリストからイベントを濾過して除くことができる。具体的には、イベントマネージャ２０２は、イベントリストから繰り返しの多いイベントを濾過して除くことができる。次に、イベントマネージャ２０２は、イベント待ち行列(event queue)２０６の中の濾過済みのイベントリストをデザインチェッカ２１０に送ることができる。
【００４３】
ユーザアクション２０４は、コンピュータとの多くの異なる形態の通信を含むことが可能である。ユーザアクションは、オブジェクトを移動すること、オブジェクトのサイズを変更すること、オブジェクトの色を変更すること、電子ドキュメントのテキストまたは背景の色を変更すること、特定のセットの色(specific set of colors)から特定の他のセットの色に移行すること（ＲＧＢ色からＣＭＹＫ色に移行するなどの）、ディスプレイ上の音声コマンド起動、スタイラス起動、またはペン起動、タッチスクリーンから受け取られた入力、および電子ドキュメントを変更するようにユーザが行うことができる任意の他のタイプのアクションを含むことが可能であるが、以上には限定されない。
【００４４】
イベントリストを含むイベント待ち行列２０６を、ドキュメントパブリッシングプログラムに存在する可能性がある他のプログラムモジュール２０８に伝送することが可能である。一部のプログラムモジュール２０８に関して、イベント待ち行列２０６の濾過が、イベントマネージャ２０２によって行われない可能性がある。その他のプログラムモジュールは、グラフィックスマネージャ、および他のドキュメントパブリッシングプログラムモジュールを含むことが可能であるが、以上には限定されない。イベントマネージャ２０２は、具体的には、デザインチェッカ２１０を宛先とするイベント待ち行列２０６内のデータを濾過する。
【００４５】
デザインチェッカ２１０は、イベントマネージャ２０２によって送られたイベント待ち行列２０６からの濾過済みのイベントリストを受け取るプログラムモジュールを含むことが可能である。デザインチェッカ２１０は、イベントリストをさらに処理することができる。イベントリストの処理は、通常、システムのアイドル時間中に行われる。言い換えれば、アイドル時間は、ユーザがデータを入力していない、またはパブリケーションシステムのコマンドを全く起動していない時間を含む。
【００４６】
基本的に、本発明は、ユーザがワードプロセッシングシステムの電子ドキュメントと対話しない期間中に、ワードプロセッシングプログラムが、ドキュメントのスペリングを継続的にチェックする仕方と同様に、潜在的なパブリケーションデザイン問題のリアルタイムのフィードバックをユーザに提供する。アイドル時間を使用してドキュメントをチェックすることの１つの目的は、ユーザを中断させないことである。別の目的は、空いたＣＰＵサイクルが存在するときにチェックを実行することである。
【００４７】
デザインチェッカ２１０は、イベントリストから、電子ドキュメントのパブリケーションに無関連のイベントを濾過して除くことができる。言い換えれば、デザインチェッカは、イベントマネージャ２０２によって行われる第１の濾過に対して、２回目にイベントリストを濾過することができる。
【００４８】
図２Ｂを簡単に参照すると、この図は、イベント待ち行列２０６の中に記憶されたイベントデータのエントリ２２０を含む。イベントデータのエントリ２２０は、イベント識別子(identifier)２２０（Ａ）、オブジェクト識別子２２０（Ｂ）、およびイベント固有情報(event specific information)２２０（Ｃ）を含むことが可能である。イベント固有情報２２０（Ｃ）は、イベントに関して何が生じたかについてのさらなる情報を含むことが可能である。例えば、イベント固有情報２２０（Ｃ）は、ユーザイベントが生じたページ上の変更の位置を記述することができる。
【００４９】
図２Ａを再び参照すると、デザインチェッカ２１０は、電子ドキュメント１１２に対して実行されるべきチェック２１８のリスト２１６（図２Ｃに示す）を形成するために、潜在的な問題に対してイベントリスト内の残りのイベントをマッピングすることもできる。
【００５０】
図２Ｃを簡単に参照すると、この図は、電子ドキュメントに対して実行されるべきチェック２１８のリスト２１６を示している。チェック２１８のこのリスト２１６は、デザインチェッカ２１０がイベントリスト内のイベントをチェックのリストにマップしたことに応答して生成されることが可能である。イベント−チェック−ルックアップテーブル(event-to-check-lookup table)において行われるこのマッピングプロセスのさらなる詳細は、図５に関連して以下により詳細に説明する。
【００５１】
図２Ａを再び参照すると、デザインチェッカ２１０は、チェックのリスト２１６から繰り返しの多いチェック２１８を濾過して除くことができ、デザインチェッカ２１０は、チェックのリスト２１６から、評価されている現在のイベントによって解決されている可能性があるチェック２１８も濾過して除くことができる。例えば、ユーザが、デザインパブリケーション問題を生じさせていたオブジェクトを削除した場合、デザインチェッカ２１０は、そのオブジェクトの削除に先立ってそのオブジェクトに関連していたチェック２１８を除去することが可能である。
【００５２】
デザインチェッカ２１０は、個々のチェック２０５（Ａ）、２０５（Ｂ）、２０５（Ｃ）を１つまたは複数の問題チェッカ２１２（Ａ）、２１２（Ｂ）、および２１２（Ｃ）に転送することができる。問題チェッカ２１２から何らかのフィードバック２１４（Ａ）、２１４（Ｂ）、２１４（Ｃ）を受け取った後、デザインチェッカ２１０は、問題チェッカ処理の結果として電子ドキュメント１１２において明らかにされたデザイン問題のリスト１０２を構成することができる。デザインチェッカは、表示、およびユーザとの対話のためにデザイン問題のこのリスト１０２をユーザインターフェース１００に転送することができる。
【００５３】
それぞれの問題チェッカ２１２は、デザインチェッカ２１０から受け取られたチェック照会(check inquiry)を実行することができる１つまたは複数のプログラムモジュールを含むことが可能である。チェックは、電子ドキュメントにおける特定のオブジェクト、または特定のページが、特定のパブリケーションデザイン問題を有するかどうか判定することができる。問題チェッカ２１２は、ドキュメントにおける特定のオブジェクト、１組のオブジェクト、またはページがデザインパブリケーション問題を有するかどうかをデザインチェッカ２１０に報告することができる。
【００５４】
デザインチェッカ２１０と通信しているのが、ユーザインターフェース２１０である。ユーザインターフェース１００は、デザインチェッカ２１０からデザイン問題のリスト１０２を受け取り、表示デバイス上で問題のリスト１０２を表示することができる１つまたは複数のプログラムモジュールを含むことが可能である。ユーザインターフェース１００は、表示されている特定の問題１０４に特有の入力をユーザから受け取ることができる。そのような入力は、選択された問題１０４を表示し、修正する要求を含むことが可能である。また、ユーザインターフェース１００は、表示されている問題のリスト１０２内の選択されたデザイン問題１０４をどのように修正するかについてのメニュー１０８にリストされたようなオプションも表示することが可能である。
【００５５】
前述した通り、ユーザインターフェース１００は、視覚的にユーザと対話することだけに限定されない。ユーザインターフェース１００は、サウンド、音声合成、触覚表示、および他の知覚(sensory)デバイスまたは通信デバイスを使用してユーザと対話し、潜在的なデザイン問題についてユーザに警報することができる。
【００５６】
ドキュメントのデザインパブリケーション問題をモニタし、修正するための例示的な方法
次に、図３Ａおよび３Ｂを参照すると、これらの図は、パブリケーション問題を修正するための例示的なプロセス３００の概要の論理流れ図を示している。以下に説明するいくつかのステップは、本発明が説明する通りに機能するには、当然、他のステップに先行しなければならないことに留意されたい。
【００５７】
ただし、本発明は、順序またはシーケンスが本発明の機能を変えることがない場合、説明するステップの順序に限定されない。つまり、一部のステップは、本発明の範囲および趣旨を逸脱することなく、他のステップの前または後に、あるいは他のステップと並列に行うことが可能であることが認識されている。
【００５８】
判定ステップ３０３は、例示的なプロセス３００の最初のステップである。判定ステップ３０３で、今回が、方法の初回の実行であるかどうかの判定が行われる。判定ステップ３０３に対する照会が否定的である場合、「ＮＯ」分岐を辿って図３（Ｂ）に対するページマーカＡに進み、プロセスがステップ３４１に進められる。判定ステップ３０３に対する照会が肯定的であった場合、「ＹＥＳ」分岐を辿ってステップ３０６に進む。ステップ３０６で、デザインチェッカ２１０は、電子ドキュメント１１２におけるオブジェクトの定義または指定を受け取ることが可能である。電子ドキュメントにおけるオブジェクトの指定は、パブリッシングプログラムまたはドキュメント編集プログラムによって生成されることが可能である。
【００５９】
ステップ３０９において、電子ドキュメントに間する出力のタイプが、自動的に判定される。例えば、デザインチェッカ２１０は、電子ドキュメント１１２内のオプションのユーザ選択に基づき、電子ドキュメントが、商業印刷を予定しているか、Ｗｅｂパブリケーションを予定しているか、デスクトップパブリッシングを予定しているか、他の同様な出力形態を予定しているかを判定することができる。ただし、他の代替えの例示的な実施形態では、ドキュメント出力タイプのこの自動検出は、非活動化されるか、または利用できない可能性があり、したがって、ユーザが電子ドキュメントに関する出力タイプを手動で選択する。
【００６０】
ステップ３１２において、選択された出力タイプに依存する現在の電子ドキュメントに適用されるべきチェックのリストにアクセスを行うことが可能である。その後、ステップ３１５で、デザインチェッカ２１０は、図１Ｆに示す通り、ユーザインターフェース１００のオプションのリスト１１６内などで選択されたオプションに基づき、ユーザが、いくつかのチェックがスキップされるようにフラグで示したかどうか判定することができる。
【００６１】
ステップ３１８において、デザインチェッカ２１０は、電子ドキュメント１１２における全てのオブジェクトおよびページに対してチェックを行う。具体的には、デザインチェッカ２１０は、チェックの全てを１つまたは複数の問題チェッカ２１２に転送する。
【００６２】
ステップ３２１において、問題チェッカ２１２によって行われる１つまたは複数のチェックに対する照会が肯定的である場合（現在の電子ドキュメントに問題が存在することを意味する）、デザインチェッカ２１０は、パブリケーション問題リスト１０２を生成する。次に、ステップ３２３で、ユーザインターフェース１００は、パブリケーション問題のリスト１０２を表示する。
【００６３】
判定ステップ３２６において、ユーザインターフェース１００は、表示問題１０４の１つが選択されているかどうか判定する。判定ステップ３２６に対する照会が否定的である場合、「ＮＯ」分岐を辿ってページコネクタＡに進み、プロセスは、図３（Ｂ）のステップ３４１に進む。
【００６４】
判定ステップ３２６に対する照会が肯定的であった場合、「ＹＥＳ」分岐を辿ってステップ３２９に進み、選択された問題１０４（Ａ）に関するオプション１１０が表示される。次に、判定ステップ３３２で、ユーザインターフェース１００が、問題１０４（Ａ）に関するオプション１１０（Ａ）の１つが選択されているかどうか判定する。判定ステップ３３２に対する照会が否定的である場合、「ＮＯ」分岐を辿って判定ステップ３３８に進む。判定ステップ３３２に対する照会が肯定的である場合、「ＹＥＳ」分岐を辿ってステップ３３５に進み、選択されたオプションが行われる。例えば、「この項目に進め」というコマンドが選択された場合、選択された問題１０４（Ａ）を含むページが、問題１０４のリスト１０２に隣接して表示される。この時点で、プロセスは、図３（Ｂ）のステップ３４１に進む。
【００６５】
次に、図３（Ｂ）を参照すると、この図は、電子ドキュメント１１２内のパブリケーション問題を修正するためのプロセス３００の別の部分を示している。ステップ３２６ないし３３８は、図３（Ｂ）のステップ３４１ないし３８０と並列に動作している可能性があることに留意されたい。つまり、ユーザがユーザインターフェース１００を選択した場合、プロセスは、ユーザがいずれの(any)識別されたパブリケーション問題(identified publication problems)も修正することができるように、ステップ３２６に戻る。
【００６６】
ステップ３４１において、ユーザが電子ドキュメント１１２内で作業することを選択した場合、電子ドキュメント１１２内のユーザアクションが、イベントマネージャ２０２によってモニタされる。ステップ３４４において、イベントマネージャは、ユーザアクションの構成要素を識別し、その構成要素をイベントのリスト内の別々のイベントとしてイベント待ち行列２０６の中に記憶する。
【００６７】
判定ステップ３４７において、イベントマネージャ２０２により、包括的なユーザアクションの終りが生じたかどうかが判定される。判定ステップ３４７に対する照会が否定的であった場合、「ＮＯ」分岐を辿ってステップ３４１に戻る。判定ステップ３４７に対する照会が肯定的であった場合、「ＹＥＳ」分岐を辿ってステップ３５０に進む。
【００６８】
ステップ３５０において、イベントマネージャ２０２は、イベント待ち行列２０６のイベントリスト内の重複するイベントを濾過して除く。判定ステップ３５３において、デザインチェッカ２１０は、システムがアイドル状態であるかどうか判定することができる。ステップ３５３に対する照会が否定的であった場合、「ＮＯ」分岐を辿ってステップ３４１に戻る。判定ステップ３５３に対する照会が肯定的であった場合、「ＹＥＳ」を辿ってステップ３５６に進み、デザインチェッカ２１０が、イベントマネージャ２０２から受け取られたイベント待ち行列２０６の中のイベントリストから、パブリケーションに無関係のイベントを濾過して除くことができる。
【００６９】
ステップ３５９において、デザインチェッカ２１０は、削除されたオブジェクトに関わる可能性があるチェックを濾過して除くことができる。ルーチン３６２で、デザインチェッカ２１０は、イベント−チェック−ルックアップテーブル(event-to-check-lookup table)５００（図５に示す）を使用することによってイベントを関連する潜在的なパブリケーション問題にマッピングすることができる。ルーチン３６２のさらなる詳細は、図５に関して以下に説明する。イベントを関連する潜在的なパブリケーション問題にマップした後、デザインチェッカ２１０は、ドキュメントに対して実行されるチェックのリスト２１６を構成すること、またはそのリスト２１６に追加を行うことができる。
【００７０】
ステップ３６８において、デザインチェッカ２１０は、実行されるチェックのリスト２１６から重複するチェックをさらに濾過して除く。判定ステップ３７４で、デザインチェッカ２１０は、システムが依然としてアイドルであるかどうか判定することができる。判定ステップ３７４は、デザインチェッカ２１０によって実行される全てのステップと並列に実行することが可能であることに留意されたい。言い換えれば、ユーザが電子ドキュメントと対話する場合、ステップ３４１後のあらゆるステップを停止する、または保留することができる。判定ステップ３７４に対する照会が否定的であった場合、「ＮＯ」分岐を辿り、プロセスは、ステップ３４１に戻る。判定ステップ３７４に対する照会が肯定的であった場合、「ＹＥＳ」分岐を辿ってルーチン３７７に進む。
【００７１】
ルーチン３７７において、ドキュメントに対して実行されるべきチェックのリスト２１６内の各チェックが、それぞれ問題チェッカ２１２によって実行される。ルーチン３７７のさらなる詳細は、図６に関連して以下に説明する。
【００７２】
ステップ３８０において、デザインチェッカ２１０は、問題チェッカ２１２によるチェックの実行に応答してパブリケーション問題のリスト１０２を構成すること、またはそのリスト１０２に問題を追加することができる。次に、プロセスは、ステップ３２３に戻る。
【００７３】
次に、図４を参照すると、この図は、電子ドキュメント１１２においてイベントを潜在的なパブリケーション問題に対してマッピングするための例示的なサブメソッドまたはルーチン３６２を示している。ステップ４０３は、このサブメソッドにおける最初のステップであって、各イベントに関してルックアップテーブル５００の中のイベントに関連する全ての起こり得るパブリケーション問題を明らかにすることを含む。
【００７４】
次に、判定ステップ４０６において、評価されている現在のイベントに関して、評価されている現在のイベントが、既に識別されている(previously-identified)パブリケーション問題を修正するかどうかが判定される。判定ステップ４０６に対する照会が肯定的である場合、「ＹＥＳ」分岐を辿ってステップ４０９に進み、デザインチェッカ２１０が、電子ドキュメントに対して実行されるべきチェックのリスト２１６からチェック２１８を除去する。判定ステップ４０６に対する照会が否定的であった場合、「ＮＯ」分岐を辿ってステップ４１２に進み、現在の電子ドキュメント１１２に関して実行されるべきチェック２１８のリスト２１６に問題が追加される。
【００７５】
次に、判定ステップ４１５において、デザインチェッカ２１０により、全てのイベント、および関連する問題が精査されたかどうかが判定される。判定ステップ４１５に対する照会が否定的であった場合、「ＮＯ」分岐を辿って判定ステップ４０６に戻る。判定ステップ４１５に対する照会が肯定的であった場合、「ＹＥＳ」分岐を辿ってステップ４１８に進み、プロセスは、ステップ３６２で図３（Ｂ）に戻る。
【００７６】
次に、図５を参照すると、この図は、デザインチェッカ２１０によって使用される例示的なイベント−チェック−ルックアップテーブル(event-to-check-lookup table)５００を示している。テーブルの１つの軸は、イベントタイプのリストを含み、他方、他の軸上で、潜在的なパブリケーション問題のリストを含む。デザインチェッカ２１０は、マッピングテーブル５００をくまなく調べながら、個々のチェックがそれぞれの問題チェッカ２１２に送られるチェックのリストを生成する。テーブル５００が示す通り、イベントタイプ番号１のようなイベントタイプが、そのイベントに関連する複数の問題を有することが可能である。
【００７７】
例えば、イベントタイプが電子ドキュメント１１２におけるページ上のオブジェクトの動きである場合、起こり得るパブリケーション問題には、以下が含まれることが可能である。すなわち、オブジェクトが、ページから外れるように動かされている可能性があること、オブジェクトが、ページ最上部により大きな余白が存在するように動かされている可能性があること、動かされたオブジェクトが、ページ上の別のオブジェクトを隠しているか、または覆っている可能性があること、ならびにページ上のオブジェクトの動きに関連する可能性があるその他の同様な問題である。本発明は、前述したイベントタイプ例に限定されない。電子ドキュメントにおける情報の編集または生成に関わる他のイベントタイプも、本発明の範囲および趣旨を超えるものではない。
【００７８】
次に、図６を参照すると、この図は、電子ドキュメントに対してチェックを実行するための例示的なサブメソッド(submethod)３７７を示している。判定ステップ６０３は、システムがアイドルであるかどうかが判定されるサブメソッド３７７の最初のステップである。ステップ３７４と同様に、判定ステップ６０３は、デザインチェッカ２１０によって実行される全てのステップと並列に実行することが可能であることに留意されたい。言い換えれば、ユーザが電子ドキュメントと対話する場合、サブメソッド３７７におけるステップ６０３の後のあらゆるステップを、停止するか、または保留することが可能である。判定ステップ６０３に対する照会が否定的であった場合、「ＮＯ」分岐を辿ってステップ６１５に進み、プロセスは、図３Ｂのステップ３４１に戻る。判定ステップ６０３に対する照会が肯定的であった場合、「ＹＥＳ」分岐を辿って判定ステップ６０６に進む。
【００７９】
判定ステップ６０６において、問題チェッカ２１２が、問題リスト１０２内に現在の問題が存在するかどうか判定する。判定ステップ６０６に対する照会が肯定的であった場合、「ＹＥＳ」分岐を辿って判定ステップ６１６に進む。判定ステップ６０６に対する照会が否定的であった場合、「ＮＯ」分岐を辿って判定ステップ６０９に進む。
【００８０】
判定ステップ６０９において、ボリュームチェッカ２１２が、イベントにより評価されているパブリケーション問題が生じさせられているかどうか判定する。判定ステップ６０９に対する照会が肯定的であった場合、「ＹＥＳ」分岐を辿って６１２に進み、問題が、パブリケーション問題リスト１０２に組み込むために問題チェッカ２１２によってフラグで示される。判定ステップ６０９に対する照会が否定的であった場合、「ＮＯ」分岐を辿って判定ステップ６２７に進む。
【００８１】
判定ステップ６１６において、問題チェッカ２１２は、現在の問題に関連するイベントにより問題が修正されたかどうか判定する。判定ステップ６１６に対する照会が肯定的である場合、「ＹＥＳ」分岐を辿ってステップ６２１に進み、問題チェッカ２１２が、リスト１０２からその問題を除去するようにデザインチェッカ３１０に通知する。判定ステップ６１６に対する照会が否定的であった場合、「ＮＯ」分岐を辿ってステップ６２４に進み、問題チェッカ２１２が、パブリケーション問題リスト１０２に残る問題をフラグで示す。
【００８２】
判定ステップ６２７において、デザインチェッカ２１０は、現在の電子ドキュメントに対してさらなるチェックを実行する必要があるかどうか判定する。判定ステップ６２７に対する照会が肯定的であった場合、「ＹＥＳ」分岐を辿って判定ステップ６０３に戻る。判定ステップ６２７に対する照会が否定的であった場合、「ＮＯ」分岐を辿ってステップ６２８に進み、プロセスは、図３（Ｂ）のステップ３６２に戻る。
【００８３】
その他の実施の形態
前述した通り、図に示した本発明は、視覚表示だけを描いているが、ユーザとの他の形態の通信も本発明の範囲および趣旨を超えるものではないことが、当業者には理解できよう。例えば、本発明は、サウンド、音声合成、触覚表示により、さらには匂いまたは味によってさえ潜在的なデザインパブリケーション問題の警報をユーザに行うことができる。同様に、電子ドキュメントに対するユーザアクションは、マウス入力またはキーボード入力だけでないアクションを含むことが可能である。ユーザアクションは、音声コマンド、ペンとスクリーンの活動、タッチスクリーン活動、および他の同様なユーザアクションをさらに含むことが可能である。
【００８４】
本発明は、対話的であり、ドキュメントチェックプロセス中にユーザがいくらかのコントロールを有することを可能にするパブリケーションデザイン問題をチェックし、解決するためのシステムおよび方法を提供する。また、本発明は、ドキュメントが編集されている、または生成されている最中に起こり得るデザイン問題に関する継続的で、リアルタイムのフィードバックを提供するドキュメントチェックプロセスも提供することができる。
【００８５】
さらに、本発明は、電子ドキュメントの全ての問題を明らかにし、電子ドキュメントに存在する可能性がある問題のタイプを識別するドキュメント検査プロセスも提供する。本発明のこのドキュメント検査プロセスは、ある繰り返し生じる問題の自動修正のためのオプションがユーザに用意されていることが可能であるようにパブリッシングプログラムと一体になっている。本発明のドキュメント検査プロセスは、電子ドキュメントが生成されている、または編集されている最中に使用することが簡単であり、管理することが容易である。
【００８６】
以上は、本発明の例示的な実施形態だけに関連しており、特許請求の範囲によって定義される本発明の趣旨および範囲を逸脱することなく、実施形態に多数の変更を加えることができることを理解されたい。
【図面の簡単な説明】
【００８７】
【図１Ａ】通常のコンピュータアーキテクチャ内部の本発明の例示的なソフトウェア要素を示す図である。
【図１Ｂ】本発明の１つの例示的な実施形態による電子ドキュメントにおける潜在的なデザイン問題のリアルタイムリストを表示するユーザインターフェースを示す例示的なディスプレイ画面図である。
【図１Ｃ】本発明の１つの例示的な実施形態による選択された図１Ｂのリアルタイムリストのエントリを示す例示的なディスプレイ画面図である。
【図１Ｄ】本発明の１つの例示的な実施形態による図１Ｃのリアルタイムリストの最初のエントリの前の選択に従って拡大された潜在的なデザイン問題を有する電子ドキュメントに隣接する例示的なユーザインターフェースを示すディスプレイ画面図である。
【図１Ｅ】本発明の１つの例示的な実施形態によるリアルタイムリストの最初のエントリによって識別された問題が生成された後のリアルタイムリストを示すディスプレイ画面図である。
【図１Ｆ】本発明の１つの例示的な実施形態によるドキュメントにパブリケーションデザイン問題が存在するかどうか判定するようにドキュメントに対して実行されるチェックのリストを含むユーザインターフェースを示すディスプレイ画面図である。
【図１Ｇ】本発明の１つの例示的な実施形態による表示オプションと、評価されているページ範囲を含むユーザインターフェースを示すディスプレイ画面図である。
【図２Ａ】本発明のシステムおよび方法を提供するように対話するさらなるソフトウェア要素を示す図である。
【図２Ｂ】本発明の１つの例示的な実施形態によってモニタされるイベントデータの例示的な要素を示す図である。
【図２Ｃ】本発明の１つの例示的な実施形態によるマッピングプロセスの後に明らかにされることが可能なチェックの例示的なリストを示す図である。
【図３Ａ】本発明の１つの例示的な実施形態によるパブリケーションデザイン問題をチェックし、解決するための方法を示す図である。
【図３Ｂ】本発明の１つの例示的な実施形態によるパブリケーションデザイン問題をチェックし、解決するための方法を示す図である。
【図４】本発明の１つの例示的な実施形態による潜在的なデザインパブリケーション問題に対してイベントをマッピングするためのサブメソッドを示す図である。
【図５】本発明の１つの例示的な実施形態による例示的なイベント−チェック−ルックアップテーブルを示す図である。
【図６】本発明の１つの例示的な実施形態による起こり得るデザインパブリケーション問題に関してドキュメントに対するチェックを実行するためのサブメソッドを示す図である。
【符号の説明】
【００８８】
１００  ユーザインターフェース
１０２  パブリケーション問題リスト
２００  システム
２０２  イベントマネージャ
２０４  ユーザアクション
２０５Ａ、２０５Ｂ、２０５Ｃ  選択された問題
２０６  イベント待ち行列
２０８  モジュール
２１０  デザインチェッカ
２１２Ａ、２１２Ｂ、２１２Ｃ  問題チェッカ
２１４Ａ、２１４Ｂ、２１４Ｃ  問題フィードバック
【図１Ａ】
2004240976.tif 000003
【図１Ｂ】
2004240976.tif 000004
【図１Ｃ】
2004240976.tif 000005
【図１Ｄ】
2004240976.tif 000006
【図１Ｅ】
2004240976.tif 000007
【図１Ｆ】
2004240976.tif 000008
【図１Ｇ】
2004240976.tif 000009
【図２Ａ】
2004240976.tif 000010
【図２Ｂ】
2004240976.tif 000011
【図２Ｃ】
2004240976.tif 000012
【図３Ａ】
2004240976.tif 000013
【図３Ｂ】
2004240976.tif 000014
【図４】
2004240976.tif 000015
【図５】
2004240976.tif 000016
【図６】
2004240976.tif 000017