(57)【要約】【課題】第一の文書のメタデータを第二の文書のページに付加することで、第一の文書のメタデータを第二の文書に活用できるようにする情報処理装置を提供する。【解決手段】クライアントコンピュータ１０３が備えるＵＩ制御部３０１が、第一の文書から第二の文書のページに付加するメタデータを取得する。そして、印刷文書更新部３０４が、第一の文書と第二の文書とを結合する場合に、取得されたメタデータを第二の文書に付加する。【選択図】図３
2014146255.tif 000002
【特許請求の範囲】
【請求項１】
第一の文書から第二の文書のページに付加するメタデータを取得する取得手段と、
前記第一の文書と前記第二の文書とを結合する場合に前記取得されたメタデータを前記第二の文書のページに付加する結合手段とを備える
ことを特徴とする情報処理装置。
【請求項２】
前記第一の文書は、階層構造とメタデータとを有し、
前記結合手段は、前記取得されたメタデータを有する階層構造を生成して前記第一の文書の階層構造に追加し、前記追加された階層構造が有するメタデータに前記第二の文書のページを紐づけることにより、前記第一の文書と前記第二の文書とを結合する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第一の文書の印刷設定に関する条件が予め定義された定義ファイルと、
前記定義ファイルにおいて定義された条件と前記第一の文書の階層構造とに応じて決まる、前記第一の文書の階層構造が有するメタデータに対応する印刷設定と、前記第二の文書の結合対象のページとを表示する表示手段とを備え、
前記取得手段は、前記表示された結合対象のページに対応する前記印刷設定の選択を受け付け、前記選択された印刷設定に対応する前記メタデータを有する前記第一の文書の階層構造から、前記結合対象のページに付加するメタデータを取得する
ことを特徴とする請求項１または請求項２に記載の情報処理装置。
【請求項４】
前記取得手段は、前記表示された前記結合対象のページから前記印刷設定へのドラッグアンドドロップによる前記印刷設定の選択を受け付ける
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記メタデータは、キーとバリューとを含み、
前記結合手段は、
前記第二の文書が前記選択された印刷設定に対応するメタデータを有するかを判断し、
前記第二の文書が前記選択された印刷設定に対応するメタデータを有しない場合に、前記取得手段によって取得された第一のメタデータを前記第二の文書に付加する
ことを特徴とする請求項３または請求項４に記載の情報処理装置。
【請求項６】
前記結合手段は、
前記第二の文書が前記選択された印刷設定に対応する第二のメタデータを有する場合に、前記第一のメタデータと前記第二のメタデータに差異があるかを判断し、
前記第一のメタデータと前記第二のメタデータに差異がある場合に、前記第二のメタデータを前記第一のメタデータに変更して前記第二の文書のページに付加する
ことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記結合手段は、
前記第二の文書が前記選択された印刷設定に対応する第二のメタデータを有する場合に、前記第一のメタデータと前記第二のメタデータに差異があるかを判断し、
前記第一のメタデータと前記第二のメタデータに差異がある場合に、第一の文書に対応する前記定義ファイルで定義される前記印刷設定に関する条件を前記第二のメタデータに応じた条件に変更する
ことを特徴とする請求項５に記載の情報処理装置。
【請求項８】
前記取得手段は、
記憶手段に予め記憶された、前記第一の文書と前記第二の文書との結合に用いるルールを取得し、
前記取得したルールと前記第一の文書の階層構造とに基づいて、前記第一の文書から前記第二の文書のページに付加するメタデータを取得する
ことを特徴とする請求項１乃至７のいずれか１項に記載の情報処理装置。
【請求項９】
前記取得手段は、
前記第一の文書のページを差し替える第三の文書をユーザから受け付け、
記憶手段に予め記憶された、前記第三の文書による前記第一の文書の差し替えに用いるルールを取得し、
前記取得したルールと前記第一の文書の階層構造とに基づいて、前記第一の文書から差し替え先のページと、前記第三の文書に付加するメタデータとを取得し、
前記取得した差し替え先のページを前記第一の文書から削除し、
前記結合手段は、前記取得されたメタデータに前記第三の文書のページを紐づけることにより、前記削除された差し替え先のページを前記第三の文書のページで差し替える
ことを特徴とする請求項１乃至８のいずれか１項に記載の情報処理装置。
【請求項１０】
第一の文書から第二の文書のページに付加するメタデータを取得する取得工程と、
前記第一の文書と前記第二の文書とを結合する場合に前記取得されたメタデータを前記第二の文書のページに付加する結合工程とを有する
ことを特徴とする情報処理装置の制御方法。
【請求項１１】
請求項１０に記載の制御方法をコンピュータに実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、制御方法およびコンピュータプログラムに関する。
【背景技術】
【０００２】
近年、複数の文書を結合する技術が要望されている。
特許文献１は、文書結合操作を受け付けて、複数の文書を結合して保存する技術を開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−１８７３０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ここでメタデータを有する第一の文書と、第二の文書を結合する際に、第一の文書のメタデータを第二の文書のページに付加する場合を想定する。しかし、特許文献１は結合される文書にメタデータが付加されていることを想定していないため、第一の文書のメタデータを第二の文書のページに付加できない虞がある。
【０００５】
本発明は、第一の文書のメタデータを第二の文書のページに付加することで、第一の文書のメタデータを第二の文書に活用することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一実施形態の情報処理装置は、第一の文書から第二の文書のページに付加するメタデータを取得する取得手段と、前記第一の文書と前記第二の文書とを結合する場合に前記取得されたメタデータを前記第二の文書のページに付加する結合手段とを備える。
【発明の効果】
【０００７】
本発明によれば、第一の文書のメタデータを第二の文書のページに付加することで、第一の文書のメタデータを第二の文書に活用できる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態のシステム構成例を示す図である。
【図２】クライアントコンピュータのハードウェア構成の一例を示す図である。
【図３】本実施形態で適用されるプログラムコードとデータとの関係を説明する図である。
【図４】印刷文書内部のメタデータを説明する図である。
【図５】ＸＭＬ形式で表現したメタデータと、印刷設定ファイルの例を示す図である。
【図６】編集画面の例である。
【図７】編集画面を用いて印刷文書をマージする処理を説明する図である。
【図８】実施例１における文書のマージ処理を説明するフローチャートである。
【図９】編集画面の例である。
【図１０】ポップアップウインドウの例である。
【図１１】メタデータ編集画面の例である。
【図１２】マージ先の印刷文書のメタデータの例である。
【図１３】ＸＭＬ形式で表現したメタデータを示す図である。
【図１４】印刷方法の選択操作を説明する図である。
【図１５】マージ先の印刷文書のメタデータを示す図である。
【図１６】印刷方法の選択操作を説明する図である。
【図１７】レコード選択画面の例である。
【図１８】マージ先の印刷文書のメタデータを示す図である。
【図１９】メタデータと印刷設定ファイルの例を示す図である。
【図２０】印刷方法の選択操作を説明する図である。
【図２１】実施例２における文書のマージ処理を説明するフローチャートである。
【図２２】マージ先の印刷文書のメタデータを示す図である。
【図２３】印刷文書の差し替え処理における編集画面の例である。
【図２４】印刷文書の差し替え処理を説明するフローチャートである。
【図２５】差し替え処理後の印刷文書メタデータである。
【発明を実施するための形態】
【０００９】
ＰＯＤ（プリントオンデマンド）市場向けの印刷システムの普及に伴い、印刷物を顧客毎にカスタマイズして印刷するバリアブル印刷が注目されてきている。バリアブル印刷は、データベースを読み込んで、顧客毎に一枚一枚内容を変えて印刷することができるので、顧客に適した印刷物を作成できるという利点がある。バリアブル印刷用の言語仕様としてＩＳＯ１６６１２−２ＰＤＦ／ＶＴ（Variable data and Transactional）の標準化が完了している。ＰＤＦ／ＶＴは、ＰＤＦをベースとしてバリアブル印刷やトランザクション印刷用の仕様を追加することで、既存のＰＤＦワークフローでも活用できるという特徴がある。
【００１０】
ＰＤＦ／ＶＴは、ＤＰａｒｔ（Document Part）と呼ばれる階層構造を追加してＰＤＦのページを構造化するとともに、各ＤＰａｒｔにＤＰＭ（Document Part Metadata）という任意のメタデータを付加可能としている。階層構造で表現されたメタデータは、「郵便番号」、「住所」、「氏名」等の多種多様な情報をキーとバリューの組み合わせで付加可能である。また、ＰＤＦ／ＶＴは、ＤＰａｒｔＲｏｏｔ（Document Part Root）と呼ばれる階層構造に関するルートノードを持つ。ＰＤＦ／ＶＴは、ＤＰａｒｔＲｏｏｔのキー「ＲｅｃｏｒｄＬｅｖｅｌ」を使って、どのＤＰａｒｔ階層がレコード階層に対応するかを保持する。
【００１１】
ここで、レコード階層について説明する。一般的に、バリアブル印刷文書は、文書テンプレートにデータベースの各レコードを適用して作られる。したがって、バリアブル印刷文書は、１つのレコードを適用することによって、複数のページが生成され、レコードの数だけ繰り返される。レコード階層とは、この繰り返しを表すＤＰａｒｔ階層のことである。レコード階層にあるＤＰａｒｔの数が、レコード数に相当する。そのため、ＤＰａｒｔＲｏｏｔのキー「ＲｅｃｏｒｄＬｅｖｅｌ」で指定された階層のＤＰａｒｔを追加することで、レコード数を増やすことが可能である。
【００１２】
ＰＤＦ／ＶＴのページは、階層構造で表現されたＤＰａｒｔから参照される。したがって、ＰＤＦ／ＶＴは、レコード階層以下でページへの参照を追加することで１レコード内のページ数を増やすことが可能である。
【００１３】
次に、バリアブル印刷を実現するためにＰＤＦ／ＶＴはどのように使われているかについて説明する。ＪＤＦ（Job Definition Format）は、ＰＤＦ／ＶＴなどのＰＤＬ（Page Description
Language）データとともに用いられ、印刷ワークフロー全体を制御する印刷設定ファイルの１つである。ＪＤＦとＰＤＦ／ＶＴを用いてバリアブル印刷をする場合は、ＰＤＦ／ＶＴのメタデータを参照して顧客情報を取得し、顧客毎にカスタマイズして印刷する。ＰＤＦ／ＶＴは、ＪＤＦなどの印刷制御情報と一緒に用いる事で、メタデータに基づき、例えば特定の郵便番号に当てはまるページのみを印刷するといった印刷制御を可能とする。そのため、ＰＤＦ／ＶＴにページを追加する場合には、印刷制御を可能にするために、ＪＤＦにおける参照関係を意識してメタデータも一緒に付加する必要がある。
【００１４】
しかし、マージ先であるＰＤＦ／ＶＴファイルにマージ対象であるＰＤＦなどの他の印刷文書をマージする場合を想定する。この場合ユーザは、情報処理装置を操作し、ＰＤＦのページにＰＤＦ／ＶＴのページのメタデータを手動で付加することは、ユーザにとって手間である。特に、ＰＤＦ／ＶＴファイルにページを追加する場合、ＪＤＦによってどのように印刷制御しているかを考慮して、メタデータを付加及び変更するのは困難なことが想定される。
【００１５】
図１は、本実施形態のシステム構成例を示す図である。図１に示す情報処理システムは、サーバコンピュータ１０２、クライアントコンピュータ１０３、及びプリンタ装置１０４を有し、それらはネットワーク１０１を介して接続されている。
【００１６】
サーバコンピュータ１０２は、ネットワーク１０１に接続された各種装置とのデータの送受信を管理する。クライアントコンピュータ１０３は、本実施形態の情報処理装置である。クライアントコンピュータ１０３は、印刷文書を編集する。また、クライアントコンピュータ１０３は、ネットワーク１０１を介して印刷文書をプリンタ装置１０４やサーバコンピュータ１０２に送信する。プリンタ装置１０４は、印刷文書を受け取ると、必要に応じてサーバコンピュータ１０２と通信し、印刷を開始する。
【００１７】
クライアントコンピュータ１０３が作成した印刷文書は、ネットワーク１０１を介し、サーバコンピュータ１０２とは異なるネットワーク環境下１０５で管理されている別のクライアントコンピュータ１０６に送信可能である。そして、印刷文書は、クライアントコンピュータ１０６において編集された後に、同じく別環境下にあるプリンタ装置１０７で印刷することも可能である。
【００１８】
図２は、図１に示すクライアントコンピュータ１０３、１０６のハードウェア構成の一例を示す図である。クライアントコンピュータ１０６は、クライアントコンピュータ１０３と同様の構成を有するので、ここではクライアントコンピュータ１０３の構成について説明する。
【００１９】
クライアントコンピュータ１０３は、制御部２０１、表示部２０２、入力部２０３、ＲＡＭ２０４、ＲＯＭ２０５、外部記憶装置２０６を備える。また、印刷装置２０７と通信可能に接続されている。ＲＡＭは、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙの略称である。ＲＯＭは、Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙの略称である。
【００２０】
制御部２０１は、ＣＰＵ（Central processing Unit）であり、表示部２０２や入力部２０３等を制御する。表示部２０２は、ＣＲＴ（Cathode Ray Tube）や液晶モニタ等の表示装置である。入力部２０３は、キーボードやマウス等のポインティングデバイスに対応している。ＲＡＭ２０４は、不揮発性の大容量メモリであり、ＲＯＭ２０５からロードされた各種プログラムコードや、データファイルを記憶する。ＲＯＭ２０５は、制御部２０１によって実行されるコンピュータプログラムを記憶する。外部記憶装置２０６は、ハードディスクと、ハードディスクへのデータの読み書きを行う駆動部を備える。外部記憶装置２０６には、例えば、印刷に必要なデータが格納されている。制御部２０１は、外部記憶装置２０６、ネットワークを介して、別のハードディスクに保存されているデータのやり取りをすることも可能である。印刷装置２０７は、制御部２０１の指示にしたがって、印刷制御を実行する。
【００２１】
本実施形態では、制御部２０１は、ＲＯＭ２０５内のプログラムコードをＲＡＭ２０４上にロードして実行するが、制御部２０１は、ＲＯＭ２０５から直接プログラムコードを実行することも可能である。このプログラムコードの実行により、本実施形態における印刷文書の編集処理が実現される。また、本実施形態では、処理対象となる各データがＲＡＭ２０４上にあるものとして説明を行うが、これらはすべて、外部記憶装置２０６上に配置することも可能であり、必要に応じて外部記憶装置２０６からＲＡＭ２０４上にロードして使用することもできる。また、制御部２０１のキャッシュメモリ上に配置することも同様に可能である。
【００２２】
図３は、本実施形態で適用されるプログラムコードとデータとの関係を説明する図である。すなわち、図３は、クライアントコンピュータ１０３の機能ブロック図に相当する。
【００２３】
ＵＩ制御部３０１は、図２に示す入力部２０３を介して入力されるデータを扱い、ユーザはこのＵＩ制御部３０１によりデータの入力を各処理部へ指示できる。また、ＵＩ制御部３０１は、印刷文書３０２及び印刷設定ファイル３０３を、図２に示す外部記憶装置２０６などからロードして、図２に示す表示部２０２へ表示する。印刷文書３０２としては、階層構造で表現されたメタデータを内部に持つ印刷文書（メタデータ有り印刷文書３０２ａ）と内部に持たない印刷文書（メタデータ無し印刷文書３０２ｂ）の２通り存在する。そして、印刷装置２０７は、印刷時に印刷設定ファイル３０３とメタデータ有り印刷文書３０２ａのメタデータを参照することで、より細かな印刷制御を実現する。
【００２４】
印刷文書更新部３０４は、ＵＩ制御部３０１から指示を受けて、印刷文書３０２を更新する。印刷設定ファイル更新部３０５は、ＵＩ制御部３０１から指示を受けて、印刷設定ファイル３０３を更新する。
【００２５】
これ以降の説明におけるフローチャートによる処理手順は、例に限定されることはなく、本発明の結果を満たす限りいかなる手順の組み合わせも、複数処理をまとめることも、処理を細分化することも可能である。また、上記処理手順は、個々に切り出して一つの機能要素として単体として機能し、示している処理以外の処理と組み合わせて使用することも可能である。
【００２６】
（実施例１）
図４は、メタデータ有り印刷文書３０２ａ内部のメタデータを説明する図である。メタデータ４０１は、ＤＰａｒｔＲｏｏｔと呼ばれるデータ構造の親ノードとＤＰａｒｔと呼ばれる子ノードとを持つ。また、メタデータ４０１は、レコード階層にＤＰａｒｔ４０２、ＤＰａｒｔ４０３、ＤＰａｒｔ４０４を持つ。
【００２７】
ＤＰａｒｔ４０２は、キーが「ＲｅｃｏｒｄＩｄ」でバリューが「１００１」、キーが「住所」でバリューが「東京都」、キーが「年齢」でバリューが「２０代」、キーが「性別」でバリューが「女性」であるＤＰＭ４０５を持つ。また、ＤＰａｒｔ４０２は、ＤＰａｒｔ４０８とＤＰａｒｔ４０９を子ノードとして持ち、それぞれ、キーが「用途」でバリューが「表紙」であるＤＰＭ４１４とキーが「用途」でバリューが「本文」であるＤＰＭ４１５を持つ。また、ＤＰａｒｔ４０８は、さらには表紙を示すページとして、Ｐａｇｅオブジェクト４２０を参照している。同様に、ＤＰａｒｔ４０９は、本文を示すページとして、複数のＰａｇｅオブジェクト４２１を参照している。
【００２８】
ＤＰａｒｔ４０３は、キーが「ＲｅｃｏｒｄＩｄ」でバリューが「１００２」、キーが「住所」でバリューが「東京都」、キーが「年齢」でバリューが「２０代」、キーが「性別」でバリューが「男性」であるＤＰＭ４０６を持つ。また、ＤＰａｒｔ４０３は、ＤＰａｒｔ４１０とＤＰａｒｔ４１１を子ノードとして持ち、それぞれ、キーが「用途」でバリューが「表紙」であるＤＰＭ４１６とキーが「用途」でバリューが「本文」であるＤＰＭ４１７を持つ。また、ＤＰａｒｔ４１０は、表紙を示すページとして、Ｐａｇｅオブジェクト４２２を参照している。同様に、ＤＰａｒｔ４１１は、本文を示すページとして、複数のＰａｇｅオブジェクト４２３を参照している。
【００２９】
ＤＰａｒｔ４０４は、キーが「ＲｅｃｏｒｄＩｄ」でバリューが「１００３」、キーが「住所」でバリューが「東京都」、キーが「年齢」でバリューが「５０代」、キーが「性別」でバリューが「女性」であるＤＰＭ４０７を持つ。ＤＰａｒｔ４０４は、ＤＰａｒｔ４１２とＤＰａｒｔ４１３を子ノードとして持ち、それぞれ、キーが「用途」でバリューが「表紙」であるＤＰＭ４１８とキーが「用途」でバリューが「本文」であるＤＰＭ４１９を持つ。また、ＤＰａｒｔ４１２は、表紙を示すページとして、Ｐａｇｅオブジェクト４２４を参照している。同様に、ＤＰａｒｔ４１３は、本文を示すページとして、複数のＰａｇｅオブジェクト４２５を参照している。以上のように，メタデータ４０１は、ＤＰａｒｔＲｏｏｔ及びＤＰａｒｔという階層型のデータ構造（階層構造）でメタデータを保持している。
【００３０】
図５（Ａ）は、図４を参照して説明した階層構造をＸＭＬ形式で表現したメタデータ４３１である。ＤＰＭ４３２は、図４のＤＰａｒｔ４０２のＤＰＭ４０５のＸＭＬ表現であり、キー「住所」、「年齢」、「性別」に対するそれぞれのバリュー「東京都」、「２０代」、「女性」を示している。ＤＰＭ４３３は、図４のＤＰａｒｔ４０８のＤＰＭ４１４のＸＭＬ表現であり、キー「用途」に対するバリュー「表紙」と、ページオブジェクトへの参照があることを示している。ＤＰＭ４３４は、図４のＤＰａｒｔ４０９のＤＰＭ４１５のＸＭＬ表現であり、キー「用途」に対するバリュー「本文」と、ページオブジェクトへの参照は複数あることを示している。
【００３１】
図５（Ｂ）は、印刷設定ファイルの例を説明する図である。印刷設定ファイル４４１は、文書の印刷設定に関する条件が予め定義された定義ファイルである。この例では、印刷設定ファイル４４１は、メタデータ有り印刷文書３０２ａ内のメタデータで定義されたキーを用いて、印刷方法を制御することを可能とする。印刷設定ファイル４４１は、キー「性別」について、綴じ方を定義する。具体的には、印刷設定ファイル４４１は、「女性」であれば中綴じ印刷、「男性」であれば平綴じ印刷を定義している。ここでは、説明のために簡易的な設定ファイルの例を示しているが、ＪＤＦであっても同様に適用可能である。
【００３２】
図６は、ＵＩ制御部３０１において、メタデータ有り印刷文書３０２ａとそれとは別のメタデータ無し印刷文書３０２ｂを１つのファイルに統合（マージ）するときの編集画面を示す図である。ＵＩ制御部３０１は、編集画面５０１が有するマージ先ファイル入力欄５０２と印刷設定ファイル入力欄５０３を用いたユーザ操作にしたがって、メタデータ有り印刷文書３０２ａと印刷設定ファイル３０３をそれぞれインポートすることができる。同様に、ＵＩ制御部３０１は、編集画面５０１が有するマージ対象ファイル入力欄５０４を用いたユーザ操作により、メタデータ無し印刷文書３０２ｂをインポートすることができる。
【００３３】
さらに、ＵＩ制御部３０１は、マージ先ファイル入力欄５０２と印刷設定ファイル入力欄５０３からインポートされたデータを元に、印刷方法表示欄５０５に印刷方法を表示することが可能である。同様に、ＵＩ制御部３０１は、マージ対象ファイル入力欄５０４からインポートされたデータを元に、印刷文書表示欄５０６にメタデータ無し印刷文書３０２ｂをページ単位で表示することが可能である。メタデータ有り印刷文書３０２ａへのメタデータ無し印刷文書３０２ｂのマージは、ユーザが、印刷文書表示欄５０６に表示されているページを、印刷方法表示欄５０５に表示されている印刷方法へマウスを用いてドラッグアンドドロップすることで実現される。
【００３４】
図７は、図６の編集画面５０１を用いて印刷文書３０２をマージする処理を説明する図である。印刷業者５１１は、バリアブル印刷文書作成アプリケーション等を用いて、ページのデザインと印刷方法を決めて、メタデータを持つ印刷文書５１３と印刷設定ファイル５１４を作成する。一方、デザイナ５１２は、印刷業者５１１と異なるフローメタデータを持たない印刷文書５１５を作成する。印刷業者５１１は、編集画面５０１を用いて、デザイナ５１２が作成した印刷文書５１５をマージする。印刷業者５１１は、マージ後メタデータを持つ印刷文書５１６と印刷設定ファイル５１７を用いて印刷する。
【００３５】
これ以降の説明では、特に説明しない場合も、マージ先ファイル入力欄５０２には、メタデータ有り印刷文書３０２ａを指定するものとする。
【００３６】
図８は、実施例１における文書のマージ処理を説明するフローチャートである。第一の文書（メタデータ有り印刷文書３０２ａ）と第二の文書（例えば、メタデータ無し印刷文書３０２ｂ）をマージする処理を例にとって説明する。
【００３７】
まず、ＵＩ制御部３０１が、マージ先となるメタデータ有り印刷文書３０２ａとマージ対象となるメタデータ無し印刷文書３０２ｂ、及び印刷設定ファイル３０３を受け付ける処理を行う（ステップＳ１０１）。ＵＩ制御部３０１が、メタデータ有り印刷文書３０２ａ及び印刷設定ファイル３０３内で使用しているメタデータのキーを取得し、印刷方法表示欄５０５にメタデータ有り印刷文書３０２ａにおいて定義済みの印刷方法を表示する処理を行う（ステップＳ１０２）。つまり、ＵＩ制御部３０１は、印刷設定ファイルにおいて定義された条件とマージ先の印刷文書の階層構造とに応じて決まる、マージ先の印刷文書の階層構造が有するメタデータに対応する印刷設定を表示する。印刷方法が同じであってもメタデータが異なる場合は、ＵＩ制御部３０１がメタデータ自体のキーとバリューを表示してもよい。
【００３８】
図６の編集画面５０１上で、図４のメタデータ有り印刷文書３０２ａと図５（Ｂ）の印刷設定ファイル４４１がインポートされた場合は、キー「性別」のバリューが「女性」のときは中綴じ印刷、バリューが「男性」のときは、平綴じ印刷となる。したがって、この場合は、ＵＩ制御部３０１は、２種類の印刷方法を表示する。さらに、平綴じ印刷の場合には、図４に示す階層構造を参照すると、キー「年齢」のバリューが「２０代」と「５０代」と異なるため、図６に示す例では、バリュー毎に印刷方法が表示される。
【００３９】
図８に戻って、ＵＩ制御部３０１は、ステップＳ１０１で受け付けた文書とは別の文書（例えばメタデータ無し印刷文書３０２ｂ）を受け付け、印刷文書表示欄５０６にページ単位に表示する処理を行う（ステップＳ１０３）。
【００４０】
次に、ＵＩ制御部３０１が、マージ対象のページとその印刷方法を受け付ける処理を行う（ステップＳ１０４）。具体的には、印刷文書表示欄５０６に表示されているページが印刷方法表示欄５０５に表示されている印刷方法へマウスを用いてドラッグアンドドロップされると、ＵＩ制御部３０１が処理を開始する。ＵＩ制御部３０１は、受け付けた印刷方法に応じて、詳細なマージ方法をユーザに選択されるためにポップアップウインドウを表示させてもよい。
【００４１】
マージ対象となるページとその印刷方法が受け付けられると、印刷文書更新部３０４は、そのままのファイルフォーマットでマージが可能かどうかを判断する処理を行う（ステップＳ１０５）。
【００４２】
そのままのファイルフォーマットでマージが不可能と判断されると（Ｓ１０５でＮＯ）、印刷文書更新部３０４は、マージ可能なフォーマットに変換する処理を行う（ステップＳ１０６）。例えば、マージ対象のページがＪＰＥＧファイルの形式の場合には、印刷文書更新部３０４が、ＰＤＦ形式にフォーマット変換する。ここでの変換処理自体は、公知の技術を用いて行われる。
【００４３】
そのままのファイルフォーマットでマージが可能と判断されると（Ｓ１０５でＹＥＳ）、印刷文書更新部３０４が、マージ対象の印刷文書３０２に印刷に利用可能なメタデータが存在するかどうかを判断する処理を行う（ステップＳ１０７）。具体的には、印刷文書更新部３０４が、Ｓ１０４で受け付けられた印刷方法に対応するメタデータが存在するかどうかを判断する。当該印刷方法に対応するメタデータが存在する場合、印刷文書更新部３０４が、マージ対象の印刷文書３０２に印刷に利用可能なメタデータが存在すると判断する。但し、メタデータ無し印刷文書３０２ｂを入力として受け付けた場合は、常にＳ１０７の判断処理でＮＯとなる。
【００４４】
マージ対象の印刷文書３０２に印刷に利用可能なメタデータが存在しないと判断されると（Ｓ１０７でＮＯ）、印刷文書更新部３０４が、マージ先のメタデータ有り印刷文書３０２ａの階層構造に基づいて、以下の処理を実行する。印刷文書更新部３０４は、Ｓ１０４で受け付けられた印刷方法に対応するメタデータのキーとバリューをメタデータ有り印刷文書３０２ａから取得する処理を行う（ステップＳ１０８）。ステップＳ１０８で取得されるメタデータが、マージ対象の印刷文書３０２のページに付加されるメタデータである。例えば、図６の編集画面５０１において、「平綴じ」印刷が選択された場合は、印刷文書更新部３０４が、以下の処理を実行する。印刷文書更新部３０４は、印刷設定ファイル３０３の条件から、キー「性別」のバリューが「男性」であるメタデータのキーとバリューの組をメタデータ有り印刷文書３０２ａから取得すればよいと判断する。印刷文書更新部３０４は、複数の候補があった場合は、取得するキーとバリューの組について、優先度等によってどれか１つを採用してもよく、さらにはユーザに選択させてもよいものとする。ステップＳ１０８の後、処理がステップＳ１１６に進む。
【００４５】
一方、マージ対象の印刷文書３０２に印刷に利用可能なメタデータが存在すると判断されると（Ｓ１０７でＹＥＳ）、印刷文書更新部３０４が、以下の処理を実行する。印刷文書更新部３０４は、マージ先の印刷文書から、Ｓ１０４で受け付けられた印刷方法に対応するメタデータ（第一のメタデータ）を取得する（ステップＳ１０９）。ステップＳ１０９では、印刷文書更新部３０４は、さらに、マージ対象の印刷文書３０２から、Ｓ１０４で受け付けられたマージ対象のページに対応するメタデータ（第二のメタデータ）を取得する。ステップＳ１０９以降の処理は、マージ対象の印刷文書がメタデータを持つ場合であり、メタデータ無し印刷文書３０２ｂがマージ対象として選択された場合は通過しない。
【００４６】
次に、印刷文書更新部３０４は、上記第一のメタデータと、第二のメタデータとで、キーとバリューの組み合わせに差異があるかどうかを判断する処理を行う（ステップＳ１１０）。
【００４７】
第一のメタデータと、第二のメタデータとで、キーとバリューの組み合わせに差異がないと判断されると（Ｓ１１０でＮＯ）、印刷文書更新部３０４が、以下の処理を実行する。印刷文書更新部３０４は、付加するメタデータのキーとバリューの組を決定し、マージ先にマージ対象の印刷文書３０２を追加する処理を行う（ステップＳ１１６）。そして、処理がステップＳ１１７に進む。
【００４８】
一方、第一のメタデータと、第二のメタデータとで、キーとバリューの組み合わせに差異があると判断されると（Ｓ１１０でＹＥＳ）、ＵＩ制御部３０１が、印刷方法を変更してもよいかを判断する処理を行う（Ｓ１１１）。具体的には、ＵＩ制御部３０１は、図１０を参照して後述するポップアップウインドウ上でのユーザの操作により入力された設定情報を参照して、印刷方法を変更してもよいかどうかを判断する。
【００４９】
印刷方法を変更してもよいと判断されると（Ｓ１１１でＹＥＳ）、印刷設定ファイル更新部３０５が、印刷設定ファイル３０３を更新する処理を行う（ステップＳ１１２）。そして、処理がステップＳ１１６に進む。
【００５０】
一方、印刷方法を変更してはならないと判断されると（Ｓ１１１でＮＯ）、ＵＩ制御部３０１が、マージ先の印刷文書３０２のメタデータを変更してもよいかどうかを判断する処理を行う（ステップＳ１１３）。具体的には、ＵＩ制御部３０１は、図１０を参照して後述するポップアップウインドウ上でのユーザの操作により入力された設定情報を参照して、メタデータを変更してもよいかどうかを判断する。
【００５１】
マージ先の印刷文書３０２のメタデータを変更してもよいと判断されると（Ｓ１１３でＹＥＳ）、印刷文書更新部３０４が、マージ対象のメタデータをマージ先のメタデータに変更する処理を行う（ステップＳ１１４）。変更はステップＳ１０４で受け付けられた印刷方法に従って行われる。
【００５２】
マージ先の印刷文書３０２のメタデータを変更してはならないと判断されると（Ｓ１１３でＮＯ）、ＵＩ制御部３０１が、ポップアップウインドウを表示して、ユーザに警告表示を行う。そして、ＵＩ制御部３０１が、ユーザから受け付けたマージ処理をスキップし（ステップＳ１１５）、処理がステップＳ１２０に進む。
【００５３】
ステップＳ１１７において、印刷文書更新部３０４が、ページ以外にマージ対象となるオブジェクトが存在するかどうかを判断する処理を行う。例えば、印刷文書更新部３０４が、ＰＤＦファイルにおいてＪＰＥＧ形式の画像オブジェクトや文字列などのテキストオブジェクトなどがマージ対象となるかどうかを判断する。
【００５４】
ページ以外にマージ対象となるオブジェクトが存在すると判断されると（Ｓ１１７でＹＥＳ）、印刷文書更新部３０４が、ユーザが選択した印刷方法に従って、オブジェクトをマージする処理を行う（ステップＳ１１８）。
【００５５】
一方、ページ以外にマージ対象となるオブジェクトが存在しないと判断されると（Ｓ１１７でＮＯ）、印刷文書更新部３０４が、ユーザが選択した印刷方法に従ってページをマージする処理を行う（ステップＳ１１９）。つまり、印刷文書更新部３０４が、ステップＳ１０８で取得したメタデータをマージ対象の印刷文書のページに付加して、メタデータ有り印刷文書３０２ａとマージ対象の印刷文書とを結合する。そして、処理がステップＳ１２０に進む。
【００５６】
次に、ＵＩ制御部３０１は、印刷文書表示欄５０６内に表示されているページについて、マージ処理されていないページが存在するかどうかを判断する処理を行う（ステップＳ１２０）。マージ処理されたかどうかの判断は、例えば印刷文書表示欄５０６に表示されているページが印刷方法表示欄５０５に表示されている印刷方法へマウスを用いて一度でもドラッグアンドドロップされたかどうかで判断する。ここで、マージ処理されていないページが存在すると判断されると、処理が図８のステップＳ１０４へ戻る。一方、マージ処理されていないページが存在しないと判断されると、処理を終了する。
【００５７】
以上のような処理を行うことで、印刷方法を選択するだけで、例えば、メタデータ有り印刷文書３０２ａとメタデータ無し印刷文書３０２ｂのマージを実現する。また、同様にして２つのメタデータ有り印刷文書３０２ａをマージすることができる。
【００５８】
図９乃至図１２は、ＵＩ制御部３０１において、複数の印刷文書３０２を１つのファイルに統合（マージ）する処理を説明する図である。図９は、編集画面５０１上で、ページ６０１について「中綴じ（５０代）」の印刷方法６０２が選択された状態を示す。ここでは、選択方法としてマウスを用いてドラッグしているが、別の操作方法であっても同様である。ユーザがマウスをドラッグアンドドロップして、印刷方法が選択されると、ＵＩ制御部３０１は、ユーザから、マージ対象（結合対象）のページに対する印刷方法の選択を受け付けることとなる（図８のステップＳ１０４）。これにより、印刷文書更新部３０４が、後述するように、選択された印刷方法（この例では中綴じ（５０代））に対応するメタデータ（年齢＝５０代、性別＝女性）を有する階層構造を特定する。そして、特定した階層構造から、マージ対象のページに付加するメタデータを取得する。
【００５９】
図１０は、図９に示す編集画面５０１上で印刷方法が選択されたときに、ユーザに表示するポップアップウインドウ６１１の一例である（図８のＳ１０４）。
【００６０】
レコード新規作成ボタン６１２が選択されると、ＵＩ制御部３０１は、レコード階層のＤＰａｒｔを追加するための画面を表示する。既存レコード追加ボタン６１３が選択されると、ＵＩ制御部３０１は、既存のＤＰａｒｔにページへの参照を追加するための画面を表示する。
【００６１】
常にレコードを新規作成するチェックボックス６１４が選択されると、ＵＩ制御部３０１は、ポップアップウインドウ６１１を表示せずに、常に新規レコードを作成する。印刷方法を変更するチェックボックス６１４が選択され、マージ対象のファイルにメタデータがすでに存在していた場合、印刷設定ファイル更新部３０５は、以下の処理を実行する。印刷設定ファイル更新部３０５は、印刷設定ファイル３０３内の印刷方法に関する条件を、マージ対象のファイルに存在するメタデータに応じた条件に更新する（図８のＳ１１２）。例えば、図９に示すページ６０１にメタデータのキー「性別」におけるバリュー「男性」が存在した場合は、平綴じ印刷に関する条件について、「５０代以外の男性」が印刷設定ファイル３０３に追加される。また、中綴じ印刷に関する条件について、「５０代の男性」が印刷設定ファイル３０３に追加される。
【００６２】
メタデータを変更するチェックボックス６１６が選択され、マージ対象のファイルにメタデータがすでに存在していた場合、印刷文書更新部３０４は、マージ対象のファイルのメタデータのバリューを変更する（図７のＳ１１４）。例えば、図９のページ６０１にメタデータのキー「性別」におけるバリュー「男性」が存在した場合、選択した印刷方法におけるキー「性別」におけるバリュー「女性」でマージ対象のメタデータは上書きされる。
【００６３】
図１１は、図９に示す編集画面５０１上で印刷方法が選択され、ポップアップウインドウ６１１においてレコード新規作成ボタン６１２が選択されたときに表示されるメタデータ編集画面６２１である。メタデータ編集画面６２１上には、図８のステップＳ１０８で取得されたメタデータのキーとバリューとが表示される。
【００６４】
この例では、図９の編集画面５０１において、「中綴じ（５０代）」の印刷方法が選択され、図１０のポップアップウインドウ上でレコード新規作成ボタン６１２が押下されている。そのため、ＵＩ制御部は、キー「性別」バリュー「女性」、キー「年齢」バリュー「５０代」であるキーとバリューの組を持つＤＰＭをマージ先の印刷文書３０２から取得する。具体的には、ＵＩ制御部３０１は、図４のメタデータ３０２ａより、キー「性別」バリュー「女性」、キー「年齢」バリュー「５０代」であるＤＰＭを持つＤＰａｒｔを探し、ＤＰａｒｔ４０４及びＤＰＭ４０７を得る。ＵＩ制御部３０１は、ＤＰＭ４０７よりキー「住所」バリュー「東京都」を得る。さらに、ＵＩ制御部は、ＤＰａｒｔ４０４の子ノードであるＤＰａｒｔ４１２及びＤＰａｒｔ４１３よりそれぞれＤＰＭ４１８、ＤＰＭ４１９を得る。ＵＩ制御部３０１は、最初に見つけたＤＰＭ４１８からキー「用途」バリュー「表紙」を得る。
【００６５】
ＵＩ制御部３０１は、以上の処理より得られたキーとバリューの組を、マージするときに付加するメタデータのキーとバリューの候補として表示欄６２２に表示する。ＵＩ制御部３０１は、決定ボタン６２３が押下されるとマージ処理に進む。表示欄６２２のメタデータのキーとバリューの候補は、そのまま使用してもよく、一旦編集させてもよいものとする。
【００６６】
図１２は、ポップアップウインドウポップアップウインドウ６１１でレコード新規作成ボタン６１２が選択されたあとで、メタデータ編集画面６２１において決定ボタン６２３が押下されたときのマージ先の印刷文書３０２のメタデータ６３１である。印刷文書更新部３０４は、得られたＤＰａｒｔ４０４及びＤＰＭ４０７、さらにＤＰａｒｔ４０４の子ノードであるＤＰａｒｔ４１２及びＤＰＭ４１８をコピーする。さらに、印刷文書更新部３０４は、ＤＰａｒｔ４０４のコピーをＤＰａｒｔ６３２としてレコード階層に追加する。続いて、印刷文書更新部３０４は、ＤＰＭ４０７のコピーをＤＰＭ６３５として追加する。
【００６７】
同様にして、印刷文書更新部３０４は、ＤＰａｒｔ４１２のコピーをＤＰａｒｔ６３２の子ノードとなるようにＤＰａｒｔ６３３を追加する。続いて、印刷文書更新部３０４は、ＤＰＭ４１８のコピーをＤＰＭ６３６として追加する。最後に、マージ対象のＰａｇｅオブジェクト６３４をＤＰａｒｔ６３３の参照として追加する。すなわち、印刷文書更新部３０４は、図８のステップＳ１０８で取得したメタデータを有する階層構造を生成してマージ先の印刷文書の階層構造に追加し、追加された階層構造が有するメタデータにマージ対象の印刷文書のページを紐づける。以上のようなマージ処理によって、印刷文書更新部３０４は、マージ先の印刷文書３０２のメタデータ６３１を更新する。
【００６８】
図９の編集画面５０１上でドロップされるページ６０１が、バリュー「男性」のメタデータを持つページであって、かつ印刷設定ファイルを変更する設定がされている場合、図８のＳ１１２で印刷設定ファイルが変更された上で、以下の処理が実行される。印刷文書更新部３０４は、ＤＰａｒｔ４０４をコピーした上で、その「性別＝女性」というメタデータが「性別＝男性」に変更されたＤＰａｒｔと子ノードとを追加し（図８のＳ１１６）、ページ６０１を紐付ける（図８のＳ１１９）。
【００６９】
図１３は、図１２に示すメタデータをＸＭＬ形式で表現したメタデータ７０１である。メタデータ７０１は、図９乃至図１２を参照して説明したマージ処理によってマージされており、レコード７０２が追加されている。
【００７０】
図１４（Ａ）は、図９乃至図１２を参照して説明したマージ処理の後で、さらにページ８０１についての「中綴じ（５０代）」という印刷方法８０２の選択操作を示す。
【００７１】
図１４（Ｂ）は、ＵＩ制御部３０１が表示する設定画面８１１の一例である。設定画面８１１は、印刷文書３０２をマージする前に、予め設定可能なパラメータを入力するための画面である。図９乃至図１２を参照して説明したマージ処理によって、キー「用途」バリュー「表紙」のページはマージされているが、キー「用途」バリュー「本文」のページが存在しない。ＵＩ制御部３０１は、設定画面８１１を用いて、キー「用途」バリュー「本文」のページが存在すべきかどうかを前もって設定可能にする。例えば、チェックルール８１２では、キー「用途」は、バリュー「表紙」とバリュー「本文」の両方のページが必須という意味を示している。
【００７２】
ＵＩ制御部３０１は、設定画面８１１によって定義されたチェックルールに従って優先的にマージするかどうかをユーザに通知する処理を行う。例えば、チェックルール８１２が定義されている状態で、マージ処理（図９乃至図１２）の後で図１４（Ａ）に示す選択操作が行われると、ＵＩ制御部３０１は、以下の処理を実行する。ＵＩ制御部３０１は、ポップアップウインドウ６１１に、「用途（本文）のないレコードが存在する」というメッセージを追加表示する。
【００７３】
図１４（Ｃ）は、図１４（Ａ）に示す印刷方法の選択操作がされ、図１０のポップアップウインドウ６１１上で既存レコード追加ボタン６１３が選択された後に表示されるレコード選択画面８１３の一例である。例えば、ユーザが、マージ先としてレコード（本文）８１４を選択すると、印刷文書更新部３０４が、ユーザが選択したレコードに対して、マージ処理を行う。
【００７４】
図１５は、図１０のポップアップウインドウ６１１において、既存レコード追加ボタン６１３が選択されたときのマージ処理後の、マージ先の印刷文書３０２のメタデータ８２１である。
【００７５】
キー「用途」、バリュー「本文」であるＤＰＭが不足しているレコードに対して、ＤＰａｒｔ８２２の子ノードとなるように新規にＤＰａｒｔ８２３が作成される。続いて、メタデータ８２１には、キー「用途」、バリュー「本文」を持つＤＰＭ８２４が追加され、Ｐａｇｅオブジェクト８２５への参照が追加される。
【００７６】
図１６は、図１４を参照して説明したマージ処理の後における、２つのページ８３１についての「中綴じ」という印刷方法８３２の選択操作を示す図である。
【００７７】
図１７は、図１６のように印刷方法の選択操作がされ、図１０のポップアップウインドウ６１１を表示した後で、既存レコード追加ボタン６１３が選択されたときに表示されるレコード選択画面８４１の一例である。ＵＩ制御部３０１は、レコード８４２を表示する。ユーザは、レコード単位で表現されているページのプレビュー画像を選択することで、どこにマージするかを決定する。
【００７８】
図１８は、レコード選択画面８４１でレコード８４２が選択された場合に行われるマージ処理後における、マージ先の印刷文書３０２のメタデータ８５１である。
【００７９】
メタデータ８５１には、ＤＰａｒｔ及びＤＰＭを新規追加することなく、既存のＤＰａｒｔ８５２に対してＰａｇｅオブジェクト８５３への参照が追加されている。
【００８０】
以上説明した実施例１の情報処理装置によれば、複数の印刷文書３０２について、印刷設定ファイル３０３と連動しながら、メタデータを考慮して印刷文書３０２ａと印刷文書３０２ｂをマージすることが可能である。また、ＪＤＦのような印刷設定ファイル３０３がメタデータ有り印刷文書３０２ａ内のメタデータを参照している場合、メタデータ無し印刷文書３０２ｂのページをマージした後も、印刷設定ファイルによる印刷制御が可能である。
【００８１】
（実施例２）
実施例２の情報処理装置は、文書のマージ時に利用するパラメータをあらかじめ設定することで、マージ処理を自動化する。
【００８２】
図１９（Ａ）は、メタデータ有り印刷文書３０２ａの、特に階層構造で表現されるメタデータ部分を示す図である。メタデータ９０１は、ＤＰａｒｔＲｏｏｔと呼ばれるデータ構造の親ノードとＤＰａｒｔと呼ばれる子ノードを持つ。
【００８３】
ＤＰａｒｔ９０２は、キーが「ＲｅｃｏｒｄＩｄ」でバリューが「１００１」、キーが「住所」でバリューが「東京都」、キーが「年齢」でバリューが「２０代」、キーが「性別」でバリューが「女性」であるＤＰＭ９０４を持つ。また、ＤＰａｒｔ９０２は、ＤＰａｒｔ９０６とＤＰａｒｔ９０７を子ノードとして持ち、それぞれ、キーが「用途」でバリューが「表紙」であるＤＰＭ９１０とキーが「用途」でバリューが「本文」であるＤＰＭ９１１を持つ。
【００８４】
また、ＤＰａｒｔ９０６は、表紙を示すページとして、Ｐａｇｅオブジェクト９１４を参照している。同様に、ＤＰａｒｔ９０７は、本文を示すページとして、複数のＰａｇｅオブジェクト９１５を参照している。また、Ｐａｇｅオブジェクト９１４は、画像オブジェクト９１８を持つ。
【００８５】
ＤＰａｒｔ９０３は、キーが「ＲｅｃｏｒｄＩｄ」でバリューが「１００２」、キーが「住所」でバリューが「東京都」、キーが「年齢」でバリューが「２０代」、キーが「性別」でバリューが「男性」であるＤＰＭ９０５を持つ。また、ＤＰａｒｔ９０３は、ＤＰａｒｔ９０８とＤＰａｒｔ９０９を子ノードとして持ち、それぞれ、キーが「用途」でバリューが「表紙」であるＤＰＭ９１２とキーが「用途」でバリューが「本文」であるＤＰＭ９１３を持つ。また、ＤＰａｒｔ９０８は、表紙を示すページとして、Ｐａｇｅオブジェクト９１６を参照している。同様に、ＤＰａｒｔ９０９は、本文を示すページとして、複数のＰａｇｅオブジェクト９１７を参照している。また、Ｐａｇｅオブジェクト９１６は、画像オブジェクト９１９を持つ。
【００８６】
図１９（Ｂ）は、実施例２における印刷設定ファイル９３１を示す図である。印刷設定ファイル９３１の内容は、図５（Ｂ）に示す印刷設定ファイル４４１の内容と同様である。
【００８７】
図２０は、ＵＩ制御部３０１において、メタデータ有り印刷文書３０２ａとメタデータ無し印刷文書３０２ｂを統合（マージ）するときの編集画面９４１を示す図である。
【００８８】
ＵＩ制御部３０１は、編集画面９４１上のマージ先ファイル入力欄９４２と印刷設定ファイル入力欄９４３を用いたユーザ操作にしたがって、メタデータ有り印刷文書３０２ａと印刷設定ファイル３０３をそれぞれインポートすることができる。同様に、ＵＩ制御部３０１は、編集画面９４１上のマージ対象ファイル入力欄９４４を用いたユーザ操作にしたがって、ユーザがマージしたいメタデータ無し印刷文書３０２ｂをインポートすることができる。
【００８９】
また、ＵＩ制御部３０１は、編集画面９４１上のマージ対象ファイル入力欄９４４への操作にしたがってインポートされたデータを元に、印刷文書表示欄９４５にメタデータ無し印刷文書３０２ｂをページ単位で表示することが可能である。
【００９０】
ＵＩ制御部３０１は、編集画面９４１上の、自動マージするときのルール９４６が選択されると、選択したルール９４６に応じて、印刷方法表示領域９４７を更新する。ルール９４６は、マージ先の印刷文書とマージ対象の印刷文書との結合に用いるルールであり、記憶手段に予め記憶されている。ここでは「画像で判断（レコードの最初のページ）」というルールが選択されているため、印刷方法表示領域９４７には、使用されている画像単位でマージ先の印刷文書３０２がどのような印刷方法で印刷されるかがプレビュー表示される。ルール９４６は、画像で判断する以外にもテキスト文字列やメタデータであってもよく、レコード内の最初のページではなく最後のページであってもよいものとする。
【００９１】
印刷方法表示領域９４７内には、レコードの最初のページに存在すべき画像９５２とそのレコードに対する印刷方法（中綴じ）９４８が選択されている。マージボタン９５１が押下されると、マージ対象のメタデータ無し印刷文書３０２ｂは、ページ内に画像９５２があれば、レコードの最初のページと判断され、印刷方法が中綴じとなるようにマージ処理される。
【００９２】
同様にして、印刷方法表示領域９４７内には、レコードの最初のページに存在すべき画像９５３と、そのレコードに対する印刷方法（平綴じ）９４９が選択されている。マージボタン９５１が押下されると、マージ対象のメタデータ無し印刷文書３０２ｂは、ページ内に画像９５３があれば、レコードの最初のページと判断され、印刷方法が平綴じとなるようにマージ処理される。
【００９３】
図２１は、実施例２における文書のマージ処理を説明するフローチャートである。図２１では、図２０の編集画面９４１上での選択操作にしたがって、メタデータ有り印刷文書３０２ａとメタデータ無し印刷文書３０２ｂとを自動マージする処理の流れの一例を説明する。
【００９４】
ＵＩ制御部３０１が、マージ先となるメタデータ有り印刷文書３０２ａとマージ対象となるメタデータ無し印刷文書３０２ｂ、及び印刷設定ファイル３０３を受け付ける処理を行う（ステップＳ２０１）。続いて、ＵＩ制御部３０１が、マージに使用するルールを記憶手段から取得する処理を行う（ステップＳ２０２）。具体的には、ＵＩ制御部３０１は、図２０の編集画面９４１上で設定されるルール９４６に従って、自動マージに必要な情報を取得する。図２０に示す例では、「画像で判断（レコードの最初のページ）」がルールとして設定されている。したがって、マージ対象となるメタデータ無し印刷文書３０２ｂについて、指定された画像が存在するかどうかでレコードの区切りが特定され、指定された印刷方法となるようにマージ処理が進められる。
【００９５】
ＵＩ制御部３０１が、マージに使用するルールとマージ先の印刷文書の階層構造とに基づいて、マージ時に使用する階層構造を取得する処理を行う（ステップＳ２０３）。ＵＩ制御部３０１は、マージ先となるメタデータ有り印刷文書３０２ａのメタデータ９０１から、必要なＤＰａｒｔ及びＤＰＭを取得する。具体的には、編集画面９４１上で図２０に示す選択操作がされた場合、ＵＩ制御部３０１は、最初のページに画像９５２を持つレコードについては、図１９（Ａ）のＤＰａｒｔ９０２以下の階層構造を取得する。さらに、ＵＩ制御部３０１は、キー「用途」、バリュー「表紙」を持つＤＰａｒｔにレコード内の最初のページを参照として追加すると判断する。また、ＵＩ制御部３０１は、「用途」バリュー「本文」を持つＤＰａｒｔにレコード内の残りのページを参照として追加すると判断する。同様に、ＵＩ制御部３０１は、最初のページに画像９５３を持つレコードの場合は、図１９（Ａ）のＤＰａｒｔ９０３以下の階層構造を取得する。
【００９６】
次に、ＵＩ制御部３０１が、１レコード分のページを取得する処理を行う（ステップＳ２０４）。図２０に示す編集画面上では、マージに用いるルールとして、「画像で判断（レコードの最初のページ）」が設定されている。したがって、ＵＩ制御部３０１は、マージ対象となるメタデータ無し印刷文書３０２ｂのページについて、予め指定された画像がページ内に存在するかどうかを判断する。さらに、ＵＩ制御部３０１は、画像が存在した場合、レコードの先頭ページとし、予め指定された次の画像が見つかるまで１レコード内のページとする。したがって、ＵＩ制御部３０１は、印刷文書表示欄９４５に表示されているマージ対象となるメタデータ無し印刷文書３０２ｂのページのうち、最初から４ページ目までを１レコード内のページとして取得する。
【００９７】
次に、ＵＩ制御部３０１が、ステップＳ２０４で取得したページについて、印刷方法を決定する処理を行う（ステップＳ２０５）。この例では、ＵＩ制御部３０１は、メタデータ無し印刷文書３０２ｂの最初から４ページ目までについて、中綴じ印刷を決定する。
【００９８】
次に、印刷文書更新部３０４が、ステップＳ２０３で取得した階層構造とステップＳ２０５で決定した印刷方法とに基づいて、マージ時に作成するＤＰａｒｔ及びＤＰＭをマージ先のメタデータ有り印刷文書３０２ａに追加する処理を行う（ステップＳ２０６）。この例では、ＵＩ制御部３０１は、最初から４ページまでを中綴じ印刷とするために、図１９（Ａ）のＤＰａｒｔ９０２以下と同じ構造のＤＰａｒｔ及びＤＰＭを作成する。
【００９９】
続いて、印刷文書更新部３０４が、マージ先のメタデータ有り印刷文書３０２ａにステップＳ２０４で取得したページをマージする処理を行う（ステップＳ２０７）。この例では、印刷文書更新部３０４は、キー「用途」、バリュー「表紙」を持つＤＰａｒｔに先頭ページを参照として追加する。同様にして、印刷文書更新部３０４は、キー「用途」バリュー「本文」を持つＤＰａｒｔに２〜４ページを参照として追加する。
【０１００】
次に、ＵＩ制御部３０１が、マージ対象のメタデータ無し印刷文書３０２ｂの全てのページがマージされたかどうかを判断する処理を行う（ステップＳ２０８）。ＵＩ制御部３０１が、マージ対象のメタデータ無し印刷文書３０２ｂの全てのページがマージされたと判断した場合（Ｓ２０８でＹＥＳ）、処理を終了する。
【０１０１】
一方、ＵＩ制御部３０１が、マージ対象のメタデータ無し印刷文書３０２ｂのうち、マージされていないページがあると判断すると（Ｓ２０８でＮＯ）、処理がステップＳ２０４へ進む。
【０１０２】
図２２は、図２０の編集画面９４１上でマージボタン９５１が押下されたときのマージ先のメタデータ有り印刷文書３０２のメタデータ１００１である。マージ対象のメタデータ無し印刷文書３０２ｂの最初のページ内に画像９５２が存在するため、ＵＩ制御部３０１は、中綴じ印刷となるようにマージ処理する（図２１のＳ２０５）。メタデータ１００１には、ＤＰａｒｔ１００２とともに、キー「ＲｅｃｏｒｄＩｄ」のバリュー「１００３」、キー「住所」のバリュー「東京都」、キー「年齢」のバリュー「２０代」、キー「性別」のバリュー「女性」を持つＤＰＭ１００３が追加されている。
【０１０３】
さらに、メタデータ１００１には、ＤＰａｒｔ１００４とともに、キー「用途」のバリュー「表紙」を持つＤＰＭ１００５、ＤＰａｒｔ１００７とともに、キー「用途」のバリュー「本文」を持つＤＰＭ１００８が追加される（図２１のＳ２０６）。さらに、マージ対象のメタデータ無し印刷文書３０２ｂの最初の１ページが、ＤＰａｒｔ１００４においてＰａｇｅオブジェクト１００６の参照として追加される。同様に、マージ対象のメタデータ無し印刷文書３０２ｂの２〜４ページが、ＤＰａｒｔ１００７においてＰａｇｅオブジェクト１００９の参照として追加される。
【０１０４】
マージ対象のメタデータ無し印刷文書３０２ｂは、１レコード分のマージが終了すると、次のレコードとしてマージする処理が繰り返される（図２１のＳ２０８でＮＯ）。マージ対象のメタデータ無し印刷文書３０２ｂの５ページ目に画像９５３が存在するため、ＵＩ制御部３０１は、平綴じ印刷となるようにマージ処理する（図２１のＳ２０５）。
【０１０５】
メタデータ１００１には、ＤＰａｒｔ１０１０と、ＤＰＭ１０１１が追加される（図２１のＳ２０６）。ＤＰＭ１０１１は、キー「ＲｅｃｏｒｄＩｄ」のバリュー「１００４」、キー「住所」のバリュー「東京都」、キー「年齢」のバリュー「２０代」、キー「性別」のバリュー「男性」を持つ。さらに、メタデータ１００１には、ＤＰａｒｔ１０１２とともに、キー「用途」のバリュー「表紙」を持つＤＰＭ１０１３、ＤＰａｒｔ１０１５とともに、キー「用途」のバリュー「本文」を持つＤＰＭ１０１６が追加される（図２１のＳ２０６）。さらに、マージ対象のメタデータ無し印刷文書３０２ｂの５ページ目は、ＤＰａｒｔ１０１２においてＰａｇｅオブジェクト１０１４の参照として追加される。同様に、マージ対象の印刷文書３０２の６〜７ページは、ＤＰａｒｔ１０１５においてＰａｇｅオブジェクト１０１７の参照として追加される。
【０１０６】
実施例２の情報処理装置によれば、メタデータ有り印刷文書３０２ａとメタデータ無し印刷文書３０２ｂについて、印刷設定ファイル３０３と連動して、自動マージをすることが可能となる。
【０１０７】
（実施例３）
実施例３の情報処理装置は、ページのマージだけでなく、ページの差し替えを行う。
【０１０８】
図２３は、印刷文書３０２の特定のページの差し替えに用いる編集画面を示す図である。ＵＩ制御部３０１は、編集画面１１０１上の差し替え先ファイル入力欄１１０２と印刷設定ファイル入力欄１１０３を用いたユーザ操作にしたがって、メタデータ有り印刷文書３０２ａと印刷設定ファイル３０３をインポートすることができる。同様に、ＵＩ制御部３０１は、編集画面１１０１上の差し替え対象ファイル入力欄１１０４を用いたユーザ操作にしたがって、差し替え対象のメタデータ無し印刷文書３０２ｂ（第三の文書）を受け付けてインポートすることができる。
【０１０９】
また、ＵＩ制御部３０１は、編集画面１１０１上の差し替え対象ファイル入力欄１１０４からインポートされたデータを元に、印刷文書表示欄１１０５にメタデータ無し印刷文書３０２ｂをページ単位で表示することが可能である。
【０１１０】
さらに、ＵＩ制御部３０１は、編集画面１１０１上の差し替え先ファイル入力欄１１０２と印刷設定ファイル入力欄１１０３からインポートされたデータを元に、印刷方法表示欄１１０６に印刷方法を表示することが可能である。この例では、ＵＩ制御部３０１は、差し替え先ファイル入力欄１１０２への操作にしたがって、図１９（Ａ）に示すメタデータ９０１を持つメタデータ有り印刷文書３０２ａをインポートしている。また、この例では、ＵＩ制御部３０１は、印刷設定ファイル入力欄１１０３を用いた操作にしたがって、図１９（Ｂ）の印刷設定ファイル９３１をインポートしている。そして、ＵＩ制御部３０１は、図１９（Ａ）に示すメタデータ９０１のレコード階層であるＤＰａｒｔ９０２以下を中綴じ印刷、レコード階層であるＤＰａｒｔ９０３以下を平綴じ印刷として印刷方法表示欄１１０６に表示する。
【０１１１】
印刷方法表示欄１１０６内では、差し替え先のメタデータ無し印刷文書３０２ｂの中でどの印刷方法のページを差し替えるかを選択することが可能である。この例では、チェックボックス１１０７にて中綴じ印刷の場合は差し替えることが選択されている。
【０１１２】
ユーザは、レコード内のどの部分を差し替えるかを開始位置１１０８と終了位置１１０９で指定することが可能であり、この例では、レコード内の最初の１ページを差し替えることが指定されている。ここで、差替ボタン１１１０が押下されると、ＵＩ制御部３０１が、メタデータ無し印刷文書３０２ｂの指定されたページを差し替える処理を行う。
【０１１３】
図２４は、印刷文書の差し替え処理を説明するフローチャートである。ＵＩ制御部３０１が、編集画面１１０１上でのユーザ操作にしたがって、差し替え先のメタデータ有り印刷文書３０２ａと差し替え対象のメタデータ無し印刷文書３０２ｂ、及び印刷設定ファイル３０３を受け付ける処理を行う（ステップＳ３０１）。
【０１１４】
次に、ＵＩ制御部３０１が、差し替え処理時のルールを取得する処理を行う（ステップＳ３０２）。差し替え処理時のルールは、差し替え対象の印刷文書による差し替え先の印刷文書の差し替えに用いられる。このルールは、予め記憶手段に記憶されている。上記ステップＳ３０２において、ＵＩ制御部３０１は、どのレコードが対象になるか、及びレコード内のどの部分を差し替えるかを取得する。図２３の編集画面１１０１上での指定内容を参照すると、差し替え先のメタデータ有り印刷文書３０２ａは、開始位置１１０８と終了位置１１０９によって、レコード内の１ページ目が差し替えられることがわかる。
【０１１５】
次に、ＵＩ制御部３０１が、差し替えを行うレコードを取得する処理を行う（ステップＳ３０３）。図２３に示す編集画面１１０１上のチェックボックス１１０７にチェックされているので、ＵＩ制御部３０１は、差し替え先のメタデータ有り印刷文書３０２ａの中綴じ印刷対象のレコードに対して差し替え処理すると判断する。したがって、ＵＩ制御部３０１は、印刷文書３０２ａの階層構造を参照して、図１９（Ａ）のメタデータ９０１のＤＰａｒｔ９０２と、そのメタデータとを取得する。
【０１１６】
次に、ＵＩ制御部３０１が、ステップＳ３０３で取得されたレコードに含まれるページから、差し替え対象のページを決定する処理を行う（ステップＳ３０４）。ＵＩ制御部３０１は、編集画面１１０１上での開始位置１１０８と終了位置１１０９への指定内容に基づいて、レコード内の最初の１ページを差し替えると判断する。したがって、ＵＩ制御部３０１は、図１９（Ａ）中のＤＰａｒｔ９０６で参照しているＰａｇｅオブジェクト９１４と、ＤＰａｒｔ９０６に対応するメタデータとを取得する。
【０１１７】
印刷文書更新部３０４が、差し替え対象となったページを削除する処理を行う（ステップＳ３０５）。具体的には、印刷文書更新部３０４が、ステップＳ３０４で取得したＰａｇｅオブジェクト９１４を削除する。
【０１１８】
次に、印刷文書更新部３０４が、差し替え対象のメタデータ無し印刷文書３０２ｂからページを取得し、差し替え先のメタデータ有り印刷文書３０２ａへ追加する（ステップＳ３０６）。そして、メタデータを更新する処理を行う。具体的には、印刷文書更新部３０４が、差し替え対象のメタデータ無し印刷文書３０２ｂのページをＤＰａｒｔ９０６の参照として追加する。これにより、印刷文書３０２ｂのページが、ＤＰａｒｔ９０２のメタデータとＤＰａｒｔ９０６に対応するメタデータとに紐付けられる。
【０１１９】
次に、ＵＩ制御部３０１は、差し替え先のメタデータ有り印刷文書３０２ａの全てのレコードで、ページの差し替え処理がされたかを判断する処理を行う（ステップＳ３０７）。差し替え先のメタデータ有り印刷文書３０２ａの全てのレコードで、ページの差し替え処理がされた判断されると（Ｓ３０７でＹＥＳ）、処理を終了する。差し替え先のメタデータ有り印刷文書３０２ａに、ページの差し替え処理がされていないレコードがあると判断されると（Ｓ３０７でＮＯ）、ステップＳ３０３へ進む。
【０１２０】
図２５は、差し替え処理後の、メタデータ有り印刷文書３０２ａのメタデータ１２０１である。差し替え先のメタデータ有り印刷文書３０２ａのＰａｇｅオブジェクト９１４が、ＤＰａｒｔ１２０２の参照となるＰａｇｅオブジェクト１２０３に差し替えられている。
【０１２１】
実施例３の情報処理装置によれば、メタデータ有り印刷文書３０２ａとメタデータ無し印刷文書３０２ｂについて、印刷設定ファイル３０３と連動して、ページの自動差し替えをすることが可能となる。
【０１２２】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【０１２３】
３０１  ＵＩ制御部
３０４  印刷文書更新部
３０５  印刷設定ファイル更新部
【図１】
2014146255.tif 000003
【図２】
2014146255.tif 000004
【図３】
2014146255.tif 000005
【図４】
2014146255.tif 000006
【図５】
2014146255.tif 000007
【図６】
2014146255.tif 000008
【図７】
2014146255.tif 000009
【図８】
2014146255.tif 000010
【図９】
2014146255.tif 000011
【図１０】
2014146255.tif 000012
【図１１】
2014146255.tif 000013
【図１２】
2014146255.tif 000014
【図１３】
2014146255.tif 000015
【図１４】
2014146255.tif 000016
【図１５】
2014146255.tif 000017
【図１６】
2014146255.tif 000018
【図１７】
2014146255.tif 000019
【図１８】
2014146255.tif 000020
【図１９】
2014146255.tif 000021
【図２０】
2014146255.tif 000022
【図２１】
2014146255.tif 000023
【図２２】
2014146255.tif 000024
【図２３】
2014146255.tif 000025
【図２４】
2014146255.tif 000026
【図２５】
2014146255.tif 000027