(57)【特許請求の範囲】
【請求項１】
入力されたデータに対する１以上の処理単位を定義情報に定義された順に実行する処理制御部と、
前記１以上の処理単位のうちのいずれかの出力情報に基づいて、前記定義情報において同一の処理単位の次に実行される候補として定義された複数の処理単位の中から前記処理制御部に実行させる処理単位を、前記出力情報に関して予め設定された条件の評価結果に基づいて選択する選択部と、
を有し、
前記選択部は、前記候補としての処理単位ごとに設定された前記条件のうち、満たされた条件に係る処理単位を選択し、
前記処理制御部は、前記満たされた条件に対応付けられている情報によって、前記選択部によって選択された処理単位に対して前記定義情報において定義されている入力情報を変更する、
ことを特徴とする情報処理装置。
【請求項２】
１以上の情報処理装置を含む情報処理システムであって、
入力されたデータに対する１以上の処理単位を定義情報に定義された順に実行する処理制御部と、
前記１以上の処理単位のうちのいずれかの出力情報に基づいて、前記定義情報において同一の処理単位の次に実行される候補として定義された複数の処理単位の中から前記処理制御部に実行させる処理単位を、前記出力情報に関して予め設定された条件の評価結果に基づいて選択する選択部と、
を有し、
前記選択部は、前記候補としての処理単位ごとに設定された前記条件のうち、満たされた条件に係る処理単位を選択し、
前記処理制御部は、前記満たされた条件に対応付けられている情報によって、前記選択部によって選択された処理単位に対して前記定義情報において定義されている入力情報を変更する、
を有することを特徴とする情報処理システム。
【請求項３】
１以上の情報処理装置を含む情報処理システムが、
入力されたデータに対する１以上の処理単位を定義情報に定義された順に実行する処理制御手順と、
前記１以上の処理単位のうちのいずれかの出力情報に基づいて、前記定義情報において同一の処理単位の次に実行される候補として定義された複数の処理単位の中から前記処理制御手順において実行する処理単位を、前記出力情報に関して予め設定された条件の評価結果に基づいて選択する選択手順と、
を実行し、
前記選択手順は、前記候補としての処理単位ごとに設定された前記条件のうち、満たされた条件に係る処理単位を選択し、
前記処理制御手順は、前記満たされた条件に対応付けられている情報によって、前記選択手順において選択された処理単位に対して前記定義情報において定義されている入力情報を変更する、
ことを特徴とする情報処理方法。
【請求項４】
コンピュータに、
入力されたデータに対する１以上の処理単位を定義情報に定義された順に実行する処理制御手順と、
前記１以上の処理単位のうちのいずれかの出力情報に基づいて、前記定義情報において同一の処理単位の次に実行される候補として定義された複数の処理単位の中から前記処理制御手順において実行する処理単位を、前記出力情報に関して予め設定された条件の評価結果に基づいて選択する選択手順と、
を実行させ、
前記選択手順は、前記候補としての処理単位ごとに設定された前記条件のうち、満たされた条件に係る処理単位を選択し、
前記処理制御手順は、前記満たされた条件に対応付けられている情報によって、前記選択手順において選択された処理単位に対して前記定義情報において定義されている入力情報を変更する、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
画像形成装置において文書からスキャンされた画像データに関して、予め定義されたワークフローを実行可能なシステムが有る。斯かるシステムでは、ユーザの業務フローに則した形態でデータが流れるように、ワークフローが定義される。
【０００３】
一つのワークフローは、例えば、データの入力、当該データに対する加工処理の実行、加工処理によって生成されたデータの出力処理等の処理単位を接続することにより構成される。また、処理単位間の接続関係について分岐を定義することもできる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記のようなワークフローに関して、前段の処理単位における処理結果に応じて、分岐先を変えることができれば、ワークフローの柔軟性を向上させることができる。
【０００５】
本発明は、上記の点に鑑みてなされたものであって、処理単位の組み合わせによって構成される処理フローの柔軟性を向上させることを目的とする。
【課題を解決するための手段】
【０００６】
そこで上記課題を解決するため、情報処理装置は、入力されたデータに対する１以上の処理単位を定義情報に定義された順に実行する処理制御部と、前記１以上の処理単位のうちのいずれかの出力情報に基づいて、前記定義情報において同一の処理単位の次に実行される候補として定義された複数の処理単位の中から前記処理制御部に実行させる処理単位を選択する選択部と、を有する。
【発明の効果】
【０００７】
処理単位の組み合わせによって構成される処理フローの柔軟性を向上させることができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施の形態における情報処理システムの構成例を示す図である。
【図２】本発明の実施の形態におけるフロー管理サーバのハードウェア構成例を示す図である。
【図３】本発明の実施の形態におけるフロー管理サーバの機能構成例を示す図である。
【図４】ジョブ投入部の構成例を示す図である。
【図５】ジョブ投入部が実行する処理手順の一例を説明するためのフローチャートである。
【図６】本実施の形態におけるワークフローの具体例を示す図である。
【図７】本実施の形態におけるフロー定義データの一例を示す図である。
【図８】本実施の形態における初期状態のジョブ定義データの一例を示す図である。
【図９】フロー実行制御部が実行する処理手順の一例を説明するためのフローチャートである。
【図１０】ルール処理の処理手順の一例を説明するためのフローチャートである。
【図１１】ルール定義テーブルの構成例を示す図である。
【図１２】条件定義テーブルの構成例を示す図である。
【図１３】条件式テーブルの構成例を示す図である。
【図１４】アクションの実行処理の処理手順の一例を説明するためのフローチャートである。
【図１５】アクションリストテーブルの構成例を示す図である。
【図１６】アクション定義テーブルの構成例を示す図である。
【図１７】ルール設定画面の表示例を示す図である。
【図１８】ルール編集画面の表示例を示す図である。
【図１９】条件式設定画面の表示例を示す図である。
【図２０】条件式設定画面に対する操作に応じて実行される処理手順の一例を説明するためのシーケンス図である。
【図２１】パラメータ構成情報の一例を示す図である。
【図２２】アクション定義設定画面の表示例を示す図である。
【図２３】アクション定義設定画面に対する操作に応じて実行される処理手順の一例を説明するためのシーケンス図である。
【発明を実施するための形態】
【０００９】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、本発明の実施の形態における情報処理システムの構成例を示す図である。図１において、情報処理システム１は、フロー管理サーバ１０、１以上のクライアント端末２０、１以上の画像形成装置３０、文書管理サーバ５０、メールサーバ６０、及びファイルサーバ７０等を含む。各装置は、ＬＡＮ（Local Area Network）又はインターネット等のネットワーク（有線又は無線の別は問わない。）を介して通信可能に接続されている。
【００１０】
フロー管理サーバ１０は、ネットワークを介して受信されるデータに関して、予め定義されたワークフローを実行するコンピュータである。ワークフローとは、例えば、それぞれが独立して又は単独で完結した機能を実現する一以上の処理単位（タスク）の任意な組み合わせによって実現される処理の流れ（処理フロー）をいう。なお、上記処理単位は、一般的なワークフローの用語における、アクティビティに当てはめられてもよい。
【００１１】
クライアント端末２０は、ワークフローの処理の流れ等に関する定義情報（以下、「フロー定義」という。）の作成等に利用される端末である。例えば、ユーザは、クライアント端末２０に表示される画面を介して、フロー定義を作成することができる。クライアント端末２０は、また、フロー管理サーバ１０に対するデータ入力元や、フロー管理サーバ１０によって実行されるワークフローの実行結果の出力先（配信先）であってもよい。クライアント端末２０は、例えば、ＰＣ（Personal Computer）、スマートフォン、タブレット型端末、又は画像形成装置３０等であってもよい。また、クライアント端末２０は、フロー管理サーバ１０と同一の装置であってもよい。
【００１２】
画像形成装置３０は、ワークフローの処理対象とされるデータの入力元又は出力先となる装置の一例である。例えば、画像形成装置３０は、原稿からスキャンされた画像データを、ワークフローに対する入力データとして、フロー管理サーバ１０に送信する。また、画像形成装置３０は、ワークフローの実行結果として配信されたデータを印刷してもよい。
【００１３】
文書管理サーバ５０は、データを、その属性情報に関連付けて管理するデータベースを有するコンピュータである。文書管理サーバ５０は、フロー管理サーバ１０によって実行されるワークフローの実行結果の出力先の一例である。文書管理サーバ５０が出力先である場合、出力されたデータは、文書管理サーバ５０のデータベースに記憶される。
【００１４】
メールサーバ６０は、一般的なメールサーバと同様の機能を有する。本実施の形態において、メールサーバ６０は、フロー管理サーバ１０によって実行されるワークフローの実行結果の出力先の一例である。メールサーバ６０が出力先である場合、出力されたデータは、電子メールに添付されて、実行されたワークフローに設定されているメールアドレス宛に転送される。メールサーバ６０は、また、ワークフローの処理対象とされるデータの入力元であってもよい。例えば、所定のメールアドレス宛の電子メールに添付されているデータが、ワークフローの処理対象とされてもよい。
【００１５】
ファイルサーバ７０は、ネットワーク上で共有されるファイルを蓄積して管理するコンピュータである。本実施の形態において、フロー管理サーバ１０によって実行されるワークフローの実行結果の出力先の一例である。例えば、ファイルサーバ７０に出力されたデータは、ファイルサーバ７０のフォルダ内に記憶される。ファイルサーバ７０は、また、ワークフローの処理対象とされるデータの入力元であってもよい。例えば、ファイルサーバ７０の所定のフォルダに格納されたファイルが、フロー管理サーバ１０に送信されてもよい。
【００１６】
図２は、本発明の実施の形態におけるフロー管理サーバのハードウェア構成例を示す図である。図２のフロー管理サーバ１０は、それぞれバスＢで相互に接続されているドライブ装置１００、補助記憶装置１０２、メモリ装置１０３、ＣＰＵ１０４、及びインタフェース装置１０５等を有する。
【００１７】
フロー管理サーバ１０での処理を実現するプログラムは、ＣＤ−ＲＯＭ等の記録媒体１０１によって提供される。プログラムを記憶した記録媒体１０１がドライブ装置１００にセットされると、プログラムが記録媒体１０１からドライブ装置１００を介して補助記憶装置１０２にインストールされる。但し、プログラムのインストールは必ずしも記録媒体１０１より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置１０２は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【００１８】
メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムを読み出して格納する。ＣＰＵ１０４は、メモリ装置１０３に格納されたプログラムに従ってフロー管理サーバ１０に係る機能を実行する。インタフェース装置１０５は、ネットワークに接続するためのインタフェースとして用いられる。
【００１９】
なお、フロー管理サーバ１０は、複数のコンピュータを含むコンピュータシステムであってもよい。
【００２０】
図３は、本発明の実施の形態におけるフロー管理サーバの機能構成例を示す図である。図３において、フロー管理サーバ１０は、ジョブ投入部１１、フロー実行制御部１２、及び処理部１３等を有する。これら各部は、フロー管理サーバ１０にインストールされた１以上のプログラムがＣＰＵ１０４に実行させる処理により実現される。フロー管理サーバ１０は、また、ジョブキュー１４、フロー定義記憶部１５、及びルール定義記憶部１６等の記憶部を利用する。これら各記憶部は、補助記憶装置１０２、又はフロー管理サーバ１０にネットワークを介して接続される記憶装置等を用いて実現可能である。
【００２１】
フロー定義記憶部１５は、フロー定義データを記憶する。フロー定義データとは、フロー定義が記録されたデータをいう。本実施の形態において、一つのフロー定義データは、一つのワークフローに対応する。したがって、フロー定義データは、相互に処理手順の異なるワークフローごとに作成される。
【００２２】
ジョブ投入部１１は、ワークフローの実行要求及び当該ワークフローに対する入力データ等を受信し、当該ワークフローに係るジョブ情報をジョブキュー１４に投入する。本実施の形態において、ジョブとは、ワークフローの実行単位をいう。例えば、同一のワークフローが複数回実行された場合、各実行時のジョブは異なる。以下、ワークフローのジョブを、「フロージョブ」という。
【００２３】
ジョブキュー１４は、投入されたジョブ情報を、例えば、ＦＩＦＯ（First-In First-Out）形式で記憶する。ジョブ情報は、例えば、実行対象のフロージョブに係るフロー定義データの複製に基づいて生成されるジョブ定義データ、画像形成装置３０から送信される画像データ等の処理対象のデータ、及び当該フロージョブのメタ情報等を含む情報である。メタ情報とは、フロージョブ全体、又はフロージョブに係るワークフローを構成する各処理単位に関する属性情報をいう。メタ情報には、例えば、フロージョブの実行を指示したユーザのユーザ名、処理対象のデータのデータサイズ、フロージョブの実行日時等が含まれる。なお、一つのフロージョブに対するジョブ情報は、例えば、一つのフォルダに格納されて管理されてもよい。
【００２４】
フロー実行制御部１２は、ジョブキュー１４への記憶順に従ってジョブ情報をジョブキュー１４から取り出し、取り出されたジョブ情報に基づいて、フロージョブの実行を制御する。例えば、フロー実行制御部１２は、取り出されたジョブ情報に含まれているフロー定義データに定義された順番に、各処理単位に対応する処理部１３を呼び出す。
【００２５】
各処理部１３は、ワークフローを構成する各処理単位（アクティビティ）を実行する。例えば、一つの処理単位は、一つの処理部１３によって実行される。したがって、ワークフローは、相互に処理内容の異なる１以上の処理部１３が実行する処理単位の接続によって実現される。但し、一つのワークフロー内において、同じ処理単位が２回以上出現してもよい。
【００２６】
本実施の形態において、フロー管理サーバ１０が実行するワークフローを構成する１以上の処理単位は、入力処理、中間処理、出力処理、及びルール処理に大別される。入力処理は、例えば、画像形成装置３０等の外部装置から、ワークフローに対する入力データを入力する処理である。
【００２７】
中間処理は、例えば、フロージョブの処理対象とされたデータに対する加工処理である。中間処理の一例として、画像補正処理、ＯＣＲ（Optical Character Recognition）処理、バーコード認識処理、画像変換処理、及び翻訳処理等が挙げられる。
【００２８】
出力処理は、フロージョブによって生成されるデータをユーザが利用可能な形態で出力する処理である。ユーザが利用可能な形態には、用紙への印刷等、ユーザが直接的に利用な形態のみならず、電子的な保存等、ユーザが、アプリケーションプログラム等を介して利用可能な形態も含まれる。出力処理の一例として、所定のコンピュータのフォルダへの配信処理が挙げられる。また、所定のメールアドレスが配信先とされてもよい。また、画像データの入力元の画像形成装置３０、又は当該画像形成装置３０とは別の画像形成装置３０が配信先とされてもよい。この場合、配信先の画像形成装置３０によって、配信されたデータの印刷が実行されてもよい。
【００２９】
ルール処理は、例えば、ワークフローが分岐を有する場合に、当該分岐における分岐先の選択等を実行する処理である。本実施の形態において、分岐先の選択基準等が定義された情報を、「ルール定義」という。ルール定義記憶部１６は、分岐先ごとにルール定義を記憶する。一つのルール定義は、「条件定義」と「アクション定義」とを含む。条件定義とは、当該ルール定義が選択又は採用（以下、「選択」で統一する。）されるために満たされるべき条件を示す定義である。アクション定義とは、当該ルール定義が選択された場合に、実行すべき処理単等を示す情報である。なお、ワークフローの分岐は、複数の処理単位が同一の処理単位の次に実行される候補としてフロー定義データに定義されることにより実現される。
【００３０】
図３では、処理部１３の一例として、ＯＣＲ処理部１３ａ、アーカイブ処理部１３ｂ、ルール処理部１３ｃ、メール配信処理部１３ｄ、及びフォルダ配信処理部１３ｅ等が示されている。ＯＣＲ処理部１３ａは、処理対象のデータに対してＯＣＲ処理を実行する。アーカイブ処理部１３ｂは、処理対象のデータに関してアーカイブ処理を実行する。アーカイブ処理とは、データを圧縮して書庫化する処理をいう。ルール処理部１３ｃは、ルール処理を実行する。メール配信処理部１３ｄは、処理対象のデータに関してメール配信処理を実行する。メール配信処理とは、処理対象のデータが添付された電子メールを所定の宛先に送信する処理をいう。フォルダ配信処理部１３ｅは、処理対象のデータに関してフォルダ配信処理を実行する。フォルダ配信処理とは、処理対象のデータを所定のフォルダ宛に送信する処理をいう。
【００３１】
なお、各処理部１３は、それぞれ独立したプログラムモジュールが、ＣＰＵ１０４に実行させる処理により実現されてもよい。以下、フロー管理サーバ１０（ＣＰＵ１０４）を、一つの処理部１３として機能させるプログラムモジュールを、以下、「プラグイン」という。
【００３２】
ところで、入力処理、中間処理、停止処理、及び出力処理のうち、各処理部１３が実行するのは、中間処理、停止処理、又は出力処理である。入力処理は、ジョブ投入部１１によって実行される。入力処理において、データの入力元となる外部装置は、様々である。また、外部装置ごとに、データの入力方法（フロー管理サーバ１０から見た場合のデータの取得方法又は受信方法）は異なりうる。このような状況に柔軟に対応可能とするため、ジョブ投入部１１は、例えば、図４に示されるような構成を有してもよい。
【００３３】
図４は、ジョブ投入部の構成例を示す図である。ジョブ投入部１１において、データの入力元とのやりとりは、処理部１３と同様に、プラグイン可能なプログラムモジュール（プラグイン）によって実現される。図４では、スキャン入力プラグイン１１１、メール入力プラグイン１１２、及びフォルダ入力プラグイン１１３が例示されている。
【００３４】
スキャン入力プラグイン１１１は、画像形成装置３０から入力データを受信するプラグインである。すなわち、スキャン入力プラグイン１１１は、画像形成装置３０においてスキャンされた画像データを、入力データとして画像形成装置３０から受信する。画像形成装置３０からは、画像データと共に、フローＩＤ、及びスキャン処理の設定情報や画像データに関する属性情報等が受信される。スキャン入力プラグイン１１１は、受信されたフローＩＤ及び画像データ等に基づいて、フロー実行制御部１２が予定している形式に従ったジョブ情報を生成し、当該ジョブ情報をジョブキュー１４に記憶する。なお、フローＩＤとは、ワークフローの定義ごと（すなわち、フロー定義データごと）の識別情報である。また、スキャン処理の設定情報や画像データに関する属性情報等は、フロージョブのメタ情報を構成する。
【００３５】
メール入力プラグイン１１２は、所定のメールアドレス宛の電子メールによってワークフローの実行要求を受け付けるプラグインである。この場合、当該電子メールに添付されたデータが、ワークフローの処理対象とされる。当該データは、画像データであってもよいし、他の形式のデータであってもよい。メール入力プラグイン１１２は、所定のメールアドレス宛の電子メールを、メールサーバ６０から取得する。メール入力プラグイン１１２は、取得された電子メールに添付されているデータと、当該電子メールに記述されているフローＩＤ等に基づいて、フロー実行制御部１２が予定している形式に従ったジョブ情報を生成し、当該ジョブ情報をジョブキュー１４に記憶する。なお、電子メールの送信元アドレスや電子メールの受信日時等は、フロージョブのメタ情報を構成する。
【００３６】
フォルダ入力プラグイン１１３は、所定のフォルダに対するファイルのアップロードによって、ワークフローの実行要求を受け付けるプラグインである。所定のフォルダは、フロー管理サーバ１０の補助記憶装置１０２に形成されたフォルダでもよいし、フロー管理サーバ１０にネットワークを介して接続される記憶装置（例えば、ファイルサーバ７０の記憶装置）に形成されたフォルダでもよい。フォルダ入力プラグイン１１３は、例えば、所定のフォルダをポーリング（周期的に参照）し、当該フォルダに、処理対象のデータを格納したファイル（以下、「データファイル」という。）、及びフローＩＤや設定値等を格納したファイル（以下、「書誌ファイル」という。）が保存されていれば、当該データファイル及び書誌ファイルを取得する。フォルダ入力プラグイン１１３は、取得されたデータファイルと、取得された書誌ファイルに格納されている情報とに基づいて、フロー実行制御部１２が予定している形式に従ったジョブ情報を生成し、当該ジョブ情報をジョブキュー１４に記憶する。なお、書誌ファイルに格納された情報は、フロージョブのメタ情報を構成する。
【００３７】
なお、上記以外の方法で、入力データを入力するプラグインが追加されてもよい。例えば、Ｗｅｂページを介して入力データを受け付けるプラグインが追加されてもよい。
【００３８】
このように、本実施の形態では、入力処理、中間処理、停止処理、及び出力処理のそれぞれが、プラグインによって実現される。したがって、所望の処理を実行するプラグインを作成し、追加することによって、定義可能なワークフローのバリエーションを増加させることができる。
【００３９】
以下、フロー管理サーバ１０等が実行する処理手順について説明する。図５は、ジョブ投入部が実行する処理手順の一例を説明するためのフローチャートである。なお、図５は、厳密には、ジョブ投入部１１に対するいずれかのプラグインが、フロー管理サーバ１０に実行させる処理である。
【００４０】
ジョブ投入部１１は、ワークフローに対する入力データ、実行対象のワークフローのフローＩＤ、及びメタ情報を構成する情報等を受信すると（Ｓ１１でＹｅｓ）、当該フローＩＤに対応するフロー定義データを、フロー定義記憶部１５から取得する（Ｓ１２）。入力データは、入力データ等の送信元が画像形成装置３０であれば、スキャンされた画像データである。
【００４１】
例えば、本実施の形態では、図６に示されるワークフローが実行対象であるとする。図６は、本実施の形態におけるワークフローの具体例を示す図である。
【００４２】
図６に示されるように、本実施の形態では、画像形成装置３０から受信された画像データに関して、まず、ＯＣＲ処理が実行される。ＯＣＲ処理によって、画像データから抽出されたテキストデータが出力される。続いて、アーカイブ処理が実行される。アーカイブ処理により、当該画像データが圧縮されて書庫化される。続いて、ルール処理が実行される。ルール処理によって、ワークフローの分岐が実現される。すなわち、ルール処理によって、「ルール１」が選択された場合、メール配信処理が実行される。メール配信処理では、ＯＣＲ処理によって出力されたテキストデータが件名に設定され、アーカイブ処理によって出力された書庫ファイルが添付された電子メールが、予め設定されたメールアドレス宛に送信される。一方、ルール処理において「ルール２」が選択された場合、フォルダ配信処理が実行される。フォルダ配信処理では、アーカイブ処理によって出力された書庫ファイルが所定のフォルダ宛に送信される。また、ルール処理においてルール１及びルール２のいずれも選択されない場合、デフォルトのフォルダ配信処理が実行される。ルール２が選択された場合のフォルダ配信処理と、デフォルトの配信処理とでは、書庫ファイルの送信先のフォルダが異なっていてもよい。なお、「ルール１」及び「ルール２」は、それぞれルール定義を示す。
【００４３】
図６に示されるワークフローのフロー定義データは、例えば、図７に示されるように記述される。図７は、本実施の形態におけるフロー定義データの一例を示す図である。本実施の形態において、フロー定義データは、ＸＭＬ（eXtensible Markup Language）形式によって定義される。但し、ＣＳＶ（Comma Separated Values）形式等、他の形式に従って、フロー定義データが記述されてもよい。
【００４４】
図７において、フロー定義データ５００は、＜ｆｌｏｗ＞タグで囲まれるｆｌｏｗ要素をルート要素とする。ｆｌｏｗ要素は、ｉｄ要素５１０と、１以上のｐｌｕｇ−ｉｎ要素を子要素として含む。ｉｄ要素５１０の値（「Ｆｌｏｗ１」）は、フローＩＤである。
【００４５】
ｐｌｕｇ−ｉｎ要素は、処理単位ごとの定義である。フロー定義データ５００は、１番目のＯＣＲ処理に対応するｐｌｕｇ−ｉｎ要素５２０、２番目のアーカイブ処理に対応するｐｌｕｇ−ｉｎ要素５３０、３番目のルール処理に対応するｐｌｕｇ−ｉｎ要素５５０、４番目のメール配信処理に対応するｐｌｕｇ−ｉｎ要素５５０、及び４番目のフォルダ配信処理に対応するｐｌｕｇ−ｉｎ要素５６０等を含む。４番目に対応するｐｌｕｇ−ｉｎ要素が２つ有るのは、４番目に実行される処理単位の候補が、分岐によって２種類存在するからである。すなわち、図６において、ルール１が選択された場合、メール配信処理が実行され、ルール２が選択された場合又はいずれのルールも選択されない場合、フォルダ配信処理が実行される。
【００４６】
各ｐｌｕｇ−ｉｎ要素は、ｏｒｄｅｒ属性を含む。ｏｒｄｅｒ属性の値は、当該ｐｌｕｇ−ｉｎ要素に係る処理単位の実行順を示す。また、各ｐｌｕｇ−ｉｎ要素は、ｉｄ要素及びｐａｒａｍｅｔｅｒｓ要素等を子要素として含む。
【００４７】
ｉｄ要素の値は、当該処理単位を実行する処理部１３としてフロー管理サーバ１０を機能させるプログラム（プラグイン）の識別情報である。フロー実行制御部１２は、ｉｄ要素の値に基づいて、当該プログラムを呼び出すことができる。ｐａｒａｍｅｔｅｒｓ要素は、当該処理単位に対する入力パラメータ（入力情報）が指定されたり、当該処理単位による出力パラメータ（出力情報）が記録されたりする部分である。入力パラメータや出力パラメータは、処理単位ごとに異なる。したがって、ｐａｒｅｍｅｔｅｒｓ要素の値の構造は、処理単位に応じて異なる。
【００４８】
例えば、ＯＣＲ処理に対応するｐｌｕｇ−ｉｎ要素５２０内のｐａｒａｍｅｔｅｒｓ要素は、ｔｉｔｌｅ要素５２１等を含む。ｔｉｔｌｅ要素５２１は、ＯＣＲ処理の結果を格納するための要素である。図７において、ｔｉｔｌｅ要素５２１の値は、空である。フロー定義データ５００の作成時において、ＯＣＲ処理の結果は確定していないからである。すなわち、ｔｉｔｌｅ要素５２１には、フロー定義データ５００に基づいて生成されるジョブ定義データに基づいてＯＣＲ処理が実行された後に、当該ＯＣＲ処理によって抽出された文字列が記録される。ｔｉｔｌｅ要素５２１の要素名（「ｔｉｔｌｅ」）は、ＯＣＲ対象の画像データが示す画像における、ＯＣＲの対象範囲を示す。具体的には、「ｔｉｔｌｅ」は、文書を示す画像内において、当該文書のタイトルに対応する範囲が、ＯＣＲの対象範囲であることを示す。なお、当該文書のタイトルに対応する範囲の座標情報については、ｐａｒａｍｅｔｅｒｓ要素内に設定されてもよいし、別途設定されてもよい。また、ｐｌｕｇ−ｉｎ要素５２０内のｐａｒａｍｅｔｅｒｓ要素には、ＯＣＲの精度等、ＯＣＲ処理に関する各種の入力パラメータに対応する要素が含まれてもよい。
【００４９】
アーカイブ処理に対応するｐｌｕｇ−ｉｎ要素５３０内のｐａｒａｍｅｔｅｒｓ要素は、ｆｉｌｅＴｙｐｅ要素５３１等を含む。ｆｉｌｅＴｙｐｅ要素５３１の値は、書庫ファイルの形式を示す。図７では、ｚｉｐ形式が指定された例が示されている。
【００５０】
ルール処理に対応するｐｌｕｇ−ｉｎ要素５４０内のｐａｒａｍｅｔｅｒｓ要素は、１以上のｒｕｌｅＩｄ要素、及びｄｅｆａｕｌｔ要素５４３等を含む。図７では、ｒｕｌｅＩｄ要素５４１及びｒｕｌｅＩｄ要素５４２の二つのｒｕｌｅＩｄ要素が指定された例が示されている。各ｒｕｌｅＩｄ要素の値は、当該ルール処理において選択候補となるルール定義に対するルールＩＤを示す。ルールＩＤとは、ルール定義ごとの識別情報である。すなわち、各ルール定義は、ルールＩＤに対応付けられてルール定義記憶部１６に記憶されている。本実施の形態では、同一のルール定義を複数のフロー定義において容易に利用可能とするために、フロー定義データ内では、ルールＩＤが指定される例が示されているが、フロー定義データ内においてルール定義の内容が記述されてもよい。ｄｅｆａｕｌｔ要素５４３の値は、ｒｕｌｅＩｄ要素５４１に対応するルール定義及びｒｕｌｅＩｄ要素５４２に対応するルール定義のいずれもが、ルール処理において選択されなかった場合に選択されるべき処理単位（以下、「デフォルトの処理単位」という。）を示す情報である。本実施の形態では、デフォルト処理単位に対応するｐｌｕｇ−ｉｎ要素内のｉｄ要素の値が当該情報として用いられている。すなわち、ｉｄ要素の値がｄｅｆａｕｌｔ要素５４３の値に一致し、実行順がｐｌｕｇ−ｉｎ５４０の次であるｐｌｕｇ−ｉｎ要素５６０に対応する処理単位が、デフォルトの処理単位である。
【００５１】
メール配信処理に対応するｐｌｕｇ−ｉｎ要素５５０内のｐａｒａｍｅｔｅｒｓ要素は、ｓｅｒｖｅｒＩｐ要素５５１、ｐｏｒｔＮｕｍｂｅｒ要素５５２、ｔｏ１要素５５３、ｃｃ１要素５５４、ｃｃ２要素５５５、及びｓｕｂｊｅｃｔ要素５５６等を含む。ｓｅｒｖｅｒＩｐ要素５５１の値は、メール送信の要求先のメールサーバ６０のＩＰアドレスである。ｐｏｒｔＮｕｍｂｅｒ５４２の値は、メール送信の要求先のＳＭＴＰサーバのポート番号である。ｔｏ１要素５５３の値は、送信対象の電子メールの１番目の宛先アドレスである。ｃｃ１要素５５４の値は、送信対象の電子メールの１番目のＣｃアドレスである。ｃｃ２要素５５５の値は、送信対象の電子メールの２番目のＣｃアドレスである。ｓｕｂｊｅｃｔ要素５５６の値は、送信対象の電子メールの件名である。ここで、ｓｕｂｊｅｃｔ要素５５６の値は、中括弧で囲まれている。これは、当該値には、当該中括弧内に指定された識別情報に係る値が採用されることを示す。「ｏｃｒ／ｔｉｔｌｅ」は、値が「ｏｃｒ」であるｉｄ要素を含むｐｌｕｇ−ｉｎ要素５２０におけるｔｉｔｌｅ要素の値を示す。すなわち、「ｏｃｒ／ｔｉｔｌｅ」は、ＯＣＲ処理によって抽出された文字列を示す。したがって、ｓｕｂｊｅｃｔ要素５５６では、ＯＣＲ処理によって抽出された文字列が、電子メールの件名として採用されることが定義されている。
【００５２】
フォルダ配信処理に対応するｐｌｕｇ−ｉｎ要素５６０内のｐａｒａｍｅｔｅｒｓ要素は、ｓｅｒｖｅｒＩｐ要素５６１及びｆｏｌｄｅｒＰａｔｈ要素５６２等を含む。ｓｅｒｖｅｒＩｐ要素５６１の値は、データの送信先のフォルダを有するファイルサーバ７０のＩＰアドレスである。ｆｏｌｄｅｒＰａｔｈ要素５６２の値は、データの送信先のフォルダのパス名である。
【００５３】
ステップＳ１２では、ｉｄ要素５１０の値が受信されたフローＩＤに一致するフロー定義データが取得される。
【００５４】
続いて、ジョブ投入部１１は、取得されたフロー定義データの複製に基づいて、ジョブ定義データを生成する（Ｓ１３）。
【００５５】
図８は、本実施の形態における初期状態のジョブ定義データの一例を示す図である。図８中、図７と同一部分には同一符号を付し、その説明は省略する。
【００５６】
図８において、ジョブ定義データ６００ａは、ｊｏｂＩｎｆｏ要素をルート要素として含む。換言すれば、初期状態のジョブ定義データ６００ａは、フロー定義データ５００の複製に対して、ｆｌｏｗ要素の親要素としてｊｏｂＩｎｆｏ要素が追加されたものである。ｊｏｂＩｎｆｏ要素は、ｆｌｏｗ要素以外の子要素として、ｉｄ要素６１０を含む。ｉｄ要素６１０の値は、ジョブＩＤを示す。ジョブＩＤは、例えば、ジョブ投入部１１によって割り当てられる。
【００５７】
続いて、ジョブ投入部１１は、入力データ、ジョブ定義データ６００ａ、及びメタ情報等を含むジョブ情報を、ジョブキュー１４に記憶する（Ｓ１４）。例えば、ジョブキュー１４として使用される所定のフォルダの下に、当該フロージョブに対応するフォルダが生成され、当該フォルダ内に、入力データ、ジョブ定義データ、及びメタ情報のそれぞれを格納するファイルが保存されてもよい。
【００５８】
続いて、ジョブキュー１４に対するジョブ情報の記憶に応じて実行される処理手順について説明する。図９は、フロー実行制御部が実行する処理手順の一例を説明するためのフローチャートである。
【００５９】
フロー実行制御部１２は、例えば、周期的にジョブキュー１４を参照している（Ｓ１０１）。ジョブキュー１４に、１以上のジョブ情報が記憶されている場合（Ｓ１０１でＹｅｓ）、フロー実行制御部１２は、当該ジョブ情報のうち、例えば、最も古いジョブ情報をジョブキュー１４から取り出す（Ｓ１０２）。取り出されたジョブ情報は、ジョブキュー１４から削除される。
【００６０】
続いて、フロー実行制御部１２は、変数ｉに１を代入する（Ｓ１０３）。変数ｉは、取り出されたジョブ情報に含まれているジョブ定義データ６００ａ等に基づくフロージョブ（以下、「対象フロージョブ」という。）の中で、実行対象の処理単位の実行順を格納するための変数である。以下、ｉ番目に実行される処理単位を、「処理単位ｉ」という。
【００６１】
続いて、フロー実行制御部１２は、処理単位ｉに対応する処理部１３に、処理単位ｉを実行させる（Ｓ１０４）。例えば、フロー実行制御部１２は、当該処理部１３に対して処理単位ｉの実行を要求する。当該要求には、例えば、対象フロージョブの識別情報（以下、「ジョブＩＤ」という。）等が含まれる。当該処理部１３は、当該ジョブＩＤに対応するジョブ情報に基づいて、処理単位ｉを実行する。より詳しくは、当該ジョブ情報に含まれているジョブ定義データ６００ａ内において、処理単位ｉに対応するｐｌｕｇ−ｉｎ要素内のｐａｒａｍｅｔｅｒｓ要素に含まれているパラメータ等に基づいて、処理単位ｉが実行される。また、処理単位ｉの出力情報がジョブ定義データ６００ａに対して記録されうる。例えば、処理単位ｉがＯＣＲ処理の場合、ＯＣＲ処理によって画像データから抽出されるテキストデータが、ｔｉｔｌｅ要素５２１（図８）に書き込まれる。当該処理部１３は、処理単位ｉの実行が完了すると、処理単位ｉの実行結果を含む応答を、フロー実行制御部１２に返却する。処理単位のステータスは、例えば、「完了」又は「エラー」である。「完了」は、処理単位が正常に完了したことを示す。「エラー」は、処理単位が異常終了したことを示す。また、処理単位ｉに対応する処理部１３が、ルール処理部１３ｃである場合（すなわち、処理単位ｉがルール処理である場合）、ステータスが「完了」を示す応答には、ルール処理において選択されたルール定義に含まれるアクション定義を識別するアクションリストＩＤが含まれる。但し、いずれのルール定義もが選択されなかった場合、アクションリストＩＤの代わりに、該当するルールが無いことを示す値（以下、「ｄｅｆａｕｌｔ」という。）が、当該応答に含まれる。ルール処理の詳細については後述される。なお、ステータスが「エラー」を含む場合の処理については、図９では省略されている。この場合、例えば、対象フロージョブの実行が中止される。
【００６２】
続いて、フロー実行制御部１２は、返却された応答にアクションリストＩＤが含まれているか否かを判定する（Ｓ１０５）。当該応答にアクションリストＩＤが含まれていない場合（Ｓ１０５でＮｏ）、フロー実行制御部１２は、当該応答に「ｄｅｆａｕｌｔ」が含まれているか否かを判定する（Ｓ１０６）。当該応答に「ｄｅｆａｕｌｔ」が含まれていない場合（Ｓ１０６でＮｏ）、フロー実行制御部１２は、処理単位ｉが、ジョブ定義データ６００ａにおいて末尾の処理単位であるか否かを判定する（Ｓ１１１）。末尾の処理単位とは、実行順が最後の処理単位をいう。また、分岐が発生している場合、末尾の処理単位とは、分岐先の経路において実行順が最後の処理単位をいう。処理単位ｉが末尾の処理単位でない場合（Ｓ１１１でＮｏ）、フロー実行制御部１２は、変数ｉに１を加算して（Ｓ１１２）、ステップＳ１０４以降を繰り返す。すなわち、返却されたステータスが「完了」であり、処理単位ｉがルール処理以外である場合、処理単位ｉが末尾の処理単位でなければ、次の処理単位が実行される。
【００６３】
一方、処理単位ｉから返却された応答にアクションリストＩＤが含まれている場合（Ｓ１０５でＹｅｓ）、フロー実行制御部１２は、複数の処理単位ｉの中で、アクションリストＩＤに基づいて特定されるアクションを実行する（Ｓ１０７）。ステップＳ１０７の詳細については後述される。続いて、フロー実行制御部１２は、変数ｉにＮ０を加算する（Ｓ１０８）。Ｎ０は、ステップＳ１０７において実行された処理単位の個数である。
【００６４】
また、処理単位ｉから返却された応答に、アクションリストＩＤは含まれていないが（Ｓ１０５でＮｏ）、「ｄｅｆａｕｌｔ」が含まれている場合（Ｓ１０６でＹｅｓ）、フロー実行制御部１２は、実行順が処理単位ｉの次である複数の処理単位の中で、デフォルトの処理単位を実行する（Ｓ１０９）。デフォルトの処理単位は、処理単位ｉからの応答に含まれている、ｐｌｕｇ−ｉｎ要素内のｉｄ要素の値に基づいて特定される。すなわち、当該応答には、ジョブ定義データ６００ａ（図８）におけるｐｌｕｇ−ｉｎ要素５４０内のｄｅｆａｕｌｔ要素５４３の値（「ｆｏｌｄｅｒ」）が含まれている。フロー実行制御部１２は、当該値に一致する値を有するｉｄ要素を含むｐｌｕｇ−ｉｎ要素５６０を、デフォルトの処理単位に対応するｐｌｕｇ−ｉｎ要素として特定する。したがって、ｐｌｕｇ−ｉｎ要素５６０に対応するフォルダ配信処理が実行される。続いて、フロー実行制御部１２は、変数ｉに１を加算する（Ｓ１１０）。続いて、ステップＳ１１１以降が実行される。
【００６５】
続いて、ルール処理の詳細について説明する。図１０は、ルール処理の処理手順の一例を説明するためのフローチャートである。図１０の処理は、図９のステップＳ１０４において、処理単位ｉがルール処理である場合に、ルール処理部１３ｃが実行する。
【００６６】
ステップＳ２０１において、ルール処理部１３ｃは、変数ｊに１を代入する。変数ｊは、ルール処理に対応するｐｌｕｇ−ｉｎ要素５４０内のｒｕｌｅＩｄ要素（図８）のうち、処理対象とするｒｕｌｅＩｄ要素の順番を格納する変数である。例えば、図８において、ｒｕｌｅＩｄ要素５４１は、１番目のｒｕｌｅＩｄ要素であり、ｒｕｌｅＩｄ要素５４２は、２番目のｒｕｌｅＩｄ要素である。
【００６７】
続いて、ルール処理部１３ｃは、ｐｌｕｇ−ｉｎ要素５４０内においてｊ番目のｒｕｌｅＩｄ要素に対応するルール定義を、ルール定義記憶部１６に記憶されているルール定義テーブルＴ１に基づいて特定する（Ｓ２０２）。
【００６８】
図１１は、ルール定義テーブルの構成例を示す図である。図１１において、ルール定義テーブルＴ１は、ルールＩＤに対応付けて、ルール名、条件定義ＩＤ、及びアクションリストＩＤ等を記憶する。
【００６９】
ルールＩＤは、ルール定義ごとの識別情報である。ルール名は、ユーザによって設定されるルール定義ごとの名前である。条件定義ＩＤは、当該ルール定義を構成する条件定義に含まれる各条件式の識別情報（以下、「条件式ＩＤ」という。）の集合に対する識別情報である。アクションリストＩＤは、当該ルール定義を構成するアクション定義に含まれる各アクションの識別情報（以下、「アクションＩＤ」という。）の集合（以下、「アクションリスト」という。）に対する識別情報である。
【００７０】
各条件定義ＩＤと条件式ＩＤとの対応関係は、ルール定義記憶部１６に記憶されている条件定義テーブルＴ２に登録されている。
【００７１】
図１２は、条件定義テーブルの構成例を示す図である。図１２において条件定義テーブルＴ２は、各条件定義ＩＤに対応付けて、条件名、条件式ＩＤ、及び条件タイプ等を記憶する。条件名は、ユーザによって設定される条件定義ごとの名前である。条件式ＩＤは、条件定義を構成する条件式ごとの識別情報である。一つの条件定義ＩＤに対して、複数の条件式ＩＤが対応付けられうる。条件タイプは、条件式ＩＤに対応する条件式の相互の関係を示す値であり、「ａｎｄ」又は「ｏｒ」が指定される。「ａｎｄ」は、当該条件定義ＩＤに対応する全ての条件式ＩＤに係る条件式が満たされる必要が有ることを示す。「ｏｒ」は、当該条件定義ＩＤに対応するいずれかの条件式ＩＤに係る条件式が満たされる必要が有ることを示す。
【００７２】
例えば、図８のｒｕｌｅＩｄ要素５４１の値は、「Ｒｕｌｅ＿００１」である。したがって、ｊの値が１である場合、ステップＳ２０２では、「Ｒｕｌｅ＿００１」に対応付けられている条件定義ＩＤである、「Ｃｏｎｄｉｔｉｏｎ＿Ｌｉｓｔ＿００１」が取得される。その結果、ｊ番目のルール定義を構成する条件定義が特定される。以下、ステップＳ２０２において取得された条件定義ＩＤを「対象条件定義ＩＤ」といい、「対象条件定義ＩＤ」に係る条件定義を、「条件定義ｊ」という。
【００７３】
続いて、ルール処理部１３ｃは、変数ｋに対して１を代入する（Ｓ２０３）。変数ｋは、対象条件定義を構成する１以上の条件式のうち、評価対象とする条件式の順番を格納する変数である。続いて、ルール処理部１３ｃは、対象条件定義ＩＤに対応する条件式ＩＤのうち、ｋ番目の条件式ＩＤに対応する条件式（以下、「条件式ｋ」という。）を、ルール定義記憶部１６に記憶されている条件式テーブルＴ３から取得する（Ｓ２０４）。
【００７４】
図１３は、条件式テーブルの構成例を示す図である。図１３において、条件式テーブルＴ３は、条件式ＩＤに対応付けて条件式を記憶する。条件式は、所属先、対象パラメータ、比較演算子、及び比較値等の項目を含む。
【００７５】
所属先及び対象パラメータは、比較値と比較される値（以下、「評価値」という。）を特定するための項目である。すなわち、所属先の値は、評価値が属する情報単位の識別情報である。所属先の値の一例として、ジョブ定義データ６００ａ（図８）内において各ｐｌｕｇ−ｉｎ要素内に含まれるｉｄ要素の値が挙げられる。例えば、所属先の値に一致する値を有するｉｄ要素を含むｐｌｕｇ−ｉｎ要素が、評価値の取得先のｐｌｕｇ−ｉｎ要素に該当する。対象パラメータの値は、所属先によって特定される情報単位（例えば、ｐｌｕｇ−ｉｎ要素内のｐａｒａｍｅｔｅｒｓ要素）において、評価値の取得先とされる項目の識別情報を示す。例えば、ｐｌｕｇ−ｉｎ要素内のｐａｒａｍｅｔｅｒｓ要素の子要素のうち、要素名（タグ名）が対象パラメータの値に一致する要素が、評価値の取得先とされる項目の一例である。図１３において、「Ｃｏｎｄｉｔｉｏｎ＿０１」に対応する所属先及び対象パラメータのそれぞれの値は、「ｏｃｒ」、「ｔｉｔｌｅ」である。したがって、ジョブ定義データ６００ａにおいて、「ｏｃｒ」を値とするｉｄ要素を含むｐｌｕｇ−ｉｎ要素５２０の、ｔｉｔｌｅ要素５２１の値が、評価値となる。図８において、ｔｉｔｌｅ要素５２１の値は空であるが、ルール処理が実行されるタイミングにおいて、ｔｉｔｌｅ要素５２１には、ＯＣＲ処理によって得られるテキストデータが、ＯＣＲ処理部１３ａによって書き込まれている。なお、所属先には、ｐｌｕｇ−ｉｎ要素内のｉｄ要素の値の他、情報処理システム１又はフロー管理サーバ１０等のシステム全体に関する属性情報を示す「システム」や、フロージョブに関する属性情報を示す「Ｊｏｂ」等が指定されてもよい。この場合、対象パラメータには、「システム」に関する属性情報を構成する項目の名前や、ジョブに関する属性情報を構成する項目の名前等が指定されてもよい。なお、「システム」や「Ｊｏｂ」に関する属性情報は、例えば、メタ情報に含まれていてもよい。
【００７６】
比較演算子は、当該条件式が満たされるために評価値と比較値とが有するべき関係を示す演算子である。比較値は、評価値と比較される値である。すなわち、評価値と比較値とが、比較演算子によって示される関係を有するとき、当該条件式は満たされる。例えば、「Ｃｏｎｄｉｔｉｏｎ＿０１」に関する条件式は、ＯＣＲ処理の結果が、「請求書」であれば満たされる。
【００７７】
続いて、ルール処理部１３ｃは、取得された条件式ｋが満たされるか否かを判定する（Ｓ２０５）。条件式ｋが満たされる場合（Ｓ２０５でＹｅｓ）、ルール処理部１３ｃは、条件定義ｊの条件タイプが「ｏｒ」であるか「ａｎｄ」であるかを判定する（Ｓ２０６）。条件タイプが「ｏｒ」である場合（Ｓ２０６でＹｅｓ）、一つの条件式が満たされれば、条件定義ｊは満たされる。したがって、ルール処理部１３ｃは、ステータスとして「完了」を含み、条件定義ｊのアクションリストＩＤを含む応答を、フロー実行制御部１２に返却する（Ｓ２０７）。当該アクションリストは、ルール定義テーブルＴ１（図１１）から取得される。このように、条件定義の評価結果に基づいて、アクションリストが選択される。
【００７８】
条件定義ｊの条件タイプが「ａｎｄ」である場合（Ｓ２０６でＮｏ）、ルール処理部１３ｃは、変数ｋの値がＮ１以上であるか否かを判定する（Ｓ２０８）。Ｎ１は、条件定義テーブルＴ２において、対象条件定義ＩＤに対応付けられている条件式ＩＤの個数である。すなわち、条件定義ｊに関する全ての条件式を評価したか否かが判定される。条件定義ｊに関する全ての条件式が評価済みである場合（Ｓ２０８でＹｅｓ）、ルール処理部１３ｃは、ステータスとして「完了」を含み、条件定義ｊのアクションリストＩＤを含む応答を、フロー実行制御部１２に返却する（Ｓ２０７）。条件定義ｊに関して未評価の条件式が残っている場合（Ｓ２０８でＮｏ）、ルール処理部１３ｃは、変数ｋに１を加算して（Ｓ２０９）、ステップＳ２０４以降を繰り返す。すなわち、条件定義ｊに関して未評価の条件式の評価が実行される。
【００７９】
一方、条件式ｋが満たされない場合（Ｓ２０５でＮｏ）、ルール処理部１３ｃは、条件定義ｊの条件タイプが「ａｎｄ」であるか「ｏｒ」であるかを判定する（Ｓ２１０）。条件定義ｊの条件タイプが「ａｎｄ」である場合（Ｓ２１０でＹｅｓ）、ルール処理部１３ｃは、変数ｊの値が、Ｎ２以上であるか否かを判定する（Ｓ２１３）。Ｎ２は、ｐｌｕｇ−ｉｎ要素５４０内におけるｒｕｌｅＩｄ要素の個数である。すなわち、ｐｌｕｇ−ｉｎ要素５４０内におけるｒｕｌｅＩｄ要素に対応する全てのルール定義に関する条件定義が評価されたか否かが判定される。未評価のルール定義が残っている場合（Ｓ２１３でＮｏ）、ルール処理部１３ｃは、変数ｊに１を加算して（Ｓ２１４）、ステップＳ２０２以降を繰り返す。すなわち、未評価のルール定義の評価が行われる。
【００８０】
ｐｌｕｇ−ｉｎ要素５４０内におけるｒｕｌｅＩｄ要素に対応する全てのルール定義に関する条件定義が評価された場合（Ｓ２１３でＹｅｓ）、満たされる条件定義は無かったことになる。そこで、ルール処理部１３ｃは、ｐｌｕｇ−ｉｎ要素５４０内のｄｅｆａｕｌｔ要素５４３の値をジョブ定義データ６００ａ（図８）から取得する（Ｓ２１５）。続いて、ルール処理部１３ｃは、ステータスとして「完了」を含み、「ｄｅｆａｕｌｔ」と、ｄｅｆａｕｌｔ要素５４３の値とを含む応答を、フロー実行制御部１２に返却する（Ｓ２１６）。
【００８１】
また、ステップＳ２１０において、条件定義ｊの条件タイプが「ｏｒ」である場合（Ｓ２１０でＮｏ）、ルール処理部１３ｃは、変数ｋの値がＮ１以上であるか否かを判定する（Ｓ２１１）。条件定義ｊに関して未評価の条件式が残っている場合（Ｓ２１１でＮｏ）、ルール処理部１３ｃは、変数ｋに１を加算して（Ｓ２１２）、ステップＳ２０４以降を繰り返す。条件定義ｊに関する全ての条件式が評価済みである場合（Ｓ２１１でＹｅｓ）、ステップＳ２１３以降が実行される。
【００８２】
続いて、図９のステップＳ１０７の詳細について説明する。図１４は、アクションの実行処理の処理手順の一例を説明するためのフローチャートである。
【００８３】
ステップＳ３０１において、フロー実行制御部１２は、ルール処理部１３ｃから返却されたアクションリストＩＤに対応する１以上のアクションＩＤを、ルール定義記憶部１６に記憶されているアクションリストテーブルＴ４を参照して特定する。
【００８４】
図１５は、アクションリストテーブルの構成例を示す図である。図１５において、アクションリストテーブルＴ４は、各アクションリストＩＤに対応付けて、アクションリスト名、及び１以上のアクションＩＤ等を記憶する。アクションリスト名は、ユーザによって設定される、アクションリストごとの名前である。
【００８５】
続いて、フロー実行制御部１２は、変数ｍに１を代入する（Ｓ３０２）。変数ｍは、ステップＳ３０１において特定された１以上のアクションＩＤのうち、処理対象とするアクションＩＤの順番を格納する変数である。
【００８６】
続いて、フロー実行制御部１２は、ｍ番目のアクションＩＤに対応するアクション定義を、ルール定義記憶部１６に記憶されているアクション定義テーブルＴ５から取得する（Ｓ３０３）。以下、取得されたアクション定義を、「アクション定義ｍ」という。
【００８７】
図１６は、アクション定義テーブルの構成例を示す図である。図１６において、アクション定義テーブルＴ５は、アクションＩＤに対応付けてアクション定義を記憶する。アクション定義は、分岐先、所属先、対象パラメータ、及び変更値等の項目を含む。
【００８８】
分岐先は、実行すべき処理単位の識別情報である。本実施の形態では、ｐｌｕｇ−ｉｎ要素内のｉｄ要素の値によって、分岐先項目の値が指定される。
【００８９】
所属先及び対象パラメータは、変更対象のパラメータを特定するための項目である。すなわち、所属先の値は、変更対象のパラメータが属する情報単位の識別情報である。所属先の値の一例として、ジョブ定義データ６００ａ（図８）内において各ｐｌｕｇ−ｉｎ要素内に含まれるｉｄ要素の値が挙げられる。例えば、所属先の値に一致する値を有するｉｄ要素を含むｐｌｕｇ−ｉｎ要素が、変更対象のパラメータを含むｐｌｕｇ−ｉｎ要素に該当する。対象パラメータの値は、所属先によって特定される情報単位（例えば、ｐｌｕｇ−ｉｎ要素内のｐａｒａｍｅｔｅｒｓ要素）において、変更対象とされる項目の識別情報を示す。例えば、ｐｌｕｇ−ｉｎ要素内のｐａｒａｍｅｔｅｒｓ要素の子要素のうち、要素名（タグ名）が対象パラメータの値に一致する要素が、変更対象とされる項目である。図１６において、「Ａｃｔｉｏｎ＿０１」に対応する所属先及び対象パラメータのそれぞれの値は、「ｅｍａｉｌ」、「ｔｏ１」である。したがって、ジョブ定義データ６００ａにおいて、「ｅｍａｉｌ」を値とするｉｄ要素を含むｐｌｕｇ−ｉｎ要素５５０内のｔｏ１要素５５３の値が、変更対象となる。
【００９０】
変更値は、変更対象とされるパラメータの変更後の値である。すなわち、変更対象とされるパラメータの値は、変更値によって上書きされる。なお、所属先には、ｐｌｕｇ−ｉｎ要素内のｉｄ要素の値の他、情報処理システム１又はフロー管理サーバ１０等のシステム全体に関する属性情報を示す「システム」や、フロージョブに関する属性情報を示す「Ｊｏｂ」等が指定されてもよい。この場合、対象パラメータには、「システム」に関する属性情報を構成する項目の名前や、ジョブに関する属性情報を構成する項目の名前等が指定されてもよい。なお、「システム」や「Ｊｏｂ」に関する属性情報は、例えば、メタ情報に含まれていてもよい。
【００９１】
続いて、フロー実行制御部１２は、アクション定義ｍに指定された変更を適用する（Ｓ３０４）。すなわち、アクション定義ｍの所属先及び対象パラメータによって特定されるパラメータの値が、アクション定義ｍの変更値によって上書きされる。例えば、図１６において、「Ａｃｔｉｏｎ＿０１」に対応するアクション定義が、アクション定義ｍである場合、ジョブ定義データ６００ａ（図８）のｐｌｕｇ−ｉｎ要素５５０内のｔｏ１要素５５３の値が、「ａａａ＠ａｂｃ．ｃｏｍ」に変更される。すなわち、本実施の形態では、前段の処理単位であるＯＣＲ処理の結果に応じて、後段の処理単位であるメール配信処理の宛先アドレスが変更される例が示されている。
【００９２】
続いて、フロー実行制御部１２は、アクション定義ｍに指定された分岐先の処理単位を、当該処理単位に対応する処理部１３に実行させる（Ｓ３０５）。すなわち、アクション定義ｍの分岐先によって特定されるｐｌｕｇ−ｉｎ要素に対応する処理単位が実行される。例えば、図１６において、「Ａｃｔｉｏｎ＿０１」に対応するアクション定義が、アクション定義ｍである場合、ジョブ定義データ６００ａ（図８）において、実行順がルール処理の次であるｐｌｕｇ−ｉｎ要素のうち、当該アクション定義の分岐先の値（「ｅｍａｉｌ」）に一致する値を有するｉｄ要素を含むｐｌｕｇ−ｉｎ要素５５０に基づいて、メール配信処理部１３ｄによってメール配信処理が実行される。
【００９３】
続いて、フロー実行制御部１２は、変数ｍの値がＮ３以上であるか否かを判定する（Ｓ３０６）。本実施の形態においてＮ３は、ステップＳ３０１において取得されたアクションＩＤの個数である。変数ｍの値がＮ３未満である場合（Ｓ３０６でＮｏ）、フロー実行制御部１２は、変数ｍに１を加算して（Ｓ３０７）、ステップＳ３０３以降を繰り返す。変数ｍの値がＮ３以上である場合（Ｓ３０６でＹｅｓ）、フロー実行制御部１２は、図１４の処理を終了する。
【００９４】
上述したように、本実施の形態によれば、前段の処理単位の実行結果（出力情報）に応じて、分岐先の処理単位を変更することができる。また、後段の処理単位が利用するパラメータ（入力情報）を、前段の処理単位の実行結果（出力情報）に応じて変更することができる。すなわち、本実施の形態によれば、ワークフローの柔軟性を向上させることができる。その結果、例えば、フロー定義の数を削減することもできる。例えば、文書のタイトルに関するＯＣＲ処理の結果に応じて分岐先を変えたい場合、本実施の形態を採用しない場合は、文書のタイトルごとに、フロー定義を作成し、文書のタイトルに応じて、ユーザが、実行対象とするフロー定義を選択する必要が有る。一方、本実施の形態によれば、このようなフロー定義を一つにまとめることができ、ユーザは、文書のタイトルに拘わらず、同じフロー定義を実行対象として選択することができる。
【００９５】
なお、本実施の形態では、アクション定義に指定されたパラメータの変更の適用を、フロー実行制御部１２が実行する例を示したが、当該変更の適用は、ルール処理部１３ｃによって行われてもよい。又は、変更対象のパラメータを利用する処理部１３によって行われてもよい。
【００９６】
また、本実施の形態では、ＯＣＲ処理の結果が、ルール定義の選択基準（分岐先の選択基準）とされる例を示したが、図６に示されるワークフロー以外の処理単位の組み合わせに関して、本実施の形態が適用されてもよい。例えば、画像形成装置３０から受信した画像データが、カラーであるかモノクロであるかによって、ルール定義が選択されてもよいし、画像データに対するバーコード認識処理の実行結果に応じて、ルー定義が選択されてもよい。
【００９７】
続いて、ルール定義記憶部１６に記憶されるルール定義の設定例について説明する。ルール定義は、例えば、図１７に示されるルール設定画面７１０を介して設定されてもよい。
【００９８】
図１７は、ルール設定画面の表示例を示す図である。図１７において、ルール設定画面７１０は、一覧表示領域７１１、追加ボタン７１２、編集ボタン７１３、及び削除ボタン７１４、及び閉じるボタン７１５等を含む。なお、ルール設定画面７１０は、フロー管理サーバ１０からダウンロードされてＷｅｂブラウザ等によって表示されるＷｅｂページであってもよいし、クライアント端末２０にインストールされる専用のアプリケーションによって表示されてもよい。
【００９９】
一覧表示領域７１１には、ルール設定画面７１０を介して設定されたルール定義の一覧が表示される。追加ボタン７１２は、新たなルール定義の追加指示を受け付けるためのボタンである。編集ボタン７１３は、一覧表示領域７１１において選択されている行（以下「選択行」という。）のルール定義の編集指示を受け付けるためのボタンである。削除ボタン７１４は、選択行のルール定義の削除指示を受け付けるためのボタンである。閉じるボタン７１５は、ルール設定画面７１０のクローズ指示を受け付けるためのボタンである。
【０１００】
例えば、追加ボタン７１２又は編集ボタン７１３が押下されると、クライアント端末２０には、ルール編集画面７２０が表示される。
【０１０１】
図１８は、ルール編集画面の表示例を示す図である。図１８において、ルール編集画面７２０は、ルール名入力領域７２１、条件定義編集領域７２２、アクションリスト編集領域７２３、及びＯＫボタン７２４等を含む。
【０１０２】
ルール名入力領域７２１は、ルール名の入力を受け付ける領域である。条件定義編集領域７２２は、ルール定義を構成する条件定義に関する設定を受け付けるための領域である。条件定義編集領域７２２は、条件名入力領域７２２１、条件式一覧表示領域７２２２、追加ボタン７２２３、編集ボタン７２２４、削除ボタン７２２５、及び条件タイプ選択領域７２２６等を含む。
【０１０３】
条件名入力領域７２２１は、条件名の入力を受け付ける領域である。条件式一覧表示領域７２２２は、設定された条件式の一覧が表示される領域である。追加ボタン７２２３は、新たな条件式の追加指示を受け付けるためのボタンである。編集ボタン７２２４は、条件式一覧表示領域７２２２における選択行の条件式の編集指示を受け付けるためのボタンである。削除ボタン７２２５は、条件式一覧表示領域７２２２における選択行の条件式の削除指示を受け付けるためのボタンである。条件タイプ選択領域７２２６は、条件タイプの選択を受け付けるための領域である。
【０１０４】
アクションリスト編集領域７２３は、ルール定義を構成するアクションリストに関する設定を受け付けるための領域である。すなわち、アクションリスト編集領域７２３は、アクションリスト名入力領域７２３１、アクション定義一覧表示領域７２３２、追加ボタン７２３３、編集ボタン７２３４、及び削除ボタン７２３５等を含む。
【０１０５】
アクションリスト名入力領域７２３１は、アクションリスト名の入力を受け付ける領域である。アクション定義一覧表示領域７２３２は、設定されたアクション定義の一覧が表示される領域である。追加ボタン７２３３は、新たなアクション定義の追加指示を受け付けるためのボタンである。編集ボタン７２３４は、アクション定義一覧表示領域７２３２における選択行のアクション定義の編集指示を受け付けるためのボタンである。削除ボタン７２３５は、アクション定義一覧表示領域７２３２における選択行のアクション定義の削除指示を受け付けるためのボタンである。
【０１０６】
ＯＫボタン７２４は、例えば、条件定義編集領域７２２及びアクションリスト編集領域７２３のそれぞれにおいて、１以上の条件定義、１以上アクションリストが設定された場合に操作可能となる。ＯＫボタン７２４が押下されると、クライアント端末２０は、アクションリスト編集領域７２３における設定内容（ルール定義）をフロー管理サーバ１０に送信する。フロー管理サーバ１０のルール処理部１３ｃは、当該設定内容を、ルール定義記憶部１６に記憶する。
【０１０７】
具体的には、条件式テーブルＴ３（図１３）には、条件式一覧表示領域７２２２の内容が記憶される。この際、条件式ＩＤは、ルール処理部１３ｃによって自動的に割り当てられる。条件定義テーブルＴ２（図１２）には、条件名入力領域７２２１に入力された条件名、条件タイプ選択領域７２２６において選択された条件タイプ、及び各条件式の条件式ＩＤが記憶される。この際、条件定義ＩＤは、ルール処理部１３ｃによって自動的に割り当てられる。また、アクション定義テーブルＴ５（図１６）には、アクション定義一覧表示領域７２３２の内容が記憶される。この際、アクションＩＤは、ルール処理部１３ｃによって自動的に割り当てられる。アクションリストテーブルＴ４（図１５）には、アクションリスト名入力領域７２３１に入力されたアクションリスト名、及び各アクション定義のアクションＩＤが記憶される。この際、アクションリストＩＤは、ルール処理部１３ｃによって自動的に割り当てられる。更に、ルール定義テーブルＴ１（図１１）には、ルール名入力領域７２１に入力されたルール名と、条件定義ＩＤと、アクションリストＩＤとが対応付けられて記憶される。この際、ルールＩＤは、ルール処理部１３ｃによって自動的に割り当てられる。
【０１０８】
各条件式及び各アクション定義の設定例について説明する。条件定義編集領域７２２の追加ボタン７２２３が押下されると、クライアント端末２０には、条件式設定画面７３０が表示される。
【０１０９】
図１９は、条件式設定画面の表示例を示す図である。図１９において、条件式設定画面７３０は、所属先選択領域７３１、対象パラメータ選択領域７３２、比較演算子選択領域７３３、比較値入力領域７３４、及びＯＫボタン７３５等を有する。
【０１１０】
所属先選択領域７３１、対象パラメータ選択領域７３２、及び比較演算子選択領域７３３は、それぞれ、条件式を構成する所属先、対象パラメータ、及び比較演算子を選択させるためのリストボックスである。比較値入力領域７３４は、条件式を構成する比較値の入力を受け付ける領域である。
【０１１１】
図２０は、条件式設定画面に対する操作に応じて実行される処理手順の一例を説明するためのシーケンス図である。
【０１１２】
ユーザによって所属先選択領域７３１が操作されることにより、所属先の一覧の表示が指示されると（Ｓ５０１）、クライアント端末２０は、所属先の一覧の取得要求をフロー管理サーバ１０のルール処理部１３ｃに送信する（Ｓ５０２）。ルール定義の編集が、特定のフロー定義の特定のルール処理に関して行われている場合、当該取得要求には、当該フロー定義のフローＩＤ、及び当該ルール処理の実行順が含まれてもよい。以下、このような状況を想定して説明する。なお、ルール定義の編集が、フロー定義からは独立して行われている場合、以下の処理において、当該フローＩＤ及び当該実行順による絞り込みは行われなくてよい。
【０１１３】
続いて、ルール処理部１３ｃは、当該フローＩＤ及び当該実行順を指定して、所属先の一覧の取得をフロー実行制御部１２に要求する（Ｓ５０３）。フロー実行制御部１２は、当該取得要求に応じ、所属先の候補の一覧情報を取得し、当該一覧情報（以下、「所属先一覧」という。）をルール処理部１３ｃに返却する（Ｓ５０４）。所属先一覧には、指定されたフローＩＤによって特定されるフロー定義データにおいて、指定された実行順の次に実行されることが定義されている１以上の処理単位（ｐｌｕｇ−ｉｎ要素）の識別情報（例えば、ｉｄ要素の値（以下「プラグインＩＤ」という。）等）が含まれる。例えば、図７に示されるフロー定義データ５００において３番目のルール処理に関するルール定義が編集対象であるとすれば、実行順が４番目であるｐｌｕｇ−ｉｎ要素５５０及び５６０のそれぞれのプラグインＩＤが取得され、所属先一覧に含められる。また、所属先一覧には、既定の所属先として、「システム」や「Ｊｏｂ」等が含まれてもよい。
【０１１４】
続いて、ルール処理部１３ｃは、所属先一覧をクライアント端末２０に返信する（Ｓ５０５）。クライアント端末２０は、所属先選択領域７３１のリストボックスを展開し、当該所属先一覧を表示させる（Ｓ５０６）。ユーザは、表示された所属先一覧の中から、いずれかの所属先を選択する。
【０１１５】
続いて、ユーザによって対象パラメータ選択領域７３２が操作されることにより、対象パラメータの一覧の表示が指示されると（Ｓ５０７）、クライアント端末２０は、条件式用のパラメータの一覧の取得要求をフロー管理サーバ１０のルール処理部１３ｃに送信する（Ｓ５０８）。当該取得要求には、所属先選択領域７３１において選択された所属先の識別情報として、「システム」、「Ｊｏｂ」、又はプラグインＩＤが含まれる。
【０１１６】
続いて、ルール処理部１３ｃは、当該取得要求に含まれている識別情報に対応する所属先から、当該所属先が有するパラメータの中で、条件式に利用可能なパラメータの一覧情報を取得する（Ｓ５０９、Ｓ５１０）。例えば、所属先ごとに、以下のようなパラメータ構成情報が、補助記憶装置１０２等に記憶されている。
【０１１７】
図２１は、パラメータ構成情報の一例を示す図である。図２１では、メール配信処理部１３ｄのパラメータ構成情報を示す。パラメータ構成情報は、当該所属先が有するパラメータごとに、パラメータＩＤ、アクセス権限、データ形式、比較演算子、及びラベル等を含む。
【０１１８】
パラメータＩＤは、パラメータごとの識別情報である。例えば、パラメータＩＤは、フロー定義データ５００において、当該パラメータに対応する要素の要素名（タグ名）として用いられる値であってもよい。アクセス権限は、当該パラメータの所属先以外（例えば、メール配信処理部１３ｄ以外）による、当該パラメータに対するアクセス権限を示す。「ｒ」は、参照権限を示す。「ｗ」は、書き込み権限を示す。例えば、いずれかの処理部１３（プラグイン）に関するパラメータであれば、「ｒ」は、ジョブ定義データに含まれている当該パラメータの値の参照権限を示し、「ｗ」は、ジョブ定義データに含まれている当該パラメータに対する書き込み権限を示す。データ形式は、パラメータのデータ形式である。比較演算子は、当該パラメータに関して利用可能な比較演算子である。図示されているもの以外に、前方一致、後方一致、又は完全一致等が比較演算子として利用可能とされてもよい。ラベルは、パラメータをユーザインタフェース等に表示させる場合に利用される文字列である。
【０１１９】
パラメータを条件式に利用する場合、当該パラメータの値の変更は行われない。すなわち、条件式に利用されるパラメータは、参照権限を有すれば十分である。したがって、ステップＳ５０９及びＳ５１０では、条件式用のパラメータの一覧の取得要求に含まれている識別情報に対応するパラメータ構成情報において、アクセス権限に「ｒ」を含むパラメータ情報の一覧（以下、「条件式用パラメータ一覧」という。）が取得される。パラメータ情報とは、パラメータＩＤ、データ形式、及びラベル等を含む情報である。
【０１２０】
続いて、ルール処理部１３ｃは、条件式用パラメータ一覧を、クライアント端末２０に返信する（Ｓ５１１）。クライアント端末２０は、対象パラメータ選択領域７３２のリストボックスを展開し、当該条件式用パラメータ一覧に含まれているラベルの一覧を表示させる（Ｓ５１２）。
【０１２１】
続いて、ユーザは、表示された一覧の中からいずれかのパラメータを選択する（Ｓ５１３）。クライアント端末２０は、選択されたパラメータに係るパラメータ情報に含まれている比較演算子を、条件式設定画面７３０の比較演算子選択領域７３３に選択肢として設定する。また、クライアント端末２０は、比較値入力領域７３４に入力可能な値が、選択されたパラメータに係るパラメータ情報に含まれているデータ形式に制限されるように、比較値入力領域７３４に対して設定を行う。
【０１２２】
続いて、ユーザによって、比較演算子の選択及び比較値の入力が行われ、ＯＫボタン７３５が押下されると、クライアント端末２０は、条件式設定画面７３０に対する設定内容を、ルール編集画面７２０（図１８）の条件式一覧表示領域７２２２に反映する。すなわち、条件式一覧表示領域７２２２に新たな行が追加され、当該行に条件式設定画面７３０に対する設定内容が設定される。
【０１２３】
一方、ルール編集画面７２０（図１８）において、アクションリスト編集領域７２３の追加ボタン７２３３が押下されると、クライアント端末２０には、アクション定義設定画面７４０が表示される。
【０１２４】
図２２は、アクション定義設定画面の表示例を示す図である。図２２において、アクション定義設定画面７４０は、分岐先選択領域７４１、所属先選択領域７４２、対象パラメータ選択領域７４３、変更値入力領域７４４、及びＯＫボタン７４５等を有する。
【０１２５】
分岐先選択領域７４１、所属先選択領域７４２、及び対象パラメータ選択領域７４３は、それぞれ、アクション定義を構成する分岐先、所属先、及び対象パラメータを選択させるためのリストボックスである。変更値入力領域７４４は、アクション定義を構成する変更値の入力を受け付ける領域である。
【０１２６】
図２３は、アクション定義設定画面に対する操作に応じて実行される処理手順の一例を説明するためのシーケンス図である。
【０１２７】
ユーザによって分岐先選択領域７４１が操作されることにより、分岐先の一覧の表示が指示されると（Ｓ６０１）、クライアント端末２０は、分岐先の一覧の取得要求をフロー管理サーバ１０のルール処理部１３ｃに送信する（Ｓ６０２）。当該取得要求には、編集対象とされているフロー定義のフローＩＤ、及び当該ルール処理の実行順が含まれる。
【０１２８】
続いて、ルール処理部１３ｃは、当該フローＩＤ及び当該実行順を指定して、分岐先の一覧の取得をフロー実行制御部１２に要求する（Ｓ６０３）。フロー実行制御部１２は、当該取得要求に応じ、分岐先の候補の一覧情報を取得し、当該一覧情報（以下、「分岐先一覧」という。）をルール処理部１３ｃに返却する（Ｓ６０４）。分岐先一覧には、指定されたフローＩＤによって特定されるフロー定義データにおいて、指定された実行順の次に実行されることが定義されている１以上の処理単位（ｐｌｕｇ−ｉｎ要素）のプラグインＩＤが含まれる。例えば、図７に示されるフロー定義データ５００において３番目のルール処理に関するルール定義が編集対象であるとすれば、実行順が４番目であるｐｌｕｇ−ｉｎ要素５５０及び５６０のそれぞれのプラグインＩＤが取得され、分岐先一覧に含められる。
【０１２９】
続いて、ルール処理部１３ｃは、分岐先一覧をクライアント端末２０に返信する（Ｓ６０５）。クライアント端末２０は、分岐先選択領域７４１のリストボックスを展開し、当該分岐先一覧を表示させる（Ｓ６０６）。ユーザは、表示された分岐先一覧の中から、いずれかの分岐先を選択する。
【０１３０】
続いて、ユーザによって所属先選択領域７４２が操作されることにより、所属先の一覧の表示が指示されると（Ｓ６０７）、図２０のステップＳ５０２〜Ｓ５０６と同様の処理が実行される（Ｓ６０８〜Ｓ６１２）。
【０１３１】
続いて、ユーザによって対象パラメータ選択領域７４３が操作されることにより、対象パラメータの一覧の表示が指示されると（Ｓ６１３）、図２０のステップＳ５０８〜Ｓ５１２と同様の処理が実行される（Ｓ６１４〜Ｓ６１８）。但し、アクション定義における対象パラメータは、変更対象とされるパラメータである。すなわち、アクション定義に利用されるパラメータは、参照権限に加え、書き込み権限を有する必要が有る。したがって、ステップＳ６１５及びＳ６１６では、アクション定義用のパラメータの一覧の取得要求に含まれている識別情報に対応するパラメータ構成情報において、アクセス権限に「ｒ」及び「ｗ」を含むパラメータ情報の一覧が取得される。
【０１３２】
続いて、ユーザは、表示された一覧の中からいずれかのパラメータを選択する（Ｓ６１９）。クライアント端末２０は、変更値入力領域７４４に入力可能な値が、選択されたパラメータに係るパラメータ情報に含まれているデータ形式に制限されるように、変更値入力領域７４４に対して設定を行う。
【０１３３】
続いて、ユーザによって、変更値の入力が行われ、ＯＫボタン７４５が押下されると、クライアント端末２０は、アクション定義設定画面７４０に対する設定内容を、ルール編集画面７２０（図１８）のアクション定義一覧表示領域７２３２に反映する。すなわち、アクション定義一覧表示領域７２３２に新たな行が追加され、当該行にアクション定義設定画面７４０に対する設定内容が設定される。
【０１３４】
なお、本実施の形態において、フロー管理サーバ１０は、情報処理装置及び情報処理システムの一例である。フロー実行制御部１２は、処理制御部の一例である。ルール処理部１３ｃは、選択部の一例である。
【０１３５】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【０１３６】
１            情報処理システム
１０          フロー管理サーバ
１１          ジョブ投入部
１２          フロー実行制御部
１３          処理部
１３ａ        ＯＣＲ処理部
１３ｂ        アーカイブ処理部
１３ｃ        ルール処理部
１３ｄ        メール配信処理部
１３ｅ        フォルダ配信処理部
１４          ジョブキュー
１５          フロー定義記憶部
１６          ルール定義記憶部
２０          クライアント端末
３０          画像形成装置
５０          文書管理サーバ
６０          メールサーバ
７０          ファイルサーバ
１００        ドライブ装置
１０１        記録媒体
１０２        補助記憶装置
１０３        メモリ装置
１０４        ＣＰＵ
１０５        インタフェース装置
１１１        スキャン入力プラグイン
１１２        メール入力プラグイン
１１３        フォルダ入力プラグイン
Ｂ            バス
Ｔ１          ルール定義テーブル
Ｔ２          条件定義テーブル
Ｔ３          条件式テーブル
Ｔ４          アクションリストテーブル
Ｔ５          アクション定義テーブル
【先行技術文献】
【特許文献】
【０１３７】
【特許文献１】特開２０１３−２０３２６号公報
【図１】
0006507514.tif 000002
【図２】
0006507514.tif 000003
【図３】
0006507514.tif 000004
【図４】
0006507514.tif 000005
【図５】
0006507514.tif 000006
【図６】
0006507514.tif 000007
【図７】
0006507514.tif 000008
【図８】
0006507514.tif 000009
【図９】
0006507514.tif 000010
【図１０】
0006507514.tif 000011
【図１１】
0006507514.tif 000012
【図１２】
0006507514.tif 000013
【図１３】
0006507514.tif 000014
【図１４】
0006507514.tif 000015
【図１５】
0006507514.tif 000016
【図１６】
0006507514.tif 000017
【図１７】
0006507514.tif 000018
【図１８】
0006507514.tif 000019
【図１９】
0006507514.tif 000020
【図２０】
0006507514.tif 000021
【図２１】
0006507514.tif 000022
【図２２】
0006507514.tif 000023
【図２３】
0006507514.tif 000024