(57)【要約】  電子フォーム生成プロセス中に設計問題を識別する技術が開示される。ある方法手法では、電子フォームに適用すべきユーザ選択ランタイム環境が受信される。電子フォームに関してフォーム設計チェックが実施される。報告オブジェクトは、フォーム設計チェックで識別される設計問題のリストを生成する。設計問題のリストがユーザインターフェース内に表示される。
2009524154.tif 000002
【特許請求の範囲】
【請求項１】
電子フォーム生成プロセス中に設計問題を識別するコンピュータで実装される方法（５００）であって、
電子フォームに適用すべきユーザ選択ランタイム環境を受信するステップ（５０２）と、
前記電子フォームに対してフォーム設計チェックを実施するステップ（５０４）と、
前記フォーム設計チェックによって識別された設計問題のリストを生成することであって、設計問題の前記リストが報告オブジェクトとして生成されるステップ（５０６）と、
ユーザインターフェース内に設計問題の前記リストを表示するステップ（５０８）と
を含むことを特徴とする方法。
【請求項２】
前記表示した設計問題のうちの１つとのユーザ対話に応答して、フォーム設計エリア内で制御を選択するステップ（５１０）と、
前記選択した制御をビュー内にスクロールするステップ（５１２）と、
前記設計問題の視覚的インジケータを提供するために前記選択した制御を強調表示するステップ（５１４）と、
前記設計問題を記述するダイアログメッセージを提示するステップ（５１６）と
をさらに含むことを特徴とする請求項１に記載のコンピュータで実装される方法（５００）。
【請求項３】
前記電子フォームに対してフォーム設計チェックを前記実施するステップ（５０４）は、
前記ユーザ選択ランタイム環境に従って複数のフォーム設計チェッカオブジェクトで前記電子フォームの内容をテストするステップと、
前記電子フォームに関連する設計問題を識別するステップと、
前記報告オブジェクトに前記識別した設計問題を報告するステップと
を含むことを特徴とする請求項１に記載のコンピュータで実装される方法（５００）。
【請求項４】
電子フォームに適用すべきユーザ選択ランタイム環境を前記受信するステップ（５０２）は、
前記フォーム生成プロセスの開始状態としての前記電子フォームの所望のランタイム環境を求めてユーザにプロンプト指示するステップ
をさらに含むことを特徴とする請求項１に記載のコンピュータで実装される方法（５００）。
【請求項５】
電子フォームに適用すべきユーザ選択ランタイム環境を前記受信するステップ（５０２）は、
前記フォーム生成プロセス中の任意の時間に前記電子フォームの所望のランタイム環境をユーザから受信するステップ
を含むことを特徴とする請求項１に記載のコンピュータで実装される方法（５００）。
【請求項６】
ユーザインターフェース内に設計問題の前記リストを表示するステップ（５０８）は、
単一の設計チェッカタスクペイン内に設計問題のカテゴリに細分された設計問題の前記リストを表示するステップであって、前記複数の設計問題のカテゴリの各カテゴリは、複数の設計チェッカオブジェクトのうちの少なくとも１つに対応するステップ
を含むことを特徴とする請求項１に記載のコンピュータで実装される方法（５００）。
【請求項７】
ユーザ選択に応答して、設計問題の前記カテゴリのうちの少なくとも１つの前記タスクペイン内の表示を抑制するステップ
をさらに含むことを特徴とする請求項６に記載のコンピュータで実装される方法（５００）。
【請求項８】
ユーザ選択に応答して、設計問題の前記カテゴリのうちの少なくとも１つの設計問題のサブセットの前記タスクペイン内の表示を抑制するステップ
をさらに含むことを特徴とする請求項６に記載のコンピュータで実装される方法（５００）。
【請求項９】
電子フォーム生成プロセスでの誤りを識別するシステム（２００）であって、
電子フォーム内の潜在的設計誤りをそれぞれ識別する複数のフォーム設計チェッカオブジェクト（２１０）と、
前記複数のフォーム設計チェッカオブジェクト（２１０）に結合された報告オブジェクト（２２０）であって、前記複数のフォーム設計チェッカオブジェクト（２１０）から潜在的設計誤りの報告を受信し、前記受信した報告から潜在的設計誤りのリストを生成する報告オブジェクト（２２０）と、
前記報告オブジェクト（２２０）に結合されたユーザインターフェース（２３０）であって、電子フォームをフォーマットするためのガイドラインを受信するユーザインターフェース（２３０）と
を備えることを特徴とするシステム。
【請求項１０】
潜在的設計誤りの前記リストは、
潜在的設計誤りの複数のカテゴリであって、潜在的設計誤りの複数のカテゴリの各カテゴリは、前記複数のフォーム設計チェッカオブジェクト（２１０）のうちの少なくとも１つに対応する潜在的設計誤りの複数のカテゴリ
を含むことを特徴とする請求項９に記載のシステム（２００）。
【請求項１１】
前記ユーザインターフェース（２３０）は、
前記潜在的設計誤りの前記リストを表示し、潜在的設計誤りの前記表示したリストに関するユーザ入力を受信する対話式設計チェッカタスクペイン（３３４）
をさらに含むことを特徴とする請求項９に記載のシステム（２００）。
【請求項１２】
前記対話式設計チェッカタスクペイン（３３４）は、
潜在的設計誤りの前記カテゴリのうちの１つまたは複数の一部の表示を選択的に抑制するオプションセレクタ（９６０）と、
潜在的設計誤りの前記リストの表示を選択的にリフレッシュするリフレッシュセレクタ（９５０）と
を含むことを特徴とする請求項１１に記載のシステム（２００）。
【請求項１３】
実行されたときに電子フォーム生成プロセス中に潜在的設計誤りを識別する方法（６００）をコンピュータシステムに実施させるコンピュータ使用可能媒体上の命令であって、前記方法は、
電子フォームをフォーマットするためのガイドラインを受信するステップ（６０２）と、
前記電子フォームに対してフォーム設計チェックを実施するステップであって、前記フォーム設計チェックが、前記受信したガイドラインと適合する規則を適用する複数の設計チェッカオブジェクトによって実施されるステップ（６０４）と、
前記フォーム設計チェックで識別された潜在的設計誤りのリストを生成することであって、潜在的設計誤りの前記リストが報告オブジェクトとして生成されるステップ（６０６）と、
ユーザインターフェースの単一のタスクペイン内に潜在的設計誤りの前記リストを表示するステップ（６０８）と
を含むことを特徴とする命令。
【請求項１４】
コンテキスト特有の誤りテキストを含むダイアログボックスを提示することであって、前記ダイアログボックスが、前記タスクペイン内で表示される前記潜在的設計誤りのうちの１つとのユーザ対話に応答して提示されるステップ（６１０）
をさらに含むことを特徴とする請求項１３に記載の命令。
【請求項１５】
実行されたときにコンテキスト特有の誤りテキストを含むダイアログボックスをコンピュータシステムに提示させる前記命令は、前記ダイアログボックス内にユーザ選択可能リンクを設けるための命令をさらに含み、前記ユーザ選択可能リンクが入力エリアに結合され、前記内容特有の誤りテキストによって記述されるノードプロパティを前記ユーザが操作することができることを特徴とする請求項１４に記載の命令。
【請求項１６】
実行されたときに電子フォームをフォーマットするためのガイドラインをコンピュータシステムに受信させる前記命令（６０２）は、
前記フォーム生成プロセス中に後方互換性誤りを識別するためのガイドラインを受信する命令をさらに含むことを特徴とする請求項１３に記載の命令。
【請求項１７】
実行されたときに電子フォームをフォーマットするためのガイドラインを前記コンピュータシステムに受信させる前記命令（６０２）は、
前記フォーム生成プロセスの開始状態として前記電子フォームをフォーマットするための前記ガイドラインを求めてユーザにプロンプト指示する命令をさらに含むことを特徴とする請求項１３に記載の命令。
【請求項１８】
実行されたときにユーザインターフェースの単一のタスクペイン内に潜在的設計誤りの前記リストを前記コンピュータシステムに表示させる前記命令（６０８）は、
誤りのカテゴリに細分された潜在的設計誤りの前記リストを表示する命令であって、前記複数の誤りのカテゴリの各カテゴリは、前記複数の設計チェッカオブジェクトのうちの少なくとも１つに対応する命令をさらに含むことを特徴とする請求項１３に記載の命令。
【請求項１９】
実行されたときに誤りのカテゴリに細分された潜在的設計誤りの前記リストを前記コンピュータシステムに表示させる前記命令は、
前記タスクペインを介してアクセスされるダイアログボックスからのユーザ選択に応答して、前記誤りのカテゴリのうちの少なくとも１つの前記タスクペイン内の表示を抑制する命令をさらに含むことを特徴とする請求項１８に記載の命令。
【請求項２０】
実行されたときに誤りのカテゴリに細分された潜在的設計誤りの前記リストを前記コンピュータシステムに表示させる前記命令は、
前記タスクペイン内の選択可能リフレッシュボタンのユーザ選択に応答して、前記タスクペイン内の潜在的設計誤りの前記リストの表示をリフレッシュする命令をさらに含むことを特徴とする請求項１８に記載の命令。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子フォーム生成プロセス中に設計問題を識別するコンピュータで実装される方法、およびシステムに関する。
【背景技術】
【０００２】
電子フォーム設計者プログラムで電子フォーム（コンピュータ上で記入されるべきフォーム）を設計するとき、電子フォーム設計プロセス中に生じる可能性のある多くの誤りがある。設計プロセス中の様々なときに誤りが導入される可能性があり、誤りは、インポート問題、フォーマット問題、互換性問題、ランタイム問題などの様々な問題に帰する可能性がある。
【０００３】
位置非互換性誤りは、誤りを生み出しやすい一例である。位置非互換性誤りは、ある電子フォームが、スタンドアロンコンピュータ上で使用されるときに働くが、電子フォームが異なるランタイム環境で使用されるときには働かない機能を有するために生じることがある。例えば、電子フォームがスタンドアロンコンピュータ上で使用するために設計される場合、スペルチェックやファイル添付などのより複雑な機能を利用可能にすることができ、電子フォーム内の機能として組み込むことができる。しかし、次いで同一の電子フォームが、ウェブブラウザで記入することができるようにウェブサーバ上に配置された場合、そのより複雑な機能が使用のために利用可能にすることができず、したがって位置非互換性誤りが生じる。
【０００４】
位置非互換性誤りは、電子フォーム設計プロセス中に生じる可能性のある多くの潜在的設計誤りのうちの１つに過ぎない。こうした潜在的設計誤りには、様々な重大さおよび範囲がある可能性がある。ある誤りは電子フォームが機能するのを妨げるが、より微細な誤りにより、電子フォームが意図したのと異なる仕方で振る舞う可能性がある。電子フォームでの誤り状態は、電子フォームの最終的ユーザにとってのユーザ体験を不十分なものにする可能性があるので望ましくない。さらに、電子フォームでの誤り状態は、電子フォームが取り込むことを助けるように設計されるデータを破壊する可能性がある。
【０００５】
誤りは望ましくないので、設計プロセス中に誤りを識別し、なくすることが、重要かつ有用なことである。誤りの識別および除去を助けるために、電子フォーム設計プログラムはしばしば、あるタイプの誤りに関連するステップまたはプロセスの実行中に潜在的設計誤りにフラグを立て、または潜在的設計誤りを報告する。この単一の警告はしばしば、誤っており、または潜在的に誤りを引き起こす可能性のある設計問題に電子フォーム設計プログラムのユーザが気付かされる唯一のときである。例えば、インポート誤りは、ファイルのインポート中に電子フォーム設計プログラムのユーザに報告されるだけであることがある。別の例として、非互換性誤りは、電子フォームの印刷段階中に電子フォーム設計プログラムのユーザに報告されるだけであることがある。したがって、単一の誤りを識別および修復することは、識別されたときに直ちに修復されない場合、非常に時間のかかるプロセスとなる可能性がある。この散発的な方式でユーザの誤りを評価することは、電子フォーム設計、誤り識別、および誤り除去を非常に時間のかかるプロセスにする可能性がある。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
電子フォーム設計プロセス中に多数の潜在的な誤りの発生源がある。多数の誤り発生源のうちの多くは、誤りが最初に生じたときにのみ、または電子フォームを発行するなどのアクションが誤りを明らかにするときにのみ、誤りを報告する。多数の発生源と、誤りを識別する多数の方法とにより、ユーザが任意の所与の時間に存在または潜在的に存在する誤り全てに気付くことが難しくなる。誤りについて知ることが電子フォーム設計プログラムのユーザにとって有用である間は、上述の誤りを識別および報告する方法は、いらいらさせられ、矛盾しており、非常に非能率なものとなる可能性がある。
【課題を解決するための手段】
【０００７】
この概要は、以下の詳細な説明でさらに説明される概念の選択を単純化された形で導入するために与えられる。この概要は、特許請求された主題の主要な特徴または不可欠な特徴を識別するためのものではなく、特許請求された主題の範囲を決定する際の助けとして使用するためのものでもない。
【０００８】
電子フォーム生成プロセス中に設計問題を識別する技術が開示される。一方法の手法では、電子フォームに適用すべきユーザ選択ランタイム環境が受信される。フォーム設計チェックが電子フォームに対して実施される。報告オブジェクトが、フォーム設計チェックによって識別された設計問題のリストを生成する。設計問題のリストがユーザインターフェース内に表示される。
【０００９】
本明細書に組み込まれ、本明細書の一部を形成する添付の図面は、電子フォームでの設計問題を識別する技術の実施形態を示し、説明と共に、以下で議論される原理を説明する役割を果たす。
【００１０】
この説明で参照する図面は、具体的に言及している場合を除いて原寸に比例しないものとして理解されたい。
【発明を実施するための最良の形態】
【００１１】
ここで、その例が添付の図面に図示されている、電子フォームでの設計問題を識別する本技術の実施形態を詳細に参照する。電子フォームでの設計問題を識別する技術を様々な実施形態と共に説明するが、それは、電子フォームでの設計問題を識別する本技術をこうした実施形態に限定するものではないことを理解されよう。逆に、電子フォームでの設計問題を識別するための提示される技術は、添付の特許請求の範囲で定義される様々な実施形態の精神および範囲内に含めることのできる代替実施形態、修正形態、および均等物を包含するものとする。さらに、以下の詳細な説明では、電子フォームでの設計問題を識別する本技術の完全な理解を与えるために、多数の特定の詳細が説明される。しかし、こうした特定の詳細を使用せずに電子フォームでの設計問題を識別する本技術を実施することができる。他の場合には、本実施形態の諸態様を不必要に不明瞭にしないように、周知の方法、手続き、構成要素、および回路が詳細には説明されていない。
【００１２】
別段の指示がない限り、以下の議論から明らかなように、この詳細な説明全体を通して、「受信」、「実施」、「生成」、「表示」、「選択」、「スクロール」、「強調表示」、「提示」、「テスト」、「識別」、「報告」、「プロンプト指示」、「抑制」、「提供」、および「リフレッシュ」などの用語を使用する議論は、コンピュータシステムまたは類似の電子コンピューティング装置のアクションおよびプロセスを指すことを理解されたい。コンピュータシステムまたは類似の電子コンピューティング装置は、コンピュータシステムのレジスタおよびメモリ内の物理（電子）量として表されるデータを操作し、コンピュータシステムメモリまたはレジスタ、または他のそのような情報記憶装置、情報伝送装置、または情報表示装置内の物理量として同様に表される他のデータに変換する。電子フォームでの設計問題を識別する本技術は、例えば光学式コンピュータや機械式コンピュータなどの他のコンピュータシステムの使用にも十分に適している。さらに、電子フォームでの設計問題を識別する本技術の実施形態では、ステップのうちの１つまたは複数を手動で実施できることを理解されたい。
【００１３】
ここで図１を参照すると、電子フォームでの設計問題を識別する技術の各部分が、例えばコンピュータシステムのコンピュータ使用可能媒体内に常駐する、コンピュータ可読命令およびコンピュータ実行可能の命令から構成される。すなわち、図１は、電子フォームでの設計問題を識別する本技術の以下で議論される実施形態を実装するのに使用することのできるコンピュータの一タイプの一例を示す。図１は、電子フォームでの設計問題を識別する本技術の実施形態に従って使用される例示的コンピュータシステム１００を示す。図１のシステム１００は例示的なものに過ぎず、電子フォームでの設計問題を識別する本技術は、汎用ネットワークコンピュータシステム、組込みコンピュータシステム、ルータ、交換機、サーバ装置、クライアント装置、様々な中間装置／ノード、スタンドアロンコンピュータシステムなどを含むいくつかの異なるコンピュータシステム上で、またはその中で動作できることを理解されたい。図１に示されるように、図１のコンピュータシステム１００は、コンピュータシステム１００に結合された、例えばフロッピィディスク、コンパクトディスクなどの周辺コンピュータ可読媒体１０２を有するように十分に適合される。
【００１４】
図１のシステム１００は、情報を通信するアドレス／データバス１０４と、情報および命令を処理するバス１０４に結合されたプロセッサ１０６Ａとを含む。図１に示されるように、システム１００は、複数のプロセッサ１０６Ａ、１０６Ｂ、および１０６Ｃが存在するマルチプロセッサ環境にも十分に適している。逆に、システム１００は、例えばプロセッサ１０６Ａなどの単一プロセッサを有することにも十分に適している。プロセッサ１０６Ａ、１０６Ｂ、および１０６Ｃは、様々なタイプのマイクロプロセッサのいずれでもよい。システム１００はまた、プロセッサ１０６Ａ、１０６Ｂ、および１０６Ｃに関する情報および命令を格納するためにバス１０４に結合されたコンピュータ使用可能揮発性メモリ１０８、例えばランダムアクセスメモリ（ＲＡＭ）などのデータ記憶機能を含む。システム１００はまた、プロセッサ１０６Ａ、１０６Ｂ、および１０６Ｃに関する静的情報および命令を格納するためにバス１０４に結合されたコンピュータ使用可能不揮発性メモリ１１０、例えば読取り専用メモリ（ＲＯＭ）を含む。システム１００内には、情報および命令を格納するためにバス１０４に結合されたデータ記憶装置１１２（例えば磁気または光ディスクおよびディスクドライブ）も存在する。システム１００はまた、プロセッサ１０６Ａ、あるいはプロセッサ１０６Ａ、１０６Ｂ、および１０６Ｃに情報およびコマンド選択肢を通信するためにバス１０４に結合された、英数字キーおよびファンクションキーを含む任意選択の英数字入力装置１１４を含む。システム１００はまた、プロセッサ１０６Ａ、あるいはプロセッサ１０６Ａ、１０６Ｂ、および１０６Ｃにユーザ入力情報およびコマンド選択肢を通信するためにバス１０４に結合された任意選択のカーソル制御装置１１６を含む。本実施形態のシステム１００はまた、情報を表示するためにバス１０４に結合された任意選択のディスプレイ装置１１８を含む。
【００１５】
さらに図１を参照すると、図１の任意選択のディスプレイ装置１１８は、液晶装置、陰極線管、プラズマディスプレイ装置、あるいはユーザにとって認識可能なグラフィックイメージおよび英数字文字を生成するのに適した他のディスプレイ装置でよい。任意選択のカーソル制御装置１１６は、コンピュータユーザがディスプレイ装置１１８のディスプレイ画面上の可視シンボル（カーソル）の移動を動的に信号で知らせることを可能にする。トラックボール、マウス、タッチパッド、ジョイスティック、あるいは所与の方向の移動または変位の方式を信号で知らせることのできる英数字入力装置１１４上の特殊キーを含む、カーソル制御装置１１６の多くの実装が当技術分野で周知である。あるいは、特殊キーおよびキーシーケンスコマンドを使用して英数字入力装置１１４からの入力を介してカーソルに指示することができ、かつ／またはカーソルを活動化できることを理解されよう。システム１００はまた、例えば音声コマンドなどの他の手段によって指示されるカーソルを有することにも十分に適している。システム１００はまた、システム１００を外部実体と結合するＩ／Ｏ装置１２０を含む。例えば、一実施形態では、Ｉ／Ｏ装置１２０は、システム１００と、限定はしないがインターネットなどの外部ネットワークとの間の有線通信またはワイヤレス通信を使用可能にするモデムである。電子フォームでの設計問題を識別する本技術のより詳細な議論が以下で得られる。
【００１６】
さらに図１を参照すると、システム１００について様々な他の構成要素が示されている。具体的には、オペレーティングシステム１２２、アプリケーション１２４、モジュール１２６、およびデータ１２８が存在するとき、それらが、コンピュータ使用可能揮発性メモリ１０８、例えばランダムアクセスメモリ（ＲＡＭ）およびデータ記憶装置１１２のうちの１つまたはいくつかの組合せの中に通常は常駐するものとして示されている。一実施形態では、電子フォームでの設計問題を識別する本技術が、例えばアプリケーション１２４またはモジュール１２６としてＲＡＭ１０８内のメモリ位置およびデータ記憶装置１１２内のメモリエリア内に格納される。
【００１７】
電子フォームでの設計問題を識別する技術の一般的説明
概要として、一実施形態では、電子フォームでの設計問題を識別する本技術は、電子フォーム設計プロセス中に生じる可能性のある潜在的問題を識別する方法を対象とする。一実施形態では、こうした設計問題が、複数の設計チェッカオブジェクトによって識別される。報告オブジェクトが、識別された設計問題を収集および分類し、それをフォーマットして、ユーザインターフェースの単一の設計チェッカタスクペインでユーザに表示する。識別された設計問題の統合されたリストのこの単一の表示は、電子フォームの設計全体を通して、潜在的問題を認識し、潜在的問題と対話する一貫した体験をユーザに提供する。さらに、様々な実施形態では、設計問題のリストのこの単一の表示は、様々な機能に対する開始点として働く。こうした機能は、例えば、設計される電子フォーム内の設計問題の発生源の位置の突止め、設計問題の訂正、および電子フォーム内で設計問題が訂正されたことの迅速な検証を含む。
【００１８】
次に図２を参照すると、電子フォームでの設計問題を識別する本システム２００の一実施形態の図である。以下の議論は、電子フォームでの設計問題を識別する本システムの物理構造の説明から始まる。次いでこの議論の後に、本発明の動作の説明が続く。物理構造に関して、システム２００は、フォーム設計チェッカ２１０、報告オブジェクト２２０、ユーザインターフェース２３０、およびメッセージ通過用のバス２４０からなる。フォーム設計チェッカ２１０はバス２４０を介して報告オブジェクト２２０に結合される。ユーザインターフェース２３０は、双方向結合を介して報告オブジェクト２２０に結合される。
【００１９】
フォーム設計チェッカ２１０は、ランタイム互換性チェッカ２１１、後方互換性チェッカ２１２、バインディング誤りチェッカ２１３、ソリューション部分誤りチェッカ２１４、インポート誤りチェッカ２１５、およびオフライン互換性チェッカ２１６からなる複数のクライアントフォーム設計チェッカオブジェクトの登録のための中央設計チェッカオブジェクトとして働く。６つのクライアントフォーム設計チェッカオブジェクト（２１１〜２１６）が示されているが、それより７つ以上または５つ以下も可能であることを理解されたい。各フォーム設計チェッカオブジェクト（２１１〜２１６）は、電子フォーム内の特定の誤りの発生源をチェックするためのものである。例えば、具体的には、ランタイム互換性チェッカ２１１は、電子フォーム内のランタイム互換性誤りをチェックする。
【００２０】
あるアクションが電子フォームの初期誤りチェックまたは誤りチェックリフレッシュをトリガしたとき、設計チェッカオブジェクト２１０は、登録されたクライアントフォーム設計チェッカオブジェクト２１１〜２１６に潜在的設計誤りのリストについて照会する。次いで、潜在的設計誤りが報告オブジェクト２２０に報告される。一実施形態では、クライアントオブジェクトのそれぞれがバス２４０に結合され、潜在的設計誤りを別々に報告オブジェクト２２０に報告する。別の実施形態では、クライアントオブジェクト２１１〜２１６によって識別された潜在的設計誤りが、設計チェッカオブジェクト２１０を介して報告オブジェクト２２０に結合される。一実施形態では、個々の設計チェッカオブジェクト２１１〜２１６はまた、識別された潜在的設計誤りに基づいて警告メッセージを生成する。生成された警告メッセージがある場合、それも報告オブジェクト２２０で受信される。
【００２１】
報告オブジェクト２２０は、報告された潜在的誤りを統合して、設計問題の単一のリストを生成する。警告も報告オブジェクト２２０で受信される実施形態では、警告は、設計問題のリストに統合するように利用可能である。一実施形態では、報告オブジェクト２２０はまた、報告オブジェクト２２０に報告される潜在的設計誤りに基づいて警告を生成するためのロジックを含む。そのような実施形態では、こうした警告はまた、報告オブジェクト２２０で生成される設計問題のリストにまとめるように利用可能である。設計問題の統合されたリストは、潜在的設計誤り、警告、または潜在的設計誤りと警告の何らかの組合せからなることができる。
【００２２】
ユーザインターフェース２３０が、報告オブジェクト２２０でまとめられた設計問題リストを受信するために報告オブジェクト２２０に結合される。ユーザインターフェース２３０はまた、選択された情報を、ユーザインターフェース２３０の様々な部分とのユーザ対話に応答して受信される報告オブジェクト２２０に提供する。一例を挙げると、一実施形態では、ユーザインターフェース２３０は、電子フォームをフォーマットするガイドラインを報告オブジェクト２２０に提供する。報告オブジェクト２２０は、このガイドライン情報を使用して、設計問題のリストの生成をガイドする。さらに、一実施形態では、報告オブジェクト２２０はまた、どの誤りをチェックするかをクライアントフォーム設計チェッカオブジェクト（２１１〜２１６）をガイドする際に使用するためにこのガイドライン情報をフォーム設計チェッカ２１０に結合する。
【００２３】
図３は、電子フォームでの設計問題を識別する本システム２００のユーザインターフェース２３０の一実施形態の図である。図３で表される実施形態では、ユーザインターフェース２３０は、アプリケーションフレーム３３１、設計キャンバス３３２、ダイアログボックス３３３、および設計チェッカタスクペイン３３４からなる。
【００２４】
図３では、アプリケーションフレーム３３１は、ユーザインターフェース２３０の要素のすべてがユーザに対して表示可能となるトップレベルエリアである。アプリケーションフレーム３３１は、典型的なグラフィカルユーザインターフェースコンピューティング環境で一般的に知られているようなユーザインターフェースの他の要素の包含に適している。ダイアログボックス３３３は、ユーザに情報を提供すること、情報を提供するようにユーザにプロンプト指示すること、選択可能なリンクをユーザに提供すること、またはダイアログボックスに関する上記または他の周知の使用法の何らかの組合せなどの様々な機能を実施するのに使用される。ユーザインターフェース２３０の設計キャンバス３３２部分は、電子フォームを設計するためのものである。設計キャンバス３２２は、ユーザに電子フォームを表示し、さらに、ユーザとの対話を可能にするのに使用される。ユーザインターフェース２３０の設計チェッカタスクペイン３３４は、設計キャンバス３３２で設計されている電子フォームで識別された警告および潜在的設計誤りなどの設計問題を表示するためのものである。
【００２５】
図４は、電子フォームでの設計問題を識別する本システム２００を使用するアプリケーションフレーム３３１の一実施形態の図である。図４のアプリケーションフレーム３３１は、ドロップダウンメニュー４１０およびアイコンベースのツールバー４２０の例示的表示を示す。メニュー４１０およびツールバー４２０は、設計キャンバスエリア３３２および設計チェッカタスクペイン３３４と共に使用される。図４のブランクフォーム設計キャンバス３３２は、その中に表される電子フォームの要素をまだ有していない表示である。図４では、警告または潜在的設計誤りが表示されていない設計チェッカタスクペイン３３４が示されている。図９Ａ、９Ｂ、および９Ｃと共に、以下で設計チェッカタスクペイン３３４の実施形態に関連する機能をより詳細に説明する。
【００２６】
以下の議論は、電子フォームでの設計問題を識別する本技術の動作を詳細に説明する。図５および６を参照すると、フローチャート５００および６００はそれぞれ、電子フォームでの設計問題を識別する本技術の様々な実施形態で使用される例示的ステップを示す。フローチャート５００および６００は、様々な実施形態においてコンピュータ可読命令およびコンピュータ実行可能命令の制御下でプロセッサによって実施されるプロセスを含む。コンピュータ可読命令およびコンピュータ実行可能命令は、例えば、図１のコンピュータ使用可能揮発性メモリ１０８、コンピュータ使用可能不揮発性メモリ１１０、および／またはデータ記憶装置１１２などのデータ記憶機能内に常駐する。コンピュータ可読命令およびコンピュータ実行可能命令は、例えば図１のプロセッサ１０６Ａならびに／あるいはプロセッサ１０６Ａ、１０６Ｂ、および１０６Ｃと共に制御または動作するのに使用される。特定のステップがフローチャート５００および６００で開示されるが、そのようなステップは例示的なものである。すなわち、実施形態は、様々な他のステップあるいはフローチャート５００および６００に列挙されるステップの変形形態を実施するのに十分に適している。フローチャート５００および６００のステップを提示されたものとは異なる順序で実施することができ、フローチャート５００および６００のステップのすべてが実施されるわけではないことがあることを理解されたい。
【００２７】
ここで図５のフローチャート５００を参照すると、ステップ５０２では、電子フォームでの設計問題を識別する本技術は、電子フォームに適用すべきユーザ選択ランタイム環境を受信する。ランタイム環境は、ユーザによってユーザインターフェース２３０を介して行われる互換性選択肢であり、電子フォームがどの環境で動作可能となるように意図されるかを定義する。これは、各ランタイム環境が電子フォームと共に使用するための異なる１組のアプリケーション機能を提供することがあるので、重要な選択肢である。さらに、各ランタイム環境選択肢はまた、本質的に、電子フォームの構築のための異なる１組の要件を課す。
【００２８】
一例を挙げると、ランタイム環境は通常、個々のコンピュータ、サーバ、またはリモート位置から入力されるデータを有する、ウェブアクセスされる電子フォームなどの、電子フォームが動作することが意図されるプラットフォームを指定する。ランタイム環境の受信は、電子フォーム内の設計問題の識別をガイドする。一実施形態では、電子フォームでの設計問題を識別する本技術は、電子フォーム設計プロセスでの初期ステップとしてのランタイム環境を求めてユーザにプロンプト指示する。受信されるランタイム環境は、電子フォームの設計中に生じる可能性のある潜在的設計誤りをチェックするのに使用される規則の組を支配する複数の可能なガイドラインのうちの１つである。一実施形態では、電子フォーム設計プロセス中の任意の時点で行われるユーザ選択に応答して、ランタイム環境が受信される。これは、電子フォームの設計を開始した後に、選択されたランタイム環境をユーザが変更する可能性がある場合に有用である。そのような手法はまた、あるランタイム環境向けに設計された電子フォームが異なるランタイム環境で使用される場合に、どんな種類の設計問題が存在する可能性があるかをユーザが知ることを可能にする。
【００２９】
次に図７を参照すると、電子フォームでの設計問題を識別する本システム２００のダイアログボックス７００の一実施形態の図である。ダイアログボックス７００は、電子フォーム設計プロセスの開始時に、情報を求めてユーザにプロンプト指示するために提示することができるダイアログボックスの一例である。選択可能エリア７０５は、新しい電子フォームテンプレートの設計をトリガする選択をユーザが行うことを可能にする。選択可能エリア７０５は、新しく設計される電子フォームを互換となるように設計することのできる複数の環境を含むドロップダウンメニューからの互換性入力選択肢を求めてユーザにプロンプト指示するエリア７１０を含む。互換性選択肢は、ランタイム環境、電子フォームが互換となるように設計される電子フォーム設計プログラムのバージョン、またはその２つの何らかの組合せを含むことができる。選択可能エリア７０５はまた、複数の選択可能アイコンから入力を求めてユーザにプロンプト指示するエリア７２０を含む。エリア７２０内の選択可能アイコンのそれぞれは、電子フォームについてのデータソースの選択を可能にする。データは、ウェブサービス、データベース、ＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）、その他などの位置から供給される。
【００３０】
ある入力選択エリア７３０は、ユーザが様々な選択可能ソースのうちの任意の１つから電子フォームテンプレートを開くことを可能にする。別の入力選択エリア７４０は、記入することのできる電子フォームの選択可能リストへのリンクをユーザに提供する。何らかの入力選択が行われた後、ユーザは、ＯＫボタン７５０を選択してダイアログボックス７００を閉じ、選択したアクションに進む。ユーザは、交互に、キャンセルボタン７６０を選択してダイアログボックス７００を閉じ、選択されたアクションを起動することなく続行することができる。
【００３１】
次に図８を参照すると、電子フォームでの設計問題を識別する本システム２００のダイアログボックス８００の一実施形態の図が示されている。ダイアログボックス８００は、情報を求めてユーザにプロンプト指示するように提示されたダイアログボックスの別の例である。ダイアログボックス８００は、ユーザがフォーム設計プロセス中にいつでも電子フォームの設計についての選択を行うことを可能にするのに十分に適している。選択可能エリア８１０は、ドロップダウンメニューからのランタイム互換性選択肢を求めてユーザにプロンプト指示する。ランタイム互換性選択肢は、電子フォームが動作するように設計されるランタイム環境、電子フォームが互換となるように設計される電子フォーム設計プログラムのバージョン、またはその２つの何らかの組合せを含む。選択可能エリア８２０は、ダイアログボックス８００内に任意選択で含めることのできる互換性チェックを可能にする選択可能エリアのクラスの特定の例である。図示するように、選択可能エリア８２０は、電子フォーム設計プログラムの以前のバージョンに関係する設計互換性問題をリストする報告を生成させる選択をチェックまたはチェック解除するようにユーザにプロンプト指示する。何らかの入力選択が行われた後、ユーザは、ＯＫボタン８３０を選択してダイアログボックス８００を閉じ、選択したアクションに進む。ユーザは、交互に、キャンセルボタン８４０を選択してダイアログボックス８００を閉じ、選択されたアクションを起動することなく続行することができる。
【００３２】
再び図５を参照すると、ステップ５０４で、電子フォームでの設計問題を識別する本技術は、電子フォームに対するフォーム設計チェックを実施する。フォーム設計チェックは、電子フォームに伴う設計問題であり、または設計問題となる可能性のある潜在的設計誤り状態を識別する。一実施形態では、フォームを変更する可能性のあるユーザアクションが以前には識別されなかった潜在的設計誤りを導入するようなものであることに応答して、フォーム設計チェックが自動的に実施される。例えば、電子フォーム文書をインポートした後、フォーム設計チェックが自動的に実施され、ファイルをインポートする結果として現れる可能性のある潜在的設計誤りが識別される。別の実施形態では、ユーザは、フォーム設計チェックを選択的に開始することもできる。例えば、この選択的開始は、ユーザインターフェース２３０の一部として提供されるリフレッシュボタンとのユーザ対話に応答して実施される。選択的リフレッシュツールは、設計中の電子フォームで変更が行われた後に、設計問題のリストをリフレッシュするのに有用である。
【００３３】
フォーム設計チェックは、複数の個々のフォーム設計チェッカオブジェクト（図２の２１１〜２１６）によって実施される。例えば、それぞれの個々のフォーム設計チェッカオブジェクト２１１は、１つの誤りのカテゴリまたは発生源についての電子フォームのチェック専用である。一実施形態では、フォーム設計チェッカオブジェクト２１１〜２１６は、指定されたランタイム環境ガイドラインと適合する設計誤りをテストするようにガイドされる。別の実施形態では、設計チェッカオブジェクトの一部がランタイム誤りなどの誤りをチェックするようにガイドされ、同時に他の設計チェッカオブジェクトは、他のガイドラインに従って、他の誤りをチェックする。さらに別の実施形態では、ランタイム環境に加えて、他のガイドラインが、様々な設計チェッカオブジェクト２１１〜２１６によってテストされ、識別される設計誤りを制御する。
【００３４】
一実施形態では、フォーム設計チェッカ２１０と共に登録されたクライアントフォーム設計チェッカオブジェクト２１１〜２１６のリストは拡張可能である。拡張可能性は、ユーザが、電子フォーム設計チェッカソフトウェアと共に送達される設計チェッカオブジェクトの元の組の一部ではない追加の設計チェッカオブジェクトクライアントを追加することが可能となる。そのような実施形態は、新しい機能の追加を可能にする。一実施形態では、拡張可能性はまた、電子フォーム設計ソフトウェアと共に働くように構成される第３者設計チェッカオブジェクトの追加を可能にする。
【００３５】
一実施形態では、クライアント設計チェッカオブジェクト２１１〜２１６は、静的フォーム設計チェッカオブジェクトおよび動的フォーム設計チェッカオブジェクトからなる。インポート誤りチェッカ２１５などの静的フォーム設計チェッカオブジェクトは、ファイルまたは添付ファイルインポートなどのイベントに応答して設計チェックを実施するだけである。その後で、リフレッシュ設計チェックが実施されたとき、静的設計チェッカオブジェクトは、生成された設計問題のリストをチェックし、もはや適用できない誤りおよび警告を除去するだけである。後方互換性チェッカ２１２などの動的フォーム設計チェッカオブジェクトは、設計プロセスのある時点、例えば作成または発行のみで生じる誤りではなく、電子フォーム設計の中の任意の様々な時間および位置でフォーム設計に導入される可能性のある誤りをチェックする。一実施形態では、動的フォーム設計チェッカオブジェクトは、設計誤りについてチェックし、または既に生成された設計問題のリストをリフレッシュするのに使用されるごとに、電子フォームの完全な設計チェックを実施する。
【００３６】
図５のステップ５０６で、電子フォームでの設計問題を識別する本技術は、フォーム設計チェックで識別される設計問題のリストを生成する。潜在的設計誤りのリストは、報告オブジェクト２２０によって生成される。設計問題のリストは、報告オブジェクト２２０内に保持される潜在的設計誤りおよび警告からなる。一実施形態では、このリストがカテゴリとして構築され、各カテゴリは、関係する潜在的設計誤りおよび警告のリストを含む。例えば、一実施形態では、生成されたリスト中の各カテゴリは、ある誤りのカテゴリまたは発生源についてテストするのにそれぞれ使用される複数の設計チェッカオブジェクト２１１〜２１６のうちの１つまたは複数に直接対応する。例えば、生成される誤りのリスト中のあるカテゴリは、ランタイム互換性チェッカ２１１に対応するランタイム設計問題を含む。別のカテゴリは、後方互換性チェッカ２１２に対応する後方互換性設計問題を含む。さらに別のカテゴリは、他の設計チェッカオブジェクトに対応する設計問題からなる。一実施形態では、カテゴリに細分された誤りのリストを生成するこの方法を使用して、ある誤りのカテゴリが各設計チェッカオブジェクト２１１〜２１６に対応するリストが生成される。そのような実施形態では、複数の設計チェッカオブジェクト２１１〜２１６によって識別され、または複数の設計チェッカオブジェクト２１１〜２１６に関係する単一の潜在的設計誤りまたは警告は、リスト中に複数回現れ、それが関係する各カテゴリ下にリストされる。
【００３７】
図５のステップ５０８で、電子フォームでの設計問題を識別する本技術は、ユーザインターフェース内に設計問題のリストを表示する。警告および潜在的設計誤りからなり、報告オブジェクト２２０によって生成される設計問題のリストが表示され、その結果ユーザはリストを見ることができる。設計問題のリストが上述のようにカテゴリとして生成される場合、表示される設計問題のリストが設計問題のカテゴリに細分される。そのような実施形態では、設計問題の複数のカテゴリの各カテゴリは、電子フォームの設計での識別された潜在的設計誤りまたは警告を有する複数の設計チェッカオブジェクト２１１〜２１６の少なくとも１つに対応する。このように細分された設計問題のリストを表示することは、設計中の電子フォームに関して特定の警告状態または潜在的設計誤り状態がどんな重要性を有するかをユーザが判定する際の助けになる。
【００３８】
一実施形態では、設計問題のリストが、ユーザインターフェース２３０のアプリケーションフレーム３３１内の単一の設計チェッカタスクペイン３３４内に表示される（図３および４参照）。識別された設計問題をユーザインターフェース２３０の単一のエリア内に表示することは、電子フォームの設計での設計問題として識別される警告および潜在的設計誤りを閲覧し、それと対話する一貫した体験をユーザに与える。この単一の表示はまた、こうした設計問題を識別、報告、および表示させる状態を訂正する単一の開始点として働く。そのような表示の一例が図９Ａに示される。
【００３９】
図９Ａは、電子フォームでの設計問題を識別する本システム２００の設計チェッカタスクペイン３３４の一実施形態の図である。図９Ａでは、設計チェッカタスクペイン３３４のいくつかのサブエリアが識別される。エリア９１０は、現在設計中の電子フォームに関連する互換性選択肢のインジケータを提供する。エリア９１０はまた、ユーザがフォーム設計プロセス中の任意の時間に互換性選択肢の変更を開始することを可能にするダイアログボックス８００などのダイアログボックスへのユーザ選択可能リンクとしても働く。
【００４０】
選択可能エリア９２０は、設計中の電子フォームで識別された設計問題の視覚的表示を提供する。選択可能エリア９２０は、設計問題カテゴリ見出し９３０および９４０によって表される設計問題のカテゴリに細分される。カテゴリ見出し９３０は設計チェッカオブジェクト２１１（図２）に関連し、カテゴリ見出し９４０は設計チェッカオブジェクト２１２（図２）に関連する。図９Ａでは２つのカテゴリが表示されているが、他の実施形態では、表示のために選択される、識別された設計問題のカテゴリの数に応じて、追加のカテゴリまたはより少数のカテゴリが提示される。要素９３１〜９３５は、カテゴリ９３０に関連するユーザ選択可能設計問題を表す。要素９４１は、カテゴリ９４０に関連するユーザ選択可能設計問題を表す。ユーザは、スクロールバー９４５と対話することにより、リストされるカテゴリおよび設計問題をスクロールする。リフレッシュボタン９５０のユーザ選択は、電子フォーム設計チェックのリフレッシュを引き起こし、それによってエリア９２０内の表示される設計問題をリフレッシュする。オプションボタン９６０のユーザ選択は、ユーザがエリア９２０内に表示された設計問題に関連するディスプレイオプションを選択することを可能にする。一実施形態では、１つまたは複数のカウンタ型数値インジケータ（図示せず）が設計チェッカタスクペイン３３４内に表示され、設計問題、潜在的設計誤り、または警告がいくつリストされるかについての迅速な視覚的表示がユーザに与えられる。そのようなカウンタタイプインジケータは、表示されるリストから設計アクションが設計問題を追加または除去したかどうかをユーザが迅速に判定することを可能にする。
【００４１】
設計チェッカタスクペイン３３４の一実施形態は、ユーザ選択に応答して、設計問題のカテゴリのうちの少なくとも１つの表示を抑制することを可能にする。これは、表示される設計問題の数を削減するのに有用である。これは、設計問題の特定のカテゴリが重要ではなく、またはそれに十分に対処されており、したがってもはや表示する必要がないとユーザが判断した場合にも有用である。別の実施形態は、ユーザ選択に応答して、設計問題のカテゴリのうちの少なくとも１つの設計問題のサブセットのタスクペイン内の表示を抑制することを可能にする。設計問題のカテゴリのサブセットを抑制することは、例えば、特定のタイプの警告または潜在的設計誤りが重要ではなく、またはそれに適切に対処されているが、例えばあるときに警告のリストを生成し、ユーザが示された問題を訂正したときに動的に警告を除去しない静的フォーム設計チェッカオブジェクトの場合などで、それが依然として表示されているとユーザが判断する場合に有用である。１つのカテゴリまたはいくつかのカテゴリ内に現れる可能性のある特定の警告または誤りサブセットを選択的に抑制することは、問題のカテゴリ全体の表示を使用不能にすることなく、選択されたサブセットのさらなる表示を防止する。この選択的抑制オプションを使用することは、ユーザが設計問題の表示を構造化することを可能にし、その結果、ユーザにとって重要な設計問題のみが表示される。図９Ｂおよび９Ｃは、上述の任意選択の抑制を示す。
【００４２】
次の図９Ｂを参照すると、電子フォームでの設計問題を識別する本システム２００の設計チェッカタスクペイン３３４の一実施形態の図である。図９Ｂは、オプションボタン９６０のユーザ選択によって表示のためにトリガされる例示的オプションダイアログボックス９７０を示す。項目９１０、９２０、９３０、９４０、９５０、および９６０は図９Ａに記載のものと同じである。表示される実施形態では、オプションダイアログボックス９７０は、ユーザが各警告９７６〜９７９の隣の選択可能ボックス９７１〜９７４内のチェックを追加または除去することによって警告のいくつかのカテゴリ９７６〜９７９の表示を選択的に使用可能または使用不能にすることを可能にする。図示されるように、エリア９７４が選択解除され、後方互換性警告９７９の表示が使用不能にされている。ＯＫボタン９７５のユーザ選択が、この選択解除オプション入力を実行する。
【００４３】
他の実施形態では、追加の選択可能オプションまたはより少数の選択可能オプションをユーザに提示できることを理解されたい。他の実施形態では、表示される警告および／または誤りのレベルを拡張するのにダイアログボックス９７０などのダイアログボックスも使用される。さらに、一実施形態では、カテゴリ９７６〜９７９は選択可能テキストリンクとして働く。例えば、選択可能テキストリンク９７６の選択は、どのくらいの頻度でインポート警告または誤りが提示されるかなどのオプションを選択的に選ぶためのエリア、または警告および誤りのカテゴリのサブセットの表示を選択的に使用可能または抑制するためのオプションを選ぶためのエリアにユーザを導く。
【００４４】
次の図９Ｃを参照すると、電子フォームでの設計問題を識別する本システム２００の設計チェッカタスクペイン３３４の一実施形態の図である。図９Ｃは、図９Ｂと共に説明した選択解除オプション入力から生じる例示的結果を示す。項目９１０、９２０、９３０〜９３５、９４５、９５０、および９６０は、図９Ａに記載のものと同じである。しかし、設計問題カテゴリ９４０および選択可能設計問題９４１は、後方互換性警告の選択解除が行われたためにもはやディスプレイ内に示されない。
【００４５】
設計問題は、多種多様の発生源を有する警告および潜在的設計誤りからなる。前述のように、こうした発生源に関するカテゴリとして設計問題を表示することができる。しかし、発生源の如何にかかわらず、設計問題のリスト中の各警告および潜在的設計誤りは、ディスプレイ中心設計問題（ｄｉｓｐｌａｙ  ｃｅｎｔｒｉｃ  ｄｅｓｉｇｎ  ｉｓｓｕｅ）、ノード中心設計問題（ｎｏｄｅ  ｃｅｎｔｒｉｃ  ｄｅｓｉｇｎ  ｉｓｓｕｅ）、およびグローバル設計問題という３つのタイプの設計問題のうちの１つに属するものとしても分類される。
【００４６】
設計問題のタイプ分類は、設計問題を説明するためにユーザに提示される情報の種類を左右する。ディスプレイ中心設計問題は電子フォーム内の可視エリアであり、したがって、ユーザは、電子フォーム内でこのタイプの誤りを見ることができる。例えば、ピクチャが適切にインポートされない場合、ユーザは電子フォーム設計プログラムの設計キャンバスエリア３３２（図３参照）を調べ、インポートされた画像が設計中の電子フォーム内に適切に表示されていないことを見る。
【００４７】
ノード中心設計問題は一般に、電子フォーム内のノードに関連する、ロジックなどの、表示の背後にあるデータスキーマの欠陥、またはプロパティの欠陥である。ノード中心誤りまたは警告はユーザに対して説明可能であるが、電子フォーム内の視覚的誤りとして現れることはない。例えば、ユーザ役割が特定のノードに関連付けられることがある。しかし、選択されたユーザ役割が電子フォーム設計プログラムの以前のバージョンで利用可能ではなかったものである場合、以前のプログラムバージョンで使用されるときに電子フォームのこのノードが非互換となる潜在的後方互換性誤りが存在する。このノード中心誤りは、ノードに伴う潜在的問題を提示するが、設計キャンバスエリア３３２内に表示される電子フォームの欠陥として視覚的に現れることはない。
【００４８】
グローバル設計問題は、電子フォーム全体に関連する非互換性機能などの項目である。例えば、完成したフォームをＥメールを介して発信することを可能にする設定を選ぶことである。電子フォームをそれに対して設計中であるランタイム環境ターゲットが、Ｅメール発信をサポートしない場合、この設定は、フォーム全体の使用を妨げる可能性のあるグローバル誤りである。グローバル誤りは、ユーザに対して説明可能であるが、設計キャンバスエリア３３２内に表示される電子フォームの欠陥として視覚的に現れることはない。
【００４９】
再び図５を参照すると、一実施形態では、ステップ５１０で、電子フォームでの設計問題を識別する本技術は、表示される設計問題のうちの１つとのユーザ対話に応答して、フォーム設計エリア内の制御を選択する。このステップは、ディスプレイ中心設計問題とのユーザ対話を記述する。このユーザ対話は、ユーザが対話したディスプレイ中心設計問題に関連する制御を、電子フォーム設計プログラムのユーザインターフェース２３０（図２）に自動的に選択させる。例えば電子フォーム設計プログラムの設計キャンバスエリア３３２内に表示される電子フォーム内で制御が選択される。制御を選択することにより、制御がユーザによる操作のための状態に置かれる。
【００５０】
一実施形態では、設計チェッカタスクペイン３３４内に表示される各設計問題は、より多くの情報へのリンクを含む。カーソル制御装置を使用してクリックするなど、表示される警告または潜在的設計誤りと一定の方式で対話することにより、対話に応答して様々な他のアクションを自動的に開始することができる。他の自動的に開始されるアクションの性質は、対話する設計問題のタイプ分類、および提示のために利用可能な情報によって左右される。図１０は、表示されるディスプレイ中心問題とのユーザ対話に応答して選択される制御の一例を示す。図１０の詳細な議論が以下で与えられる。
【００５１】
図５のステップ５１２で、一実施形態では、電子フォームでの設計問題を識別する本技術は、選択された制御をビュー内にスクロールする。このステップは、ディスプレイ中心設計問題とのユーザ対話によって開始される別の自動アクションを記述する。選択された制御が画面上で可視ではない場合、自動スクロールが、選択された制御が閲覧可能設計キャンバスエリア３３２内となるようにフォームの表示される部分を調節することにより、選択された制御をビュー内に移動する。選択された制御が設計キャンバスエリア３３２内の画面上に既に可視である場合、自動スクロールは、ユーザがより容易に閲覧および対話するように、選択された制御を位置変更する。このことは、選択された制御を設計キャンバスエリア３３２内で中央そろえし、または選択された制御を設計キャンバスエリア３３２内の最上部の制御として配置することなどのアクションを含むことができる。ある場合には、選択された制御がユーザインターフェースの設計キャンバスエリア３３２内に既に適切に配置されている場合、自動スクロールは単に、制御の位置を確認するだけであり、それ以上のアクションを行わない。電子フォーム上の選択された制御を設計キャンバスエリア３３２内のビューに自動的にスクロールすることは、自動的に選択された制御を設計キャンバス３３２の閲覧可能エリアでユーザに提示するので有用である。電子フォーム内の選択された制御に自動的にスクロールすることは、電子フォームを探索して誤り状態に関連する制御を見つけようと試みて、通常ならユーザがユーザインターフェースの設計キャンバス３３２をスクロールすることに費やす時間を節約する。図１０は、表示されたディスプレイ中心問題とのユーザ対話に応答してビュー内にスクロールされる制御の一例を示す。
【００５２】
図５のステップ５１４で、一実施形態では、電子フォームでの設計問題を識別する本技術は、選択された制御を強調表示して、潜在的設計誤りの視覚的インジケータを提供する。このステップは、ディスプレイ中心設計問題とのユーザ対話によって開始される別の自動アクションを記述する。リストされる設計問題とのユーザ対話に応答して制御を自動的に強調表示することにより、ユーザが例えばユーザインターフェースの設計キャンバスエリア内の制御の位置を突き止めることが容易となる。強調表示は、選択された制御を他の制御とは異なる色にシェーディングすることを含むことができる。選択された制御を強調表示することはまた、他のアクションを自動的に実施して、制御にユーザの注意を引くことを含むことができる。アクションを強調表示することは、ユーザの注意を引くために選択された制御を明滅させ、通常よりも大きく見せ、または他の視覚的識別子を提示するなどの自動動作を含むことができる。
【００５３】
図５のステップ５１６で、一実施形態では、電子フォームでの設計問題を識別する本技術は、潜在的設計誤りを記述するダイアログメッセージを提示する。このステップは、ディスプレイ中心設計問題とのユーザ対話によって開始される別の自動アクションを記述する。一実施形態では、リストされる設計問題とのユーザ対話に応答して、ユーザインターフェースのどこかにダイアログメッセージが自動的に現れる。ダイアログボックスの形で現れることのできるダイアログメッセージが、なぜ警告または潜在的設計誤り状態が設計問題として識別されたかについてのより特定の情報をユーザに提供する。一実施形態では、ダイアログメッセージが、選択された制御に隣接する配置される。一実施形態では、ダイアログメッセージはまた、警告または潜在的設計誤りを識別させた状態をどのように訂正するかに関する提案を与える。一実施形態では、複数のダイアログメッセージが提示される。例えば、選択された制御に隣接するボックス内に小さいメッセージが提示され、ユーザインターフェースの閲覧エリア内のどこかに配置された別々のダイアログボックス内により大きい詳細なメッセージが提示される。図１０は、表示されるディスプレイ中心問題とのユーザ対話に応答して、制御に隣接して提示されるダイアログボックスの一例を示す。
【００５４】
上述のように、図１０は、電子フォームでの設計問題を識別する本システム２００の設計キャンバス３３２および設計チェッカタスクペイン３３４の一実施形態の図である。図１０は、設計チェッカタスクペイン３３４内に表示される選択可能設計問題９３２とのユーザ対話に応答して行われる例示的アクションを示す。項目９１０〜９６０は、選択可能項目９３２がユーザ対話によって選択されていることを除いて、図９Ａと共に説明したものと同じである。選択可能項目９３２内のテキストに、この項目９３２の選択を表すために下線が引かれる。選択可能項目９３２は、サポートされない画像制御に関するディスプレイ中心設計問題である。
【００５５】
設計キャンバスエリア３３２が設計チェッカタスクペイン３３４と共に表示される。エリア１０１０、１０２０、１０３０、１０４０、および１０５０は、設計キャンバス３３２で設計中の電子フォームの各部分を表す。選択可能設計問題９３２とのユーザ対話に応答して、フォーム設計者プログラムのユーザインターフェースは、選択可能設計問題９３２に関連する画像エリアに関連するエリア１０２０を自動的に選択している（画像制御はサポートされない）。小さいデフォルト誤りアイコン１０２１が、画像がエリア１０２０にインポートされたが、何らかの理由で適切に表示されていないことの視覚的インジケータとして提示される。エリア１０２０の選択に加えて、エリア１０２０が設計キャンバス３３２の閲覧エリアに自動的にスクロールされており、そこで任意選択でエリア１０２０が自動的に強調表示される（図示せず）。さらに、任意選択ダイアログボックス１０６０がエリア１０２０に隣接して自動的に提示されている。図１０に示されるように、制御エリア１０２０に隣接するボックス内に提示される小さいメッセージであるボックス１０６０は、選択可能エリア９３２および制御１０２０に関連する設計問題のより詳しい説明をユーザに提供する。
【００５６】
一実施形態では、表示されるグローバル設計問題とのユーザ対話に応答して、グローバル設計問題の特定の性質をより詳しく記述するダイアログメッセージがユーザに提示される。図１１は、表示されるグローバル問題とのユーザ対話に応答して提示されるダイアログボックスの一例を示す。
【００５７】
図１１は、電子フォームでの設計問題を識別する本システム２００の設計キャンバス３３２および設計チェッカタスクペイン３３４の一実施形態の図である。図１１は、設計チェッカタスクペイン３３４内に表示される選択可能設計問題９３１とのユーザ対話に応答して行われる例示的アクションを示す。項目９１０〜９６０は、図９Ａと共に説明したものと同じであるが、２つの例外がある。第１に、エリア９１０内の互換性選択肢が、設計中のフォームに対する互換性要件としてサーバレベルの使用を含むように変更されている。第２に、選択可能項目９３１がユーザ対話で選択されている。選択可能項目９３１内のテキストに、項目９３１のこの選択を表すように下線が引かれる。選択可能項目９３１は、表示されるときにフォームでサポートされないユーザ役割に関するグローバル設計問題である。
【００５８】
設計キャンバス３３２では、エリア１０１０、１０２０、１０２１、１０３０、１０４０、および１０５０は、エリア１０２０がもはや選択されないことを除いて、図１０に記載のものと同じである。選択可能設計問題９３１とのユーザ対話に応答して、ダイアログボックス１０６２が自動的に開かれている。ダイアログボックス１０６２は、選択可能エリア９３１に関連するグローバル設計問題のより詳しい説明をユーザに提供する。さらに、ダイアログボックス１０６２は、選択可能設計問題９３１に関連する誤りをどのように除去するかに関する提案をユーザに提供する。ユーザは、ＯＫボタン１０６３を選択することによってダイアログボックス１０６２を閉じる。
【００５９】
一実施形態では、表示されるノード中心設計問題とのユーザ対話に応答して、ノード中心設計問題の特定の性質を記述するダイアログメッセージがユーザに提示される。図１２は、表示されるノード中心問題とのユーザ対話に応答して提示されるダイアログボックスの一例である。
【００６０】
図１２は、電子フォームでの設計問題を識別する本システム２００の設計キャンバス３３２および設計チェッカタスクペイン３３４の一実施形態の図である。図１２は、設計チェッカタスクペイン３３４内に表示される選択可能設計問題９３４とのユーザ対話に応答して行われる例示的アクションを示す。項目９１０〜９６０は、図９Ａと共に説明したものと同じであるが、２つの例外がある。第１に、エリア９１０内の互換性選択肢が、設計中のフォームに対する互換性要件としてサーバレベルの使用を含むように変更されている。第２に、ここでは「ユーザの現在の役割機能がサポートされていない」ことを表す選択可能項目９３４が、ユーザ対話で選択されている。選択可能項目９３４内のテキストに、項目９３４のこの選択を表すために下線が引かれる。選択可能項目９３４は、サポートされていないユーザの現在の役割機能に関するノード中心設計問題である。
【００６１】
設計キャンバス３３２では、エリア１０１０、１０２０、１０２１、１０３０、１０４０、および１０５０は、エリア１０２０がもはや選択されないことを除いて、図１０に記載のものと同じである。選択可能設計問題９３４とのユーザ対話に応答して、ダイアログボックス１０６４が自動的に開かれている。ダイアログボックス１０６４は、選択可能エリア９３４に関連するノード中心設計問題のより詳しい説明をユーザに提供する。さらに、ダイアログボックス１０６４は、選択可能設計問題９３４に関連する誤りをどのように除去するかに関する提案をユーザに提供する。ダイアログボックス１０６４内に設けられる編集プロパティボタン１０６６を選択することにより、ユーザは、識別された設計問題を訂正するために選択可能設計問題９３４に関連するノードプロパティをユーザが編集または操作することのできる入力エリアにリンクされる。ユーザは、ＯＫボタン１０６５を選択することによってダイアログボックス１０６４を閉じる。
【００６２】
次に図６を参照すると、電子フォームでの設計問題を識別する本技術の別の実施形態に従って実施される動作のフローチャート６００が示されている。フローチャート６００で列挙される動作は、フローチャート５００で列挙される動作と同様に機能するが、電子フォームでの設計問題を識別する本技術の利点を明確に指摘するためにプロセスの説明が変更される。
【００６３】
図６のステップ６０２で、電子フォームでの設計問題を識別する本技術は、電子フォームをフォーマットするためのガイドラインを受信する。ステップ６０２は、フローチャート５００のステップ５０２と同様であり、ユーザインターフェース２３０でユーザ選択されたランタイム環境を受信することを含む。しかし、ガイドラインを受信することは、単なるランタイム環境選択以上の情報を受信することも含む。ガイドラインを受信することは、電子フォームへのデータの入力のためのデータソースの選択肢、フォームが互換となるように設計されるフォーム設計者ソフトウェアのバージョンの選択肢、フォーム設計プロセス中に後方互換性問題をユーザに報告すべきか否かに関する情報などの情報を受信することも含む。
【００６４】
ランタイム環境は、電子フォームが使用されると予想される宛先であり、スタンドアロンコンピュータ、サーバ、ウェブアクセスポイントなどの環境を含むことができる。ランタイム環境はまた、こうしたタイプの環境の組合せを含むことができる。フォームデータのためのデータソースは、スタンドアロンユーザ入力、ウェブサービス、データベース、またはＸＭＬ（ｅｘｔｅｎｓｉｂｌｅ  ｍａｒｋｕｐ  ｌａｎｇｕａｇｅ）などのスキーマなどのソースを含むことができる。フォームが互換となるように設計されるソフトウェアのバージョンは、後方互換性問題が存在するならば、どの後方互換性問題が電子フォームの生成中に識別されるかを制御する。
【００６５】
一実施形態では、ユーザインターフェース２３０（図２）は、フォーム生成プロセスの開始状態として電子フォームをフォーマットするためのガイドラインを入力するようにユーザにプロンプト指示する。一実施形態では、ユーザは、フォーム生成プロセス中にユーザがそのように選ぶ任意のときにフォーム生成プロセスに関するガイドラインを選択的に入力または変更する。フォーム生成ガイドラインの一部またはすべてについて情報が受信されない場合、デフォルト設定が代用される。
【００６６】
図６のステップ６０４で、電子フォームでの設計問題を識別する本技術は、電子フォームに関する設計チェックを実施し、フォーム設計チェックは、受信されたガイドラインに適合する規則を適用する複数の設計チェッカオブジェクト２１１〜２１６（図２）によって実施される。ステップ６０４は、図５００のステップ５０４、および上記で与えたステップ５０４の対応する説明と同様であるが、１つの例外がある。その例外は、ステップ６０４でのフォーム設計チェッカ２１１〜２１６が、ステップ６０２に関して上記で説明したように、１組のガイドラインと適合する規則セットによって制限されることである。受信されたガイドラインは、ステップ５０４で指定されたように、単なるランタイム環境以上の情報を提供する。受信されたガイドラインから導出されるより特定の規則により、より多くの潜在的設計誤りまたは異なる潜在的設計誤りがフォーム設計チェッカ２１１〜２１６によって識別される可能性が高い。
【００６７】
次に図６のフローチャート６００を参照すると、ステップ６０６で、電子フォームでの設計問題を識別する本技術は、フォーム設計チェックによって識別された潜在的設計誤りのリストを生成する。潜在的設計誤りのリストは、報告オブジェクトとして生成される。このステップはフローチャート５００のステップ５０６と同様であり、ステップ５０６で与えた説明と一貫しているが、１つの例外がある。その例外は、生成されたリストが、潜在的設計誤りだけでなく警告も含むより広いカテゴリの設計問題ではなく、潜在的設計誤りのみからなることである。他の実施形態では、ステップ６０６は、フォーム設計チェックの結果として識別された警告および任意の潜在的設計誤りからなる設計問題の完全なリストを包含するように拡張される。
【００６８】
図６のステップ６０８で、電子フォームでの設計問題を識別する本技術は、ユーザインターフェースの単一の設計チェッカタスクペイン３３４（図３および９Ａ）内に潜在的設計誤りのリストを表示する。ステップ６０８は、フローチャート５００のステップ５０８と同様であり、ユーザインターフェースの単一の設計チェッカタスクペイン３３４内の誤りの表示は、ステップ５０８および図９Ａと共に与えた設計問題の表示の説明と一貫している。
【００６９】
ステップ６０８をさらに参照すると、一実施形態では、潜在的設計誤りの表示されるリストも誤りのカテゴリに細分され、誤りの複数のカテゴリのそれぞれが、複数の設計チェッカオブジェクト２１１〜２１６（図２）のうちの少なくとも１つに対応する。一実施形態はまた、誤りのカテゴリのうちの少なくとも１つの設計チェッカタスクペイン３３４内の表示を抑制するための機能を含む。抑制は、ステップ５０８（図５）および図９Ｂおよび９Ｃで説明したように、タスクペインに関連し、タスクペインを介してアクセスされるダイアログボックスからのユーザ選択に応答して行われる。一実施形態はまた、設計チェッカタスクペイン３３４内でアクセスされ、または設計チェッカタスクペイン３３４と関連する、リフレッシュボタン９５０（図９Ａ）などの選択可能リフレッシュボタンのユーザ選択に応答して、設計チェッカタスクペイン３３４内の潜在的設計誤りのリストの表示をリフレッシュする機能を含む。誤りおよび警告が設計チェッカタスクペイン３３４内で一緒に表示される実施形態では、リフレッシュボタン９５０はまた、タスクペイン内の警告のリフレッシュを可能にする。
【００７０】
図６のステップ６１０で、電子フォームでの設計問題を識別する本技術は、コンテキスト特有の誤りテキストを含むダイアログボックスを提示し、ダイアログボックスは、設計チェッカタスクペイン３３４（図３および９Ａ）内に表示される潜在的設計誤りのうちの１つとのユーザ対話に応答して提示される。前述のように、誤りのタイプは、ディスプレイ中心、ノード中心、およびグローバルとして分類される。ディスプレイ中心誤りは、設計中の電子フォーム内で可視であるが、こうしたタイプの潜在的設計誤りの３つすべては、例えば表示される誤りに対してダイアログボックスをリンクすることにより、ユーザに対して説明可能である。図１０、１１、および１２、ならびにそれに付随する説明は、ディスプレイ中心、グローバル、およびノード中心の問題および誤りとのユーザ対話に応答して存在するダイアログボックスの例を与える。
【００７１】
主題を構造的特徴および／または方法動作に特有の術語で説明したが、添付の特許請求の範囲で定義された主題が、上述の特定の機能または動作に必ずしも限定されないことを理解されたい。むしろ、上述の特定の機能および動作は、特許請求の範囲を実施する例示的フォームとして開示される。
【図面の簡単な説明】
【００７２】
【図１】電子フォームでの設計問題を識別する本技術の実施形態に従って使用される例示的コンピュータシステムの図である。
【図２】電子フォームでの設計問題を識別する本システムの一実施形態の図である。
【図３】電子フォームでの設計問題を識別する本システムのユーザインターフェースの一実施形態の図である。
【図４】電子フォームでの設計問題を識別する本システムを使用するアプリケーションフレームの一実施形態の図である。
【図５】電子フォームでの設計問題を識別する本技術の一実施形態に従って実施される動作のフローチャートである。
【図６】電子フォームでの設計問題を識別する本技術の一実施形態に従って実施される動作のフローチャートである。
【図７】電子フォームでの設計問題を識別する本システムのダイアログボックスの一実施形態の図である。
【図８】電子フォームでの設計問題を識別する本システムのダイアログボックスの一実施形態の図である。
【図９Ａ】電子フォームでの設計問題を識別する本システムの設計チェッカタスクペインの一実施形態の図である。
【図９Ｂ】電子フォームでの設計問題を識別する本システムの設計チェッカタスクペインの一実施形態の図である。
【図９Ｃ】電子フォームでの設計問題を識別する本システムの設計チェッカタスクペインの一実施形態の図である。
【図１０】電子フォームでの設計問題を識別する本システムの設計キャンバスおよび設計チェッカタスクペインの一実施形態の図である。
【図１１】電子フォームでの設計問題を識別する本システムの設計キャンバスおよび設計チェッカタスクペインの一実施形態の図である。
【図１２】電子フォームでの設計問題を識別する本システムの設計キャンバスおよび設計チェッカタスクペインの一実施形態の図である。
【図１】
2009524154.tif 000003
【図２】
2009524154.tif 000004
【図３】
2009524154.tif 000005
【図４】
2009524154.tif 000006
【図５】
2009524154.tif 000007
【図６】
2009524154.tif 000008
【図７】
2009524154.tif 000009
【図８】
2009524154.tif 000010
【図９Ａ】
2009524154.tif 000011
【図９Ｂ】
2009524154.tif 000012
【図９Ｃ】
2009524154.tif 000013
【図１０】
2009524154.tif 000014
【図１１】
2009524154.tif 000015
【図１２】
2009524154.tif 000016
【国際調査報告】
2009524154.tif 000017
2009524154.tif 000018