(57)【要約】【課題】印刷代行サービスにおいて、ブックデータをアップロードした登録元ユーザに招待された発注元ユーザが、ブックデータに含まれるページを取捨選択したり、一部のページを編集したりして自分の好みに合った製本を発注することを可能とする。【解決手段】ブックデータは各ページに編集許可フラグ及び利用許可フラグを持つ。そして、発注元ユーザは、利用許可フラグの状態に基づいて、サーバから選択的にブックデータのページをダウンロードする。また、編集許可フラグの状態に基づいて、ダウンロードしたページを編集する。発注元ユーザはこのようなページを含む新たに作成されたブックデータをサーバにアップロードし、これに基づく製本を発注する。【選択図】図１２
2007334522.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して登録元端末及び発注元端末及び印刷処理装置と通信可能な印刷代行サービスサーバであって、
１以上のページデータで構成され、かつ、各ページデータに利用の許可／不許可を示す第１のフラグ情報を有する第１のブックデータを、前記登録元端末から受信し、記憶部に登録する登録手段と、
前記第１のブックデータの取得要求を前記発注元端末から受信した場合、前記第１のブックデータ中の第１のフラグ情報が許可状態にあるページデータを前記発注元端末に送信する送信手段と、
前記送信されたページデータを含む第２のブックデータを前記発注元端末から受信する第１の受信手段と、
前記第２のブックデータに基づく印刷ジョブを作成する作成手段と、
前記印刷ジョブを印刷処理装置へ転送し、印刷を指示する印刷指示手段と
を備えることを特徴とする印刷代行サービスサーバ。
【請求項２】
前記登録元端末からの指示に応答して、前記第１のブックデータを構成する各ページデータについて、前記第１のフラグ情報を許可状態又は不許可状態に設定変更する第１の設定変更手段をさらに備えることを特徴とする請求項１に記載の印刷代行サービスサーバ。
【請求項３】
前記各ページデータに編集の許可／不許可を示す第２のフラグ情報をさらに有し、
前記第２のブックデータを構成する各ページデータについて前記第２のフラグ情報が許可状態又は不許可状態であることを前記発注元端末に通知する第１の通知手段をさらに備えることを特徴とする請求項１又は２に記載の印刷代行サービスサーバ。
【請求項４】
前記登録元端末からの指示に応答して、前記第１のブックデータを構成する各ページデータについて、前記第２のフラグ情報を許可状態又は不許可状態に設定変更する第２の設定変更手段をさらに備えることを特徴とする請求項３に記載の印刷代行サービスサーバ。
【請求項５】
前記登録元端末からの削除指示に応答して、前記第１のブックデータを削除する削除手段をさらに備え、
前記削除手段は、前記削除指示と併せて、前記第１のブックデータを構成する各ページデータについて前記第２のフラグ情報を前記記憶部から削除するか否かの指示を受け付け、当該削除するか否かの指示に従って、前記第１のブックデータを構成する各ページデータについて前記第２のフラグ情報を、前記記憶部から削除するか又は前記記憶部に残すよう制御することを特徴とする請求項３又は４に記載の印刷代行サービスサーバ。
【請求項６】
前記削除手段は、前記削除指示と併せて、前記第１のブックデータを構成する各ページデータについて前記第２のフラグ情報を許可状態又は不許可状態に設定する指示を受け付け、当該許可状態又は不許可状態に設定する指示に従って、前記第１のブックデータを構成する各々のページについて前記第２のフラグ情報を、許可状態又は不許可状態に設定することを特徴とする請求項５に記載の印刷代行サービスサーバ。
【請求項７】
前記登録手段は、ページ毎に固有の識別情報を前記第１のブックデータを構成する各ページデータに付与する付与手段をさらに備え、
前記第１の受信手段は、前記第２のブックデータの受信に先立って、該第２のブックデータを構成する各々のページに付与されている識別情報と同一の識別情報が付与されているページが前記記憶部に存在するか否かを、前記発注元端末に通知する第２の通知手段をさらに備えることを特徴とする請求項１乃至６のいずれか１項に記載の印刷代行サービスサーバ。
【請求項８】
前記第１のブックデータの取得要求を前記発注元端末から受信した場合、前記第１のブックデータ中の第１のフラグ情報が許可状態にあるページデータの一覧表示画面を前記発注元端末へ送信する画面送信手段と、
前記一覧表示画面に従って選択されたページデータを一意に特定する情報を前記発注元端末から受信する第２の受信手段をさらに備え、
前記送信手段は前記特定されたページデータを前記発注元端末に送信することを特徴とする請求項１乃至７のいずれか１項に記載の印刷代行サービスサーバ。
【請求項９】
ネットワークを介して登録元端末及び発注元端末及び印刷処理装置と通信可能な印刷代行サービスサーバの制御方法であって、
１以上のページデータで構成され、かつ、各ページデータに利用の許可／不許可を示す第１のフラグ情報を有する第１のブックデータを、前記登録元端末から受信し、記憶部に登録する登録工程と、
前記第１のブックデータの取得要求を前記発注元端末から受信した場合、前記第１のブックデータ中の第１のフラグ情報が許可状態にあるページデータを前記発注元端末に送信する送信工程と、
前記送信されたページデータを含む第２のブックデータを前記発注元端末から受信する第１の受信工程と、
前記第２のブックデータに基づく印刷ジョブを作成する作成工程と、
前記印刷ジョブを印刷処理装置へ転送し、印刷を指示する印刷指示工程と
を備えることを特徴とする制御方法。
【請求項１０】
ネットワークを介して登録元端末及び発注元端末及び印刷処理装置と通信可能な印刷代行サービスサーバの制御方法をコンピュータに実行させるためのプログラムであって、前記制御方法は、
１以上のページデータで構成され、かつ、各ページデータに利用の許可／不許可を示す第１のフラグ情報を有する第１のブックデータを、前記登録元端末から受信し、記憶部に登録する登録工程と、
前記第１のブックデータの取得要求を前記発注元端末から受信した場合、前記第１のブックデータ中の第１のフラグ情報が許可状態にあるページデータを前記発注元端末に送信する送信工程と、
前記送信されたページデータを含む第２のブックデータを前記発注元端末から受信する第１の受信工程と、
前記第２のブックデータに基づく印刷ジョブを作成する作成工程と、
前記印刷ジョブを印刷処理装置へ転送し、印刷を指示する印刷指示工程と
を備えることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アップロードされたデータに基づいた印刷を受注する印刷代行サービスサーバ及びその制御方法に関する。
【背景技術】
【０００２】
近年、デジタルスチルカメラやデジタルビデオカメラにより撮像された画像データなど（以下、「オブジェクト」と呼ぶ）を、ＰＣ（パーソナルコンピュータ）に大量に格納することが容易になってきている。これに伴い、所望のオブジェクトを１以上のページに選択的にレイアウトし、ブックデータとしてＰＣに格納することができるブック編集プログラムが普及している。
【０００３】
さらに、ネットワーク（例えばインターネット）を介してユーザのブックデータを受信し、製本して提供する印刷代行サービスプロバイダが登場している。このような、印刷代行サービスプロバイダでは、ブックデータを作成するための専用のブック編集プログラムをユーザに提供する。
【０００４】
専用のブック編集プログラムの多くは、印刷メニュー（印刷機能）を持たず、ローカル（ユーザのＰＣ）でブックデータの各ページを印刷する機能を提供しない。代わりに、ブックデータをアップロードしたユーザや、このユーザに招待されたユーザから、ネットワークを介してブックデータの製本を受注する。そして、ブックデータに基づきプリンタ装置等を用いて製本を実行し、オフライン（郵送など）で提供する。
【特許文献１】特開２００２−８０５０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述の印刷代行サービスでは、招待されたユーザは、招待したユーザがアップロードしたブックデータによって一意に定まる形式でしかブックデータの製本を発注することができない。すなわち、招待されたユーザは、ブックデータに含まれるページを取捨選択したり、一部のページを編集したりすることができず、自分の好みに合った製本を発注することはできない。
【０００６】
そのため、招待されたユーザは、ブックデータの一部のページが気に入っても、他のページが気に入らない場合などに、発注を躊躇してしまう場合があり、印刷代行サービスプロバイダは受注の機会を逃していた。
【０００７】
本発明はこのような状況に鑑みてなされたものである。すなわち、印刷代行サービスにおいて、ブックデータをアップロードしたユーザに招待されたユーザが、ブックデータに含まれるページを取捨選択したり、一部のページを編集したりして自分の好みに合った製本を発注可能にすることを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の印刷代行サービスサーバは、ネットワークを介して登録元端末及び発注元端末及び印刷処理装置と通信可能であり、１以上のページデータで構成され、かつ、各ページデータに利用の許可／不許可を示す第１のフラグ情報を有する第１のブックデータを、前記登録元端末から受信し、記憶部に登録する登録手段と、前記第１のブックデータの取得要求を前記発注元端末から受信した場合、前記第１のブックデータ中の第１のフラグ情報が許可状態にあるページデータを前記発注元端末に送信する送信手段と、前記送信されたページデータを含む第２のブックデータを前記発注元端末から受信する第１の受信手段と、前記第２のブックデータに基づく印刷ジョブを作成する作成手段と、前記印刷ジョブを印刷処理装置へ転送し、印刷を指示する印刷指示手段とを備えることを特徴とする。
【０００９】
なお、その他の本発明の特徴は、添付図面及び以下の発明を実施するための最良の形態における記載によってさらに明らかになるものである。
【発明の効果】
【００１０】
以上の構成により本発明によれば、印刷代行サービスにおいて、ブックデータをアップロードしたユーザに招待されたユーザがブックデータに含まれるページを取捨選択したり一部のページを編集したりして自分の好みに合った製本を発注することが可能となる。これにより、印刷代行サービス業者は製本の受注の増加を期待できる。
【発明を実施するための最良の形態】
【００１１】
以下、添付図面を参照して、本発明の実施形態を説明する。以下で説明される個別の実施形態は、本発明の上位概念、中位概念および下位概念など種々の概念を理解するために役立つであろう。
【００１２】
なお、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。また、実施形態の中で説明されている特徴の組み合わせすべてが、本発明に必須とは限らない。
【００１３】
［第１の実施形態］
＜システム構成＞
図１は、印刷代行サービスのシステム構成の一例を示す図である。
【００１４】
１０１は、デジタルスチルカメラ、デジタルビデオカメラ、或いはスキャナなどの画像入力装置であり、本システムで使用される画像データを取得する。
【００１５】
１０２は、ユーザが操作するＰＣ（パーソナルコンピュータ）である。
【００１６】
１０３は、画像入力装置１０１で取得された画像データをＰＣ１０２へ転送するためのデータ転送用インタフェースである。Ｉ／Ｆ１０３には、例えば、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）やＩＥＥＥ１３９４などに代表される有線インタフェース、或いは、ＩｒＤＡやＢｌｕｅｔｏｏｔｈ（登録商標）などに代表される無線インタフェースを採用できる。
【００１７】
Ｉ／Ｆ１０３を介して画像入力装置１０１からＰＣ１０２へ転送された画像データは、ＰＣ１０２のＨＤＤ（ハードディスクドライブ）に格納される。
【００１８】
なお、この画像入力装置１０１からＰＣ１０２へ画像データを転送するには、主に２通りの方法がある。第１の方法は、ＰＣ１０２にインストールされているＯＳ（オペレーションシステム）又は専用のソフトウェアからの命令に従って、画像入力装置１０１が記憶装置に保持している画像データを一括転送する方法である。第２の方法は、画像入力装置１０１からＰＣ１０２に送られる転送コマンドに従って、ＰＣ１０２のＯＳ又は専用ソフトウェアが、ＰＣ１０２のＨＤＤにデータ記録領域を確保し、画像入力装置１０１から画像データを受信する方法である。
【００１９】
ＰＣ１０２は、インターネット１０４を介してデータの送受信が可能なプロトコルが実装されたブラウザ１２０を動作させることが可能である。
【００２０】
ＰＣ１０２は、ブラウザ１２０を動作させることにより、ＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）等のプロトコルを用いてサーバ１０５にアクセスすることができる。ブラウザ１２０は、ＨＴＭＬ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）やＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）等の記述言語で作成されたＷｅｂページを取得する。ブラウザ１２０は、取得したＷｅｂページを解析し、ＰＣ１０２のディスプレイにＷｅｂページを表示させることができる。
【００２１】
ＰＣ１０２は、ブラウザ１２０を動作させることにより、インターネット１０４を介してサーバ１０５からブック編集プログラム１３０をダウンロードすることができる。ＰＣ１０２はまた、ブック編集プログラム１３０を動作させることで使用できるテンプレートや画像データをサーバ１０５からダウンロードするように構成されていても良い。さらに、ブック編集プログラム１３０にもブラウザ１２０と同様のプロトコルが実装され、テンプレートや画像データをサーバ１０５からダウンロードすることができるように構成されていても良い。
【００２２】
サーバ１０５は、インターネット１０４を介した通信を行うことができる。そして、サーバ１０５は、ＰＣ１０２からブック編集プログラム１３０の取得要求を受信したり、ＰＣ１０２からテンプレートや画像データの取得要求を受信したりする。サーバ１０５が取得要求を受信すると、コンテンツ管理部１０６が、コンテンツＤＢ（データベース）１０８から要求されたコンテンツを取得し、ＰＣ１０２に送信する。
【００２３】
ＰＣ１０２はブック編集プログラム１３０を動作させることにより、サーバ１０５からダウンロードされたテンプレートや画像データを使用して、ブックデータを生成／編集することができる。画像データは画像入力装置１０１から取得されＰＣ１０２のＨＤＤに記憶されたものであってもよい。
【００２４】
ＰＣ１０２は、ブラウザ１２０又はブック編集プログラム１３０を動作させることにより、生成／編集したブックデータを、インターネット１０４を介してサーバ１０５へアップロードすることができる。以下では、説明を簡単にするために、ブック編集プログラム１３０を動作させてブックデータをアップロードするものとする。
【００２５】
サーバ１０５がＰＣ１０２からブックデータのアップロードの要求を受信すると、コンテンツ管理部１０６は、情報ＤＢ１０９を使用してユーザ情報やブックデータの登録情報などを確認する。コンテンツ管理部１０６は、サーバ１０５においてブックデータ毎に固有の識別情報であるブックデータＩＤを、アップロードされたブックデータに付与する。コンテンツ管理部１０６はさらに、サーバ１０５においてページ毎に固有の識別情報であるページＩＤを、ブックデータを構成する各ページに付与する。コンテンツ管理部１０６は、ブックデータをアップロードしたＰＣ１０２のユーザのユーザＩＤ、ブックデータＩＤ、及びページＩＤを関連付けて、アップロードされたブックデータをコンテンツＤＢ１０８に格納する。
【００２６】
ユーザはＰＣ１０２を操作し、ブラウザ１２０（或いはブック編集プログラム１３０）を使用して、コンテンツＤＢ１０８に格納されたブックデータの製本をサーバ１０５に発注することができる。サーバ１０５は、製本を受注すると、プリントサイト１１０に製本を指示する。
【００２７】
製本の受注についてさらに詳細に説明する。サーバ１０５がＰＣ１０２から製本を受注すると、コンテンツ管理部１０６は、情報ＤＢ１０９を使用してユーザ確認やユーザの登録情報の確認などを行う。そして、コンテンツ管理部１０６は、確認されたユーザに関連付けられたブックデータをコンテンツＤＢ１０８から取得して、ＰＣ１０２へ製本確認用の閲覧データを送信する。
【００２８】
ＰＣ１０２はブラウザ１２０で製本確認用の閲覧データを表示する。ユーザがその内容を確認し、ＰＣ１０２を操作して発注を確定させると、ＰＣ１０２はその旨をサーバ１０５へ送信する。これに応答してサーバ１０５の決済部１０７が情報ＤＢ１０９を使用してユーザ確認やユーザの登録情報の確認などを行い、ＰＣ１０２へ決済に必要な情報を送信する。
【００２９】
ＰＣ１０２はブラウザ１２０で決済情報を表示する。ユーザがその内容を確認してクレジットカード番号などの必要事項を入力すると、ＰＣ１０２はそれらの情報をサーバ１０５へ送信する。これに応答してサーバ１０５の決済部１０７が決済を行い、コンテンツ管理部１０６がプリントサイト１１０へ製本を指示する。
【００３０】
プリントサイト１１０では、サーバ１０５からの要求をプリントサーバが受信し、ブックデータから印刷ジョブを作成し、プリンタ１１１へ転送し、印刷を指示する。プリンタ１１１は印刷ジョブに基づき、印刷及び製本を実行する。そして、得られた印刷物は、郵送などのオフラインの方法でユーザへ送られる。
【００３１】
なお、図１ではプリントサイト１１０を１つだけ図示したが、プリントサイトは複数存在してもよい。また、プリントサイト１１０は、サーバ１０５に収容されていてもよい。
【００３２】
以上が、製本の受注に関する詳細な説明である。
【００３３】
次に、コンテンツＤＢ１０８に格納されているブックデータを、アップロードしたユーザ以外が閲覧したり製本を発注したりする方法について説明する。以下、サーバ１０５にブックデータをアップロードしたユーザを“登録元ユーザ”と呼び、登録元ユーザはＰＣ１０２Ａを操作するものとする。ＰＣ１０２Ａにはブラウザ１２０Ａ及びブック編集プログラム１３０Ａがインストールされているものとする。また、サーバ１０５にアップロードされているブックデータの閲覧や製本の発注を登録元ユーザから許可されているユーザを“発注元ユーザ”と呼び、ＰＣ１０２Ｂを操作するものとする。ＰＣ１０２Ｂにはブラウザ１２０Ｂ及びブック編集プログラム１３０Ｂがインストールされているものとする。
【００３４】
ただし、登録元ユーザと発注元ユーザの区別は便宜的なものであり、発注元ユーザが自己のブックデータをサーバ１０５にアップロードすることも可能であり、この場合は発注元ユーザのＰＣ１０２Ｂが上述の登録元ユーザのＰＣ１０２Ａと同様に機能する。また、ブラウザ１２０Ｂ及びブック編集プログラム１３０Ｂはそれぞれ、ブラウザ１２０Ａ及びブック編集プログラム１３０Ａと同様のものである。
【００３５】
登録元ユーザはＰＣ１０２Ａを操作し、アップロードしたブックデータの閲覧及び製本の発注を許可する発注元ユーザの、氏名などの属性情報及びＥ−Ｍａｉｌアドレスを、ブラウザ１２０Ａなどを用いて、サーバ１０５に通知する。
【００３６】
サーバ１０５は、発注元ユーザにブックデータを公開するために、ブックデータのＵＲＬ（Ｕｎｉｖｅｒｓａｌ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を生成する。
【００３７】
この時生成されるＵＲＬは、ブックデータ毎に固有であり、かつ、発注元ユーザ以外の第三者が予測困難な乱数などを用いたものとする。下記に例を示す。
【００３８】
http://〜〜〜.com/ContentsSite/Entry.cgi?BookID=AJNWDMF
このようにして生成された、第三者が予測困難なＵＲＬを、以下ではランダムＵＲＬと呼ぶ。なお、ブックデータを閲覧するためにランダムＵＲＬを使用する理由は、発注元ユーザ以外の第三者がアクセスをすることを防止するためである。
【００３９】
サーバ１０５は、このようにして生成されたランダムＵＲＬを、必要であれば閲覧に必要なパスワード情報などと共に、ＰＣ１０２Ｂに、インターネット１０４を介してＥ−Ｍａｉｌなどで通知する。
【００４０】
Ｅ−Ｍａｉｌを受け取った発注元ユーザはＰＣ１０２Ｂを操作し、Ｅ−Ｍａｉｌで通知されたランダムＵＲＬをブラウザ１２０Ｂに入力する。ＰＣ１０２Ｂはブラウザ１２０Ｂを用いて登録元ユーザがアップロードしたブックデータを表示し、製本の発注を行うことができる。
【００４１】
サーバ１０５がＰＣ１０２Ｂから閲覧の要求を受信すると、コンテンツ管理部１０６は、情報ＤＢ１０９を使用してランダムＵＲＬやパスワードなどが正しいものであるか否かを確認する。ランダムＵＲＬやパスワードが正しければ、コンテンツ管理部１０６は、ランダムＵＲＬが示すブックデータをコンテンツＤＢ１０８から取得して、ＰＣ１０２Ｂへブックデータ閲覧画面データを送信する。
【００４２】
ブックデータ閲覧画面データ送信後の処理については、後述する。
【００４３】
＜ＰＣ１０２の構成＞
図２は、ＰＣ１０２のハードウェア構成の一例を示すブロック図である。なお、ＰＣ１０２Ａ及び１０２Ｂのハードウェア構成は同様である。
【００４４】
２０１はＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）ディスプレイであり、その表示画面には、例えば編集中の文書、図形、画像その他の編集情報、アイコン、メッセージ、メニューその他のユーザインタフェース情報が表示される。
【００４５】
２０２はＶＲＡＭ（Ｖｉｄｅｏ  ＲＡＭ）であり、ＣＲＴディスプレイ２０１の表示画面に表示される画像を示すデータが格納される。ＶＲＡＭ２０２に格納された画像データは、所定の規定に従ってＣＲＴディスプレイ２０１に転送され、これによりＣＲＴディスプレイ２０１に画像が表示される。
【００４６】
２０３はビットムーブユニット（ＢＭＵ）であり、例えば、メモリ間（例えば、ＶＲＡＭ２０２とＲＡＭ２０８）のデータ転送や、メモリと各Ｉ／Ｏデバイス（例えば、ネットワークＩ／Ｆ２１１）との間のデータ転送を制御する。
【００４７】
２０４はキーボードであり、ユーザが文字等を入力するための各種キーを有する。
【００４８】
２０５はポインティングデバイスであり、例えば、ＣＲＴディスプレイ２０１の表示画面上に表示されたアイコン、メニューその他のオブジェクトをユーザが指示するために使用される。
【００４９】
２０６はＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。ＣＰＵ２０６は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０７、ＨＤＤ２０９、フレキシブルディスクなどに格納された制御プログラムに基づいて、ＰＣ１０２全体を制御する。
【００５０】
ＲＯＭ２０７は、各種の制御プログラムやデータを保持する。
【００５１】
２０８はＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）であり、ＣＰＵ２０６のワーク領域、エラー処理時のデータの退避領域、制御プログラムのロード領域等として使用される。
【００５２】
ＨＤＤ２０９は、ＰＣ１０２内で実行される各制御プログラムや、画像データなどのオブジェクト、或いはブックデータなどを格納することができる。例えば、ＨＤＤ２０９には、ＯＳ（Operating System）、ブラウザ１２０、ブック編集プログラム１３０、ブックデータなどが格納されている。
【００５３】
２１０はフロッピィ（登録商標）ディスクドライブ（ＦＤＤ）に代表されるフレキシブルディスクドライブであり、フレキシブルディスクに対するアクセスを制御する。
【００５４】
２１１はネットワークＩ／Ｆであり、他の情報処理装置やプリンタ等とネットワークを介して通信を行うことができる。
【００５５】
２１２はＣＰＵバスであり、アドレスバス、データバス及びコントロールバスを含む。ＣＰＵ２０６に対する制御プログラムの提供は、ＲＯＭ２０７、ＨＤＤ２０９、ＦＤＤ２１０から行うこともできるし、ネットワークＩ／Ｆ２１１を介してインターネット１０４経由で他の情報処理装置等から行うこともできる。
【００５６】
＜ブック編集プログラム＞
図３は、ＰＣ１０２がブック編集プログラム１３０に従ってディスプレイ２０１に表示する操作画面３００の一例を示す図である。
【００５７】
ユーザがキーボード２０４やＰＤ２０５を介して操作画面３００上で操作を行うことにより、ブックデータの生成／編集、ブックデータのサーバ１０５へのアップロードなどを行うことができる。
【００５８】
３０１は、編集・確認領域であり、ブックデータをページ単位で表示する。ユーザは、編集・確認領域３０１において、ＷＹＳＩＷＹＧでページの編集を行うことができる。なお、ブックデータのデータ形式については、図４及び図５を参照して後述する。
【００５９】
図３においては、編集・確認領域３０１はブックデータの６ページと７ページを表示し、６ページにはオブジェクトＡとＢが、７ページにはオブジェクトＣが、それぞれユーザが選択したテンプレートに従って配置されている。テンプレートは、前述のように、インターネット１０４経由でサーバ１０５からダウンロードしたものでもよいし、ＦＤＤ２１０などを介してＰＣ１０２Ａに取り込まれたものでもよい。
【００６０】
なお、各ページに配置できるオブジェクトの数及び配置位置は、テンプレートを変えることにより自由に変えられることは言うまでもない。
【００６１】
３０２は、編集・確認領域３０１で表示を行うページを指定するためのページ選択領域である。ページ選択領域３０２では、編集・確認領域３０１で表示しているページの部分をハイライト表示（図３では斜線表示）してもよい。図３では、６ページと７ページに相当する部分がハイライト表示されている。
【００６２】
なお、表示を行っているページを示す方法は、ハイライト表示に限られず、ブリンク表示など他の表示効果を使用してもよいことは言うまでもない。
【００６３】
３０３は、編集・確認領域３０１で編集を行う際のオブジェクトの作業領域（一時配置領域）であり、ページ間でオブジェクトを差し替えたりする際に使用できる。
【００６４】
＜ブックデータのデータ構造＞
次に、図４及び図５を参照して、ブックデータのデータ構造を説明する。
【００６５】
図４は、ＰＣ１０２がブック編集プログラム１３０に従って管理するブックデータのデータ構造の一例を示す図である。
【００６６】
４００は、ページ情報、すなわち、ブックデータを構成する各々のページの、１ページに相当する情報である。
【００６７】
４０１は、ページリンクであり、符号４１０で示すように、あるページとその前後のページとのリンクを示す。ページリンク４０１は、例えば、前後のページへのポインタとして表現される。従って、ブックデータは、ページリンク４０１によって関連付けられた１以上のページ情報４００から構成される。また、ページリンク４０１はブックデータにおける各ページ情報の順番も示す。
【００６８】
４０２は、図１を参照して説明したように、サーバ１０５のコンテンツ管理部１０６が各ページに付与するページＩＤを示す。従って、ブック編集プログラム１３０がブックデータをサーバ１０５から取得した場合は、各々のページにページＩＤが付与されている。しかし、ブック編集プログラム１３０が新規にブックデータを生成した場合は、各々のページにページＩＤは付与されておらず、ページＩＤ４０２には例えばＮＵＬＬなどのデータが入っている。また、ページＩＤが付与されているページがブック編集プログラムによって編集されると、編集されたページのページＩＤは削除され、ＮＵＬＬなどのデータがページＩＤ４０２に代入される。
【００６９】
４０３は、発注元ユーザに対してページの編集を許可するか否かを示す編集許可フラグである。例えば、編集許可フラグが“編集許可状態”の場合は発注元ユーザにページの編集を許可し、“編集不許可状態”の場合は許可しない。なお、編集許可フラグ４０３は、ページＩＤが付与されていないページに対してのみ設定／変更が可能である。ページＩＤが付与されているページは、サーバ１０５からダウンロードされたページであるため、編集許可フラグ４０３は、そのページをアップロードしたユーザ（登録元ユーザ）によって既に設定されている。
【００７０】
４０４は、発注元ユーザに対してページの利用（閲覧やダウンロードなど）を許可するか否かを示す利用許可フラグである。例えば、利用許可フラグが“利用許可状態”の場合は発注元ユーザにページの利用を許可し、“利用不許可状態”の場合は許可しない。なお、利用許可フラグ４０４は、編集許可フラグ４０３と同様、ページＩＤが付与されていないページに対してのみ設定／変更が可能である。ページＩＤが付与されているページは、サーバ１０５からダウンロードされたページであるため、利用許可フラグ４０４は、そのページをアップロードしたユーザ（登録元ユーザ）によって既に設定されている。
【００７１】
４０５は、ページでのオブジェクトのレイアウトを定めるテンプレートや、レイアウトされている画像データなどを含むページデータである。
【００７２】
図５は、サーバ１０５がコンテンツＤＢ１０８で管理するブックデータのデータ構造の一例を示す図である。ＰＣ１０２は、ブックデータをページ単位で管理していたが、サーバ１０５は、以下に説明するように、階層的にブックデータを管理する。
【００７３】
５００は、ブックデータの属性情報を示すテーブルである。５０１は、サーバ１０５においてブックデータ毎に固有の識別情報であるブックデータＩＤである。５０２は、ブックデータとそのブックデータの所有者（登録元ユーザ）とを関連付けるためのユーザＩＤである。５０３は、ページデータを除くブックデータのその他の属性情報（アップロードされた日時など）を示すデータである。
【００７４】
なお、図示しないが、ユーザＩＤはサーバ１０５によりユーザ毎に固有の識別情報をＰＣ１０２に発行されており、また、ユーザを特定するための認証情報（パスワードなど）と併せてサーバ１０５において管理されている。
【００７５】
テーブル５００は、サーバ１０５にアップロードされたブックデータの数だけコンテンツＤＢ１０８に存在することになる。
【００７６】
５１０は、ブックデータを構成するページの属性情報を管理するテーブルであり、テーブル５１０はページの数だけコンテンツＤＢ１０８に存在する。
【００７７】
５１１は、ブックデータＩＤ５０１と同様、サーバ１０５においてブックデータ毎に固有の識別情報であるブックデータＩＤである。ブックデータＩＤ５０１とブックデータＩＤ５１１が一致するか否かを判断することにより、どのテーブル５１０がどのテーブル５００に属する属性情報であるかを判断することができる。
【００７８】
５１２は、図４の４０２と同様、ページＩＤを示す。５１３は、ブックデータにおいてページが何ページ目であるかを示す順番情報である。５１４は、図４の４０３と同様、編集許可フラグを示す。５１５は、図４の４０４と同様、利用許可フラグを示す。
【００７９】
複数のページを持つブックデータは、テーブル５１０をページの数だけ持つ。例えば、３０ページのブックデータでは、５１１に同じブックデータＩＤを持つテーブル５１０が３０個存在し、５１２でそれぞれのページＩＤを示すとともに、５１３には、１から３０までのページ番号が設定される。
【００８０】
５２０は、ページデータを管理するテーブルである。５２１は、ページＩＤ５１２と同様、ページＩＤを示す。ページＩＤ５１２とページＩＤ５２１が一致するか否かを判断することにより、どのテーブル５２０がどのテーブル５１０に属するページデータを管理しているかを判断することができる。
【００８１】
５２２は、図４の４０５と同様、ページでのオブジェクトのレイアウトを定めるテンプレートや、レイアウトされている画像データなどを含むページデータである。
【００８２】
＜ページの生成及び編集＞
図６乃至図９を参照して、ＰＣ１０２Ａがページを新規に生成したり、既存のページを編集したりしてブックデータを作成する処理の流れを説明する。以下の説明において、特に断らなければ、各ステップの処理はＰＣ１０２ＡのＣＰＵ２０６がブック編集プログラム１３０Ａに従って処理を実行することにより実現される。
【００８３】
図６は、ＰＣ１０２Ａが、ページを新規に生成する処理の流れの一例を示すフローチャートである。
【００８４】
ステップＳ６０１で、ＲＡＭ２０８などのメモリにページ情報４００の領域を確保する。
【００８５】
ステップＳ６０２で、ページ情報４００を初期化する。このとき、ページＩＤ４０２には、ＮＵＬＬ（ページＩＤなし）を設定する。編集許可フラグ４０３、利用許可フラグ４０４にもそれぞれＮＵＬＬを設定する。
【００８６】
ステップＳ６０３で、編集中のブックデータにおける他のページとのページリンク４０１を設定する。編集中のブックデータが存在しない場合は新規のブックデータが生成される。
【００８７】
図７は、ＰＣ１０２Ａが、ページの編集を行う際に、そのページが編集許可状態であるか否かを判定する処理の流れの一例を示すフローチャートである。なお、編集対象のページは、図３に示す操作画面３００において登録元ユーザによって選択される。
【００８８】
ステップＳ７０１で、ＰＣ１０２Ａは編集対象のページのページ情報４００を確認する。
【００８９】
ステップＳ７０２で、ＰＣ１０２Ａは編集対象のページがページＩＤを持つか否かを判定する。ページＩＤを持つ場合（ページＩＤ４０２がＮＵＬＬでない場合）はステップＳ７０３に進み、持たない場合はステップＳ７０７に進む。
【００９０】
図６に示したように、ページ作成時には、ページＩＤ４０２が、ＮＵＬＬ（ページＩＤなし）であるので、ページ作成時には、ステップＳ７０７へ進むこととなる。
【００９１】
なお、詳細は後述するが、ページＩＤを持つページを編集した場合も、ページＩＤ４０２が、ＮＵＬＬ（ページＩＤなし）となるので、２度目以降の編集では、ステップＳ７０７へ進むこととなる。
【００９２】
ステップＳ７０３で、ＰＣ１０２Ａはサーバ１０５に対して、ページＩＤの示すページの編集許可フラグを要求する。この要求の詳細は後述する。
【００９３】
ステップＳ７０４で、ページＩＤの示すページの編集許可フラグを正常に取得できたか否かを判定する。正常に取得できた場合はステップＳ７０５に進む。ＰＣ１０２Ａがネットワークに接続されていない、或いは、サーバ１０５がメンテナンス中などの理由で、正常に取得できなかった場合は、ステップＳ７０６へ進む。
【００９４】
ステップＳ７０５で、ＰＣ１０２Ａは取得したページＩＤの示すページの編集許可フラグが編集許可状態であるか否かを判定する。編集許可状態であればステップＳ７０７に進み、そうでなければステップＳ７０６に進む。
【００９５】
ステップＳ７０６で、ＰＣ１０２Ａは操作画面３００のメニューの一部をグレーアウトしたり、操作不可に表示したりするなどして、指定された編集対象のページが編集できないことを示す画面表示を行う。
【００９６】
ステップＳ７０７で、ＰＣ１０２Ａは指定された編集対象のページが編集できることを示す画面表示を行う。この場合、例えば、メニューをグレーアウトしたりせずに、編集に関わるメニューを選択できるようにすればよい。
【００９７】
図８は、図７のステップＳ７０３においてサーバ１０５が行う処理の流れの一例を示すフローチャートである。本フローチャートの各ステップは、例えば、サーバ１０５の不図示のＣＰＵが、不図示のメモリに格納されているプログラムを実行することにより実現される。
【００９８】
ステップＳ８０１で、サーバ１０５はＰＣ１０２Ａによって指定されたページＩＤを持つテーブル５１０がコンテンツＤＢ１０８に存在するか否かを判定する。存在すればステップＳ８０２に進み、存在しなければステップＳ８０３に進む。
【００９９】
ステップＳ８０２で、サーバ１０５は指定されたページＩＤを持つテーブル５１０の編集許可フラグ５１４の内容を、ＰＣ１０２Ａに返す。
【０１００】
ステップＳ８０３で、サーバ１０５は“編集許可状態”を示す編集許可フラグをＰＣ１０２Ａに返す。また、ステップＳ８０３の処理は、ページＩＤを持つページであっても、そのページがサーバ１０５から削除された場合は、無条件で編集が許可されることを意味する。
【０１０１】
図９は、図７のフローチャートに続いて、登録元ユーザの操作によりページに対して具体的な編集指示が与えられた場合のＰＣ１０２Ａによる処理の流れの一例を示すフローチャートである。
【０１０２】
ステップＳ９０１で、ＰＣ１０２Ａは編集対象のページのページ情報４００を確認する。
【０１０３】
ステップＳ９０２で、ＰＣ１０２Ａは編集対象のページがページＩＤを持つか否かを判定する。ページＩＤを持つ場合（ページＩＤ４０２がＮＵＬＬでない場合）はステップＳ９０３に進み、持たない場合はステップＳ９０４に進む。
【０１０４】
ステップＳ９０３で、ＰＣ１０２Ａは編集対象のページのページ情報４００におけるページＩＤ４０２をＮＵＬＬに変更することにより、ページＩＤを削除する。これにより、一度編集されたページは、既にサーバ１０５にアップロードされたページとの関連性（すなわち、ページＩＤ）を持たなくなる。
【０１０５】
ステップＳ９０４で、登録元ユーザの操作によりページに対して与えられた具体的な編集指示に従い、ＰＣ１０２Ａはページ編集処理を実行する。ここで、ページ編集処理とは、例えば、ページに配置される画像を追加したり、既に配置されている画像を別の画像に差し替えたり、コメントを追加したり、画像の表示サイズを変更したり、画像をトリミングしたりすることが上げられる。
【０１０６】
以上のようにして、ＰＣ１０２Ａは新規にページを作成したり、既存のブックデータのページを編集したりすることにより、これらのページで構成された新たなブックデータを作成する。
【０１０７】
また、図６乃至図９を参照して説明したように、ＰＣ１０２Ａ及びサーバ１０５が、ページの編集時に編集許可フラグを送受信することで、ブックデータがサーバ１０５にアップロードされた後もページの編集許可／不許可がコントロールされる。
【０１０８】
なお、図示しないが、編集の取り消し処理（いわゆるＵＮＤＯ処理）により、ページに対してなされた編集が全て取り消された場合、ステップＳ９０３で削除されたページＩＤも復元されることは言うまでもない。
【０１０９】
＜ブックデータのアップロード＞
図１０及び図１３を参照して、ＰＣ１０２Ａからサーバ１０５へブックデータをアップロードする際にサーバ１０５が実行する処理を説明する。以下の説明において、特に断らなければ、サーバ１０５の不図示のＣＰＵが、不図示のメモリに格納されているプログラムを実行することにより実現される。
【０１１０】
図１０は、ＰＣ１０２Ａからサーバ１０５へブックデータをアップロードする際にサーバ１０５が実行する処理の流れの一例を示すフローチャートである。
【０１１１】
ステップＳ１００１で、サーバ１０５はＰＣ１０２Ａからアップロードされたブックデータに基づいてテーブル５００を生成し、コンテンツＤＢ１０８に登録する。このとき、他のブックデータＩＤと重複しないようにブックデータＩＤ５０１を決定する。また、ブックデータをアップロードした登録元ユーザのユーザＩＤをユーザＩＤ５０２に登録する。
【０１１２】
ステップＳ１００２で、サーバ１０５はブックデータに含まれるページデータ４０５に基づいてテーブル５２０を生成し、コンテンツＤＢ１０８に登録する。このとき、他のページＩＤと重複しないようにページＩＤ５２１を決定する。
【０１１３】
ステップＳ１００３で、ステップＳ１００１及びステップＳ１００２で決定したブックデータＩＤ及びページＩＤを使用してテーブル５１０を生成し、コンテンツＤＢ１０８に登録する。併せて、サーバ１０５はブックデータに含まれる編集許可フラグ４０３及び利用許可フラグ４０４に基づき、編集許可フラグ５１４及び利用許可フラグ５１５を登録する。また、ページリンク４０１に基づき、登録対象のページの順番情報５１３も登録する。
【０１１４】
ステップＳ１００４で、次のページが有ればステップＳ１００２へ戻り、無ければ処理を終了する。
【０１１５】
なお、編集許可フラグ４０３及び利用許可フラグ４０４は、図１３の可否設定画面１３００に従って登録元ユーザがＰＣ１０２Ａを操作することにより決定される。
【０１１６】
１３００は、登録元ユーザに編集許可フラグ４０３及び利用許可フラグ４０４の設定を行わせるためにＰＣ１０２Ａに表示される可否設定画面である。登録元ユーザがこの可否設定画面１３００に従って操作を行うことで、ＰＣ１０２Ａがブックデータをサーバ１０５へアップロードする前に、ブックデータの各ページの利用と編集の許可／不許可を設定する。
【０１１７】
１３０１は、設定内容に基づいて編集許可フラグ４０３及び利用許可フラグ４０４を設定する実行ボタンである。この編集許可フラグ４０３及び利用許可フラグ４０４の設定は、図１０のステップＳ１００３において、編集許可フラグ５１４及び利用許可フラグ５１５として登録される。設定された編集許可フラグ５１４及び利用許可フラグ５１５は、図７及び図８で説明した処理、及び、後述する図１２のダウンロード画面で使用される。
【０１１８】
１３０２は、編集許可フラグ４０３及び利用許可フラグ４０４の設定をキャンセルするキャンセルボタンである。
【０１１９】
１３０３は、各ページに、利用許可／不許可、編集許可／不許可の設定を行うチェックボックスを示す。
【０１２０】
なお、図１３では、５ページ分のみが表示されているが、スクロールバーや、「前へ」「次へ」のボタンなどを用意して、５ページ分以上のページでも扱えるのは言うまでもない。
【０１２１】
以上の処理により、ブックデータのアップロードが完了する。
【０１２２】
なお、登録元ユーザはブックデータのアップロード後も、ＰＣ１０２Ａを操作し、サーバ１０５へアクセスすることで編集許可フラグ５１４及び利用許可フラグ５１５の設定を変更することができる。その際に、サーバ１０５Ａが可否設定画面と同様の画面をＰＣ１０２Ａに送信し、ディスプレイ２０１に表示させる。そして、登録元ユーザはＰＣ１０２Ａを操作し、可否設定画面１３００に従って利用許可フラグ及び編集許可フラグの設定を変更する。この変更操作に応答してＰＣ１０２Ａは設定された内容をサーバ１０５に送信すると、サーバ１０５は編集許可フラグ５１４及び利用許可フラグ５１５を変更する。
【０１２３】
＜ブックデータのダウンロード＞
図１１及び図１２を参照して、サーバ１０５からＰＣ１０２Ｂにブックデータをダウンロードする処理の流れを説明する。
【０１２４】
まず、ＰＣ１０２ＢはランダムＵＲＬに基づきサーバ１０５へアクセスし、ブックデータ閲覧画面を取得し、ブックデータを表示する。そして、発注元ユーザの操作に応答して、ＰＣ１０２ＢはブックデータＩＤをサーバ１０５へ送信するとともに、ブックデータを要求する。ここで、ブックデータ閲覧画面には、各ブックデータの先頭のページデータのサムネイル画像が一覧表示されている。
【０１２５】
サーバ１０５が、ＰＣ１０２Ｂからブックデータの取得要求を受信すると、コンテンツ管理部１０６は、要求されたブックデータをコンテンツＤＢ１０８から取得し、ＰＣ１０２Ｂに送信する。
【０１２６】
ここで、サーバ１０５はブックデータの各ページの利用許可フラグ（図５のテーブル５１０参照）に従って、利用が許可されているページのみをＰＣ１０２Ｂにダウンロードする。ダウンロードされたページのデータ形式は、図４のページ情報４００に示す通りである。
【０１２７】
ページをダウンロードすると、ＰＣ１２０Ｂは、ダウンロードした利用可能なページの一覧を表示して、利用するページを発注元ユーザに選択させる。
【０１２８】
図１２は、ＰＣ１０２Ｂに表示されるページを選択するためのページ選択画面１２００の一例を示す図である。
【０１２９】
１２００は、ページ選択画面であり、発注元ユーザはブックデータのうちダウンロードするページの選択を行う。なお、ここには、ブックデータ閲覧画面で指定されたブックデータ中で、利用許可状態にあるページのみが表示される。この例では、２ページから１０ページの間、すなわち、３ページから９ページが利用を許可されておらず非表示となっている。また、編集許可フラグが編集不許可状態にあるページには、その旨を示す表示（「編集不可」など）がなされていてもよい。
【０１３０】
なお、以上の説明では利用許可状態にあるページが全てサーバ１０５からダウンロードされてから図１２のページ選択画面１２００が表示されるものとした。しかし、これに限られるものではない。例えば、サーバ１０５がページ選択画面１２００を作成し、ＰＣ１０２Ｂへ送信してそのディスプレイに表示させる。この表示に従って発注元ユーザにより選択されたページのページＩＤを、ＰＣ端末１０２Ｂがサーバ１０５へ送信する。そして、サーバ１０５は選択されたページＩＤと対応するページをＰＣ１０２Ｂへダウンロードするというようにしてもよい。
【０１３１】
１２０１は、１２０３で選択を行ったページを新たなブックデータに取り込む処理を実行するボタンを示す。
【０１３２】
１２０２は、新たなブックデータへのページの取り込みをキャンセルするボタンを示す。
【０１３３】
１２０３は、新たなブックデータに取り込みたいページの選択を行うチェックボックスを示す。
【０１３４】
なお、図１２では、５ページ分のみが表示されているが、スクロールバーや、「前へ」「次へ」のボタンなどを用意して、５ページ分以上のページでも扱えるのは言うまでもない。
【０１３５】
図１１は、ＰＣ１０２Ｂが、選択されたページを新たなブックデータに取り込む処理の流れの一例を示すフローチャートである。取り込むページの数だけ、図１１の処理が繰り返し実行される。以下の説明において、特に断らなければ、各ステップの処理はＰＣ１０２ＢのＣＰＵ２０６がブック編集プログラム１３０Ｂに従って処理を実行することにより実現される。
【０１３６】
ステップＳ１１０１で、ＰＣ１０２ＢはＲＡＭ２０８などのメモリにページ情報４００の領域を確保する。
【０１３７】
ステップＳ１１０２で、ＰＣ１０２Ｂはサーバ１０５からテーブル５２０を取得する。
【０１３８】
ステップＳ１１０３で、ＰＣ１０２Ｂはテーブル５２０に含まれるページＩＤ５２１とページデータ５２２を、ページＩＤ４０２とページデータ４０５に登録する。また、ＰＣ１０２Ｂは、ページＩＤ５２１に関連付けられたテーブル５１０における編集許可フラグ５１４及び利用許可フラグ５１５の内容をサーバ１０５から取得し、編集許可フラグ４０３及び利用許可フラグ４０４に設定する。
【０１３９】
ステップＳ１１０４で、順番情報５１３に従い、ダウンロードした他のページとの間でページリンク４０１を設定する。
【０１４０】
以上の処理により、選択されたページが新たなブックデータに取り込まれる。このようにして、ＰＣ１０２Ｂは新たなブックデータを作成する。
【０１４１】
なお、このように、サーバ１０５で付与されたページＩＤを、ＰＣ１０２Ｂが取得できるので、ＰＣ１０２ＢがＨＤＤ２０９などにブックデータを保存する際に、ページＩＤも保存されることは、言うまでもない。
【０１４２】
＜発注元ユーザによるブックデータの編集＞
ＰＣ１０２Ｂが新たに作成されたデータのページを編集する処理について以下に説明する。なお、ＰＣ１０２ＢのＣＰＵ２０６がブック編集プログラム１３０Ｂに従って処理を実行することにより実現される。
【０１４３】
ＰＣ１０２Ｂはページ情報４００を参照し、編集対象のページがページＩＤを持つか否かを判定する。
ページＩＤを持つ場合には、サーバ１０５にページＩＤを送信する。サーバ１０５は、同一のページＩＤを持つテーブル５１０を探し、編集許可フラグ５１４をＰＣ１０２Ｂに返す。
【０１４４】
サーバ１０５は、ＰＣ１０２Ｂから受信したページＩＤを持つテーブル５１０がコンテンツＤＢ１０８に存在しなければ、“編集許可状態”をＰＣ１０２Ｂに返す。
【０１４５】
編集許可フラグ５１４が“不許可状態”である場合や、編集対象のページがページＩＤを持つにも関わらずサーバ１０５から応答がない場合は、ＰＣ１０２Ｂは、編集対象のページの編集を禁止する。
【０１４６】
一方、編集対象のページがページＩＤを持たない場合、ＰＣ１０２Ｂは、編集対象のページの編集を許可する。
【０１４７】
ＰＣ１０２Ｂは、編集が許可されたページについて編集を実行する。そして、ＰＣ１０２ＢはページＩＤを持つページが編集された場合には、そのページのページＩＤ４０２を削除する。これにより、同じページが次に編集される際に、編集許可フラグ５１４を改めてサーバ１０５から取得する必要が無くなる。
【０１４８】
＜編集後のブックデータのアップロード＞
ＰＣ１０２Ｂは、編集したページを含むブックデータを、インターネット１０４経由でサーバ１０５へアップロードすることができる。すなわち、サーバ１０５は、編集後のブックデータをＰＣ１０２Ｂから受信する。なお、サーバ１０５が受信するブックデータは、必ずしも編集されていなくても構わない。すなわち、サーバ１０５からＰＣ１０２Ｂにダウンロードされたままのページを含むブックデータが再度サーバ１０５にアップロードされても構わない。
【０１４９】
図１４及び図１５を参照して、編集後のブックデータをアップロードする処理の流れを説明する。図１４は、ＰＣ１０２Ｂにおける処理を示し、図１５は、サーバ１０５における処理を示す。図１４の処理は、ＰＣ１０２ＢのＣＰＵ２０６がブック編集プログラム１３０Ｂを実行することにより実現される。また、図１５の処理は、サーバ１０５の不図示のＣＰＵが、不図示のメモリに格納されているプログラムを実行することにより実現される。
【０１５０】
ステップＳ１４０１で、ＰＣ１０２Ｂはページデータ４０５を除くブックデータをサーバ１０５にアップロードする。
【０１５１】
ステップＳ１４０２で、ＰＣ１０２Ｂはアップロード対象のブックデータのページがページＩＤを持つか否かを判定する。ページＩＤを持てばステップＳ１４０３に進み、持たなければステップＳ１４０６に進む。
【０１５２】
ステップＳ１４０３で、ＰＣ１０２ＢはステップＳ１４０２で判定されたページＩＤと同一のページＩＤを持つテーブル５２０がコンテンツＤＢ１０８に存在するか否かを、サーバ１０５に問い合わせる。サーバ１０５は、問い合わせに応答して、ステップＳ１４０２で判定されたページＩＤと同一のページＩＤを持つテーブル５２０がコンテンツＤＢ１０８に存在するか否かをＰＣ１０２Ｂに通知する。ＰＣ１０２Ｂはこの通知に応答して、存在すればステップＳ１４０５に進み、存在しなければステップＳ１４０６に進む。
【０１５３】
なお、図示しないが、ステップＳ１４０３で、ネットワークエラーなどの理由でサーバ１０５から情報が取得できない場合は、以降のアップロードもエラーとなると考えられるので、処理を中止する。
【０１５４】
ステップＳ１４０６で、ＰＣ１０２Ｂは当該ページＩＤと対応するページデータ４０５をサーバ１０５にアップロードする。また、既にアップロードしたページＩＤ４０２がＮＵＬＬでない場合、ＮＵＬＬにするようにサーバ１０５に要求する。
【０１５５】
ステップＳ１４０５で、次のページが有れば、ステップＳ１４０２に戻り、無ければ処理を終了する。
【０１５６】
以上の処理により、サーバにページデータ５２２としてページの実体が存在する場合は、そのページをアップロードせずに、既に存在するデータを再利用する。
【０１５７】
つまり、ＰＣ１０２Ｂは、ページＩＤを持つページがコンテンツＤＢ１０８に保存されている場合は、そのページについては、ページＩＤ４０２のみをサーバ１０５に通知し、ページ情報４００をアップロードしない。これにより、重複するページデータのアップロードを省略し、アップロードに要する時間を短縮できる。
【０１５８】
図１５の説明に移る。
【０１５９】
ステップＳ１５０１で、サーバ１０５はページデータ４０５を除くブックデータをＰＣ１０２Ｂから受信し、テーブル５００を生成する。このとき、既に存在するブックデータＩＤと重複しないようにブックデータＩＤ５０１を設定する。
【０１６０】
ステップＳ１５０２で、登録対象のページがページＩＤを持つか否かを判定する。ページＩＤを持てばステップＳ１５０４に進み、持たなければステップＳ１５０３に進む。ただし、ページＩＤを持つ場合でも、ステップＳ１４０６においてＮＵＬＬに変更された場合はステップＳ１５０３に進む。
【０１６１】
ステップＳ１５０３で、サーバ１０５はページデータ４０５のアップロードをＰＣ１０２Ｂから受ける。そして、アップロードされたページデータ４０５に基づいて、テーブル５２０を生成する。このとき、既に存在するページＩＤと重複しないようにページＩＤ５２１を設定する。
【０１６２】
ステップＳ１５０４で、サーバ１０５はテーブル５１０を生成する。このとき、ステップＳ１５０２を経由した場合は、同一のページＩＤを持つ既に存在するテーブル５１０と同一の内容に編集許可フラグ５１４及び利用許可フラグ５１５を設定する。ステップＳ１５０３を経由した場合は、図１３に示す可否設定画面１３００で設定された内容を編集許可フラグ５１４及び利用許可フラグ５１５に設定する。
【０１６３】
ここで、編集許可フラグ５１４及び利用許可フラグ５１５は、既にコンテンツＤＢ１０８に存在するテーブル５１０におけるものが使用されるため、最初にページをアップロードした登録元ユーザによる設定が受け継がれる。
【０１６４】
ステップＳ１５０５で、次のページがあれば、ステップＳ１５０２に戻り、なければ処理を終了する。
【０１６５】
なお、本実施形態では、ＰＣ１０２Ｂは、まずページデータ４０５を除くブックデータをサーバ１０５にアップロードし、サーバ１０５に存在しないページデータのみを後ほどアップロードするようにした。しかし、これに限られるものではない。例えば、ＰＣ１０２Ｂはページデータ４０５を含めたブックデータをサーバ１０５にアップロードする。そして、サーバ１０５はページＩＤの一致するページデータの有無を判断し、あれば今回アップロードされたページデータ４０５を保存しないというようにしても構わない。
【０１６６】
そして、発注元ユーザはＰＣ１０２Ｂを操作して、登録元ユーザがアップロードしたブックデータに対する製本の発注と同様に、ＰＣ１０２Ｂからアップロードしたブックデータに対しても製本の発注をサーバ１０５に対して行うことができる。すなわち、サーバ１０５は、ブックデータがどのユーザに登録されたかに関わらず、ブックデータに基づいた印刷／製本の要求を受注することができる。
【０１６７】
ＰＣ１０２Ｂからブックデータ及び印刷要求を受信すると、サーバ１０５はこのブックデータをプリントサイト１０５へ転送し、印刷を指示する。プリントサイト１１１ではプリントサーバが受信し、ブックデータから印刷ジョブを作成し、プリンタ１１１へ転送する。プリンタ１１１は印刷ジョブについて印刷処理を実行する。
【０１６８】
＜ブックデータの削除＞
次に、図１６を参照して、ブックデータを削除する処理を説明する。ブックデータの削除は、ＰＣ１０２ＡのＣＰＵがブラウザ１２０Ａ又はブック編集プログラム１３０Ａを介してサーバ１０５にアクセスすることで行われる。各ステップの処理は、特に断らなければ、サーバ１０５の不図示のＣＰＵが、不図示のメモリに格納されているプログラムを実行することにより実現される。
【０１６９】
ステップＳ１６０１で、サーバ１０５はＰＣ１０２Ａから削除要求のあったブックデータを示すテーブル５００がコンテンツＤＢ１０８に存在するか否かを確認する。
【０１７０】
ステップＳ１６０２で、サーバ１０５は、削除要求のあったブックデータを示すテーブル５００が存在しない場合、処理を終了し、存在する場合、ステップＳ１６０３に進む。
【０１７１】
ステップＳ１６０３で、サーバ１０５は、ブックデータＩＤに基づいて得られる各ページのテーブル５１０のページＩＤに基づいて、各ページのテーブル５２０が存在するか否かを判定する。存在すればステップＳ１６０４に進み、存在しなければステップＳ１６０５に進む。
【０１７２】
ステップＳ１６０４で、サーバ１０５は、削除対象のブックデータに関する全てのテーブル５２０を削除する。
【０１７３】
ステップＳ１６０５で、サーバ１０５は、ＰＣ１０２Ａからの削除要求において編集許可フラグを残すように要求されているか否かを判定する。残す場合はステップＳ１６０６に進み、残さない場合はステップＳ１６０９に進む。
【０１７４】
ステップＳ１６０６で、サーバ１０５は、削除要求において編集許可フラグを一律許可あるいは、一律不許可に設定するように要求されているか否かを判定する。要求されていればステップＳ１６０７に進み、要求されていなければステップＳ１６０８に進む。
【０１７５】
ステップＳ１６０７で、サーバ１０５は、全ページのテーブル５１０について、指定された状態に編集可能フラグ５１４を一律設定しなおす。
【０１７６】
ステップＳ１６０８で、サーバ１０５は、削除要求において編集許可設定を削除後も行うように指定されているか否かを判定する。指定されていれば処理を終了し、指定されていなければステップＳ１６１０に進む。
【０１７７】
ステップＳ１６０９で、サーバ１０５は、削除対象のブックデータに関する全てのテーブル５１０を削除する。
【０１７８】
ステップＳ１６１０で、サーバ１０５は、削除対象のブックデータのテーブル５００を削除する。
【０１７９】
以上の処理により、テーブル５００が残っていれば、ブックデータの削除後も登録元ユーザは図１３に示した画面を介して編集許可フラグの変更が可能である。また、テーブル５１０が残っていれば、ブックデータの削除後も編集許可フラグが残っているので、図７、図８、及び図１２で説明したような、ページの編集を許可するか否かの制御を行うことが可能である。
【０１８０】
また、テーブル５２０が削除されるので、サイズの大きなページデータ５２２はなくなり、サーバ１０５における保管データ量を軽減できる。
【０１８１】
以上説明したように、本実施形態によれば、ブックデータは編集許可フラグ及び利用許可フラグを持つ。そして、発注元ユーザは、編集許可フラグ及び利用許可フラグの状態に基づいて、サーバから選択的にブックデータのページをダウンロードし、また、ダウンロードしたページを編集し、再度サーバにアップロードする。
【０１８２】
そして、発注元ユーザはＰＣ１０２Ｂを操作して、登録元ユーザのブックデータを元にして新たに作成したブックデータに対してもサーバ１０５にアップロードし、製本の発注を行うことができる。
【０１８３】
これにより、印刷代行サービスにおいて、ブックデータをアップロードしたユーザに招待されたユーザが、ブックデータに含まれるページを取捨選択したり、一部のページを編集したりして、自分の好みに合った製本を発注することが可能となる。
さらに、ブックデータをアップロードしたユーザは、ページごとに利用や編集を制限できるので、ブックデータが自分の意図から大きく外れた利用をされることもないので安心してサーバにアップロードして公開することができる。
【０１８４】
［その他の実施形態］
上述した実施の形態の処理は、各機能を具現化したソフトウェアのプログラムコードを記録した記憶媒体をシステム或は装置に提供してもよい。そして、そのシステム或は装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによって、前述した実施形態の機能を実現することができる。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フロッピィ（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスクなどを用いることができる。或いは、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることもできる。
【０１８５】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した各実施の形態の機能が実現されるだけではない。そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理によって前述した各実施の形態の機能が実現される場合も含まれている。
【０１８６】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれてもよい。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によって前述した各実施の形態の機能が実現される場合も含むものである。
【図面の簡単な説明】
【０１８７】
【図１】印刷代行サービスのシステム構成の一例を示す図である。
【図２】ＰＣ１０２のハードウェア構成の一例を示すブロック図である。
【図３】ＰＣ１０２がブック編集プログラム１３０に従って表示する操作画面３００の一例を示す図である。
【図４】ＰＣ１０２がブック編集プログラム１３０に従って管理するブックデータのデータ構造の一例を示す図である。
【図５】サーバ１０５のコンテンツＤＢ１０８が管理するブックデータのデータ構造の一例を示す図である。
【図６】ＰＣ１０２Ａが、ページを新規に生成する処理の流れの一例を示すフローチャートである。
【図７】ＰＣ１０２Ａが、ページの編集を行う際に、そのページが編集許可状態であるか否かを判定する処理の流れの一例を示すフローチャートである。
【図８】図７のステップＳ７０３においてサーバ１０５が行う処理の流れの一例を示すフローチャートである。
【図９】図７のフローチャートに続いて、ページに対して具体的な編集指示が与えられた場合のＰＣ１０２Ａによる処理の流れの一例を示すフローチャートである。
【図１０】ＰＣ１０２Ａからサーバ１０５へブックデータをアップロードする際にサーバ１０５が実行する処理の流れの一例を示すフローチャートである。
【図１１】ページをＰＣ１０２Ｂのブックデータに取り込む処理の流れの一例を示すフローチャートである。
【図１２】ブックデータの中からダウンロードするページを選択するためのページ選択画面の一例を示す図である。
【図１３】編集許可フラグ４０３及び利用許可フラグ４０４を設定するための可否設定画面の一例を示す図である。
【図１４】ＰＣ１０２Ｂが編集後のブックデータをサーバ１０５にアップロードする処理の流れの一例を示すフローチャートである。
【図１５】ＰＣ１０２Ｂが編集後のブックデータをサーバ１０５にアップロードする際にサーバ１０５が行う処理の流れの一例を示すフローチャートである。
【図１６】ＰＣ１０２Ａの要求に応答して、サーバ１０５がブックデータを削除する処理の流れの一例を示すフローチャートである。
【図１】
2007334522.tif 000003
【図２】
2007334522.tif 000004
【図３】
2007334522.tif 000005
【図４】
2007334522.tif 000006
【図５】
2007334522.tif 000007
【図６】
2007334522.tif 000008
【図７】
2007334522.tif 000009
【図８】
2007334522.tif 000010
【図９】
2007334522.tif 000011
【図１０】
2007334522.tif 000012
【図１１】
2007334522.tif 000013
【図１２】
2007334522.tif 000014
【図１３】
2007334522.tif 000015
【図１４】
2007334522.tif 000016
【図１５】
2007334522.tif 000017
【図１６】
2007334522.tif 000018