(57)【要約】【課題】大容量のデータを扱うことなく、ネットワーク上の連携処理を効率的に行う。【解決手段】連携処理サーバ５０は、ユーザに選択された指示書に基づいて、スキャンサーバ９０に紙文書をスキャンして、文書管理サーバ７０に画像文書とその属性情報を格納するように指示する（ステップＳＴ２）。スキャンサーバ９０は、連携処理サーバ５０から送信された指示書に基づいて、紙文書をスキャンして画像文書を生成する。そして、画像文書とその属性情報とを文書管理サーバ７０に格納した後、処理終了を連携処理サーバ５０に通知する（ステップＳＴ３）。【選択図】        図１１
2004163997.tif 000002
【特許請求の範囲】
【請求項１】
文書データに関して所定の処理を行うサービスをネットワーク上で連携して処理をするサービス処理装置であって、
処理対象を指示する第１の指示情報と、前記処理対象に対する第１の処理内容とを第１のサービス処理部に送信する第１の送信手段と、
前記第１のサービス処理部で処理された処理結果と、前記第１のサービス処理部で処理された処理対象を指示する第２の指示情報とを受信する受信手段と、
第２のサービス処理部に対して、前記第２の指示情報と第２の処理内容とを送信する第２の送信手段と、
を備えたサービス処理装置。
【請求項２】
前記第１及び第２の指示情報は、文書情報、又は、文書の格納先及び当該文書の取得方法の情報を有する
請求項１に記載のサービス処理装置。
【請求項３】
前記受信手段で受信された処理結果に基づいて、前記第２の処理内容を決定する第１の決定手段を更に備えた
請求項１または２に記載のサービス処理装置。
【請求項４】
前記受信手段で受信された処理結果に基づいて、前記第２のサービス処理部で処理する第２の処理内容と、次に処理を行う第３のサービス処理部で処理する第３の処理内容とを決定する第２の決定手段を更に備えた
請求項１または２に記載のサービス処理装置。
【請求項５】
前記受信手段で受信された処理結果と、前記第２のサービス処理部で処理された処理結果とに基づいて、第３のサービス処理部で処理する第３の処理内容を決定する第３の決定手段を更に備えた
請求項１または２に記載のサービス処理装置。
【請求項６】
文書データに関して所定の処理を行うサービスをネットワーク上で連携して処理をするサービス処理方法であって、
処理対象を指示する第１の指示情報と、前記処理対象に対する第１の処理内容とを第１のサービス処理部に送信する第１の送信工程と、
前記第１のサービス処理部で処理された処理結果と、前記第１のサービス処理部で処理された処理対象を指示する第２の指示情報とを受信する受信工程と、
第２のサービス処理部に対して、前記第２の指示情報と第２の処理内容とを送信する第２の送信工程と、
を備えたサービス処理方法。
【請求項７】
前記第１及び第２の指示情報は、文書情報、又は、文書の格納先及び当該文書の取得方法の情報を有する
請求項６に記載のサービス処理方法。
【請求項８】
前記受信工程で受信された処理結果に基づいて、前記第２の処理内容を決定する第１の決定工程を更に備えた
請求項６または７に記載のサービス処理方法。
【請求項９】
前記受信工程で受信された処理結果に基づいて、前記第２のサービス処理部で処理する第２の処理内容と、次に処理を行う第３のサービス処理部で処理する第３の処理内容とを決定する第２の決定工程を更に備えた
請求項６または７に記載のサービス処理方法。
【請求項１０】
前記受信工程で受信された処理結果と、前記第２のサービス処理部で処理された処理結果とに基づいて、第３のサービス処理部で処理する第３の処理内容を決定する第３の決定工程を更に備えた
請求項６または７に記載のサービス処理方法。
【請求項１１】
文書データに関して所定の処理を行うサービスをネットワーク上で連携して処理をするサービス処理プログラムであって、
コンピュータに、
処理対象を指示する第１の指示情報と、前記処理対象に対する第１の処理内容とを第１のサービス処理部に送信する第１の送信工程と、
前記第１のサービス処理部で処理された処理結果と、前記第１のサービス処理部で処理された処理対象を指示する第２の指示情報とを受信する受信工程と、
第２のサービス処理部に対して、前記第２の指示情報と第２の処理内容とを送信する第２の送信工程と、
を備えた処理を実行させるサービス処理プログラム。
【請求項１２】
前記第１及び第２の指示情報は、文書情報、又は、文書の格納先及び当該文書の取得方法の情報を有する
請求項１１に記載のサービス処理プログラム。
【請求項１３】
前記受信工程で受信された処理結果に基づいて、前記第２の処理内容を決定する第１の決定工程を更に備えた処理を実行させる
請求項１１または１２に記載のサービス処理プログラム。
【請求項１４】
前記受信工程で受信された処理結果に基づいて、前記第２のサービス処理部で処理する第２の処理内容と、次に処理を行う第３のサービス処理部で処理する第３の処理内容とを決定する第２の決定工程を更に備えた処理を実行させる
請求項１１または１２に記載のサービス処理プログラム。
【請求項１５】
前記受信工程で受信された処理結果と、前記第２のサービス処理部で処理された処理結果とに基づいて、第３のサービス処理部で処理する第３の処理内容を決定する第３の決定工程を更に備えた処理を実行させる
請求項１１または１２に記載のサービス処理プログラム。
【請求項１６】
文書データに関して所定の処理を行う複数のサービスをネットワーク上で連携して処理をするサービス処理方法であって、
前記複数のサービスの処理内容を含む指示情報を受け付け、
前記受け付けた指示情報に含まれる処理内容に基づいて前記サービスに対し処理対象となる文書に対する処理の依頼を行う
ことを特徴とするサービス処理方法。
【請求項１７】
文書データに関して所定の処理を行う複数のサービスをネットワーク上で連携して処理を行わせる制御を行うサービス処理装置であって、
前記複数のサービスの処理内容を含む指示情報を受け付け、
前記受け付けた指示情報に含まれる処理内容に基づいて前記サービスに対し処理対象となる文書に対する処理の依頼を行う
ことを特徴とするサービス処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、サービス処理装置、サービス処理方法及びプログラムに係り、特に紙文書を電子化してワークフローを構築するワークフローシステムに用いて好適なサービス処理装置、サービス処理方法及びプログラムに関する。
【０００２】
【従来の技術】
スキャナ、ファクシミリ装置、複写機、又はこれらを複合した複合機、パーソナルコンピュータ、メールサーバをネットワークで相互に接続して、紙文書と電子情報の共有化を図ったワークフローシステムが提案されている。
【０００３】
そして、インターネット技術の発達に伴い、それぞれ独立に開発されたアプリケーションを連携させて、より高度な業務処理を容易に構築するＷｅｂサービスが提案されている。Ｗｅｂサービスによってネットワーク上のアプリケーションをサービスコンポーネントとして利用し、より高度な業務システムを容易に構築することが可能になる。そして、これらのサービスを有機的に連携・組み合わせることで、新たなサービスを作ることも行われている。
【０００４】
通常のデータ量の少ない業務処理であれば、上記のようなモデル（サービスを連携させること）をそのまま採用するのが現実的である。しかし、昨今の業務では、画像データなどの大容量データが扱われるようになってきており、データ量の増加がネットワークの転送速度を上回ってしまっている。
【０００５】
例えば、特許文献１や特許文献２に記載されているように、ワークフローを実現するために、中心となるサーバと、ユーザサイドのクライアントという構成で構築する場合、表示データのみがクライアントサイドへ転送される。しかし、この構成では柔軟性に乏しく、限られたいくつかのサービスの組み合わせによってのみ業務処理を構築しなければならない。つまり、機能拡張を効率よく実現するには、サーバに機能を組み込まなければならない。
【０００６】
また、特許文献３では、柔軟性を向上させるためにクライアントサイドでの処理を強化してしまうと、サーバから全てのデータセットがクライアントに送られることとなり、大容量データを扱うことは現実的ではない。さらに、処理終了後、場合によっては処理結果として大容量データがサーバに返送される必要があり、よりいっそうネットワークの負荷を高めることになる。すなわち、このような従来技術は、処理の流れを制御するだけで、処理対象となるデータについての改善することができない問題があった。
【０００７】
【特許文献１】
特開平８−１２３７４４号公報
【特許文献２】
特開２００２−１５１０６号公報
【特許文献３】
特開２００１−２８２９７０号公報
【０００８】
【発明が解決しようとする課題】
このような状況のため、従来の技術では、固定的で適用範囲が限られた、小容量のデータセットを扱うようなワークフロー（回覧、小額稟議、承認など）しか実現できていない。
【０００９】
本発明は、上述した課題を解決するために提案されたものであり、大容量のデータを扱うことなく、ネットワーク上の連携処理を効率的に行うことができるサービス処理装置、サービス処理方法及びプログラムを提供することを目的とする。
【００１０】
【課題を解決するための手段】
請求項１に記載の発明は、文書データに関して所定の処理を行うサービスをネットワーク上で連携して処理をするサービス処理装置であって、処理対象を指示する第１の指示情報と、前記処理対象に対する第１の処理内容とを第１のサービス処理部に送信する第１の送信手段と、前記第１のサービス処理部で処理された処理結果と、前記第１のサービス処理部で処理された処理対象を指示する第２の指示情報とを受信する受信手段と、第２のサービス処理部に対して、前記第２の指示情報と第２の処理内容とを送信する第２の送信手段と、を備えている。
【００１１】
請求項６に記載の発明は、文書データに関して所定の処理を行うサービスをネットワーク上で連携して処理をするサービス処理方法であって、処理対象を指示する第１の指示情報と、前記処理対象に対する第１の処理内容とを第１のサービス処理部に送信する第１の送信工程と、前記第１のサービス処理部で処理された処理結果と、前記第１のサービス処理部で処理された処理対象を指示する第２の指示情報とを受信する受信工程と、第２のサービス処理部に対して、前記第２の指示情報と第２の処理内容とを送信する第２の送信工程と、を備えている。
【００１２】
請求項１１に記載のサービス処理プログラムは、コンピュータにインストールすることで、請求項１または６に記載された発明を実現するものである。すなわち、請求項１１に記載の発明は、文書データに関して所定の処理を行うサービスをネットワーク上で連携して処理をするサービス処理プログラムであって、コンピュータに、処理対象を指示する第１の指示情報と、前記処理対象に対する第１の処理内容とを第１のサービス処理部に送信する第１の送信工程と、前記第１のサービス処理部で処理された処理結果と、前記第１のサービス処理部で処理された処理対象を指示する第２の指示情報とを受信する受信工程と、第２のサービス処理部に対して、前記第２の指示情報と第２の処理内容とを送信する第２の送信工程と、を備えた処理を実行させるものである。
【００１３】
請求項１、６、１１に記載の発明は、文書データに関して所定の処理を行うサービスをネットワーク上で連携して処理をするサービス処理を行うものである。ここで、文書データとは、文書に関連する情報であればよく、テキストデータ等の文字情報や紙文書を読み取った画像情報等、特に限定されるものではない。
【００１４】
第１の送信手段は、処理対象を指示する第１の指示情報と、前記処理対象に対する第１の処理内容とを第１のサービス処理部に送信する。ここで、第１のサービス処理部とは、処理対象に対して所定の処理を実行するものであり、ハードウェアで構成されたものに限らず、モジュールであってもよい。第１の送信手段は、第１のサービス処理部に対して、処理の実行を指示すべく、第１の指示情報と第１の処理内容とを送信する。
【００１５】
一方、受信手段は、前記第１のサービス処理部で処理された処理結果と、前記第１のサービス処理部で処理された処理対象を指示する第２の指示情報とを受信する。これにより、サービス処理部における処理状況を把握して、サービスの連携処理を考慮して、次の処理内容を決定する。そして、第２の送信手段は、第２のサービス処理部に対して、前記第２の指示情報と第２の処理内容とを送信する。
【００１６】
したがって、請求項１、６、１１に記載の発明によれば、処理対象を指示する指示情報と処理対象に対する処理内容とを送信し、処理結果と処理された処理対象を指示する指示情報を受信することで、フロー動作と各サービス処理部とを独立させて、処理対象を直接送受信するのを最小限にするので、高速に処理を実行させることができる。
【００１７】
請求項２に記載の発明は、請求項１に記載の発明において、前記第１及び第２の指示情報は、文書情報、又は、文書の格納先及び当該文書の取得方法の情報を有するものである。
【００１８】
請求項７に記載の発明は、請求項６に記載の発明において、前記第１及び第２の指示情報は、文書情報、又は、文書の格納先及び当該文書の取得方法の情報を有するものである。
【００１９】
請求項１２に記載の発明は、請求項１１に記載の発明において、前記第１及び第２の指示情報は、文書情報、又は、文書の格納先及び当該文書の取得方法の情報を有するものである。
【００２０】
したがって、請求項２、７、１２に記載の発明によれば、第１及び第２の指示情報が文書情報を有する場合には、第１及び第２の送信手段は、第１及び第２のサービス処理部に文書情報を直接送信する。一方、第１及び第２の指示情報が文書の格納先及び当該文書の取得方法の情報を有する場合には、第１及び第２の送信手段は、処理対象を直接送受信しないで済む。これにより、ネットワーク上のデータの転送量を抑制して、処理の高速化を図ることができる。
【００２１】
請求項３に記載の発明は、請求項１または２に記載の発明において、前記受信手段で受信された処理結果に基づいて、前記第２の処理内容を決定する第１の決定手段を更に備えたものである。
【００２２】
請求項８に記載の発明は、請求項６または７に記載の発明において、前記受信工程で受信された処理結果に基づいて、前記第２の処理内容を決定する第１の決定工程を更に備えたものである。
【００２３】
請求項１３に記載の発明は、請求項１１または１２に記載の発明において前記受信工程で受信された処理結果に基づいて、前記第２の処理内容を決定する第１の決定工程を更に備えた処理を実行させるものである。
【００２４】
したがって、請求項３、８、１３に記載の発明によれば、第１のサービス処理部で処理された処理結果に基づいて、次のサービス処理である第２の処理内容を決定することにより、前段の処理結果を受けて、後段の処理内容を柔軟に決定することができる。
【００２５】
請求項４に記載の発明は、請求項１または２に記載の発明において、前記受信手段で受信された処理結果に基づいて、前記第２のサービス処理部で処理する第２の処理内容と、次に処理を行う第３のサービス処理部で処理する第３の処理内容とを決定する第２の決定手段を更に備えたものである。
【００２６】
請求項９に記載の発明は、請求項６または７に記載の発明において、前記受信工程で受信された処理結果に基づいて、前記第２のサービス処理部で処理する第２の処理内容と、次に処理を行う第３のサービス処理部で処理する第３の処理内容とを決定する第２の決定工程を更に備えたものである。
【００２７】
請求項１４に記載の発明は、請求項１１または１２に記載の発明において、前記受信工程で受信された処理結果に基づいて、前記第２のサービス処理部で処理する第２の処理内容と、次に処理を行う第３のサービス処理部で処理する第３の処理内容とを決定する第２の決定工程を更に備えた処理を実行させるものである。
【００２８】
したがって、請求項４、９、１４に記載の発明によれば、第１のサービス処理部で処理された処理結果に基づいて、第２のサービス処理部で処理する第２の処理内容と、その次に処理を行う第３のサービス処理部で処理する第３の処理内容とを決定することにより、前段の処理結果を受けて、次の処理内容とその次の処理内容とを柔軟に決定することができる。
【００２９】
請求項５に記載の発明は、請求項１または２に記載の発明において、前記受信手段で受信された処理結果と、前記第２のサービス処理部で処理された処理結果とに基づいて、第３のサービス処理部で処理する第３の処理内容を決定する第３の決定手段を更に備えたものである。
【００３０】
請求項１０に記載の発明は、請求項６または７に記載の発明において、前記受信工程で受信された処理結果と、前記第２のサービス処理部で処理された処理結果とに基づいて、第３のサービス処理部で処理する第３の処理内容を決定する第３の決定工程を更に備えたものである。
【００３１】
請求項１５に記載の発明は、請求項１１または１２に記載の発明において、前記受信工程で受信された処理結果と、前記第２のサービス処理部で処理された処理結果とに基づいて、第３のサービス処理部で処理する第３の処理内容を決定する第３の決定工程を更に備えた処理を実行させるものである。
【００３２】
したがって、請求項５、１０、１５に記載の発明によれば、第１のサービス処理部で処理された処理結果と、第２のサービス処理部で処理された処理結果とに基づいて、次に処理を行う第３のサービス処理部で処理する第３の処理内容を決定することにより、前段の２つの処理結果を受けて、次の処理内容を柔軟に決定することができる。
【００３３】
請求項１６に記載の発明は、文書データに関して所定の処理を行う複数のサービスをネットワーク上で連携して処理をするサービス処理方法であって、前記複数のサービスの処理内容を含む指示情報を受け付け、前記受け付けた指示情報に含まれる処理内容に基づいて前記サービスに対し処理対象となる文書に対する処理の依頼を行うことを特徴とする。
【００３４】
請求項１７に記載の発明は、文書データに関して所定の処理を行う複数のサービスをネットワーク上で連携して処理を行わせる制御を行うサービス処理装置であって、前記複数のサービスの処理内容を含む指示情報を受け付け、前記受け付けた指示情報に含まれる処理内容に基づいて前記サービスに対し処理対象となる文書に対する処理の依頼を行うことを特徴とする。
【００３５】
【発明の実施の形態】
以下、本発明の好ましい実施の形態について図面を参照しながら詳細に説明する。
【００３６】
［第１の実施の形態］
（システム構成）
図１は、本発明の第１の実施の形態に係る文書処理システム１の構成を示すブロック図である。
【００３７】
文書処理システム１は、様々なサービスやアプリケーションがネットワーク５を介して接続されたものである。ここで、サービスとは、外部からの要求に応じて、文書に関する利用可能な機能をいい、例えば、コピー、プリント、スキャン、ファクシミリ送受信、メール配信、レポジトリへの格納やリポジトリからの読込、ＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅｃｏｇｎｉｔｉｏｎ）処理、ノイズ除去処理等が該当する。
【００３８】
文書処理システム１は、具体的は、コピー、プリント、スキャン、ファクシミリのサービス処理を行う複合機１０と、ユーザの所望のサービスを検索するサービス検索サーバ２０と、クライアント端末であると共に指示書を作成する指示書エディタ３０と、指示書を管理する指示書管理サーバ４０と、指示書に従って各サービスの連携処理を実行する連携処理サーバ５０と、を備えている。
【００３９】
さらに、文書処理システム１は、文書編集機能を有する文書編集サーバ６１と、文書を管理する文書管理サーバ６２と、承認処理機能を有する承認処理サーバ６３と、紙文書をスキャンするスキャンサーバ６４と、第１のサービス処理を行う第１のサービス処理装置７０と、第２のサービス処理を行う第２のサービス処理装置８０と、を備えている。
【００４０】
なお、文書処理システム１は、第１及び第２の実施形態では所定のサービス処理を行う複数のサーバがネットワーク５を介して接続された構成となっているが、複数のサービスがネットワーク５を介して接続されていれば特に限定されるものではない。
【００４１】
ここで、指示書とは、一連の処理を複数の機能的な処理に分解した場合において、各機能の関係を表す情報と、各機能を呼び出すためのインタフェース（Ｉ／Ｆ）情報と、一連の処理に関するグラフィカルユーザインタフェース（ＧＵＩ）を表す情報とを統合したデータをいう。なお、指示書の具体的な構成については後述する。
【００４２】
また、連携とは、あるサービスの結果が以降に起動するサービスを決定したり、あるいは、以降のサービスの動作に影響を与える等、サービス間の関係を有することをいう。
【００４３】
複合機１０は、サービス処理装置の１つであり、コピー、プリント、スキャン、ファクシミリの４つのサービス処理を行う。なお、サービス処理装置としては、その他、コピー機、ファクシミリ装置、サーバ、さらに、文書データに所定の処理を施すコンピュータであってもよく、特に限定されるものではない。また、複合機１０は、ユーザの操作に応じて、指示書を選択し、パラメータを入力し、入力されたパラメータを指示書に反映して連携処理の起動を要求する連携起動機能を有している。
【００４４】
図２は、文書処理システム１の複合機１０、サービス検索サーバ２０、指示書エディタ３０、指示書管理サーバ４０及び連携処理サーバ５０の機能的な構成を示すブロック図である。
【００４５】
複合機１０は、コピー、プリント、スキャン、ファクシミリのサービス処理を行うサービス提供部１１と、Ｉ／Ｆ情報を記憶すると共にサービス検索サーバ２０に登録するＩ／Ｆ情報登録部１２と、サービス提供部１１を制御するサービス制御部１３と、例えばタッチパネル及びボタンで構成され、指示書等を表示したり所定の操作を行うためのグラフィカルユーザインタフェース（ＧＵＩ）１４と、を備えている。
【００４６】
図３は、Ｉ／Ｆ情報登録部１２に記憶されているＩ／Ｆ情報の構成を示す図である。Ｉ／Ｆ情報は、＜サービス種類（Ｓｅｒｖｉｃｅ  Ｃｌａｓｓ）＞、＜サービス名（Ｓｅｒｖｉｃｅ  Ｎａｍｅ）＞、＜サービス・アイコン（Ｓｅｒｖｉｃｅ  Ｉｃｏｎ）＞、＜サービス・ロケーション情報（Ｓｅｒｖｉｃｅ  Ｉｎｆｏ  Ｌｏｃａｔｉｏｎ）＞、＜入力（Ｉｎｐｕｔ）＞、＜出力（Ｏｕｔｐｕｔ）＞、＜パラメータ制限ルール（Ｐａｒａｍｅｔｅｒ  Ｒｅｓｔｒｉｃｔｉｏｎ  Ｒｕｌｅｓ）＞、＜サービス・ロケーション（Ｓｅｒｖｉｃｅ  Ｌｏｃａｔｉｏｎ）＞、＜メソッド名（Ｍｅｔｈｏｄ  Ｎａｍｅ）＞、＜起動方法（Ｉｎｖｏｃａｔｉｏｎ  Ｓｃｈｅｍｅ）＞、＜黙示要素（Ｉｎｐｌｉｃｉｔ  Ｅｌｅｍｅｎｔｓ）＞で構成されている。
【００４７】
＜サービス種類＞は、サービス処理装置である複合機１０が提供するサービスの種類を宣言する。なお、＜サービス種類＞は、予め定義されているものを使用し、例えば、スキャン、プリント、レポジトリ、フロー等が該当する。
【００４８】
＜サービス名＞は、サービス処理装置である複合機１０が提供するサービスの名前を宣言する。＜サービス・アイコン＞は、指示書エディタ３０のＧＵＩに表示するアイコンの位置を宣言する。
【００４９】
＜サービス・ロケーション情報＞は、当該Ｉ／Ｆ情報をサービス検索サーバ２０が取得する際に用いるＵＲＬを宣言する。＜メソッド名＞は、サービス処理の提供手法を宣言する。
【００５０】
＜起動方法＞は、サービス処理を呼び出し起動する方法を宣言する。なお、＜起動方法＞としては、例えばメッセージ交換のプロトコルであるＳＯＡＰ（Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）、ＳＴＭＰ（Ｓｉｍｐｌｅ  Ｍａｉｌ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）等を用いることができる。
【００５１】
＜黙示要素＞は、出力として明示的に後段の処理に渡されるデータでないが、後段の処理で参照可能なデータを宣言する。なお、サーバ等のその他のサービス処理装置も、図３と同様のＩ／Ｆ情報を有している。
【００５２】
Ｉ／Ｆ情報登録部１２は、以上のように構成されたＩ／Ｆ情報の一部をサービス検索サーバ２０に登録に登録したり、指示書エディタ３０からの要求に応じてＩ／Ｆ情報を当該指示書エディタ３０に送信する。
【００５３】
サービス制御部１３は、連携処理サーバ５０を介して指示書管理サーバ４０から送信された指示書の一覧をＧＵＩ１４に表示させる。また、サービス制御部１３は、ＧＵＩ１４を介して、指示書が選択されたり、パラメータが入力された場合には、その内容を指示書に反映し、その中で実行可能な処理をサービス提供部１１に実行させる。サービス制御部１３は、サービス提供部１１の実行処理が終了したときは、実行結果及び指示書を連携処理サーバ５０に送信する。
【００５４】
サービス検索サーバ２０は、指示書エディタ３０からの要求に応じて、登録されているＩ／Ｆ情報の中から所望のサービスを検索する。サービス検索サーバ２０は、具体的には図２に示すように、複合機１０等のサービス処理装置から登録されたＩ／Ｆ情報を記憶する登録情報記憶部２１と、登録情報記憶部２１に登録された情報を用いて所望のサービスを検索する登録情報検索部２２と、検索結果の応答を行う検索結果応答部２３と、を備えている。
【００５５】
指示書エディタ３０は、クライアント端末であると共に、指示書作成機能を有する。指示書エディタ３０は、具体的には図２に示すように、ユーザが操作を行ったり、サービスリストを表示するＧＵＩ３１と、指示書を作成する指示書作成部３２とを備えている。
【００５６】
ＧＵＩ３１は、ユーザが所望のサービスを検索したり、ワークフローを作成する際に使用される。さらに、ＧＵＩ３１は、サービス検索サーバ２０の検索結果を表すサービスリストや、文書編集サーバ６１、承認処理サーバ６３、文書管理サーバ６２の利用方法、指示書エディタ３０で保持する連携処理パターン情報を表示する。また、ＧＵＩ３１は、クライアント端末として所定のパラメータ等を入力する際にも使用される。
【００５７】
指示書作成部３２は、ユーザによるＧＵＩ３１の操作に従って、利用時の表示内容、入力パラメータ、文書編集サービス／承認処理サービス／文書管理サービスの連携の仕方（ワークフロー）を定義した指示書を作成し、作成した指示書をＸＭＬ形式のファイルで出力する。
【００５８】
図４は、指示書エディタ３０のＧＵＩ３１に表示された指示書エディタ画面１００を示す図である。指示書エディタ画面１００は、サービスウインドウ１０１、フローウインドウ１０２、ロジックウインドウ１０３、プロパティーウインド１０４で構成される。
【００５９】
サービスウィンドウ１０１は、複合機１０等の様々なサービスを表示する。ロジックウィンドウ１０３は、サービス間の連携のパターンを示すワークフローを表示する。プロパティーウインドウ１０４は、サービスウインドウ１０１とロジックウインドウ１０３に表示された各アイコンの詳細な設定パラメータを表示する。
【００６０】
指示書作成部３２は、サービス検索サーバ２０から利用可能なサービスの概要を表したサービスリストを取得すると共に、サービスリストに記述された各サービス処理装置のロケーション情報を使って、各サービス処理装置からサービスの利用方法を示すＩ／Ｆ情報を取得する。指示書作成部３２は、取得した情報に基づいて、ＧＵＩ３１にサービスウインドウ１０１とプロパティーウインドウ１０４を表示する。
【００６１】
ユーザは、ワークフローを作成する際には、ＧＵＩ３１を操作して、サービスウインドウ１０１のアイコンとロジックウインドウ１０３のアイコンをフローウインドウ１０２にドラッグ・アンド・ドロップすればよい。このとき、指示書作成部３２は、ＧＵＩ３１の操作に応じて、サービスの連携を組み立てて指示書を作成する。
【００６２】
さらに、ユーザは、ＧＵＩ３１を操作して、所望のアイコンを選択してプロパティウインドウ１０４に表示される内容を編集することによって、サービスやロジックを詳細に設定することができる。
【００６３】
指示書エディタ３０は、以上のような処理に従ってＸＭＬ形式でファイル化された指示書を作成し、作成した指示書を指示書管理サーバ４０に送信する。
【００６４】
図５は、指示書作成部３２によって作成された指示書の構成を示す図である。指示書は、図３に示すＩ／Ｆ情報の構成に加えて、＜フロー（Ｆｌｏｗ）＞を有している。
【００６５】
＜フロー＞は、サービス間の連携を記述する要素であり、＜起動（Ｉｎｖｏｋｅ）＞、制御構造や論理演算、算出演算をするための＜ｉｆ＞等の要素を含んでいる。
【００６６】
ここで、＜起動＞は、サービス処理装置の特定のメソッドを表し、サービスの呼び出しを実行する。＜起動＞の要素として、パラメータの位置情報を示す＜マップ＞と、呼び出すメソッド名＜メソッド＞を有している。制御構造や論理演算等を示す＜ｉｆ＞、＜ａｎｄ＞、＜ｅｑ＞、＜ｇｔ＞は、連携処理時に条件分岐を行ったり、サービス間で受け渡されるパラメータの調整を実施する。
【００６７】
指示書は、サービスの連携処理の制御に関するすべての情報を＜フロー＞の要素に記述している。これにより、指示書によって表される連携処理自体も１つのサービスとみなされる。したがって、指示書は、上述のように、他のサービス処理装置のＩ／Ｆ情報と同じ内容を含んでいる。
【００６８】
指示書管理サーバ４０は、指示書を管理する指示書管理部４１を備えている。指示書管理部４１は、指示書エディタ３０から送信された指示書を保持し、複合機１０や連携処理サーバ５０からの要求に応じて指示書を送信する。
【００６９】
連携処理サーバ５０は、指定された指示書を解釈・実行する連携処理部５１を備えている。連携処理部５１は、指示書が送信されると、その指示書を解釈し、指示書に記述されている順番と利用方法に従い、所定のサービス処理装置、文書編集サーバ６１、文書管理サーバ６２、承認処理サーバ６３等を呼び出し、連携を実行する。また、連携処理サーバ５０は、実行中の連携処理の状況や実行終了した連携処理の結果の情報を保存し、外部からの要求に応じて、連携処理の状況や結果を通知する。
【００７０】
文書編集サーバ６１は、連携処理サーバ５０からの要求により、クライアント端末である指示書エディタ３０のＧＵＩ３１に文書編集画面を表示し、文書編集画面の操作に応じて文書編集機能を実行する。また、文書編集サーバ６１は、電源オン時にサービス検索サーバ２０に対して、Ｉ／Ｆ情報の一部を通知する。さらに、文書編集サーバ６１は、指示書エディタ３０からの要求により文書編集サービスの利用方法を示すＩ／Ｆ情報を送信する。
【００７１】
文書管理サーバ６２は、文書格納機能を有しており、連携処理サーバ５０からの要求により、クライアント端末である指示書エディタ３０のＧＵＩ３１に文書管理画面を表示し、文書管理画面の操作に応じて文書管理機能を実行する。また、文書管理サーバ６２は、電源オン時にサービス検索サーバ２０に対して、Ｉ／Ｆ情報の一部を通知する。さらに、文書管理サーバ６２は、指示書エディタ３０からの要求により文書管理サービスの利用方法を示すＩ／Ｆ情報を送信する。
【００７２】
承認処理サーバ６３は、連携処理サーバ５０からの要求により、クライアント端末である指示書エディタ３０のＧＵＩ３１に承認画面を表示し、承認画面の操作に応じて承認処理を実行する。また、承認処理サーバ６３は、電源オン時に、サービス検索サーバ２０に対して、Ｉ／Ｆ情報の一部を通知する。さらに、承認処理サーバ６３は、指示書エディタ３０からの要求により承認処理サービスの利用方法を示すＩ／Ｆ情報を送信する。
【００７３】
スキャンサーバ６４は、紙文書をスキャンしてスキャンデータを生成し、スキャンデータを任意の宛先にメールで送信すると共に、当該スキャンデータを任意のロケーションに保存させる機能を有している。ここで、スキャンサーバ６４は、連携処理サーバ５０からの要求により、クライアント端末である指示書エディタ３０のＧＵＩ３１にスキャン処理画面を表示し、スキャン処理画面の操作に応じてスキャン処理を実行する。また、スキャンサーバ６４は、電源オン時に、サービス検索サーバ２０に対して、Ｉ／Ｆ情報の一部を通知する。さらに、スキャンサーバ６４は、指示書エディタ３０からの要求によりスキャン処理サービスの利用方法を示すＩ／Ｆ情報を送信する。
【００７４】
第１のサービス処理装置７０は、外部からの指示に従って文書に関する所定のサービス処理を行う。ここで、第１のサービス処理装置７０は、連携処理サーバ５０からの要求により、指示書エディタ３０のＧＵＩ３１にサービス処理画面を表示し、サービス処理画面の操作に応じてサービス処理を実行する。また、第１のサービス処理装置７０は、電源オン時に、サービス検索サーバ２０に対して、Ｉ／Ｆ情報の一部を通知する。さらに、第１のサービス処理装置７０は、指示書エディタ３０からの要求によりサービス処理の利用方法を示すＩ／Ｆ情報を送信する。
【００７５】
図６は、第１のサービス処理装置７０の機能的な構成を示す図である。第１のサービス処理装置７０は、文書情報の必要性を判断する判断部７１と、文書処理を行う文書処理部７２と、ネットワーク５上から文書情報を取得する情報取得部７３と、ネットワーク５上に文書情報を格納する情報格納部７４と、文書情報の位置情報を更新する位置情報更新部７５とを備えている。
【００７６】
第２のサービス処理装置８０は、外部からの指示に従って文書の属性を処理するサービスを行う。ここで、第２のサービス処理装置８０は、連携処理サーバ５０からの要求により、指示書エディタ３０のＧＵＩ３１にサービス処理画面を表示し、サービス処理画面の操作に応じてサービス処理を実行する。また、第２のサービス処理装置８０は、電源オン時に、サービス検索サーバ２０に対して、Ｉ／Ｆ情報の一部を通知する。さらに、第２のサービス処理装置８０は、指示書エディタ３０からの要求によりサービス処理の利用方法を示すＩ／Ｆ情報を送信する。
【００７７】
図７は、第２のサービス処理装置８０の機能的な構成を示す図である。第２のサービス処理装置８０は、文書情報の必要性を判断する判断部８１と、文書処理を行う文書処理部８２と、ネットワーク５上から属性を取得する属性取得部８３と、属性を設定する属性設定部８４と、備えている。
【００７８】
以上のように構成された文書処理システム１は、文書編集サーバ６１、文書管理サーバ６２、承認処理サーバ６３等に、それぞれのサービスを実行するためのアプリケーションプログラムがインストールされると、以下のように動作する。
【００７９】
文書編集サーバ６１、文書管理サーバ６２、承認処理サーバ６３等は、インストール終了後、それぞれのサービス概要とアドレスを示す情報、具体的にはＩ／Ｆ情報の一部（例えば、＜サービス種類＞、＜サービス名＞、＜サービスロケーション情報＞、＜入力＞、＜出力＞）をサービス検索サーバ２０に通知する。なお、Ｉ／Ｆ情報の全部をサービス検索サーバ２０に通知してもよい。
【００８０】
サービス検索サーバ２０の登録情報記憶部２１は、文書編集サーバ６１、文書管理サーバ６２、承認処理サーバ６３から送信された情報を保存する。
【００８１】
（指示書作成処理）
一方、指示書エディタ３０は、ユーザの操作に応じて、サービス連携を定義した指示書を作成する。具体的には、指示書エディタ３０の指示書作成部３２は、ＧＵＩ３１を介してサービス連携を定義するためのユーザの操作が開始すると、サービス検索サーバ２０に利用可能なサービスを示すサービスリストを要求する。そして、指示書作成部３２は、サービス検索サーバ２０から検索結果を示すサービスリスト及びロケーション情報が送信されると、サービスリストをＧＵＩ３１に表示する。
【００８２】
さらに、指示書作成部３２は、サービスリスト共に送信されたロケーション情報を用いて、サービス処理装置から直接Ｉ／Ｆ情報を取得する。なお、サービス検索サーバ２０がすべてのサービス処理装置のＩ／Ｆ情報を保持している場合は、表示部３２は、サービス検索サーバ２０が保存しているＩ／Ｆ情報を要求して、結果を保持してもよい。
【００８３】
指示書作成部３２は、ＧＵＩ３１を介してユーザがサービスの連携を定義すると、連携の流れの情報、連携起動時と連携途中のＧＵＩ表示情報、各サービスに対するＩ／Ｆ情報を表す指示書をＸＭＬ形式でファイル化する。そして、指示書作成部３２は、作成した指示書を指示書管理サーバ４０に送信する。
【００８４】
指示書管理サーバ４０の指示書管理部４１は、指示書エディタ３０から送信された指示書を保存する。
【００８５】
（連携処理の起動）
一方、複合機１０は、連携処理を起動させることができる。具体的には、複合機１０のサービス制御部１３は、ＧＵＩ１４の操作に応じて、指示書管理サーバ４０に対して指示書を要求し、指示書管理サーバ４０から送信された指示書の一覧をＧＵＩ１４に表示する。
【００８６】
図８は、ＧＵＩ１４に表示された指示書の一覧を表す指示書一覧画面１１０の一例を示す図である。指示書一覧画面１１０は、表示すべき指示書を選択するためのボタンを有している。例えば、指示書一覧画面１１０は、「Ｍｇｒ（マネージャー）への連絡」ボタン１１１、「ＨＰ（ホームページ）への掲示」ボタン１１２、「連絡所ＤＢ（データベース）への登録」ボタン１１３、「人秘資料登録」ボタン１１４、「承認ワークフロー」ボタン１１５、「個人のＤｅｓｋｔｏｐへ」ボタン１１６を備えている。ユーザは、指示書一覧画面１１０から１つ以上の指示書を選択することができる。
【００８７】
図９は、「Ｍｇｒへの連絡」ボタン１１１が選択されたときに表示される指示書画面の一例を示す図である。図１０は、「ＨＰへの掲示」ボタン１１２が選択されたときに表示される指示書画面の一例を示す図である。
【００８８】
このとき、ユーザは、ＧＵＩ１４を操作することで、指示書一覧画面１１０の中から１つ以上の指示書ボタンを選択し、更に必要なパラメータを入力することができる。ここで、ユーザによって選択された指示書は、スキャンサーバ６４に紙文書をスキャンさせた後、スキャンによって得られた文書情報を、第１のサービス処理装置７０、第２のサービス処理装置８０にそれぞれ所定の処理をさせる連携情報であるものとする。
【００８９】
図１１は、文書処理システムの連携処理の手順を示すフローチャートである。ユーザが最後にＧＵＩ１４を介してスタートボタンを押下すると、文書処理システム１は、図１１に示すステップＳＴ１以下の処理に従って、連携処理を実行する。
【００９０】
ステップＳＴ１では、複合機１０は、連携処理サーバ５０に対して連携処理の開始を通知する。
【００９１】
ステップＳＴ２では、連携処理サーバ５０は、ユーザに選択された指示書に基づいて、スキャンサーバ９０に紙文書をスキャンして、文書管理サーバ７０に画像文書とその属性情報を格納するように指示する。
【００９２】
ステップＳＴ３では、スキャンサーバ９０は、連携処理サーバ５０の指示に基づいて、紙文書をスキャンして画像文書を生成する。そして、画像文書とその属性情報とを文書管理サーバ７０に格納した後、処理結果及び処理された文書情報について連携処理サーバ５０に通知する。
【００９３】
ステップＳＴ４では、連携処理サーバ５０は、第１のサービス処理装置７０に対して、必要となるデータの位置情報及び処理内容を送信して、ユーザの意思決定を要求するように指示する。
【００９４】
ステップＳＴ５では、第１のサービス処理装置７０は、ユーザの意思決定を求めるために次の処理を行う。具体的には、第１のサービス処理装置７０の判断部７１は、送信された位置情報に基づいて、表示に必要なすべてのデータ（文書情報と他の参考情報となる文書情報の位置情報等）を決定する。情報取得部７３は、必要な文書情報が文書管理サーバ６２にある場合、必要となる文書情報のみを文書管理サーバ６２から取得する。第１のサービス処理装置７０は、このようにして取得した必要なすべてのデータを、クライアント端末である指示書エディタ３０に送信する。
【００９５】
ステップＳＴ６では、指示書エディタ３０は、第１のサービス処理装置７０からのデータを受信すると、上記データに基づいてＧＵＩ３１に操作画面を表示して、ユーザの意思決定を求める。指示書エディタ３０は、ユーザがＧＵＩ３１を操作して意思決定が行われると、ユーザの意思決定を第１のサービス処理装置７０に通知する。
【００９６】
ステップＳＴ７では、第１のサービス処理装置７０は、指示書エディタ３０からの意思決定結果を取得すると、意思決定に従ってサービス処理を行う。
【００９７】
例えば、情報取得部７３は、対象となる文書情報がネットワーク５上にある場合、必要となる文書情報等をネットワーク５上から取得して、取得した文書情報を文書処理部７２に供給する。文書処理部７２は、例えば、連携処理サーバ５０から送信された処理内容に従って所定のサービスを起動して、情報取得部７３で取得された文書情報に所定の文書処理を施す。
【００９８】
また、判断部７１は、指示書に基づいて、次のサービス工程における情報取得コスト（次のサービス工程に移行する際に文書情報を格納先に戻してから再び取得するコスト）と、次のサービス工程における位置情報更新コスト（次のサービス工程に移行する際に指示書の位置情報のみを更新するコスト）とを比較する。そして、コストが小さくなるように、文書情報を元の格納先へ書き戻したり、文書情報の位置情報を更新する。なお、判断部７１は、処理対象の文書情報を最初から文書処理部７２で処理できると判断した場合には、文書処理部７２に上記文書情報の処理を実行させる。
【００９９】
第１のサービス処理装置７０は、以上のようなサービス処理を終了すると、処理結果及び処理された文書情報を示す指示情報を連携処理サーバ５０に通知する。
【０１００】
ステップＳＴ８では、連携処理サーバ５０は、第１のサービス処理装置７０から通知された処理結果を用いて、第２のサービス処理装置８０の処理内容を決定する。そして、連携処理サーバ５０は、第２のサービス処理装置８０に対して、決定した処理内容を指示すべく、必要となるデータの位置情報及び処理内容を送信する。
【０１０１】
なお、連携処理サーバ５０は、第１のサービス処理装置７０の処理結果に基づいて、第２のサービス処理装置８０の処理内容だけでなく、必要に応じてその次に行う処理内容を決定することもできる。
【０１０２】
ステップＳＴ９では、第２のサービス処理装置８０は、送信された位置情報に基づいて次の処理を実行する。具体的には、判断部８１は、送信された位置情報に基づいて文書管理サーバ６２に格納されている文書情報の位置を判断する。属性取得部８３は、文書管理サーバ６２に格納されている文書情報の属性を取得する。そして、属性設定部８４は、文書管理サーバ６２に格納されている文書情報の属性を設定する。第２のサービス処理装置８０は、以上のような処理を経て、属性の設定変更の処理結果及び処理された文書を連携処理サーバ５０に通知する。
【０１０３】
ステップＳＴ１０では、連携処理サーバ５０は、第２のサービス処理装置８０からの処理結果及び処理された文書の通知を受信すると、連携処理開始を通知した複合機１０に対して、連携処理の終了結果を通知する。なお、次の処理が必要な場合は、連携処理サーバ５０は、第１のサービス処理装置７０及び第２のサービス処理装置８０の処理結果に基づいて、次のサービス処理の内容を決定してもよい。
【０１０４】
以上のように、本実施の形態に係る文書処理システム１は、ワークフローを実行するための指示書に従って、サービス処理装置に対して、処理対象である文書の位置情報とサービス処理内容とを送信するとによって、大容量の文書情報の移動を最小化することがで、システム全体の連携処理の高速化を図ることができる。
【０１０５】
すなわち、文書処理システム１は、ワークフローの制御と、個々のサービス処理を独立させ、動的な連携によって一連の処理を実行することにより、参照すべき文書やデータをネットワーク間で持ち回る必要がなくなり、必要に応じてサービス処理に必要な文書やデータを取得するので、連携処理の高速化を図ることができる。
【０１０６】
なお、本発明は、上述した実施の形態に限定されるものではなく、特許請求の範囲に記載された範囲内で様々な設計上の変更を行うことができる。
【０１０７】
例えば、１つのサービスに、文書格納機能と文書を直接処理するサービスを組み込んで一体化してもよい。これにより、文書の転送回数を少なくして、連携処理の高速化を図ることができる。
【０１０８】
指示書の格納をサービスとして設けてもよい。これにより、１つの指示書を共有することができる。
【０１０９】
また、入力／処理／出力のデータセットのうち、サービスに必要なデータの受け渡しを予め指示書に記述しておいてもよい。サービスの実装を単純化することができ、処理を固定化するものの、サービス処理の効率を向上させることができる。
【０１１０】
サービスが情報の移動を個別に最適化するのではなく、システム全体の処理内容と位置を検索し、処理の順序の入れ替えや並列化を施し、情報の移動コストが最小になるように最適化してもよい。これにより、システム全体の処理の効率化を図ることができる。
【０１１１】
さらに、指示書を含んだ指示書を作成し、サービス処理装置が連携処理装置５０として機能してもよい。これにより、複雑な連携処理を分割して管理するので、容易に保守をすることができる。
【０１１２】
また、処理内容と処理対象との両方を提示し、１つ以上のサービスがその情報に基づいて自立的に処理可能か否かを判断して、処理可能であれば、処理することでサービスを実現してもよい。これにより、耐障害性を向上させて処理を並列化することができる。
【０１１３】
なお、上述した実施形態では、複合機１０が連携起動機能を有する場合を例に挙げて説明したが、スキャンサーバ６４やその他のサーバが連携起動機能を有していてもよい。また、指示書エディタ３０がクライアント端末として機能したが、ネットワーク上に独立したクライアント端末を設けてもよいし、他のサーバがクライアント端末として機能してもよい。
【０１１４】
［第２の実施の形態］
（システム構成）
図１２は、本発明の第２の実施の形態に係る文書処理システム２０１の構成を示すブロック図である。
【０１１５】
文書処理システム２０１は、様々なサービスやアプリケーションがネットワーク２０５を介して接続されたものである。
【０１１６】
文書処理システム２０１は、具体的は、複数のサービスを連携させてユーザの所望の処理を指示するユーザインタフェースを備えたクライアント端末２１０と、ユーザの所望のサービスを検索するサービス検索サーバ２２０と、クライアント端末で指示されたサービス連携に関する情報から指示書を作成する指示書生成サーバ２３０と、指示書を管理する指示書管理サーバ２４０と、指示書に従って各サービスの連携処理を実行する連携処理サーバ２５０と、を備えている。
【０１１７】
さらに、文書処理システム２０１は、画像文書のノイズ除去処理や画像回転処理やＯＣＲ処理や画像をバインドする等の画像処理を行う画像処理装置２６１と、文書を管理する文書管理サーバ２６２と、文書を配信する文書配信サーバ２６３と、第１のサービス処理を行う第１のサービス処理装置２６４と、第２のサービス処理を行う第２のサービス処理装置２６５と、を備えている。
【０１１８】
なお、文書処理システム２０１は、本実施形態では所定のサービス処理を行う複数のサーバがネットワーク２０５を介して接続された構成となっているが、複数のサービスがネットワーク２０５を介して接続されていれば特に限定されるものではない。
【０１１９】
ここで、指示書とは、一連の処理を複数の機能的な処理に分解した場合において、各機能の関係を表す情報と、各機能を呼び出すためのインタフェース（Ｉ／Ｆ）情報と、一連の処理に関するグラフィカルユーザインタフェース（ＧＵＩ）を構成するための情報等の情報を統合したデータをいう。
【０１２０】
図１３は、文書処理システム２０１のクライアント端末２１０、サービス検索サーバ２２０、指示書生成サーバ２３０、指示書管理サーバ２４０、連携処理サーバ２５０、文書に対して各種画像処理を行う画像処理装置２６１と、文書を管理する文書管理サーバ２６２と、文書を配信する文書配信サーバ２６３と、第１のサービス処理を行う第１のサービス処理装置２６４及び第２のサービス処理を行う第２のサービス処理装置２６５の機能的な構成を示すブロック図である。
【０１２１】
クライアント端末２１０は、指示書を作成指示するために、画面表示したり所定の操作を行うためのグラフィカルユーザインタフェース（ＧＵＩ）２１１を備えている。
【０１２２】
サービス検索サーバ２２０は、指示書生成サーバ２３０からの要求に応じて、登録されている各サービスのＩ／Ｆ情報の中から所望のサービスを検索する。サービス検索サーバ２２０は、具体的には図１３に示すように、画像処理装置２６１，文書管理サーバ２６２、文書配信サーバ２６３、第１のサービス処理装置２６４、サービス処理装置２６５等のサービス処理装置から登録されたＩ／Ｆ情報を記憶する登録情報記憶部２２１と、登録情報記憶部２２１に登録された情報を用いて所望のサービスを検索する登録情報検索部２２２と、検索結果の応答を行う検索結果応答部２２３と、を備えている。
【０１２３】
指示書生成サーバ２３０は、具体的には図１３に示すように、サービス情報管理部２３１、Ｗｅｂサーバ部２３２、指示書作成部２３３を備えている。
【０１２４】
サービス情報管理２３１は、サービス検索サーバ２２０にサービス検索指示を出したり、ネットワーク２０５上に分散した各サービス処理装置に対し各サービスが備えるＩ／Ｆ情報などのサービス情報の取得要求を出したり、サービス検索サーバ２２０からの検索結果や各サービス処理装置から受信したサービス情報を管理する。
【０１２５】
Ｗｅｂサーバ２３２は、サービス情報管理部２３１に管理されたサービス情報をもとに、ワークフロー作成のためのＧＵＩ画面となるＨＴＭＬファイルを生成する。生成するＧＵＩ画面の一例としては、図４に示すようなレイアウトの画面を生成することができる。クライアント端末２１０からの閲覧要求に応じて、生成したＧＵＩ画面となるＨＴＭＬファイルを前記クライアント端末へ送信する。クライアント端末の画面上で指示された情報は、ＣＧＩ（Ｃｏｍｍｏｎ  Ｇａｔｅｗａｙ  Ｉｎｔｅｒｆａｃｅ）形式によりクライアント端末から送信され、Ｗｅｂサーバ部２３２で受信する。
【０１２６】
指示書作成部２３３は、Ｗｅｂサーバ部２３２で受信したユーザからのサービス連携の指示に関する情報と、サービス情報管理部に管理されるサービスのＩ／Ｆ情報等の各サービスの情報とに基づいて、各サービスへ依頼する処理の内容、入力パラメータ、各サービスの連携の仕方（ワークフロー）、文書名や格納ロケーション情報等処理対象の文書を特定するための情報を定義した指示書を作成し、作成した指示書をＸＭＬ形式のファイルで出力する。
【０１２７】
指示書生成サーバ２３０は、以上のような処理に従ってＸＭＬ形式でファイル化された指示書を作成する。ここで生成する指示書の構成は、第１の実施形態と同様に図５に示すものである。作成した指示書を指示書管理サーバ２４０に送信する。また、ユーザによりサービス連携処理の実行が指示されている場合は、作成した指示書を連携処理サーバ２５０に送信する。
【０１２８】
指示書管理サーバ２４０は、指示書を管理する指示書管理部２４１を備えている。指示書管理部２４１は、指示書生成サーバ２３０から送信された指示書を保持し、クライアント端末２１０や連携処理サーバ２５０からの要求に応じて指示書を連携処理サーバ２５０へ送信する。
【０１２９】
連携処理サーバ２５０は、指定された指示書を解釈・実行する連携処理部２５１を備えている。連携処理部２５１は、指示書が送信されると、その指示書を解釈し、指示書に記述されている順番と利用方法に従い、所定のサービス処理装置、画像処理装置２６１、文書管理サーバ２６２、文書配信サーバ２６３、その他各サービス処理装置を呼び出し、連携を実行させる。また、連携処理サーバ２５０は、実行中の連携処理の状況や実行終了した連携処理の結果の情報を保存し、外部からの要求に応じて、連携処理の状況や結果を通知する。また、連携処理部２５１は、受信した指示書を解釈し、各サービス処理装置へ依頼する際に、処理依頼内容や入力パラメータ、処理対象の文書を特定するための情報等の情報からなる指示書を各サービス処理装置毎に生成してもよいし、各サービス処理装置で行う処理の前後の処理との関連を記載した指示書を作成してもよいし、指示書の形式ではなく各サービス処理装置毎の固有の情報交換形式で処理依頼を行うように構成しても良い。
【０１３０】
画像処理装置２６１は、画像処理機能を行うソフトウェアプログラムがインストールされたコンピュータであり、連携処理サーバ２５０からの処理要求依頼に含まれる、サービス処理依頼内容や入力パラメータ、処理対象文書の情報に基づいて、文書の処理を行う。また、画像処理装置２６１は、起動時にサービス検索サーバ２２０に対して、Ｉ／Ｆ情報の一部を通知する。さらに、文書編集サーバ２６１は、指示書生成サーバ２３０からの要求により文書編集サービスの利用方法を示すＩ／Ｆ情報を送信する。
【０１３１】
文書管理サーバ２６２は、文書格納機能を有しており、連携処理サーバ２５０からの要求に含まれる情報に基づき、文書の格納や検索や読み出し、文書に関する属性の変更や各種処理を実行する。また、文書管理サーバ２６２は、起動時にサービス検索サーバ２２０に対して、Ｉ／Ｆ情報の一部を通知する。さらに、文書管理サーバ２６２は、指示書生成サーバ２３０からの要求により文書管理サービスの利用方法を示すＩ／Ｆ情報を送信する。
【０１３２】
文書配信サーバ２６３は、取得した文書を、指示された文書管理サーバへ格納したり、指示された送信先へメール送信やＦＡＸ送信を行ったり、指示されたプリンタへプリント出力処理を行う機能を備えている。連携処理サーバ２５０からの要求により、クライアント端末で指示された文書とその配信先の情報に基づき、文書の配信処理を行う。また、文書配信サーバ２６３は、起動時に、サービス検索サーバ２２０に対して、Ｉ／Ｆ情報の一部を通知する。さらに、文書配信サーバ２６３は、指示書生成サーバ２３０からの要求により承認処理サービスの利用方法を示すＩ／Ｆ情報を送信する。
【０１３３】
第１のサービス処理装置２６４は、外部からの指示に従って文書に関する所定のサービス処理を行う装置である。ここで、第１のサービス処理装置２６４は、連携処理サーバ２５０からの処理依頼内容や入力パラメータ、処理対象の文書を特定するための情報等の情報に基づき、自身で実行すべきサービス処理を実行する。また、第１のサービス処理装置２６４は、起動時に、サービス検索サーバ２０に対して、Ｉ／Ｆ情報の一部を通知する。さらに、第１のサービス処理装置２６４は、指示書生成サーバ２３０からの要求によりサービス処理の利用方法を示すＩ／Ｆ情報を送信する。
【０１３４】
以上のように構成された文書処理システム２０１は、画像処理装置２６１、文書管理サーバ２６２、文書配信サーバ２６３等に、それぞれのサービスを実行するためのアプリケーションプログラムがインストールされると、以下のように動作する。
【０１３５】
画像処理装置２６１、文書管理サーバ２６２、文書配信サーバ２６３等は、起動処理において、それぞれのサービス概要とアドレスを示す情報、具体的にはＩ／Ｆ情報の一部（例えば、＜サービス種類＞、＜サービス名＞、＜サービスロケーション情報＞、＜入力＞、＜出力＞）をサービス検索サーバ２２０に通知する。なお、Ｉ／Ｆ情報の全部をサービス検索サーバ２２０に通知してもよい。
【０１３６】
サービス検索サーバ２２０の登録情報記憶部２２１は、画像処理装置２６１、文書管理サーバ２６２、文書配信サーバ２６３から送信された情報を保存する。
【０１３７】
図１４は、文書処理システム２０１の連携処理の手順を示すフローチャートである。
【０１３８】
（処理フロー定義処理）
ステップＳＴ２１では、ユーザは、クライアント端末２１０にインストールされたブラウザを通して、指示書生成サーバ２３０のＷｅｂサーバ部２３２が提供するユーザインタフェース画面用に生成されたＨＴＭＬファイルのＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）にアクセスする。Ｗｅｂサーバ部は閲覧要求に応じユーザインタフェース画面のＨＴＭＬファイルをクライアント端末２１０に送信し、クライアント端末のブラウザに表示される。ユーザはこのユーザインタフェース画面を用いて、所望のサービス連携の処理フローを定義する。定義さたサービス連携の処理フローに関する情報は指示書生成サーバ２３０のＷｅｂサーバ部２３２に送信される。
【０１３９】
（指示書作成処理）
ステップＳＴ２２では、指示書生成サーバ２３０は、Ｗｅｂサーバ部２３２が受信したクライアント端末２１０より送信されたサービス連携の処理フローに関する情報と、サービス情報管理部２３１に管理された各サービスのＩ／Ｆ情報などのサービス情報とから各サービスへ依頼する処理の内容、入力パラメータ、各サービスの連携の仕方（ワークフロー）、文書名や格納ロケーション情報等処理対象の文書を特定するための情報を定義した指示書を作成し、作成した指示書をＸＭＬ形式のファイルで出力する。指示書管理サーバ２４０の指示書管理部２４１は、指示書生成サーバ２３０から送信された指示書を保存する。
【０１４０】
（連携処理の起動）
ステップＳＴ２３では、クライアント端末２１０は、指示書管理サーバ２４０へアクセスし、指示書管理サーバ２４０で管理される指示書のリストを取得し、例えば図８に示すようなサービス連携処理選択画面から、所望のサービス連携処理を選択し、処理起動の指示を行う。指示書管理サーバ２４０は、クライアント端末２１０から受信したサービス連携処理の選択情報に対応した指示書を連携処理サーバ２５０へ送信する。
【０１４１】
（第１のサービス処理依頼）
ステップＳＴ２４では、連携処理サーバ２５０は、指示書管理サーバ２４０より送信された処理フロー全体を定義した指示書を解釈し、指示書に記述された第１番目の処理である画像処理装置２６１へ依頼を行う。送信された指示書に記載された情報をもとに、処理依頼するサービス処理装置のロケーションや処理依頼に必要な入力パラメータと出力パラメータ形式、処理依頼のためのメソッド名、起動方法、処理対象文書を特定する情報を抽出し、第１の処理依頼の指示書を作成する。この作成された指示書を第１の処理依頼先である画像処理装置２６１へ送信する。画像処理装置２６１は、送信された指示書に記述された処理対象文書の格納先ロケーション情報をもとに、処理対象文書をコピーし文書を取得する。取得した文書画像に対し、サービス処理依頼内容を解釈し、ノイズ除去、ＯＣＲ処理といった画像処理を行い抽出されたテキスト文書とバインドする処理を行う。画像処理を行い得られた画像文書とテキスト文書がバインドされた文書を元の格納先へ再格納する。処理が完了すると、処理のステータス情報（完了）や出力パラメータ、処理後の文書の格納先の情報などの処理結果を連携処理サーバ２５０へ送信する。
【０１４２】
（第２のサービス処理依頼）
ステップＳＴ２５では、連携処理サーバ２５０は、第１のサービス処理（画像処理）からの処理結果を受信すると、第１の処理依頼結果をログとして管理するとともに、処理フロー全体が定義された指示書に基づき第２の処理依頼先を特定し、第２のサービス処理である文書管理サーバ２６２へ処理依頼を行う。第１のサービス処理依頼と同様に、処理依頼に関する情報である文書を格納する旨の情報と、文書の格納先の情報と、処理対象文書を特定する情報を文書管理サーバ２６２へ送信する。
【０１４３】
処理依頼を受け付けた文書管理サーバ２６２は、依頼内容に基づき、前の処理（第１のサービス処理）で処理され格納された文書を、依頼内容に記述された格納先情報に基づき格納処理を行う。処理が完了すると、処理のステータス情報（完了）や出力パラメータ、処理後の文書の格納先の情報などの処理結果を連携処理サーバ２５０へ送信する。
【０１４４】
（第３のサービス処理依頼）
ステップＳＴ２６では、連携処理サーバ２５０は、第２のサービス処理（文書格納処理）からの処理結果を受信すると、第２の処理依頼結果をログとして管理するとともに、処理フロー全体が定義された指示書に基づき第３の処理依頼先を特定し、第３のサービス処理である文書配信サーバ２６３へ処理依頼を行う。第２のサービス処理依頼と同様に、処理依頼に関する情報である文書を格納する旨の情報と、文書の格納先の情報と、処理対象文書を特定する情報を文書配信サーバ２６２へ送信する。
【０１４５】
処理依頼を受け付けた文書配信サーバ２６２は、依頼内容に基づき、前の処理（第２のサービス処理）で処理され格納された文書を、文書を特定する情報（格納先情報）に基づき文書ファイルを読み出し、依頼内容に記述された処理を行う。ここでは、テキスト文書と画像文書がバインドされた文書のうち、テキスト文書のみを配信先として指定されたメールアドレスへメール送信し、画像文書のみを指定されたＦＡＸ番号へＦＡＸ送信を行う。処理が完了すると、処理のステータス情報（完了）や出力パラメータ、処理後の文書の格納先の情報などの処理結果を連携処理サーバ２５０へ送信する。この処理において、例えばＦＡＸ送信処理において相手先が話し中でありかつ所定回数リトライを行っても相手先と接続できなかったとすると、連携処理サーバ２５０へ送信するステータス情報としては、「メール送信：完了、ＦＡＸ送信：未送信」となる。
【０１４６】
（連携処理の完了）
ステップＳＴ２７では、連携処理サーバ２５０は、第３のサービス処理からの処理結果を受信し、処理フロー全体が定義された指示書に記述された次の処理がないと判断すると、クライアント端末２１０へすべての処理が完了した旨の通知を行い、処理が完了する。
【０１４７】
なお、連携処理サーバ２５０は、第１のサービス処理の処理結果に基づいて、第２のサービス処理の処理内容だけでなく、必要に応じてその次に行う処理内容を決定することもできる。
【０１４８】
また、連携処理サーバ２５０は、サービス処理依頼の処理結果を受信し、各サービスの処理ステータスに応じた処理を行うこともできる。前記ステップＳＴ２６に記載したように、第１のサービス処理依頼の結果として「メール送信：完了、ＦＡＸ送信：未送信」というステータス情報を受信した場合、次の第２のサービスへ処理依頼を行うと同時に、第１のサービスへＦＡＸ送信処理のみ再度依頼を行うといった処理を行うこともできる。
【０１４９】
さらに、連携処理サーバ２５０は、指示書の記述に基づき、第１のサービス処理の処理結果に応じた条件分岐の処理制御を行うこともできる。例えば、第１の処理結果として文書の承認処理が「承認」であれば、第２の処理へ処理依頼を行い、「未承認」であれば第３の処理へ処理依頼を行う、という処理を行うことも可能である。
【０１５０】
また、連携処理サーバ２５０は、指示書の記述に基づき、第１のサービス処理結果と第２のサービス処理結果とが所定の条件を満たした場合に第３の処理依頼を行う処理の合流の制御を行うこともできる。例えば、会社組織において総務部による第１の文書の承認処理（第１のサービス処理）と、人事部による第２の文書承認処理（第２のサービス処理）とが行われ、これらの承認済み文書が揃った時点で第３の処理依頼を行う、という処理を制御することも可能である。
【０１５１】
このように、各サービスを連携させて処理させる場合に、連携処理サーバが各サービスに処理する処理が記述された指示書を取得し、解釈することで順次各サービスに処理を依頼し連携処理を管理することにより、連携処理を実行させたいユーザは連携処理の実行を指定するだけで各処理を連携させて適切に自動実行させることが可能となる。
【０１５２】
更に、ワークフローにおけるサービスの連携処理のフロー制御を管理する連携処理サーバを設けることにより、各サービス処理を連携して処理させる際により高度で柔軟なフロー制御を行うことができる。
【０１５３】
また、連携処理サーバが各サービスに対し統一した情報（Ｉ／Ｆ情報）をもとに指示を行うことにより、ソフトウェアモジュール、ハードウェアに係わらず連携処理を定義し実行させることが可能となる。
【０１５４】
また、ネットワーク上に分散したソフトウェアで実現する機能やハードウェアで実現する機能を連携させた処理に関する情報を指示書として生成し、連携処理サーバがこの指示書をもとに各サービスに処理を依頼し連携処理フローを管理することで、ユーザに煩わしい操作を要求することなしに連携処理を提供することができる。
【０１５５】
また、ユーザがＧＵＩで各サービスの連携処理を定義し、指示書を生成させる連携処理サーバが適切に処理を制御することにより、ユーザの求める多様な処理フローのカスタマイズが容易となる。
【０１５６】
【発明の効果】
本発明に係るサービス処理装置、サービス処理方法及びプログラムによれば、処理対象を指示する指示情報と処理対象に対する処理内容とを送信し、処理結果と処理された処理対象を指示する指示情報を受信することで、フロー動作と各サービス処理部とを独立させることで、高速に処理を実行させることができる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係る文書処理システムの構成を示すブロック図である。
【図２】文書処理システム１の複合機、サービス検索サーバ、指示書エディタ、指示書管理サーバ及び連携処理サーバの機能的な構成を示すブロック図である。
【図３】Ｉ／Ｆ情報登録部に記憶されているＩ／Ｆ情報の構成を示す図である。
【図４】指示書エディタのＧＵＩに表示された指示書エディタ画面を示す図である。
【図５】指示書作成部によって作成された指示書の構成を示す図である。
【図６】第１のサービス処理装置の機能的な構成を示す図である。
【図７】第２のサービス処理装置の機能的な構成を示す図である。
【図８】ＧＵＩ１４に表示された指示書の一覧を表す指示書一覧画面の一例を示す図である。
【図９】「Ｍｇｒへの連絡」ボタンが選択されたときに表示される指示書画面の一例を示す図である。
【図１０】「ＨＰへの掲示」ボタンが選択されたときに表示される指示書画面の一例を示す図である。
【図１１】文書処理システムの連携処理の手順を示すフローチャートである。
【図１２】本発明の第２の実施の形態に係る文書処理システムの構成を示すブロック図である。
【図１３】文書処理システムのクライアント端末、サービス検索サーバ、指示書生成サーバ、指示書管理サーバ、連携処理サーバ、画像処理装置、文書管理サーバ、文書配信サーバと、第１のサービス処理装置及び第２のサービス処理装置の機能的な構成を示すブロック図である。
【図１４】文書処理システムの連携処理の手順を示すフローチャートである。
【符号の説明】
１，２０１  文書処理システム
１０  複合機
２０，２２０  サービス検索サーバ
３０  指示書エディタ
３１  ＧＵＩ
３２  表示部
４０，２４０  指示書管理サーバ
５０，２５０  連携処理サーバ
６１  文書編集サーバ
６２，２６２  文書管理サーバ
６３  承認処理サーバ
６４  スキャンサーバ
７０，２６４  第１のサービス処理装置
８０，２６５  第２のサービス処理装置
２１０  クライアント端末
２３０  指示書生成サーバ
２６１  画像処理装置
２６２  文書管理サーバ
２６３  文書配信サーバ
【図１】
2004163997.tif 000003
【図２】
2004163997.tif 000004
【図３】
2004163997.tif 000005
【図４】
2004163997.tif 000006
【図５】
2004163997.tif 000007
【図６】
2004163997.tif 000008
【図７】
2004163997.tif 000009
【図８】
2004163997.tif 000010
【図９】
2004163997.tif 000011
【図１０】
2004163997.tif 000012
【図１１】
2004163997.tif 000013
【図１２】
2004163997.tif 000014
【図１３】
2004163997.tif 000015
【図１４】
2004163997.tif 000016