以下、本発明の実施の形態について図面に基づいて説明する。なお、本発明の実施の形態では、文書出力システムを文書処理システムと表現し、文書の出力が印刷である場合の説明をする。従って、「出力」は「印刷」に読み替えられる。例えば、以下の実施例において、出力プロパティは、印刷プロパティと読み替えられたものとなっている。また、以下の説明において「取得」は「生成」を含むものとする。
なお、他の出力として、例えばファックスの送信、他のコンピュータへの配信などが挙げられる。
また、以下の説明において、画像と文書という表現が用いられるが、文書は、1つ以上の画像と、書誌情報から構成されるものである。従って、本実施の形態で文書を編集印刷するとは、文書が有する画像を編集印刷する意味である。また、文書を編集印刷するという表現が用いられている場合でも、画像を編集印刷可能なのはもちろんである。
まず、図1を用いて、本実施例における文書処理システムについて説明する。図1には、印刷サービス210と、画像編集サービス211と、文書管理サービス212と、クライアントPC213とが示されており、これらは相互に通信可能で、図に示されるように、上記サービス間で文書301、302が送受信される。また、文書管理サービス212は、文書を蓄積するデータベースである文書DB214を有する。
クライアントPC213は、文書を編集/印刷するユーザが使用するパソコンで、上記サービスを使用するためのアプリケーションが搭載されている。
印刷サービス210は、クライアントPC213から文書の印刷要求を受け、印刷を行ったり、クライアントPC213からの要求により、文書を印刷する際に実行可能な印刷方法を示す印刷プロパティを提供する。
画像編集サービス211は、文書に対して編集を行うサービスであり、文書に対して実行可能な編集内容を示す編集プロパティを提供する。文書管理サービス212は、文書を文書DB214を用いて管理する。
このように、各Webサービスとの間で文書や編集プロパティなど多くの情報の送受信が行われる。
以上説明した印刷サービス210と、画像編集サービス211と、文書管理サービス212は、具体的な装置を示すものではなく、文書処理システムの要素を示すものである。従って、印刷サービス210と、画像編集サービス211と、文書管理サービス212は、異なる装置に搭載されても良いし、同じ装置に搭載されていても良い。
よって、以下に説明する各実施例では、各サービスと装置の組み合わせを変えたものを説明する。各実施例の説明に先立ち、本実施例において上記サービスが搭載される装置である融合機と、クライアントPC213について説明する。
図2は、融合機の一実施例の構成図を示している。融合機1は、ソフトウェア群2と、融合機起動部3と、ハードウェア資源4とを含むように構成される。
融合機起動部3は融合機1の電源投入時に最初に実行され、アプリケーション層5およびプラットホーム層6を起動する。例えば融合機起動部3は、アプリケーション層5およびプラットホーム層6のプログラムを、HDD(Hard Disk Drive)などから読み出し、読み出した各プログラムをメモリ領域に転送して起動する。ハードウェア資源4は、スキャナ11と、プロッタ12と、ADF(Auto Document Feeder)などからなるその他のハードウェアリソース13とを含む。
また、ソフトウェア群2は、UNIX(登録商標)などのオペレーティングシステム(以下、OSと記す)上に起動されているアプリケーション層5とプラットホーム層6とを含む。アプリケーション層5は、プリンタ、コピー、ファックスおよびスキャナなどの画像形成にかかるユーザサービスにそれぞれ固有の処理を行うプログラムを含む。
アプリケーション層5は、プリンタ用のアプリケーションであるプリンタアプリ21と、コピー用アプリケーションであるコピーアプリ22と、ファックス用アプリケーションであるファックスアプリ23と、スキャナ用アプリケーションであるスキャナアプリ24と、WEBページアプリ25と、SOAP通信アプリ26と、1つ以上の共有ファンクション(以下、SFという)28、29と、WEBページアプリ25やSOAP通信アプリ26とSF28、29との間に設けられたWEBサービスファンクション(以下、WSFという)27とを含む。なお、SOAPはSimple Object Access Protocolである。
WSF27は、予め定義されている関数によりWEBページアプリ25やSOAP通信アプリ26からの処理要求を受信するアプリケーションプログラムインターフェース(以下、APIという)51を有する。また、SF28、29は予め定義されている関数によりWSF27からの処理要求を受信するAPI52を有する。
WSF27はAPI51を介してWEBページアプリ25やSOAP通信アプリ26からの処理要求を受信すると、その処理要求に応じてSF28、29を選択する。WSF27はAPI51を介して受信した処理要求を、その処理要求に応じて選択したSF28、29にAPI52を介して送信する。SF28、29はAPI52を介して処理要求を受信すると、その処理要求に応じた処理を行う。SOAP通信アプリ26は、WebサービスのサーバとしてSOAPメッセージの生成や解釈を行う。
プラットホーム層6は、アプリケーション層5からの処理要求を解釈してハードウェア資源4の獲得要求を発生するコントロールサービス層9と、1つ以上のハードウェア資源4の管理を行ってコントロールサービス層9からの獲得要求を調停するシステムリソースマネージャ(以下、SRMと記す)39と、SRM39からの獲得要求に応じてハードウェア資源4の管理を行うハンドラ層10とを含む。
コントロールサービス層9は、ネットワークコントロールサービス(以下、NCSと記す)31、デリバリーコントロールサービス(以下、DCSと記す)32、オペレーションパネルコントロールサービス(以下、OCSと記す)33、認証サービス(以下、CCSと記す)34、エンジンコントロールサービス(以下、ECSと記す)35、メモリコントロールサービス(以下、MCSと記す)36、ユーザインフォメーションコントロールサービス(以下、UCSと記す)37、システムコントロールサービス(以下、SCSと記す)38など、1つ以上のサービスモジュールを含むように構成されている。
なお、プラットホーム層6は予め定義されている関数により、アプリケーション層5からの処理要求を受信可能とするAPI53を有するように構成されている。OSは、アプリケーション層5およびプラットホーム層6の各ソフトウェアをプロセスとして並列実行する。
NCS31のプロセスは、ネットワークI/Oを必要とするアプリケーションに対して共通に利用できるサービスを提供するものであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、各アプリケーションからのデータをネットワーク側に送信する際の仲介を行う。
例えばNCS31は、ネットワークを介して接続されるネットワーク機器とのデータ通信をhttpd(HyperText Transfer Protocol Daemon)により、HTTP(HyperText Transfer Protocol)で制御する。
DCS32のプロセスは、蓄積文書の配信などの制御を行う。OCS33のプロセスは、オペレータと本体制御との間の情報伝達手段となるオペレーションパネルの制御を行う。CCS34のプロセスは、ユーザの認証に係る処理を行う。
ECS35のプロセスは、スキャナ11、プロッタ12、その他のハードウェアリソース13などのエンジン部の制御を行う。MCS36のプロセスは、メモリの取得および解放、HDDの利用などのメモリ制御を行う。UCS37は、ユーザ情報の管理を行うものである。
SCS38のプロセスは、アプリケーション管理、操作部制御、システム画面表示、LED表示、ハードウェア資源管理、割り込みアプリケーション制御などの処理を行う。
SRM39のプロセスは、SCS38と共にシステムの制御およびハードウェア資源4の管理を行うものである。例えばSRM39のプロセスは、ハードウェア資源4を利用する上位層からの獲得要求に従って調停を行い、実行制御する。
具体的に、SRM39のプロセスは獲得要求されたハードウェア資源4が利用可能であるか(他の獲得要求により利用されていないかどうか)を判定し、利用可能であれば獲得要求されたハードウェア資源4が利用可能である旨を上位層に通知する。また、SRM39のプロセスは上位層からの獲得要求に対してハードウェア資源4を利用するためのスケジューリングを行い、要求内容(例えば、プリンタエンジンによる紙搬送と作像動作、メモリ確保、ファイル生成など)を直接実施している。
また、ハンドラ層10は後述するファックスコントロールユニット(以下、FCUと記す)の管理を行うファックスコントロールユニットハンドラ(以下、FCUHと記す)40と、プロセスに対するメモリの割り振り及びプロセスに割り振ったメモリの管理を行うイメージメモリハンドラ(以下、IMHと記す)41とを含む。SRM39およびFCUH40は、予め定義されている関数によりハードウェア資源4に対する処理要求を送信可能とするエンジンI/F54を利用して、ハードウェア資源4に対する処理要求を行う。
融合機1は、各アプリケーションで共通的に必要な処理をプラットホーム層6で一元的に処理することができる。次に、融合機1のハードウェア構成について説明する。
図3は、融合機1の一実施例のハードウェア構成図を示している。融合機1は、コントローラボード60と、オペレーションパネル52と、FCU68と、エンジン71とを含む。また、FCU68は、G3規格対応ユニット69と、G4規格対応ユニット70とを有する。
また、コントローラボード60は、CPU61と、ASIC66と、HDD65と、システムメモリ(MEM−P)63と、ローカルメモリ(MEM−C)64と、ノースブリッジ(以下、NBと記す)62と、サウスブリッジ(以下、SBと記す)73と、NIC74(Network Interface Card)と、USBデバイス75と、IEEE1394デバイス76と、セントロニクスデバイス77とを含む。
オペレーションパネル52は、コントローラボード60のASIC66に接続されている。また、SB73と、NIC74と、USBデバイス75と、IEEE1394デバイス76と、セントロニクスデバイス77と、NB62にPCIバスで接続されている。
また、FCU68と、エンジン71と、プロッタ72は、コントローラボード60のASIC66にPCIバスで接続されている。
なお、コントローラボード60は、ASIC66にローカルメモリ64、HDD65などが接続されると共に、CPU61とASIC66とがCPUチップセットのNB62を介して接続されている。このように、NB62を介してCPU61とASIC66とを接続すれば、CPU61のインタフェースが公開されていない場合に対応できる。
また、ASIC66とNB62とはPCIバスを介して接続されているのでなく、AGP(Accelerated Graphics Port)67を介して接続されている。このように、図2のアプリケーション層5やプラットホーム層6を形成する一つ以上のプロセスを実行制御するため、ASIC66とNB62とを低速のPCIバスでなくAGP67を介して接続し、パフォーマンスの低下を防いでいる。
CPU61は、融合機1の全体制御を行うものである。CPU61は、NCS31、DCS32、OCS33、CCS34、ECS35、MCS36、UCS37、SCS38、SRM39、FCUH40、IMH41をOS上にそれぞれプロセスとして起動して実行させると共に、アプリケーション層5を形成するプリンタアプリ21、コピーアプリ22、ファックスアプリ23、スキャナアプリ24、Webページアプリ25、SOAP通信アプリ26を起動して実行させる。
NB62は、CPU61、システムメモリ63、SB73およびASIC66を接続するためのブリッジである。システムメモリ63は、融合機1の描画用メモリなどとして用いるメモリである。SB73は、NB62とPCIバス、周辺デバイスとを接続するためのブリッジである。また、ローカルメモリ64はコピー用画像バッファ、符号バッファとして用いるメモリである。
ASIC66は、画像処理用のハードウェア要素を有する画像処理用途向けのICである。HDD65は、画像の蓄積、文書の蓄積、プログラムの蓄積、フォントデータの蓄積、フォームの蓄積などを行うためのストレージである。また、オペレーションパネル52は、ユーザからの入力操作を受け付けると共に、ユーザに向けた表示を行う操作部である。
次に、図1におけるクライアントPC213のハードウェア構成について、図4を用いて説明する。
図4に示されるように、クライアントPC213のハードウェア構成は、それぞれバスBで相互に接続されている入力装置122と、表示装置123と、ドライブ装置124と、記録媒体125と、補助記憶装置126と、メモリ装置127と、演算処理装置120と、インタフェース装置121とを含む。
入力装置122は、キーボード及びマウスなどで構成され、クライアントPC213に各種操作信号を入力するために用いられる。表示装置123は、クライアントPC213を操作するのに必要な各種ウィンドウやデータ等を表示する。インタフェース装置121は、クライアントPC213をネットワークに接続する為のインタフェースや他の機器を接続するためのインタフェースであり、例えばNIC(Network Interface Card)やモデム、USB(Universal Serial Bus)等で構成される。
そして、上記クライアントPC213を動作させるためのプログラムは、CD−ROM等の記録媒体125によって提供されるか、ネットワークを通じてダウンロードされる。また、記録媒体125は、ドライブ装置124にセットされ、データやプログラムが記録媒体125からドライブ装置124を介して補助記憶装置126にインストールされる。
補助記憶装置126は、データやプログラムを格納されると共に、必要なファイル等を格納する。メモリ装置127は、コンピュータシステムの起動時に補助記憶装置126からプログラムを読み出して格納する。演算処理装置120は、メモリ装置127に読み出され格納されたプログラムに従って処理を実行する。
以下、8つの実施例について説明する。なお、以下の説明において、既に説明したものについての説明は省略する。また、異なる融合機に搭載されているものであっても、同じものには、同一の符号を用いる。この同一の符号が用いられるものとしてNCSなどが挙げられる。
まず、第1の実施例を説明するが、この第1の実施例では、印刷する前の段階で行われる印刷条件プロパティ候補に関する処理についての説明がほとんどを占める。印刷に関する処理は、この印刷条件プロパティ候補に関する処理を説明した後に説明する。
第1の実施例を説明する。図5は、第1の実施例の構成を示す図である。図5には、クライアントPC213と、印刷サービス210と、画像編集サービス211と、文書DB214と、文書301、302、303とが示されている。
この図5に示されるように、第1の実施例は、印刷や編集の対象の文書がクライアントPC213にある場合の実施例である。また、図5には、3つの文書301、302、303が示されているが、これらは送受信される文書を示している。従って、図5の場合、文書の送受信が3回行われることを示している。
次に、図6を用いて具体的な構成例について説明する。図6には、クライアントPC213と、MFP−A221と、MFP−B222とが示されている。
クライアントPC213は、ユーザインタフェースを備えたアプリケーション229と、ネットワークインタフェース230とを有する。
MFP−A221は、httpd223を有するNCS31と、Webサービスサーバ224と、Webサービスクライアント225と、印刷WSF226と、ECS35と、プロッタ12とを有する。また、MFP―B222は、httpd223を有するNCS31と、Webサービスサーバ224と、画像編集WSF227と、画像編集用の保存領域228とを有する。
これらのうち、アプリケーション229は、ユーザが文書を印刷する際に使用されるものである。このアプリケーション229は、利用可能なサービスが示されるXML文のタグ応じてユーザインタフェースを変えられる仕組みとなっている。この利用可能なサービスとは、後述する印刷条件プロパティ候補を示す。
Webサービスサーバ224は、クライアントPC213などのWebサービスクライアントから送られてきたSOAPのリクエストメッセージを、Webサービス機能(WSF)の実行要求に変換して、特定のWSFにリクエストを送る。また、Webサービスサーバ224は、MFP内のWSFからの実行結果をSOAPのレスポンスメッセ−ジに変換し、リクエスト元のWebサービスクライアントに返す。
Webサービスクライアント225は、MFP内のWebサービスまたはアプリケーションから送られてきたWebサービス実行要求をSOAPのリクエストメッセージに変換して、特定のWebサービスにリクエストを送る。また、Webサービスクライアント225は、ネットワーク上のWebサービスから送られてきたSOAPのレスポンスメッセージを解析し、その結果をリクエスト元のMFP内のWebサービスまたはアプリケーションに返す。なお、MFP−B222に設けられたWebサービスクライアント225は、第1の実施例では使用されない。
印刷WSF226は、ECS35を用いて文書の印刷を行う。画像編集WSF227は、画像の編集を行う。画像編集用の保存領域228は、例えばHDD65やシステムメモリ63やローカルメモリ64に一時的に設けられる領域である。
以上が第1の実施例における構成となっている。以上の説明において、WSSとWSCは、図2においてはWebページアプリ25とSOAP通信アプリ26に対応する。
次に、実際の処理をシーケンス図を用いて説明する。図7に示されるシーケンス図は、クライアントPC213と、MFP−A221と、MFP−B222との間で行われる処理を示すものである。この図7において、印刷WS240は、図6のMFP−A221におけるWebサービスサーバ224と、印刷WSF226とをまとめて表現したものである。また、画像編集WS241は、図6のMFP−B222におけるWebサービスサーバ224と、画像編集WSF227とをまとめて表現したものである。
また、図7に示される処理は、クライアントPC213が、印刷条件プロパティ候補を取得する処理を示すものである。この印刷条件プロパティ候補とは、文書に対して実行可能な編集内容を示す編集プロパティと、前記文書を印刷する際に実行可能な印刷方法を示す印刷プロパティとを含むものである。これらのプロパティの詳細は、後に説明する。
シーケンス図の説明をする。ステップS101でクライアントPC213は、印刷条件プロパティ候補の取得要求を印刷WS240に通知する。印刷WS240は、ステップS102で、WSC225に、WSリクエスト送信要求を通知する。このとき、画像編集WSのURLと、編集プロパティ候補取得要求を示すメソッド名もともに通知される。
ステップS103で、WSC225は、画像編集WS241に、編集プロパティ候補取得要求をSOAPメッセージで通知する。これに対し、画像編集WS241は、WSC225に、ステップS104で、編集プロパティ通知をSOAPメッセージで通知する。これにより、編集プロパティがMFP−A221に通知される。上記ステップS103からステップS104における画像編集WS241の処理が、編集プロパティ生成段階に対応する。
WSC225は、印刷WS240に、ステップS105で、WSリクエスト結果通知を通知する。このとき、MFP−B222から通知された編集プロパティ候補も通知される。編集プロパティ候補を通知された印刷WS240は、自らが有する印刷プロパティ候補と通知された編集プロパティ候補から、印刷条件プロパティ候補を生成する。この処理は、後にフローチャートを用いて説明する。
印刷条件プロパティ候補を生成した印刷WS240は、クライアントPC213に、ステップS106で、印刷条件プロパティ候補をSOAPメッセージで通知する。
以上の処理により、クライアントPC213は、印刷条件プロパティ候補を取得することができる。
次に、印刷プロパティと編集プロパティの詳細について説明する。図8は、印刷プロパティの一例を示す図である。図に示されるように、印刷プロパティには、「印刷部数」と、「用紙サイズ」と、「両面印刷のあり/なし」と、「ソートのあり/なし」とがある。
このうち、「印刷部数」は、文書を何部印刷するかを指定することの可否を示すものである。「用紙サイズ」は、印刷する用紙のサイズを指定することの可否を示すものである。「両面印刷のあり/なし」は、両面印刷実行の可否を示すものである。「ソートのあり/なし」は、ソート実行の可否を示すものである。
以上が印刷プロパティの一例であり、これらに示されるように、印刷に関する基本的なものが揃っている。次に、編集プロパティを、図9を用いて説明する。図9は、編集プロパティの一例を示す図である。図に示されるように、編集プロパティには、「丸秘スタンプの貼り付け」と、「描画操作」と、「指定領域の削除/コピー/貼り付け/移動/色変換」と、「複数ページ連続編集」と、「地肌汚れ除去」とがある。
このうち、「丸秘スタンプの貼り付け」は、文書に丸秘スタンプを貼り付けて印刷することの可否を示す。「描画操作」は、文書に直線/折れ線/曲線/多角形/円/文字を描画することの可否を示す。「指定領域の削除/コピー/貼り付け/移動/色変換」は、指定された領域に対して行う処理で、領域の削除、領域のコピー、領域への張り付け、領域への文字の描画の実行の可否を示す。「複数ページ連続編集」は、複数のページを連続して編集することの可否を示す。「地肌汚れ除去」は、文書の地肌汚れの除去の可否を示す。
以上が編集プロパティの一例であり、これらに示されるように、文書に対する種々の編集が可能となっている。また、以下に説明する他の実施例において、印刷プロパティと編集プロパティが用いられるが、上述した内容と同じである。
次に、図7で説明した印刷条件プロパティ候補の生成処理を、図10、図11のフローチャートを用いて説明する。なお、図11は、図10の続きとなっている。また、この処理は、図7における印刷WS240のステップS101からステップS106までの処理が示されている。
出力条件プロパティ候補取得要求受信段階に対応するステップS201で、印刷WS240は、印刷条件プロパティ候補の取得要求を受け付ける。出力プロパティ生成段階に対応するステップS202で、印刷WS240は、印刷実行に必要なプロパティ候補を生成する。ここで生成されるプロパティ候補は、印刷プロパティの候補である。
次に、印刷WS240は、ステップS203で、編集C(クライアント)となるWSCがあるかどうか判断する。WSCがない場合、印刷WS240は、図11のステップS214に処理を進める。WSCがある場合、印刷WS240は、ステップS204で、画像編集サービスの候補を決定する。次のステップS205で、印刷WS240は、Xに編集サービス候補の数を代入する。
次のステップS206から、図11のステップS210まではループ処理となる。この処理のループは、前判定のループとなっており、Xが0より大きいことがループ処理の終了条件となるものである。
このループ処理では、図11のステップS207で、WSC225を介して、画像編集WS241に対し、編集プロパティ候補取得要求を通知する。ステップS208で、印刷WS240は、画像編集WS241から編集プロパティ通知により編集プロパティ候補を取得する。ステップS209は、Xの増分であり、ステップS210は、ループ端である。これらステップS207からステップS209の処理は、Xが0より大きくなるまで繰り返される。
ループ処理が終了すると、印刷WS240は、ステップS211で、編集サービス候補の数が1より大きいかどうか判定する。編集サービス候補の数が1の場合は、ステップS213へ処理は進む。編集サービス候補の数が1より大きい場合、印刷WS240は、編集プロパティ併合段階に対応するステップS212で、複数の編集プロパティを併合する。
編集プロパティを併合した印刷WS240は、出力条件プロパティ候補生成段階に対応するステップS213で、ステップS202で生成した印刷プロパティと、編集プロパティを併合して、印刷条件プロパティ候補を生成する。そして、印刷WS240は、出力条件プロパティ候補提供段階に対応するステップS214でクライアントPCに対して印刷条件プロパティを送り、処理を終了する。
このようにすることで、MFP−A221は、自らの編集プロパティだけではなく、他のMFPが可能な編集プロパティをクライアントPC213に提供することができる。
シーケンス図で説明した処理が印刷条件プロパティ候補をクライアントが取得する処理であるが、この処理には、図7のシーケンス図や図10のフローチャートを用いて説明した印刷プロパティと編集プロパティの両方を印刷WSから一度に取得する処理の他に、印刷プロパティは印刷WSから、編集プロパティは編集WSから取得する処理がある。以下、前者の処理を第1の処理とし、後者の処理を第2の処理として説明する。
第1の処理を示す図が、図12である。図12には、クライアントPC213と、印刷サービス210と、画像編集サービス211が示されている。図12において、クライアントPC213と印刷サービス210との間には、印刷プロパティ402と編集プロパティ401で構成される印刷条件プロパティ候補が示され、印刷サービス210と画像編集サービス211との間には、編集プロパティ401が示されている。
図12を用いて第1の処理を説明する。まず、クライアントPC213は、ステップS301で、印刷条件プロパティ候補の取得要求を印刷サービス210に通知する。ステップS302で、印刷サービス210は、編集プロパティ候補の取得要求を画像編集サービス211に通知する。画像編集サービス211は、ステップS303で、編集プロパティ401を印刷サービス210に通知する。印刷サービス210は、編集プロパティ401と印刷プロパティ402を併合して、印刷条件プロパティ候補をステップS304でクライアントPC213に通知する。
以上が第1の処理である。この図12では画像編集サービス211が1つであるが、複数存在する場合、どの画像編集サービスの用いるかの決定方法として、3種類の方法がある。
まず、1つ目の方法は、ステップS301でクライアントPC213が指定した画像編集サービスを用いる方法である。2つ目の方法は、ネットワーク上に存在する画像編集サービスを検索し、検索結果で得られた画像編集サービス用いる方法である。この2つ目の方法の場合、印刷を行う際にクライアントPC213が指定した編集プロパティを見て、用いる画像編集サービスを決定するようにしても良い。3つ目の方法は、予めどの画像編集サービスを使うかを固定しておく方法である。
いずれの方法の場合も、用いる画像編集サービスの数は1つでも複数でもよく、複数の場合、図11で説明したように複数の画像編集サービスから得られた編集プロパティは併合される。
次に、上述した方法で用いられるSOAPメッセージの例を説明する。図13に示されるSOAPメッセージは、1つ目の方法で説明したクライアントPC213が指定する場合のSOAPメッセージである。図に示されるSOAPメッセージのタグ「m:getPrint Capability」に囲まれたXML文410に示されるように、画像編集サービスのURLが「http://111.222.333.444/editservice」と指定されている。
また、3つ目の方法である予め画像編集サービスが固定されている場合には、図14に示されるように、図13のSOAPメッセージから画像編集サービスのURLが無くなったものになる。これは、予め定められているので、指定の必要がないためである。
次に、印刷条件プロパティ候補の例を、図15、図16を用いて説明する。図15に示されるSOAPメッセージには、コピーの部数の設定と、紙のサイズ並びにその向きの設定と、丸秘スタンプ並びにページスタンプを貼り付けする設定が可能であることが示されている。
具体的に、XML文411は、「1-99」に示されるように、印刷する部数を1部から99部まで設定可能なことを表す。XML文412は、「A4F/B4F」に示されるように、A4またはB4のサイズが選択可能であることを表す。なお、A4FやB4Fの「F」は、紙の方向を表す。XML文413は、「secret_stamp/page_stamp」に示されるように、丸秘スタンプ並びにページスタンプを貼り付けする設定が可能であることが示されている。
このSOAPメッセージとは異なるデータ構造のSOAPメッセージで、図15に示された内容と同じ内容のSOAPメッセージが、図16に示されるSOAPメッセージである。具体的に、図16のXML文414は、XML文411に対応し、XML文415は、XML文412に対応し、XML文416は、XML文413に対応する。
このように、印刷条件プロパティ候補がタグを用いてXML文で通知されるので、印刷条件プロパティ候補が変わってもクライアントPC213のアプリケーション229を作り直さなくても良い。
次に、第2の処理について説明する。第2の処理を示す図が、図17である。図17には、クライアントPC213と、印刷サービス210と、画像編集サービス211が示されている。図17において、クライアントPC213と印刷サービス210の間には、印刷プロパティ402と編集可能420と画像編集サービス候補421が示され、クライアントPC213と画像編集サービス211との間には、編集プロパティ401が示されている。
このうち、編集可能420は、画像編集サービスを用いて編集が可能であることを通知する編集に関する編集情報である。また、画像編集サービス候補421は、画像編集サービスの候補を例えばURLなどを用いて通知するもので、これは任意である。但し、画像編集サービス候補421を通知しない場合、クライアントPC213は、画像編集サービスを検索する機能が必要となる。このように、編集プロパティを提供する提供元に関する情報がクライアントに提供される。
次に、この第2の処理の流れを説明する。ステップS401で、クライアントPC213は、印刷サービス210に印刷条件プロパティ候補の取得要求を通知する。ステップS402で、印刷サービス210は、印刷プロパティ402と、編集可能420と、画像編集サービス候補421をクライアントPC213に通知する。
クライアントPC213は、印刷サービス210から通知された画像編集サービス候補421または自ら検索した画像編集サービスに対し、ステップS403で編集プロパティ候補の取得要求を通知する。次のステップS404で、画像編集サービス211は、編集プロパティの候補を通知する。
このように第2の処理では、編集プロパティと印刷プロパティとを別々に取得する。この第2の処理におけるステップS401のSOAPメッセージは、図14で示したSOAPメッセージと同じである。また、ステップS402におけるSOAPメッセージは、図18、図19に示されるようになる。
図18に示されるSOAPメッセージには、印刷プロパティ402と編集可能420と画像編集サービス候補421が示されている。XML文426は、印刷プロパティに対応する。XML文427は、編集可能420に対応し、編集可能であることが「true」により示されている。XML文425は、画像編集サービス候補421に対応し、2つの画像編集サービス候補のURLが示されている。
この図18のSOAPメッセージには、画像編集サービス候補が示されているが、画像編集サービス候補を通知しない場合のSOAPメッセージが、図19に示されるものである。図19に示されるように、SOAPメッセージには印刷プロパティに対応するXML文426と、編集可能420に対応するXML文427は示されているが、画像編集サービス候補は示されていない。
以上説明したSOAPメッセージを受信したクライアントPC213は、画像編集サービス211に編集プロパティを要求し、編集プロパティを取得する。
このようにして編集プロパティと印刷プロパティとを取得したクライアントPC213は、図20に示される画面440を表示する。なお、この画面440は、第1、2の処理のいずれの場合でも同じものである。
この画面440の説明をする。画面440は、印刷プロパティと編集プロパティで得られた機能を使用するかどうかユーザが設定し、印刷を実行するための画面である。
画面440には、印刷プロパティの取得により実行可能となった機能を示す印刷機能430と、編集プロパティの取得により実行可能となった機能を示す拡張機能431と、印刷実行ボタン436と、キャンセルボタン437が表示される。
このうち、印刷機能430には、さらに印刷部数設定欄432と、用紙サイズ設定欄434が表示される。印刷部数設定欄432は、図に示されるように、印刷部数を設定するテキストボックスとなっている。用紙サイズ設定欄434は、プルダウンメニューで用紙のサイズを設定するようになっている。
また、拡張機能431には、丸秘スタンプ設定欄435が表示される。丸秘スタンプを貼り付ける場合、ラジオボタンをチェックし、プルダウンメニューで描画位置を設定する。
このようにして設定した後、設定をキャンセルする場合、ユーザは、キャンセルボタン437を押下し、印刷を実行する場合、ユーザは、印刷実行ボタン436を押下する。ユーザが印刷実行ボタン436を押下すると、クライアントPC213は、MFP−A221に印刷を要求する。この印刷に関する処理を、図21、図22を用いて説明する。
ステップS107で、クライアントPC213は、MFP−A221に文書印刷要求を通知する。これは、後述するSOAPメッセージで行われ、文書と、ユーザが印刷条件プロパティ候補から選択した印刷条件も通知される。図21の場合、印刷条件として丸秘スタンプの貼り付けをクライアントPC213は要求することにする。
文書印刷要求を通知された印刷WS240は、後述する印刷サービスの処理フローを実行する。印刷WS240は、ステップS108でWSC225に対し、WSリクエスト送信要求を通知する。このとき、文書編集要求を示すメソッド名と、編集内容が丸秘スタンプを貼り付けることと、画像編集WS241のURLと、文書がWSC225に通知される。
WSC225は、ステップS109で、MFP−B222に文書編集要求を通知する。この文書編集要求は、後述するSOAPメッセージで通知される。また、このSOAPメッセージで、先ほど通知された文書と編集内容が丸秘スタンプを貼り付けることが通知される。
続いて図22の説明をする。画像編集WS241は、印刷条件に基づき文書の編集を行い、ステップS110で、WSC225に編集結果を編集済み文書とともに通知する。これは、図27で説明するSOAPメッセージで行われる。次に、WSC225は、ステップS111で、印刷WS240に編集結果を編集済み文書とともに通知する。
編集済み文書を通知された印刷WS240は、印刷条件に基づき文書を印刷し、ステップS112で文書印刷受付結果をクライアントPC213に通知する。これは、図28で説明するSOAPメッセージで通知される。
以上が第1の実施例で行われる処理の流れである。次に、上記処理において通知されたSOAPメッセージや、処理を示すフローチャートについて説明する。まず、ステップS107の文書印刷要求で通知されるSOAPメッセージを、図23を用いて説明する。図23に示されるSOAPメッセージには、送信される文書名と、部数と、紙サイズと、スタンプに関する情報が含まれる。
XML文450は、送信される文書は、「content.tiff」なる文書名であることを示している。XML文451は、3部印刷することを示している。XML文452は、A4横で印刷することを示している。XML文453は、丸秘スタンプを貼り付けることを示している。
次に、図24を用いて、図21と図22で行われる印刷WS240の処理を説明する。文書出力要求受信段階に対応するステップS501で、印刷WS240は、文書印刷要求を受け付ける。次に、印刷WS240は、ステップS502で編集指定の有無を判断する。編集指定がない場合、処理はステップS505へ進む。
編集指定がある場合、印刷WS240は、文書編集段階に対応するステップS503で、WSC225を介して画像編集WS241に文書編集要求を通知する。次のステップS504で、印刷WS240は、画像編集WS241から編集結果通知と編集済み文書を取得する。
文書出力段階に対応するステップS505で、印刷WS240は、ECSに対して編集済み文書の印刷要求を行う。そして、ステップS506で、印刷WS240は、クライアントPC213に対して文書印刷受付結果を通知し、処理を終了する。
次に、上述した図21のステップS108で用いられる関数を、図25を用いて説明する。図25に示される関数は、C言語あるいはC++言語で用いられる関数である。そして、この関数は、関数名を、callWebServiceといい、戻り値がint型で、5つの引数を持つ関数である。これら引数について説明する。
webServiceURLは、char型のポインタで、WebサービスのURLが格納されているメモリの先頭アドレスを示すものである。webServiceNameは、Webサービスのサービス名が格納されているメモリの先頭アドレスを示すものである。
webServiceMethodNameは、メソッド名が格納されているメモリの先頭アドレスを示すものである。argumentListは、メソッド引数が格納されているメモリの先頭アドレスが格納されているアドレスを示すものである。resultListは、レスポンスデータが格納されているメモリの先頭アドレスが格納されているアドレスを示すものである。errorは、エラー情報が格納されるものである。
以上説明したwebServiceURL、webServiceName、webServiceMethodName、argum entListは、関数を用いる側が設定するもので、resultList、errorは、関数がセットするものである。
次に、上記図21のステップS109で通知されるSOAPメッセージを、図26を用いて説明する。図26に示されるSOAPメッセージは、文書編集要求であるため、XML文454に、丸秘スタンプの張り付けを要求していることが示されている。
次に、上記図22のステップS110で通知されるSOAPメッセージを、図27を用いて説明する。図27に示されるSOAPメッセージは、編集結果通知であるため、丸秘スタンプが貼り付けられた文書を示す「content.tiff」というファイル名が、XML文455に示されている。このSOAPメッセージの続きで、実際の文書が送信される。
次に、上記図22のステップS112で通知されるSOAPメッセージを、図28を用いて説明する。図28に示されるSOAPメッセージは、文書印刷受付結果を示すもので、XML文456に示されるように、ジョブID「0987654321」を含んだメッセージとなっている。
以上が第1の実施例である。このように第1の実施例は、編集/印刷対象の文書がクライアントPCにある場合についての実施例であった。次に説明する第2の実施例は、文書がクライアントPCに格納されている点は同じであるが、文書を管理するWebサービスである文書管理サービスが、クライアントPCに設けられている点が異なる。
このような第2の実施例の構成を図29に示す。図29には、クライアントPC213と、印刷サービス210と、画像編集サービス211と、文書管理サービス212と、文書DB214と、文書301、302とが示されている。
この図29に示されるように、第1の実施例とは異なり、文書の送受信が2回に減っていることが分かる(図5参照)。このように、文書の送受信の回数を減らすことにより、文書の盗聴や改竄など、文書に対する攻撃の機会を減らすことが可能となる。
また、図29における文書の流れであるが、文書はクライアントPC213上の文書管理サービス212から画像編集サービス211に送信され、編集される。そして、編集された文書は、画像編集サービス211から印刷サービス210に送信され、印刷される。
このように、第2の実施例は、第1の実施例とは異なり、クライアントPC213から直接に画像編集サービス211に文書が送信されるようになっている。
次に、図30を用いて具体的な構成例について説明する。図30には、クライアントPC213と、MFP−A221と、MFP−B222とが示されている。この図30において、第1の実施例(図6参照)と異なる部分を説明する。まず、クライアントPC213には、上述した文書管理サービスであるリポジトリWebサービス231と、Webサービスサーバエンジン232が設けられる。Webサービスサーバエンジン232は、Webサービスのサーバ機能を実行するためのエンジンである。
また、MFP−B222には、リポジトリWebサービス231のクライアントとなるため、第1の実施例では使用されなかったWebサービスクライアント225が使用される。
以上が第2の実施例における構成となっている。次に、実際の処理をシーケンス図を用いて説明する。図31に示されるシーケンス図は、クライアントPC213と、MFP−A221と、MFP−B222との間で行われる処理を示すものである。この図31において、印刷WS240は、図30のMFP−A221におけるWebサービスサーバ224と、印刷WSF226とをまとめて表現したものである。また、画像編集WS241は、図30のMFP−B222におけるWebサービスサーバ224と、画像編集WSF227とをまとめて表現したものである。
また、図31に示される処理は、クライアントPC213が、印刷条件プロパティ候補を取得する処理を示すものである。
シーケンス図の説明をする。ステップS601でクライアントPC213は、印刷条件プロパティ候補の取得要求を印刷WS240に通知する。印刷WS240は、ステップS602で、WSC225に、WSリクエスト送信要求を通知する。このとき、画像編集WSのURLと、編集プロパティ候補取得要求を示すメソッド名もともに通知される。
ステップS603で、WSC225は、画像編集WS241に、編集プロパティ候補取得要求をSOAPメッセージで通知する。これに対し、画像編集WS241は、WSC225に、ステップS604で、編集プロパティ通知をSOAPメッセージで通知する。これにより、編集プロパティがMFP−A221に通知される。
WSC225は、印刷WS240に、ステップS605で、WSリクエスト結果通知を通知する。このとき、MFP−B222から通知された編集プロパティ候補も通知される。編集プロパティ候補を通知された印刷WS240は、自らが有する印刷プロパティ候補と通知された編集プロパティ候補から、印刷条件プロパティ候補を生成する。この処理は、図10、図11のフローチャートで示した通りである。
印刷条件プロパティ候補を生成した印刷WS240は、クライアントPC213に、ステップS606で、印刷条件プロパティ候補をSOAPメッセージで通知する。
以上の処理により、クライアントPC213は、印刷条件プロパティ候補を取得することができる。
次に、図32、図33を用いて第2の実施例における印刷処理について説明する。ステップS607で、クライアントPC213のアプリケーション229は、同じクライアントPC213内のリポジトリWS231に文書チケット作成要求を、文書IDの配列とともに通知する。リポジトリWS231は、ステップS608で、文書チケット作成要求に対する応答を、文書チケットとともに通知する。なお、文書IDとは、文書を一意的に指定するものであり、文書チケットとは、本実施例においては文書に対する編集または印刷が許可されていることを示すもので、文書IDに対応する文書を編集し、印刷するために必要なものである。
ステップS609で、クライアントPC213は、MFP−A221に文書印刷要求を通知する。これは、後述するSOAPメッセージで行われ、文書チケットと、印刷条件も通知される。図32の場合、印刷条件プロパティとして丸秘スタンプの貼り付けをクライアントPC213は要求することにする。
文書印刷要求を通知された印刷WS240は、図24で説明した印刷サービスの処理フローを実行する。印刷WS240は、ステップS610でWSC225に対し、WSリクエスト送信要求を通知する。このWSリクエスト送信要求は、図25で示した関数が用いられ、文書編集要求を示すメソッド名と、編集内容が丸秘スタンプを貼り付けることと、画像編集WS241のURLと、文書チケットがWSC225に通知される。
WSC225は、ステップS611で、MFP−B222に文書編集要求を通知する。この文書編集要求は、図26に示した通りである。また、このSOAPメッセージで、先ほど通知された文書チケットと、編集内容が丸秘スタンプを貼り付けることとが通知される。
次に、画像編集WS241は、文書をリポジトリWS231から引き取るため、ステップS612で、MFP−B222内のWSC225に、WSリクエスト送信要求を通知する。このWSリクエスト送信要求は、図25で示した関数が用いられ、リポジトリWSのURLと、文書引き取り要求を示すメソッド名と、文書チケットがWSC225に通知される。
WSC225は、ステップS613で、リポジトリWS231に文書引き取り要求を文書チケットともに通知する。続いて図33の説明をする。リポジトリWS231は、ステップS614で、文書引き取り要求に対する応答を通知する。このとき、文書がMFP−B222に引き取られる。文書を引き取ったWSC225は、画像編集WS241に要求結果と文書からなる応答をステップS615で通知する。
画像編集WS241は、文書の編集を行い、ステップS616で、MFP―A221のWSC225に編集結果を編集済み文書とともに通知する。これは、図27で示したSOAPメッセージで行われる。次に、WSC225は、ステップS617で、印刷WS240に編集結果を編集済み文書とともに通知する。
編集済み文書を通知された印刷WS240は、文書を印刷し、ステップS618で文書印刷受付結果をクライアントPC213に通知する。これは、図28で説明したSOAPメッセージで通知される。
次に、図32のステップS609で通知されるSOAPメッセージを、図34を用いて説明する。この図34に示されるSOAPメッセージは、文書印刷要求のSOAPメッセージであるが、第1の実施例の場合(図23参照)と異なり、文書名に代え、XML文459に示されるように、文書チケットとなっている。なお、XML文459に示されている「jfowfnofjofi」が文書チケットである。また、図34に示したSOAPメッセージは、以下で説明する第8の実施例まで同じものである。
以上が第2の実施例である。次に、第3の実施例について説明する。第3の実施例は、第2の実施例と比較し、文書管理サービスがクライアントPCから独立している点が異なる。
このような第3の実施例の構成を図35に示す。図35には、クライアントPC213と、印刷サービス210と、画像編集サービス211と、文書管理サービス212と、文書DB214と、文書301、302とが示されている。
図35における文書の流れであるが、文書は文書管理サービス212から画像編集サービス211に送信され、編集される。そして、編集された文書は、画像編集サービス211から印刷サービス210に送信され、印刷される。
次に、図36を用いて具体的な構成例について説明する。図36には、クライアントPC213と、MFP−A221と、MFP−B222と、MFP−C233とが示されている。この図36において、第2の実施例(図30参照)と異なる部分を説明する。まず、クライアントPC213には、アプリケーション229とネットワークインタフェース230で構成され、第1の実施例と同じものとなる。
また、リポジトリサービスとして新たにMFP−C233が追加される。このMFP−C233には、httpd223を有するNCS31と、Webサービスサーバ224と、Webサービスクライアント225と、リポジトリWSF234と、MCS36と、HDD65とを有する。
リポジトリWSF234は、文書管理機能を提供するWSFである。MCS36は、リポジトリWSF234が、HDD65にアクセスする際に用いられる。HDD65には、文書が格納されている。なお、MFP−B222に設けられたWebサービスクライアント225は、第3の実施例では使用されない。
以上が第3の実施例における構成となっている。次に、実際の処理をシーケンス図を用いて説明する。図37、図38に示されるシーケンス図は、クライアントPC213と、MFP−A221と、MFP−B222と、MFP−C233との間で行われる処理を示すものである。この図37、図38において、リポジトリWS235は、図36のMFP−C233におけるWebサービスサーバ224と、リポジトリWSF234とをまとめて表現したものである。
また、図37、図38に示される処理は、クライアントPC213が、文書チケットを取得し、印刷する処理を示すものである。
ステップS701で、クライアントPC213のアプリケーション229は、文書チケット作成要求を、文書IDの配列とともにリポジトリWS235に通知する。リポジトリWS235は、文書チケットを作成し、ステップS702で、文書チケット作成要求に対する応答を、文書チケットとともに通知する。これらステップS701、702のSOAPメッセージは、後に図39、図40で説明する。
ステップS703で、クライアントPC213は、MFP−A221に文書印刷要求を通知する。これは、図34で説明したSOAPメッセージで行われ、文書チケットと、文書と、印刷条件プロパティも通知される。図37の場合、印刷条件プロパティとして丸秘スタンプの貼り付けをクライアントPC213は要求することにする。
文書印刷要求を通知された印刷WS240は、図24で説明した印刷サービスの処理フローを実行する。印刷WS240は、ステップS704でWSC225に対し、WSリクエスト送信要求を通知する。このWSリクエスト送信要求は、図25で示した関数が用いられ、文書編集要求を示すメソッド名と、編集内容が丸秘スタンプを貼り付けることと、画像編集WS241のURLと、文書チケットがWSC225に通知される。
WSC225は、ステップS705で、MFP−B222に文書編集要求を通知する。この文書編集要求は、図26に示した通りである。また、このSOAPメッセージで、先ほど通知された文書チケットと、編集内容が丸秘スタンプを貼り付けることとが通知される。
次に、画像編集WS241は、文書をリポジトリWS235から引き取るため、ステップS706で、MFP−B222内のWSC225に、WSリクエスト送信要求を通知する。このWSリクエスト送信要求は、図25で示した関数が用いられ、リポジトリWSのURLと、文書引き取り要求を示すメソッド名と、文書チケットがWSC225に通知される。
続いて図38の説明をする。WSC225は、ステップS707で、リポジトリWS231に文書引き取り要求を文書チケットともに通知する。リポジトリWS235は、ステップS708で、文書引き取り要求に対する応答を通知する。このとき、文書がMFP−B222に引き取られる。文書を引き取ったWSC225は、画像編集WS241に要求結果と文書からなる応答をステップS709で通知する。
画像編集WS241は、文書の編集を行い、ステップS710で、MFP―A221のWSC225に編集結果を編集済み文書とともに通知する。これは、図27で示したSOAPメッセージで行われる。次に、WSC225は、ステップS711で、印刷WS240に編集結果を編集済み文書とともに通知する。
編集済み文書を通知された印刷WS240は、文書を印刷し、ステップS712で文書印刷受付結果をクライアントPC213に通知する。これは、図28で説明したSOAPメッセージで通知される。
次に、図37のステップS701で通知されるSOAPメッセージを、図39を用いて説明する。図39に示される文書チケット作成要求には、XML文457に示されるように、2つの文書ID「1111」と「1112」を有する。この文書IDに基づき文書チケットは作成される。
この文書チケット作成要求に対する応答が、図40に示されるSOAPメッセージである。このSOAPメッセージのXML文458に示されるように、文書チケット作成要求に対する応答には、文書チケット「jfowfnofjofi」を含むものとなる。
以上が第3の実施例である。次に、第4の実施例について説明する。第4の実施例は、第3の実施例と比較し、文書管理サービスと印刷サービスとが文書の送受信を行う点が異なる。
このような第4の実施例の構成を図41に示す。図41には、クライアントPC213と、印刷サービス210と、画像編集サービス211と、文書管理サービス212と、文書DB214と、文書301、302、303とが示されている。
図41における文書の流れであるが、文書は文書管理サービス212から印刷サービス210に送信され、印刷サービス210から画像編集サービス211に送信される。画像編集サービス211で編集された文書は、印刷サービス210に送信され、印刷サービス210から印刷される。
次に、図42を用いて具体的な構成例について説明する。図42には、クライアントPC213と、MFP−A221と、MFP−B222と、MFP−C233とが示されている。この図42において、第3の実施例(図36参照)と異なる部分を説明する。第3の実施例と比較して異なるのは、MFP−B222のWSC225が不要となることである。これは、MFP−B222がWebサービスのクライアントにならなくとも良いためである。
以上が第4の実施例における構成となっている。次に、実際の処理をシーケンス図を用いて説明する。図43、図44に示されるシーケンス図は、クライアントPC213と、MFP−A221と、MFP−B222と、MFP−C233との間で行われる処理を示すものである。
また、図43、図44に示される処理は、クライアントPC213が、文書チケットを取得し、印刷する処理を示すものである。
ステップS801で、クライアントPC213のアプリケーション229は、文書チケット作成要求を、文書IDの配列とともにリポジトリWS235に通知する。リポジトリWS235は、文書チケットを作成し、ステップS802で、文書チケット作成要求に対する応答を、文書チケットとともに通知する。これらステップS801、802のSOAPメッセージは、図39、図40で説明したものである。
ステップS803で、クライアントPC213は、MFP−A221に文書印刷要求を通知する。これは、図34で説明したSOAPメッセージで行われ、文書チケットと、文書と、印刷条件プロパティも通知される。図43の場合、印刷条件プロパティとして丸秘スタンプの貼り付けをクライアントPC213は要求することにする。
文書印刷要求を通知された印刷WS240は、図24で説明した印刷サービスの処理フローを実行する。印刷WS240は、ステップS804でWSC225に対し、WSリクエスト送信要求を通知する。このWSリクエスト送信要求は、図25で示した関数が用いられ、文書引き取り要求を示すメソッド名と、リポジトリWS235のURLと、文書チケットがWSC225に通知される。
WSC225は、ステップS805で、リポジトリWS235に文書引き取り要求を通知する。このSOAPメッセージで、先ほど通知された文書チケットも通知される。ステップS806で、リポジトリWS235は、WSCに文書を含む応答を通知する。文書を引き取ったWSC225は、画像編集WS241に要求結果と文書からなる応答をステップS807で通知する。
続いて図44の説明をする。印刷WS240は、ステップS808でWSC225に対し、WSリクエスト送信要求を通知する。このWSリクエスト送信要求は、図25で示した関数が用いられ、文書編集要求を示すメソッド名と、編集内容が丸秘スタンプを貼り付けることと、画像編集WS241のURLと、文書がWSC225に通知される。
WSC225は、ステップS809で、MFP−B222に文書編集要求を通知する。このSOAPメッセージで、文書と、編集内容が丸秘スタンプを貼り付けることとが通知される。
画像編集WS241は、文書の編集を行い、ステップS810で、WSC225に編集結果を編集済み文書とともに通知する。これは、図27で示したSOAPメッセージで行われる。次に、WSC225は、ステップS811で、印刷WS240に編集結果を編集済み文書とともに通知する。
編集済み文書を通知された印刷WS240は、文書を印刷し、ステップS812で文書印刷受付結果をクライアントPC213に通知する。これは、図28で説明したSOAPメッセージで通知される。
以上が第4の実施例である。次に、第5の実施例について説明する。第5の実施例は、文書管理サービスと印刷サービスとを1つのMFP内に設けた場合の実施例である。
このような第5の実施例の構成を図45に示す。図45には、クライアントPC213と、印刷サービス210と、文書管理サービス212と、画像編集サービス211と、文書DB214と、文書301、302とが示されている。
図45における文書の流れであるが、文書は文書管理サービス212から画像編集サービス211に送信される。画像編集サービス211で編集された文書は、印刷サービス210に送信され、印刷サービス210から印刷される。
次に、図46を用いて具体的な構成例について説明する。図46には、クライアントPC213と、MFP−A221と、MFP−B222とが示されている。この図46には、MFP−A221内に、印刷サービスとリポジトリサービスが設けられていることが示されている。そして、画像編集サービスは、MFP−B222に設けられている。
以上が第5の実施例における構成となっている。次に、実際の処理をシーケンス図を用いて説明する。図47、図48、図49に示されるシーケンス図は、クライアントPC213と、MFP−A221と、MFP−B222との間で行われる処理を示すものである。これらの図において、印刷WS240は、図46のMFP−A221におけるWebサービスサーバ224と、印刷WSF226とをまとめて表現したものである。また、リポジトリWS235も同様に、図46のMFP−A222におけるWebサービスサーバ224と、リポジトリWSF234とをまとめて表現したものである。
また、図47に示される処理は、クライアントPC213が、印刷条件プロパティ候補を取得する処理を示すものである。図48、図49に示される処理は、クライアントPC213が、文書チケットを取得し、印刷する処理を示すものである。
図47のシーケンス図の説明をする。ステップS901でクライアントPC213は、印刷条件プロパティ候補の取得要求を印刷WS240に通知する。印刷WS240は、ステップS902で、WSC225に、WSリクエスト送信要求を通知する。このとき、画像編集WSのURLと、編集プロパティ候補取得要求を示すメソッド名もともに通知される。
ステップS903で、WSC225は、画像編集WS241に、編集プロパティ候補取得要求をSOAPメッセージで通知する。これに対し、画像編集WS241は、WSC225に、ステップS904で、編集プロパティ通知をSOAPメッセージで通知する。これにより、編集プロパティがMFP−A221に通知される。
WSC225は、印刷WS240に、ステップS905で、WSリクエスト結果通知を通知する。このとき、MFP−B222から通知された編集プロパティ候補も通知される。編集プロパティ候補を通知された印刷WS240は、自らが有する印刷プロパティ候補と通知された編集プロパティ候補から、印刷条件プロパティ候補を生成する。この処理は、図11のフローチャートで示した通りである。
印刷条件プロパティ候補を生成した印刷WS240は、クライアントPC213に、ステップS906で、印刷条件プロパティ候補をSOAPメッセージで通知する。
以上の処理により、クライアントPC213は、印刷条件プロパティ候補を取得することができる。
次に、図48、図49について説明する。ステップS907で、クライアントPC213は、リポジトリWS235に文書チケット作成要求を、文書IDの配列とともに通知する。リポジトリWS235は、ステップS908で、文書チケット作成要求に対する応答を、文書チケットとともに通知する。
ステップS909で、クライアントPC213は、MFP−A221に文書印刷要求を通知する。これは、図34で示したSOAPメッセージで行われ、文書チケットと、印刷条件が通知される。図48の場合、印刷条件プロパティとして丸秘スタンプの貼り付けをクライアントPC213は要求することにする。
文書印刷要求を通知された印刷WS240は、図24で説明した印刷サービスの処理フローを実行する。印刷WS240は、ステップS910でWSC225に対し、WSリクエスト送信要求を通知する。このWSリクエスト送信要求は、図25で示した関数が用いられ、文書編集要求を示すメソッド名と、編集内容が丸秘スタンプを貼り付けることと、画像編集WS241のURLと、文書チケットがWSC225に通知される。
WSC225は、ステップS911で、MFP−B222に文書編集要求を通知する。この文書編集要求は、図26に示した通りである。また、このSOAPメッセージで、文書チケットと、編集内容が通知される。
次に、画像編集WS241は、文書をリポジトリWS231から引き取るため、ステップS912で、MFP−B222内のWSC225に、WSリクエスト送信要求を通知する。このWSリクエスト送信要求は、図25で示した関数が用いられ、リポジトリWSのURLと、文書引き取り要求を示すメソッド名と、文書チケットがWSC225に通知される。
WSC225は、ステップS913で、リポジトリWS231に文書引き取り要求を文書チケットともに通知する。続いて図49の説明をする。リポジトリWS235は、ステップS914で、文書引き取り要求に対する応答を通知する。このとき、文書がMFP−B222に引き取られる。文書を引き取ったWSC225は、画像編集WS241に要求結果と文書からなる応答をステップS915で通知する。
画像編集WS241は、文書の編集を行い、ステップS916で、MFP―A221のWSC225に編集結果を編集済み文書とともに通知する。これは、図27で示したSOAPメッセージで行われる。次に、WSC225は、ステップS917で、印刷WS240に編集結果を編集済み文書とともに通知する。
編集済み文書を通知された印刷WS240は、文書を印刷し、ステップS918で文書印刷受付結果をクライアントPC213に通知する。これは、図28で説明したSOAPメッセージで通知される。
以上が第5の実施例である。次に、第6の実施例について説明する。第6の実施例は、文書管理サービスと画像編集サービスとを1つのMFP内に設けた場合の実施例である。
このような第6の実施例の構成を図50に示す。図50には、クライアントPC213と、印刷サービス210と、文書管理サービス212と、画像編集サービス211と、文書DB214と、文書301とが示されている。
図50における文書の流れであるが、文書は、編集された文書が画像編集サービス211から印刷サービス210に送信され、印刷サービス210から印刷される。従って、文書の送受信は、1回しか行われない。
次に、図51を用いて具体的な構成例について説明する。図51には、クライアントPC213と、MFP−A221と、MFP−B222とが示されている。この図51には、MFP−B222内に、画像編集サービスとリポジトリサービスが設けられていることが示されている。そして、印刷サービスは、MFP−A221に設けられている。
以上が第6の実施例における構成となっている。次に、実際の処理をシーケンス図を用いて説明する。図52、図53、図54に示されるシーケンス図は、クライアントPC213と、MFP−A221と、MFP−B222との間で行われる処理を示すものである。これらの図において、画像編集WS241は、図51のMFP−B222におけるWebサービスサーバ224と、画像編集WSF227とをまとめて表現したものである。また、リポジトリWS235も同様に、図51のMFP−B222におけるWebサービスサーバ224と、リポジトリWSF234とをまとめて表現したものである。
また、図52に示される処理は、クライアントPC213が、印刷条件プロパティ候補を取得する処理を示すものである。図53、図54に示される処理は、クライアントPC213が、文書チケットを取得し、印刷する処理を示すものである。
図52のシーケンス図の説明をする。ステップS1001でクライアントPC213は、印刷条件プロパティ候補の取得要求を印刷WS240に通知する。印刷WS240は、ステップS1002で、WSC225に、WSリクエスト送信要求を通知する。このとき、画像編集WSのURLと、編集プロパティ候補取得要求を示すメソッド名もともに通知される。
ステップS1003で、WSC225は、画像編集WS241に、編集プロパティ候補取得要求をSOAPメッセージで通知する。これに対し、画像編集WS241は、WSC225に、ステップS1004で、編集プロパティ通知をSOAPメッセージで通知する。これにより、編集プロパティがMFP−A221に通知される。
WSC225は、印刷WS240に、ステップS1005で、WSリクエスト結果通知を通知する。このとき、MFP−B222から通知された編集プロパティ候補も通知される。編集プロパティ候補を通知された印刷WS240は、自らが有する印刷プロパティ候補と通知された編集プロパティ候補から、印刷条件プロパティ候補を生成する。この処理は、図11のフローチャートで示した通りである。
印刷条件プロパティ候補を生成した印刷WS240は、クライアントPC213に、ステップS1006で、印刷条件プロパティ候補をSOAPメッセージで通知する。
以上の処理により、クライアントPC213は、印刷条件プロパティ候補を取得することができる。
次に、図53、図54について説明する。ステップS1007で、クライアントPC213は、リポジトリWS235に文書チケット作成要求を、文書IDの配列とともに通知する。リポジトリWS235は、ステップS1008で、文書チケット作成要求に対する応答を、文書チケットとともに通知する。
ステップS1009で、クライアントPC213は、MFP−A221に文書印刷要求を通知する。これは、図34で示したSOAPメッセージで行われ、文書チケットと、印刷条件が通知される。図53の場合、印刷条件プロパティとして丸秘スタンプの貼り付けをクライアントPC213は要求することにする。
文書印刷要求を通知された印刷WS240は、図24で説明した印刷サービスの処理フローを実行する。印刷WS240は、ステップS1010でWSC225に対し、WSリクエスト送信要求を通知する。このWSリクエスト送信要求は、図25で示した関数が用いられ、文書編集要求を示すメソッド名と、編集内容が丸秘スタンプを貼り付けることと、画像編集WS241のURLと、文書チケットがWSC225に通知される。
WSC225は、ステップS1011で、MFP−B222に文書編集要求を通知する。この文書編集要求は、図26に示した通りである。また、このSOAPメッセージで、文書チケットと、編集内容が通知される。
次に、画像編集WS241は、文書をリポジトリWS235から引き取るため、ステップS1012で、MFP−B222内のリポジトリWS235に、文書引き取り要求を文書チケットともに通知する。
続いて図54の説明をする。リポジトリWS235は、ステップS1013で、画像編集WS241に要求結果と文書からなる応答を通知する。
画像編集WS241は、文書の編集を行い、ステップS1014で、MFP―A221のWSC225に編集結果を編集済み文書とともに通知する。これは、図27で示したSOAPメッセージで行われる。次に、WSC225は、ステップS1015で、印刷WS240に編集結果を編集済み文書とともに通知する。
編集済み文書を通知された印刷WS240は、文書を印刷し、ステップS1016で文書印刷受付結果をクライアントPC213に通知する。これは、図28で説明したSOAPメッセージで通知される。
以上が第6の実施例である。次に、第7の実施例について説明する。第7の実施例は、印刷サービスと画像編集サービスとを1つのMFP内に設けた場合の実施例である。
このような第7の実施例の構成を図55に示す。図55には、クライアントPC213と、印刷サービス210と、文書管理サービス212と、画像編集サービス211と、文書DB214と、文書301とが示されている。
図55における文書の流れであるが、文書は、文書管理サービス212から画像編集サービス211に送信され、編集された文書は印刷サービス210から印刷される。従って、文書の送受信は、1回しか行われない。
次に、図56を用いて具体的な構成例について説明する。図56には、クライアントPC213と、MFP−A221と、MFP−B222とが示されている。この図56には、MFP−A221内に、印刷サービスと画像編集サービスが設けられていることが示されている。そして、リポジトリサービスは、MFP−B222に設けられている。
以上が第7の実施例における構成となっている。次に、実際の処理をシーケンス図を用いて説明する。図57、図58、図59に示されるシーケンス図は、クライアントPC213と、MFP−A221と、MFP−B222との間で行われる処理を示すものである。これらの図において、印刷WS240は、図56のMFP−A221におけるWebサービスサーバ224と、印刷WSF226とをまとめて表現したものである。画像編集WS241も同様に、図56のMFP−A221におけるWebサービスサーバ224と、画像編集WSF227とをまとめて表現したものである。
また、図57に示される処理は、クライアントPC213が、印刷条件プロパティ候補を取得する処理を示すものである。図58、図59に示される処理は、クライアントPC213が、文書チケットを取得し、印刷する処理を示すものである。
図57のシーケンス図の説明をする。ステップS1101でクライアントPC213は、印刷条件プロパティ候補の取得要求を印刷WS240に通知する。印刷WS240は、ステップS1102で、画像編集WS241に、編集プロパティ候補取得要求を通知する。これに対し、画像編集WS241は、印刷WS240に、ステップS1103で、編集プロパティ通知を通知する。
編集プロパティ候補を通知された印刷WS240は、自らが有する印刷プロパティ候補と通知された編集プロパティ候補から、印刷条件プロパティ候補を生成する。この処理は、図11のフローチャートで示した通りである。
印刷条件プロパティ候補を生成した印刷WS240は、クライアントPC213に、ステップS1104で、印刷条件プロパティ候補をSOAPメッセージで通知する。
以上の処理により、クライアントPC213は、印刷条件プロパティ候補を取得することができる。
次に、図58、図59について説明する。ステップS1105で、クライアントPC213は、リポジトリWS235に文書チケット作成要求を、文書IDの配列とともに通知する。リポジトリWS235は、ステップS1106で、文書チケット作成要求に対する応答を、文書チケットとともに通知する。
ステップS1107で、クライアントPC213は、MFP−A221に文書印刷要求を通知する。これは、図34で示したSOAPメッセージで行われ、文書チケットと、印刷条件が通知される。図58の場合、印刷条件プロパティとして丸秘スタンプの貼り付けをクライアントPC213は要求することにする。
文書印刷要求を通知された印刷WS240は、図24で説明した印刷サービスの処理フローを実行する。印刷WS240は、ステップS1108で文書編集要求を画像編集WS241に通知する。この文書編集要求で、文書チケットと、編集内容が通知される。
次に、画像編集WS241は、文書をリポジトリWS235から引き取るため、ステップS1109で、WSC225に、WSリクエスト送信要求を通知する。このWSリクエスト送信要求は、図25で示した関数が用いられ、リポジトリWSのURLと、文書引き取り要求を示すメソッド名と、文書チケットがWSC225に通知される。WSC225は、ステップS1110で、リポジトリWS231に文書引き取り要求を文書チケットともに通知する。
続いて図59の説明をする。リポジトリWS235は、ステップS1111で、文書引き取り要求に対する応答を通知する。このとき、文書がMFP−A221に引き取られる。文書を引き取ったWSC225は、画像編集WS241に要求結果と文書からなる応答をステップS1112で通知する。
画像編集WS241は、文書の編集を行い、ステップS1113で、印刷WS240に編集結果を編集済み文書とともに通知する。編集済み文書を通知された印刷WS240は、文書を印刷し、ステップS1114で文書印刷受付結果をクライアントPC213に通知する。これは、図28で説明したSOAPメッセージで通知される。
以上が第7の実施例である。次に、第8の実施例について説明する。第8の実施例は、印刷サービスと文書管理サービスと画像編集サービスの3つのサービス全てを1つのMFP内に設けた場合の実施例である。
このような第8の実施例の構成を図60に示す。図60には、クライアントPC213と、印刷サービス210と、文書管理サービス212と、画像編集サービス211と、文書DB214と、文書301とが示されている。
図60における文書の流れであるが、文書は、編集し、印刷するMFPが有するので文書の送受信は行われない。
次に、図61を用いて具体的な構成例について説明する。図61には、クライアントPC213と、MFP−A221が示されている。この図61には、MFP−A221内に、印刷サービスと画像編集サービスとリポジトリサービスが設けられていることが示されている。
以上が第8の実施例における構成となっている。次に、実際の処理をシーケンス図を用いて説明する。図62、図63、図64に示されるシーケンス図は、クライアントPC213と、MFP−A221の間で行われる処理を示すものである。これらの図において、画像編集WS241は、図61のMFP−A221におけるWebサービスサーバ224と、画像編集WSF227とをまとめて表現したものである。また、リポジトリWS235も同様に、図61のMFP−A221におけるWebサービスサーバ224と、リポジトリWSF234とをまとめて表現したものである。そして、印刷WS240も、図61のMFP−A221におけるWebサービスサーバ224と、印刷WSF226とをまとめて表現したものである。
また、図62に示される処理は、クライアントPC213が、印刷条件プロパティ候補を取得する処理を示すものである。図63、図64に示される処理は、クライアントPC213が、文書チケットを取得し、印刷する処理を示すものである。
図62のシーケンス図の説明をする。ステップS1201でクライアントPC213は、印刷条件プロパティ候補の取得要求を印刷WS240に通知する。印刷WS240は、ステップS1202で、画像編集WS241に、編集プロパティ候補取得要求を通知する。これに対し、画像編集WS241は、印刷WS240に、ステップS1203で、編集プロパティ通知を通知する。
編集プロパティ候補を通知された印刷WS240は、自らが有する印刷プロパティ候補と通知された編集プロパティ候補から、印刷条件プロパティ候補を生成する。この処理は、図11のフローチャートで示した通りである。
印刷条件プロパティ候補を生成した印刷WS240は、クライアントPC213に、ステップS1204で、印刷条件プロパティ候補をSOAPメッセージで通知する。
以上の処理により、クライアントPC213は、印刷条件プロパティ候補を取得することができる。
次に、図63、図64について説明する。ステップS1205で、クライアントPC213は、リポジトリWS235に文書チケット作成要求を、文書IDの配列とともに通知する。リポジトリWS235は、ステップS1206で、文書チケット作成要求に対する応答を、文書チケットとともに通知する。
ステップS1207で、クライアントPC213は、MFP−A221に文書印刷要求を通知する。これは、図34で示したSOAPメッセージで行われ、文書チケットと、印刷条件が通知される。図63の場合、印刷条件プロパティとして丸秘スタンプの貼り付けをクライアントPC213は要求することにする。
文書印刷要求を通知された印刷WS240は、図24で説明した印刷サービスの処理フローを実行する。印刷WS240は、ステップS1208で、画像編集WS241に文書編集要求を通知する。この通知で、文書チケットと、編集内容が通知される。
次に、画像編集WS241は、文書をリポジトリWS235から引き取るため、ステップS1209で、リポジトリWS235に、文書チケットに含まれる文書ID取得要求を通知する。ここで、文書IDを取得するのは、画像編集WS241が設けられているMFP内に文書が存在するためであり、文書IDを取得できると、画像編集WS241は、対応する文書に編集を行うことができる。
続いて図64の説明をする。リポジトリWS235は、ステップS1210で、画像編集WS241に文書IDを通知する。画像編集WS241は、文書の編集を行い、ステップS1211で、印刷WS240に編集結果を編集済み文書とともに通知する。
編集済み文書を通知された印刷WS240は、文書を印刷し、ステップS1212で文書印刷受付結果をクライアントPC213に通知する。これは、図28で説明したSOAPメッセージで通知される。
以上が第8の実施例であり、これにより第1から第8までの実施例の説明が終了する。以上説明した各実施例において、出力プロパティ取得手段と、出力サービス手段と、出力条件プロパティ候補取得要求受信手段と、出力条件プロパティ候補生成手段と、出力条件プロパティ候補提供手段と、文書出力要求受信手段は、印刷WSFに対応する。
また編集プロパティ取得手段と編集サービス手段は、画像編集WSFに対応する。出力サービスクライアント手段は、印刷WSFに対応する。編集サービスクライアント手段は、画像編集WSFに対応する。
次に、上述した実施例における印刷WSや画像編集WSなどのWSと、WSCとの関係について説明する。
図65は、1つのWSCにも関わらず複数のWSが利用できることを示すものである。具体的に図65を説明すると、MFP−A221は、印刷WS240と画像編集WS241とを有し、それらは、MFP−A221以外のWSクライアント503のサーバであるものとする。このような場合であっても、印刷WS240と画像編集WS241は、それぞれ1つのWSC225を利用することができ、それぞれのWSは、WSC225を介して、MFP−A221以外のリポジトリWS235などWSを利用することができる。
これとは逆に、1つのWSが複数のWSCを利用できることを示す図が、図66である。図66には、MFP−B222と、WSクライアント504と、UPnPリポジトリWS507と、BMLinkSリポジトリWS508とが示されている。
なお、BMLinkSとは、OA機器の探索、OA機器が授受するデータフォーマット、OA機器の制御の標準仕様である。
このような仕様が異なるUPnPリポジトリWS507と、BMLinkSリポジトリWS508に対応するために、MFP−B222には、UPnPに対応したWSC_A505と、BMLinkSに対応したWSC_B506とが設けられている。従って、例えば、WSクライアント504のサーバである印刷WS240は、いずれのリポジトリサービスを利用することができる。
以上説明したMFP−A221とMFP−B222の詳細を示したのが、図67である。図67において、既に説明した符号については説明を省略する。
図67に示されるMFP−A221には、印刷WSF226と画像編集WSF227が、1つのWSC225を利用可能な構成となっている。また、MFP−B222では、印刷WSF226が、WebサービスAクライアント501と、WebサービスBクライアント502の2つのWSCが利用可能な構成となっている。