(57)【要約】【課題】Ｗｅｂサービスにおける共通処理の中でもサービス毎の個別処理を提供する。【解決手段】個々のサービスをプラグイン可能な画像処理装置であって、プラグイン対象となる各サービスを管理するサービス管理手段１０７と、各サービスに対する実行依頼に基づいて、依頼されたサービスの共通処理を制御する共通制御手段１０４と、各サービスの共通処理を処理する共通処理手段１０５と、共通処理における、プラグインとしての個別処理を処理する処理手段１０８と、を備え、共通処理手段は、共通処理における個別処理を、サービスと関連付けて管理する個別処理管理手段１０６を備える。【選択図】図４
2011081768.tif 000002
【特許請求の範囲】
【請求項１】
個々のサービスをプラグイン可能な画像処理装置であって、
プラグイン対象となる各サービスを管理するサービス管理手段と、
前記各サービスに対する実行依頼に基づいて、依頼されたサービスの共通処理を制御する共通制御手段と、
前記各サービスの共通処理を処理する共通処理手段と、
前記共通処理における、プラグインとしての個別処理を処理する処理手段と、を備え、
前記共通処理手段は、
前記共通処理における個別処理を、前記サービスと関連付けて管理する個別処理管理手段を備える画像処理装置。
【請求項２】
前記共通処理として認証処理を行う認証処理手段をさらに備え、
前記認証処理手段は、前記個別処理のプラグインがない場合、既定の認証処理を行う請求項１記載の画像処理装置。
【請求項３】
前記個別処理管理手段は、
前記サービスの実行前に処理する前処理、及び／又は実行後に処理する後処理をさらに、前記サービスに関連付けて管理する請求項１又は２記載の画像処理装置。
【請求項４】
前記個別処理管理手段は、
前記前処理、又は前記後処理として、順序付けされた複数の処理をさらに管理する請求項３記載の画像処理装置。
【請求項５】
前記共通処理の処理結果を取得し、前記処理結果に対応するサービスを判別するサービス処理手段をさらに備える請求項１記載の画像処理装置。
【請求項６】
前記共通処理の処理結果は、サービス名とサービスに関するパラメータであり、
前記サービス処理手段は、
前記パラメータに基づき、前記サービス名が示すサービスを実行する請求項５記載の画像処理装置。
【請求項７】
前記サービスのプラグインを追加するためのＡＰＩを備える各サービス共通のインタフェース部をさらに備え、
前記共通処理部は、
前記個別処理のプラグインを追加するためのＡＰＩを備える請求項５又は６記載の画像処理装置。
【請求項８】
個々のサービスをプラグイン可能であり、プラグイン対象となる各サービスを管理するサービス管理手段と、各サービスの共通処理における個別処理を、前記サービスと関連付けて管理する個別管理手段を備える画像処理装置における情報処理方法であって、
前記各サービスに対する実行依頼に基づいて、依頼されたサービスの共通処理を制御する共通制御ステップと、
制御された前記共通処理を処理する際、前記個別管理手段から個別処理がないかを検索する検索ステップと、
検索された個別処理を行って前記共通処理を処理する共通処理ステップと、
前記サービスを処理するサービス処理ステップと
を有する情報処理方法。
【請求項９】
個々のサービスをプラグイン可能な画像処理装置を、
プラグイン対象となる各サービスを管理するサービス管理手段と、
前記各サービスに対する実行依頼に基づいて、依頼されたサービスの共通処理を制御する共通制御手段と、
前記各サービスの共通処理を処理する共通処理手段と、
前記共通処理における、プラグインとしての個別処理を処理する処理手段として機能させるためのプログラムであって、
前記共通処理手段は、
前記共通処理における個別処理を、前記サービスと関連付けて管理する個別処理管理手段を有するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、Ｗｅｂサービスを利用する画像処理装置では、異なるツールを実装した場合、異なるプロトコル・ＩＦをそれぞれ利用していた。図１は、従来技術を説明する図である。図１に示すように、ＭＦＰは、ツールＡ用のＩＦとツールＡ用の処理、ツールＢ用のＩＦとツールＢ用の処理とを実装していた。理由は、それぞれが異なる認証処理を行っていたり、やり取りするデータに差異があったりするからである。
【０００３】
しかし、画像処理装置側およびクライアント側では、それぞれのプロトコル・ＩＦに対応する必要があり、同じような処理を行っている部分は重複開発しており、時間的にもコスト的にも無駄があった。
【０００４】
上記問題に対し、インタフェースを一元化する目的で様々なサービス提供システムが開発されている。例えば、特開２００６−１２７２２２号公報（特許文献１）には、クライアントからのサービス利用要求であるメッセージを解析し、サービス利用要求に対する共通処理を行って、各サービスを実行するオンデマンドサービス提供システムが開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、従来技術では、Ｗｅｂサービスにおける共通処理は各サービス共通であり、共通処理の中でもサービス毎の個別処理を提供することができないという問題点があった。
【０００６】
そこで本発明は、上記問題に鑑みてなされたものであり、Ｗｅｂサービスにおける共通処理の中でもサービス毎の個別処理を提供することができる画像処理装置、情報処理方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一態様の画像処理装置は、個々のサービスをプラグイン可能な画像処理装置であって、プラグイン対象となる各サービスを管理するサービス管理手段と、前記各サービスに対する実行依頼に基づいて、依頼されたサービスの共通処理を制御する共通制御手段と、前記各サービスの共通処理を処理する共通処理手段と、前記共通処理における、プラグインとしての個別処理を処理する処理手段と、を備え、前記共通処理手段は、前記共通処理における個別処理を、前記サービスと関連付けて管理する個別処理管理手段を備える。
【０００８】
また、本発明の他の態様の情報処理方法は、個々のサービスをプラグイン可能であり、プラグイン対象となる各サービスを管理するサービス管理手段と、各サービスの共通処理における個別処理を、前記サービスと関連付けて管理する個別管理手段を備える画像処理装置における情報処理方法であって、前記各サービスに対する実行依頼に基づいて、依頼されたサービスの共通処理を制御する共通制御ステップと、制御された前記共通処理を処理する際、前記個別管理手段から個別処理がないかを検索する検索ステップと、検索された個別処理を行って前記共通処理を処理する共通処理ステップと、前記サービスを処理するサービス処理ステップとを有する。
【０００９】
また、本発明は、本発明のプログラムを記録した記録媒体をコンピュータに読み取らせて実現することも可能である。
【発明の効果】
【００１０】
本発明によれば、Ｗｅｂサービスにおける共通処理の中でもサービス毎の個別処理を提供することができる画像処理装置、情報処理方法、及びプログラムを提供することができる。
【図面の簡単な説明】
【００１１】
【図１】従来技術を説明する図。
【図２】本発明に係るシステム構成を説明する図。
【図３】本発明に係る画像処理装置のハードウェア構成の一例を示すブロック図。
【図４】本発明に係る画像処理装置の基本機能構成の一例を示すブロック図。
【図５】実施例１に係る画像処理装置の機能構成の一例を示すブロック図。
【図６】実施例１における個別処理管理データの一例を示す図。
【図７】実施例１におけるサービスの登録処理の一例を示すシーケンス図。
【図８】実施例１におけるサービスＡ処理の一例を示すシーケンス図。
【図９】実施例２に係る画像処理装置の機能構成の一例を示すブロック図。
【図１０】実施例２における個別処理管理データの一例を示す図。
【図１１】実施例２におけるサービスＡ処理の一例を示すシーケンス図。
【図１２】実施例２におけるサービスＣ処理の一例を示すシーケンス図。
【図１３】実施例３に係る画像処理装置の機能構成の一例を示すブロック図。
【図１４】実施例４に係る画像処理装置９０の機能構成の一例を示すブロック図。
【図１５】マーキングサービスの概要を説明する図。
【図１６】実施例４におけるプラグインの例を示す図。
【図１７】読取方法による個別処理の例を示す図。
【図１８】マーキングサービス実行時の処理の一例を示すシーケンス図。
【図１９】共通処理のうちの個別処理を判別する処理の一例を示すフローチャート。
【図２０】マーキングサービスの処理の一例を示すフローチャート。
【発明を実施するための形態】
【００１２】
以下、本発明の実施例を図面に基づいて説明する。
［実施例１］
＜システム構成及びハードウェア構成＞
図２は、本発明に係るシステム構成を説明する図である。図２に示すシステムは、ＭＦＰ（ここでは、画像処理装置ともいう）１０、２０とＰＣ（パーソナルコンピュータ）３０、４０とがＬＡＮ（Local Area Network）で接続され、クライアントＰＣ（以下、単にクライアントともいう）５０、６０がネットワークを介して接続されている。
【００１３】
これにより、各ＰＣや各クライアントが、それぞれのＭＦＰに対してサービスのリクエストを出力し、また各ＭＦＰからのレスポンスを受信する。なお、本発明に係るシステムは、図１に示す例に限られず、それぞれ任意数の装置が任意のネットワークを介して接続されていればよい。
【００１４】
次に、画像処理装置１０のハードウェア構成について説明する。図３は、本発明に係る画像処理装置１０のハードウェア構成の一例を示す図である。図３に示すように、画像処理装置１０は、制御部１１、主記憶部１２、補助記憶部１３、外部記憶装置Ｉ／Ｆ部１４、ネットワークＩ／Ｆ部１６、操作部１７、表示部１８、エンジン部１９を含む。
【００１５】
制御部１１は、コンピュータの中で、各装置の制御やデータの演算、加工を行うＣＰＵである。また、制御部１１は、主記憶部１２に記憶されたプログラムを実行する演算装置であり、入力装置や記憶装置からデータを受け取り、演算、加工した上で、出力装置や記憶装置に出力する。
【００１６】
主記憶部１２は、ＲＯＭ（Read Only Memory）やＲＡＭ（Random Access Memory）などであり、制御部１１が実行する基本ソフトウェアであるＯＳやアプリケーションソフトウェアなどのプログラムやデータを記憶又は一時保存する記憶装置である。
【００１７】
補助記憶部１３は、ＨＤＤ（Hard Disk Drive）などであり、アプリケーションソフトウェアなどに関連するデータを記憶する記憶装置である。
【００１８】
外部記憶装置I／F部１４は、ＵＳＢ（Universal Serial Bus）などのデータ伝送路を介して接続された記憶媒体１５（例えば、フラッシュメモリ、ＳＤカードなど）と画像処理装置１０とのインタフェースである。
【００１９】
また、記憶媒体１５に、所定のプログラムを格納し、この記憶媒体１５に格納されたプログラムは外部記憶装置Ｉ／Ｆ部１４を介して画像処理装置１０にインストールされ、インストールされた所定のプログラムは画像処理装置１０により実行可能となる。
【００２０】
ネットワークＩ／Ｆ部１６は、有線及び／又は無線回線などのデータ伝送路により構築されたＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network）などのネットワークを介して接続された通信機能を有する周辺機器と画像処理装置１０とのインタフェースである。
【００２１】
操作部１７や表示部１８は、キースイッチ（ハードキー）とタッチパネル機能（ＧＵＩのソフトウェアキーを含む：Graphical User Interface）を備えたＬＣＤ（Liquid Crystal Display）とから構成され、画像処理装置１０が有する機能を利用する際のＵＩ（User Interface）として機能する表示及び／又は入力装置である。
【００２２】
エンジン部１９は、実際に画像形成に係る処理を行うプロッタ、スキャナ等の機構部分である。
【００２３】
＜機能構成＞
図４は、本発明に係る画像処理装置１０の基本機能構成の一例を示すブロック図である。図４に示すように、画像処理装置１０は、ネットワークＩＦ（ＩＦ：インタフェース）１０１、サービスフレームワーク１０２、サービスＡ１１０、サービスＢ１１１、サービスＣ１１２、プラットフォーム１１３を含む。なお、図４に示す例では、画像処理装置１０が有するコピーやＦＡＸ、印刷などの基本機能については図示していない。
【００２４】
なお、ネットワークＩＦ１０１は、例えば、ネットワークＩ／Ｆ部１６により実現され、サービスフレームワーク１０２、各サービス、プラットフォーム１１３は、例えば、補助記憶部１３や主記憶部１２に記憶されたプログラムを制御部１１が実行することで実現されうる。以下の実施例においても同様である。
【００２５】
ネットワークＩＦ１０１は、画像処理装置１０とＬＡＮとを接続するためのインタフェースである。サービスフレームワーク１０２は、共通ＩＦ１０３、共通制御部１０４、共通処理部１０５、サービス管理部１０７、サービスＡ共通処理部１０８、サービスＢ共通処理部１０９を含む。
【００２６】
サービスフレームワーク１０２は、各サービスを実現するプラグインを管理する仕組みを提供する。プラグインをサービスフレームワーク１０２に登録することで、そのサービスが利用できるようになる。サービスフレームワーク１０２では、各プラグインの管理、サービス全体の共通処理、個別処理の呼び出しの制御などを行う。
【００２７】
共通ＩＦ１０３は、各サービス共通のインタフェースである。ネットワークＩＦ１０１から、サービスの実行依頼（リクエスト）を受けると、共通制御部１０４にサービスの実行依頼を通知する。
【００２８】
共通制御部１０４は、共通ＩＦ１０３からサービスの実行依頼を受けると、サービス管理部１０７に対し、サービスを提供できるかどうかを調べるためサービスの検索を行う。また、共通制御部１０４は、サービスが検索された場合、共通処理部１０５に対し、共通処理の実行を要求する。
【００２９】
また、共通制御部１０４は、サービス毎に共通処理がまとめられた処理部があると、サービス毎の処理部に共通処理の実行を要求する。
【００３０】
共通処理部１０５は、共通制御部１０４から共通処理の実行が要求されると、共通処理を行って、個別処理管理部１０６に個別処理がないか問い合わせる。共通処理部１０５は、個別処理がある場合、個別処理を実行する。なお、個別処理は、１つのプラグインとして実装可能である。また、共通処理部１０５は、個別処理のプラグインを処理するための口を設け、個別処理をプラグインできる仕組みを提供する。
【００３１】
個別処理管理部１０６は、サービス毎に共通処理の個別処理を管理する。個別処理管理部１０６は、具体的には、後述する個別処理管理データを保持する。
【００３２】
サービス管理部１０７は、画像処理装置１０にプラグインされたサービスを管理する。具体的には、サービス管理部１０７は、装置内にプラグインされたサービスの識別子などを保持して管理する。
【００３３】
サービスＡ共通処理部１０８は、共通処理部１０５を継承して、サービスＡの共通処理又は個別処理をまとめた処理部である。サービスＢ共通処理部１０９は、共通処理部を継承して、サービスＢの共通処理をまとめた処理部である。このように、複数のサービスで共通して実施する個別処理などがあるのであれば、それらを事前に各サービスの共通処理としてまとめておくことが可能である。よって、サービスＡ共通処理部１０８などは、他のサービスでも利用可能である。なお、個別処理は、かならずしもサービス毎にまとめる必要はなく、データベースなどに単に記憶されるようにしてもよい。
【００３４】
各サービス１１０、１１１、１１２は、プラグイン可能に実装されており、機能の拡張、追加、削除などが容易にできる。プラットフォーム１１３は、プラグイン化された各サービスやアプリケーションソフトを動作させる際の基盤となるＯＳである。
【００３５】
なお、サービスとしては、装置の設定情報を取得する操作（サービス）や、アドレス帳の操作や、コピー、ＦＡＸ、プリントなどの各プラグインの操作などがある。また、装置の設定情報を取得する操作のリクエストとしては、以下の例がある。
／／ｗｓ／ｍａｃｈｉｎｅＡ／ｇｅｔ／ｉｄ／ｐａｓ
「ｇｅｔ」は、設定情報の取得を意味し、「ｉｄ」「ｐａｓ」は認証処理に用いられるパラメータである。
【００３６】
次に、共通処理として認証処理を例に説明する。図５は、実施例１に係る画像処理装置１０の機能構成の一例を示すブロック図である。図５に示す機能において、図４に示す機能と同様の機能のものは同じ符号を付し、その説明を省略する。
【００３７】
図５では、共通処理部１２０は、共通処理としての認証部１２１を含む。認証部１２１は、各サービスで認証処理を行う場合に、共通して処理される部分が実装されている。例えば、リクエストを受ける処理や、ディスパッチ処理、認証に必要なデータがない場合のエラー処理などが認証部１２１で行われる。具体的な認証手段については、個別処理としてプラグイン化されている。
【００３８】
サービスＡ共通処理部１２２は、サービスＡ１２４の認証処理における個別処理が行われる。例えば、サービスＡ１２４の個別処理は、ＩＤとパスワードを用いて認証を行なうベーシック認証とする。サービスＢ共通処理部１２３は、サービスＢ１２５の認証処理における個別処理が行われる。例えば、サービスＢ１２５の個別処理は、外部の認証サーバで認証を行なうケルベロス認証とする。
【００３９】
なお、個別処理管理部１０６は、どのサービスがどの認証手段（個別処理）を用いるかを管理する。図６は、実施例１における個別処理管理データの一例を示す図である。個別処理管理データは、サービス毎に個別処理を関連付けるデータである。図６に示す例では、各サービスには、各サービスの識別子（例えばＵＲＩ（Uniform Resource Identifier））と、認証手段とが関連付けられる。サービスＡ１２４とサービスＣ１２６とは、同じ認証手段のベーシック認証を行なう。
【００４０】
共通処理部１２０は、個別処理管理部１０６に管理される個別処理管理データを参照することで、どのサービスには、どの個別処理の認証手段を行うかを把握することができる。共通処理部１２０により認証処理の共通処理が行われて、プラグイン化された個別の認証手段を行なうことで、サービス毎の認証処理を実現することができる。
【００４１】
これより、例えば、認証処理において、各サービス共通の処理は共通処理部１２０で処理し、具体的な認証手段はプラグイン化した個別処理として実装することができる。他の共通処理の例としては、暗号化処理や、暗号化の復号化処理などが考えられる。暗号化にも複数の具体的な暗号化手段があるため、これを個別処理としてプラグイン化すればよい。
【００４２】
＜動作＞
次に、実施例１における画像処理装置１０の動作について説明する。まず、サービス管理部１０７へのサービスの登録処理について説明する。図７は、実施例１におけるサービスの登録処理の一例を示すシーケンス図である。
【００４３】
図７に示すステップＳ１０１において、サービスＡ１２４は、装置にプラグインされたときに、サービス管理部１０７に対し、サービス登録要求を行う。
【００４４】
ステップＳ１０２において、サービスＡ１２４は、共通処理における個別処理がある場合は、個別処理管理部１０６に対し、個別処理の登録要求を行う。ステップＳ１０２は、個別処理の数だけ繰り返し行われる。これにより、新しくプラグインされたサービスはサービス管理部１２４で管理され、共通処理における個別処理は個別処理管理部１０６で管理されることになる。
【００４５】
次に、実施例１におけるサービス処理について説明する。図８は、実施例１におけるサービス処理の一例を示すシーケンス図である。ステップＳ２０１において、ネットワークＩＦ１０１は、共通ＩＦ１０３にサービスＡの実行依頼を行う。このとき、実行依頼とともに、認証用のパラメータも付与されている。
【００４６】
ステップＳ２０２において、共通ＩＦ１０３は、ネットワークＩＦ１０１からサービスＡの実行依頼を受けると、共通制御部１０４にサービスＡの実行依頼を行う。
【００４７】
ステップＳ２０３において、共通制御部１０４は、共通ＩＦ１０３からサービスＡの実行依頼を受けると、サービス管理部１０７に対してサービスＡの検索を行う。サービス管理部１０７において、サービスＡが管理され、さらに、サービスＡ共通処理部１２２がある場合にはこのサービスＡ共通処理部１２２もサービスＡに対応付けて管理されている。
【００４８】
ステップＳ２０４において、共通制御部１０４は、サービスＡ共通処理部１２２に対し、サービスＡ共通処理の実行依頼を行う。ステップＳ２０５において、サービスＡ共通処理部１２２は、認証処理を行うに際し、まず、共通処理部の認証部１２１による認証処理を行う。
【００４９】
ステップＳ２０６において、認証部１２１は、認証処理の共通処理を終えると、個別処理管理部１０６を参照し、どの個別処理を行うかを特定する。サービスＡ共通処理部１２２は、具体的な認証手段を行なう。具体的な認証手段は、装置が有する認証に必要な情報を呼び出し、認証を行なう。
【００５０】
ステップＳ２０７において、サービスＡ共通処理部１２２は、認証が成功した後、サービスＡの実行をサービスＡ１２４に依頼し、サービスＡが実行される。
【００５１】
以上、実施例１によれば、各サービスにおける共通処理を共通処理部に構成することができ、さらに、共通処理においてもサービス毎に個別処理を行うことができる。また、実施例１によれば、サービスにおける個別処理をまとめてサービス共通処理を設けることもでき、このサービス共通処理は他のサービスにおいて利用可能とすることができる。
【００５２】
［実施例２］
次に、実施例２に係る画像処理装置について説明する。実施例２では、サービスにおける共通処理として、前処理部と後処理部とを設けることができ、所定の処理のタイミングを規定することができる。
【００５３】
図９は、実施例２に係る画像処理装置７０の機能構成の一例を示すブロック図である。図９に示す機能において、図４、５に示す機能と同様の機能のものは同じ符号を付し、その説明を省略する。
【００５４】
図９に示す共通処理部１３０は、個別処理管理部１３１、認証部１２１、前処理部１３２、後処理部１３３を含む。前処理部１３２は、各サービスにおいて必要な前処理が実装される。後処理部１３３は、各サービスにおいて必要な後処理が実装される。
【００５５】
個別処理管理部１３１は、サービスに対応する個別の認証手段に加え、前処理部と後処理部とを関連付けて管理する。図１０は、実施例２における個別処理管理データの一例を示す図である。図１０に示すように、サービス毎に、識別子（例えばＵＲＩ）、認証手段、前処理、後処理が関連付けられている。サービスＡは、認証手段としてベーシック認証を行ない、サービスＡの処理の前に処理ａを行ない、サービスＡの処理の後に処理ｂを行なうことを示す。
【００５６】
サービスＣは、認証手段と後処理は関連付けられておらず、前処理として処理ｃ、処理ｄ、処理ｅが関連付けられている。前処理としては、認証処理とは別に、実行依頼とともに送られてきたパラメータと、機器内のデータとで照合を行う処理や、インスタンスの呼び出し処理などがある。
【００５７】
図９に戻り、サービスＡ共通処理部１３４は、サービスＡにおける共通処理の個別処理をまとめたものであり、認証手段と前処理と後処理とがある。また、サービスＢ共通処理部１３５もサービスＡ共通処理部１３４と同様である。
【００５８】
サービスＡ１３６、サービスＢ１３７の場合、認証処理の後、前処理、サービスが実行された後、後処理が行われる。サービスＣ１３８の場合、認証処理が個別処理管理部１３１に管理されていない（図１０参照）ので、デフォルトの認証処理が行われ、前処理として順序付けられた３つの処理後にサービスＣ１３８が実行される。
【００５９】
＜動作＞
次に、実施例２に係る情報処理装置７０の動作について説明する。図１１は、実施例２におけるサービスＡ処理の一例を示すシーケンス図である。図１１に示す処理において、図８に示す処理と同様の処理を行うものは同じ符号を付し、その説明を省略する。
【００６０】
ステップＳ３０１において、サービスＡ共通処理部１３４は、共通処理部の前処理部１３２に対して、前処理の実行を依頼する。前処理部１３２は、個別処理管理部１３３に対し、どの前処理を行うかを問合せ、前処理を行う。ステップＳ３０２において前処理が行われると、サービスＡ１３６が実行される。
【００６１】
ステップＳ３０３において、サービスＡ１３６が実行終了すると、サービスＡ共通処理部１３４は、後処理部１３３に対し、後処理の実行を要求する。ステップＳ３０４において、後処理部１３３は、個別処理管理部１３１に対し、サービスＡ１３６の後処理を問合せ、後処理を実行する。
【００６２】
以上の処理により、サービスの前後に行う処理を共通処理として実装することも可能である。
【００６３】
図１２は、実施例２におけるサービスＣ処理の一例を示すシーケンス図である。図１２に示すステップＳ４０１からステップＳ４０５は、図８や図１１に示すステップＳ２０１からステップＳ２０５と同様であるため、説明を省略する。なお、ステップＳ４０４において、共通制御部１０４は、サービスＣ共通処理部が存在しないため、共通処理部１３０に共通処理の実行を要求する。
【００６４】
ステップＳ４０６において、認証部１２１は、個別処理管理部１３１に対し、サービスＣの認証の個別処理を問合せる。ここでは、サービスＣには、認証の個別処理は関連付けられていないため、デフォルトの認証処理を行う。なお、デフォルトの認証処理の代わりに認証処理を行わない設定にしておいてもよい。
【００６５】
ステップＳ４０７において、認証部１２１は、デフォルトの認証処理を行う。デフォルトの認証処理は予め設定しておく。
【００６６】
ステップＳ４０８において、共通処理部１３０は、前処理の実行を前処理部１３２に要求する。ステップＳ４０９において、前処理部１３２は、サービスＣの前処理を個別処理管理部１３２に問合せて、どの前処理を行うかを特定する。
【００６７】
ステップＳ４１０〜Ｓ４１２において、前処理部１３２は、個別処理管理データに登録されている順序に従って前処理を行う。
【００６８】
ステップＳ４１３において、前処理が終了すると、共通処理部１３０は、サービスＣ１３８に対してサービスＣの実行を要求し、サービスＣが実行される。
【００６９】
以上、実施例２によれば、共通処理の個別処理をプラグインとして実装する以外にも、サービスの前後で行う処理を共通処理として実装することができる。
【００７０】
［実施例３］
次に、実施例３に係る画像処理装置８０について説明する。実施例３では、各共通処理においてさらに共通処理を抜き出して、各サービスで利用できるようにしている。
【００７１】
図１３は、実施例３に係る画像処理装置８０の機能構成の一例を示すブロック図である。図１３に示す機能において、図５に示す機能と同様の機能を示すものは同じ符号を付し、その説明を省略する。
【００７２】
共通処理部１４０は、個別処理管理部１４１、認証部１２１、復号部１４２、共通部１４３を含む。復号部１４２は、暗号化されたデータを復号する処理の共通処理を行う。復号部１４２は、例えば、復号に伴うディスパッチ処理や必要最低限のエラー処理を行う。
【００７３】
共通部１４３は、例えば認証部１２１と復号部１４２の処理において、共通の処理があれば、別個に独立して処理を規定する。例えば、必要なパラメータがない場合のエラー処理は、認証部１２１においても復号部１４２においても同様であると考えられる。このような処理を共通部１４３として実装しておく。
【００７４】
個別処理管理部１４１は、サービス毎に、識別子、認証手段、復号手段、第２共通処理を関連付ける。第２共通処理とは、共通処理の各処理、例えば認証処理と復号処理の共通処理を示し、共通部１４３に実装される。また、第２共通処理はプラグインとして実装されてもよい。なお、認証手段、復号手段、第２共通処理は処理順序を規定して個別処理管理データに登録できる。
【００７５】
サービスＡ共通処理部１４４、サービスＢ共通処理部１４５は、実施例１などで説明したとおり、サービス毎に共通処理をまとめたものである。共通部１４３の処理は、各サービス共通処理部に含まれてもよい。
【００７６】
サービス１４６〜１４７は、各プラグインとして実装され、実施例１や実施例２の各サービスと同様である。
【００７７】
以上、実施例３によれば、共通処理の各処理における共通の処理を新たに共通処理とし、各サービスで利用することができる。
【００７８】
［実施例４］
次に、実施例４に係る画像処理装置について説明する。実施例４では、クライアントから受信したマーキングされた画像に対し、マーキング部分を解析して、解析結果により後処理を決定する。
【００７９】
図１４は、実施例４に係る画像処理装置９０の機能構成の一例を示すブロック図である。図１４に示す機能において、図５に示す機能と同様の機能を示すものは同じ符号を付し、その説明を省略する。
【００８０】
共通処理部１５０は、各サービスにおいて、標準的なパターンの機能を実現する処理を行う。共通処理部１５０は、個別処理管理部１５１、読取共通処理部１５２を有する。
【００８１】
個別処理管理部１５１は、マーキング画像の種別毎に、読取方法を関連付けて管理する。例えば、マーキング画像「バーコード型」に対し、読取方法「バーコード」の読取処理が対応付けられる。
【００８２】
読取共通処理部１５２は、処理をリクエストされた文書に対し、マーキング画像の種別を判別する。読取共通処理部１５２は、判別したマーキング画像に対応する読取方法の個別処理に読取処理を行わせる。読取共通処理部１５０は、個別処理の読み取り結果に基づいて、次の処理を決定する。この処理の流れを規定したのが共通処理となる。
【００８３】
読取方法Ｘ１５３と読取方法Ｙ１５４は、読取方法の個別処理を表す。個別処理とは、共通処理の中の一部の処理内容を変えたい場合に、新しく追加する処理をいう。
【００８４】
マーキングサービス１５５は、読取方法の読み取り結果に基づいて、文書に対するマーキングサービスを実行する機能を有する。例えば、マーキングサービス１５５は、文書と紐付けたい情報があり、この情報を画像に変換し、合成等の手段を用いてマーキング画像が埋め込まれた文書などを生成する。
【００８５】
これにより、利用者がこの文書をＭＦＰで読み取らせると、ＭＦＰが文書に埋め込まれたマーキング画像を検知して、元の情報に復元したりできる。よって、システムは、復元された情報を利用することができるようになる。読取方法とは、マーキングされた文書からマーキング画像を読み取る手段のことをいう。読取方法は、マーキング画像の形状や内容により、様々な方法が考えられる。例えば、読取方法には、バーコード処理、ＱＲコード処理などがある。
【００８６】
リフレッシュコピー１５６は、手書きメモなどが書かれたマーキングされた文書のマーキング画像を読み取り、元文書を特定し、手書きメモを消去した文書を印刷する機能を有する。
【００８７】
すかし印刷１５７は、マーキング画像を、出力文書の背景にすかしとして埋め込む機能を有する。
【００８８】
以上の機能を有することで、マーキングサービス１５５は、マーキングサービス１５５の中の処理のうち、読取の個別処理となっている読取方法の結果に基づきどれを選択するかを決定することができる。マーキングサービス１５５は、このサービス自体がプラグインであり、画像処理装置９０に対して後から機能追加できるようになっている。また、読取共通処理部１５２は、個別処理用のＡＰＩを有する。よって、読取方法は、このＡＰＩに対してプラグインとして後から追加することができる。
【００８９】
図１５は、マーキングサービスの概要を説明する図である。まず、マーキング画像の読取方法がプラグインによって異なる。どの読取方法を選択するかは、文書中のマーキング画像をみて、読取共通処理部１５２が決定する。マーキング画像の種別により、どの読取方法を選択すればよいかは個別処理管理部１５１を参照すればよい。
【００９０】
各読取方法はプラグインで実現される。読取共通処理部１５２は、決定した読取方法により読み取った結果と、リクエスト情報とに基づいて、どのマーキングサービスを行うか判定し、各処理部に振り分ける。読み取った結果には次の処理を示すサービス名やサービスに関するパラメータなどが含まれており、このサービス名などにより、どの処理（例えば、リフレッシュコピー、すかし印刷）を行うかを判定できる。
【００９１】
次に、本実施例で用いるプラグインについて説明する。図１６は、実施例４におけるプラグインの例を示す図である。図１６に示すように、実施例４では、個別処理のプラグイン１５３、１５４、及びサービスのプラグイン１５５のプラグインが用いられる。
【００９２】
まず、サービスのプラグイン１５５について説明する。このプラグイン１５５でプラグインされる各サービスは、サービスフレームワーク１０２の中の共通ＩＦ１０３で定義されているＩＦ（ＡＰＩ１６６）を継承して各サービスの処理１６５（例えば、マーキングサービス処理）を実装する。図１６に示す例では、マーキングサービスをプラグインにした例である。
【００９３】
次に、個別処理のプラグイン１５３、１５４について説明する。個別処理のプラグインは、共通処理の中で定義されている個別処理用のＡＰＩ１６０を継承して各プラグインにおいて個別処理を実装する。図１６に示す例であれば、共通処理の中の読取共通処理部１５２でＡＰＩが設けられており、読取方法毎の個別処理を追加できる。図１６に示すＡＰＩ１６０を設けることで、次のような処理が可能になる。
【００９４】
図１７は、読取方法による個別処理の例を示す図である。図１７（Ａ）は、読取方法Ｘの例を示す図である。図１７（Ａ）に示すマーキング画像１７０２には、サービス名「リフレッシュコピー」が埋め込まれているとする。図１７（Ａ）に示す読取方法Ｘは、バーコードの読取処理を行う。
【００９５】
マーキングされた文書１７０１に対し、共通処理部１５０が、マーキング画像１７０２はバーコードであると判別し、読取方法Ｘにより、マーキング画像１７０２を読み取って、「リフレッシュコピー」のサービス名を読み取る。これにより、マーキングサービス１５５は、リフレッシュコピーを行って元文書１７０３を印刷することができる。
【００９６】
図１７（Ｂ）に示すマーキング画像１７１２には、サービス名「すかし印刷」、パラメータ「社外持出厳禁」が埋め込まれているとする。図１７（Ｂ）に示す読取方法Ｙは、ＱＲコードの処理を行う。
【００９７】
マーキング画像１７１２に対し、共通処理部１５０が、マーキング画像１７１２がＱＲコードであると判別し、読取方法Ｙにより、マーキング画像１７１２を読み取って、「すかし印刷」のサービス名、「社外持出厳禁」のパラメータを読み取る。これにより、マーキングサービス１５５は、読み取ったパラメータ「社外持出厳禁」をすかしとして埋め込むすかし印刷を行うことができる。
【００９８】
＜動作＞
次に、実施例４におけるシステムの動作について説明する。図１８は、マーキングサービス実行時の処理の一例を示すシーケンス図である。図１８に示すステップＳ５０１において、ネットワークＩ／Ｆ１０１は、クライアント装置などからマーキング画像が埋め込まれた文書をネットワークから取得した場合、共通ＩＦ１０３に対し、取得した文書を出力するとともにマーキングサービスの実行依頼を行う。
【００９９】
ステップＳ５０２において、共通ＩＦ１０３は、ネットワークＩＦ１０１からマーキングサービスの実行依頼を受けると、共通制御部１０４に対し、文書とともにマーキングサービスの実行依頼を行う。
【０１００】
ステップＳ５０３において、共通制御部１０４は、共通ＩＦ１０３からマーキングサービスの実行依頼を受けると、サービス管理部１０７に対してマーキングサービスの検索を行う。サービス管理部１０７は、マーキングサービスを管理しており、読取共通処理部１５２もマーキングサービスに関連付けて管理しておく。
【０１０１】
ステップＳ５０４において、共通制御部１０４は、読取共通処理部１５２に対し、マーキングされた文書を出力するとともに読取共通処理の実行を依頼する。
【０１０２】
ステップＳ５０５において、読取共通処理部１５２は、マーキング画像の判別を行う。読取共通処理部１５２は、マーキング画像の画像形状、サイズなどからどの種類のマーキング画像かを判別する。ステップＳ５０６において、読取共通処理部１５２は、判別したマーキング画像の種別を認識する。ステップＳ５０７において、読取共通処理部１５２は、個別処理管理部１５１から、認識したマーキング画像の種別に対応する読取方法Ｘを検索する。
【０１０３】
ステップＳ５０８において、読取共通処理部１５２は、マーキング画像の種別に対応する読取方法（ここでは読取方法Ｘ）により読み取らせたサービス名及び／又はパラメータを取得する。読取共通処理部１５２は、取得したサービス名及び／又はパラメータを共通制御部１０４に出力する。
【０１０４】
ステップＳ５０９において、共通制御部１０４は、マーキングサービス１５５に対し、マーキングサービスの実行依頼を行う際に、読取共通処理部１５２から取得したサービス名及び／又はパラメータを出力する。
【０１０５】
ステップＳ５１０において、マーキングサービス１５５は、取得したサービス名及び／又はパラメータの内容に基づき、マーキング処理を判別する。ここで、読取方法Ｘ（バーコード読取処理）により読み取ったサービス名は、リフレッシュコピーであるとする。
【０１０６】
ステップＳ５１１において、マーキングサービス１５５は、取得したサービス名に基づいてリフレッシュコピーの処理を実行する。
【０１０７】
ステップＳ５１２において、リフレッシュされた文書を印刷するためプラットフォーム１１３に印刷指示する。
【０１０８】
図１９は、共通処理のうちの個別処理を判別する処理の一例を示すフローチャートである。図１９に示すステップＳ６０１において、読取共通処理部１５２は、マーキングされた文書データを入力する。
【０１０９】
ステップＳ６０２において、読取共通処理部１５２は、マーキングされた文書データの中のマーキング画像を判別する。ステップＳ６０３において、読取共通処理部１５２は、読み取ったマーキング画像の種別を認識する。例えば、読取共通処理部１５２は、マーキング画像がバーコードなのか、ＱＲコードなのかを認識する。
【０１１０】
ステップＳ６０４において、読取共通処理部１５２は、読み取ったマーキング画像の種別に対応する読取方法が個別処理管理部１５１に登録されているか判断する。個別処理管理部１５１に、対応する読取方法があればステップＳ６０５に進み、対応する読取方法がなければステップＳ６０７に進む。なお、対応する読取方法があるということは、共通処理の中に個別処理があるということを意味する。
【０１１１】
ステップＳ６０５において、読取共通処理部１５２は、個別処理のＡＰＩ１６０を用いて、対応する読取方法で定義された読取処理を行う。ここでの読み取り結果のサービス名及び／又はパラメータは、共通制御部１０４に出力される。
【０１１２】
ステップＳ６０６において、読取共通処理部１５２は、個別処理がなければ、共通処理部１５０に予め登録されているデフォルト処理があるか否かを判定する。デフォルト処理があればステップＳ６０７に進み、デフォルト処理がなければステップＳ６０８に進む。
【０１１３】
ステップＳ６０７において、読取共通処理部１５２は、デフォルト処理のサービス名を取得する。ここで取得したサービス名は、共通制御部１０４に出力される。
【０１１４】
ステップＳ６０８において、共通制御部１０４は、マーキングサービス１５５に対し、マーキングされた文書と、取得したサービス名及び／又はパラメータを出力する。
【０１１５】
図２０は、マーキングサービスの処理の一例を示すフローチャートである。図２０に示すステップＳ７０１において、マーキングサービス１５５は、共通制御部１０４からマーキングされた画像と読取処理の結果のサービス名とを取得する。なお、読取処理の結果のサービス名及び／又はパラメータは、共通制御部１０４から出力されない場合もある。
【０１１６】
ステップＳ７０２において、マーキングサービス１５５は、読取処理結果のサービス名があるかないかを判別する。サービス名があればステップＳ７０４に進み、サービス名がなければステップＳ７０３に進む。
【０１１７】
ステップＳ７０３において、マーキングサービス１５５に予め定義されているマーキングサービスを行う。
【０１１８】
ステップＳ７０４において、マーキングサービス１５５は、サービス名の内容を判別する。例えば、マーキングサービス１５５は、サービス名が「リフレッシュコピー」なのか、「すかし印刷」なのかを判別する。また、マーキングサービス１５５は、パラメータから「リフレッシュコピー」用のパラメータなのか、「すかし印刷」用のパラメータなのかを判別してもよい。サービス名が「リフレッシュコピー」であればステップＳ７０５に進み、サービス名が「すかし印刷」であればステップＳ７０６に進む。
【０１１９】
ステップＳ７０５において、マーキングサービス１５５は、リフレッシュコピー１５６を実行する。
【０１２０】
ステップＳ７０６において、マーキングサービス１５５は、すかし印刷１５７を実行する。このとき、マーキングサービス１５５は、読取方法Ｙ（ＱＲコード読取処理）で読み取られたパラメータをすかしとして埋め込んでもよい。
【０１２１】
なお、マーキングサービス１５５は、リフレッシュコピー１５６、すかし印刷１５７以外にもマーキングサービスを備えてもよい。また、実施例４におけるマーキングサービス１５５は、必ずしもマーキングサービスである必要はなく、具体的な各サービスをまとめることができるサービスであればよい。
【０１２２】
以上、実施例４によれば、新しいマーキング画像への対応を追加したり、また、マーキング画像を読み取った後の処理を変えるなどの新規条件を追加したりする場合、共通処理部のＡＰＩに新規読取方法を追加することができる。これにより、共通処理部に変更を加えなくても、上記追加に対応することができる。
【０１２３】
また、マーキング画像に次の処理内容やパラメータなどを埋め込み、このマーキング画像を読み取る読取処理を個別処理とすることができる。
【０１２４】
また、マーキング処理自体を新たに追加したい場合、共通処理部のＡＰＩに新しいマーキングサービス処理を追加することができる。新しいマーキング処理とは、例えば、不正コピーガード検知サービスなどである。
【０１２５】
ここで、不正コピーガード検知サービスとは、マーキング画像が埋め込まれた文書を読み取り、読み取ったマーキング画像を元に、その文書に対して行える操作を制限するサービスである。
【０１２６】
なお、従来技術では、共通処理を実施した後のマーキングサービスの処理内容は固定であった。そのため、処理内容のフローを変えようとすると新たにサービスを追加する必要がある。マーキングサービス内の処理内容を変えるためには、図１９で説明した処理をマーキングサービス内で実施する必要がある。よって、今後追加しようとする各サービス内でも同じような判別処理が行われることになり、無駄となってしまう。これに対し、実施例４では、各サービスで共通する処理を共通処理部１５０に設けることで、無駄をなくし、また、共通処理における個別処理はプラグインにおいて実装可能であるため、より柔軟な処理フローを実現することができる。
【０１２７】
なお、各実施例において説明した処理内容をプログラムとし、プログラムをコンピュータに実行させて前述した処理を画像処理装置に実行させることも可能である。また、プログラムを記録媒体に記録し、プログラムが記録された記録媒体をコンピュータに読み取らせて、前述した処理を画像処理装置に実行させることも可能である。
【０１２８】
以上、各実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。
【符号の説明】
【０１２９】
１０、２０、７０、８０、９０  ＭＦＰ
３０、４０  ＰＣ
５０、６０  クライアント
１０１  ネットワークＩＦ
１０２  サービスフレームワーク
１０３  共通ＩＦ
１０４  共通制御部
１０５、１２０、１３０、１４０、１５０  共通処理部
１０６、１３１、１４１、１５１  個別処理管理部
１０７  サービス管理部
１０８、１２２、１３４、１４４  サービスＡ共通処理部
１０９、１２３、１３５、１４５  サービスＢ共通処理部
１１０、１２４、１３６、１４６  サービスＡ
１１１、１２５、１３７、１４７  サービスＢ
１１２、１２６、１３８、１４８  サービスＣ
１２１  認証部
１３２  前処理部
１３３  後処理部
１４２  復号部
１４３  共通部
１５２  読取共通処理部
１５５  マーキングサービス
１６０  個別処理用ＡＰＩ
１６６  サービス処理用ＡＰＩ
【先行技術文献】
【特許文献】
【０１３０】
【特許文献１】特開２００６−１２７２２２号公報
【図１】
2011081768.tif 000003
【図２】
2011081768.tif 000004
【図３】
2011081768.tif 000005
【図４】
2011081768.tif 000006
【図５】
2011081768.tif 000007
【図６】
2011081768.tif 000008
【図７】
2011081768.tif 000009
【図８】
2011081768.tif 000010
【図９】
2011081768.tif 000011
【図１０】
2011081768.tif 000012
【図１１】
2011081768.tif 000013
【図１２】
2011081768.tif 000014
【図１３】
2011081768.tif 000015
【図１４】
2011081768.tif 000016
【図１５】
2011081768.tif 000017
【図１６】
2011081768.tif 000018
【図１７】
2011081768.tif 000019
【図１８】
2011081768.tif 000020
【図１９】
2011081768.tif 000021
【図２０】
2011081768.tif 000022