(57)【特許請求の範囲】
【請求項１】
繰り返し要素に対応した繰り返しルールを含み、かつ構成情報を作成するためのルールを作成するルール作成手段と、
前記作成されたルールを第１のＰＤＬデータに適用することによって、前記第１のＰＤＬデータに対する構成情報を作成する構成情報作成手段と、
前記構成情報作成手段によって作成された前記構成情報を保存する保存手段と、
ユーザの指示に基づいて、印刷設定を行う印刷設定手段と、
印刷を行うプリンタを指定するプリンタ指定手段と、
前記構成情報と前記印刷設定と前記指定されたプリンタの能力とに基づいて、前記第１のＰＤＬデータを第２のＰＤＬデータに変換する変換手段と、
前記変換手段で変換された前記第２のＰＤＬデータに従って印刷の制御を行う印刷制御手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記構成情報は階層構造を有し、前記変換手段は前記階層構造を用いて前記印刷設定を変換することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記ルールは前記階層構造に対応した開始条件と終了条件を有することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記開始条件には、ページサイズ変化、オブジェクト指定の少なくともいずれか一つが含まれることを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記終了条件には、ページ数指定、オブジェクト指定の少なくともいずれか一つが含まれることを特徴とする請求項３または４に記載の情報処理装置。
【請求項６】
前記構成情報に対してメタデータを設定するメタデータ設定手段を更に有し、
前記保存手段は、前記メタデータが設定された前記構成情報を保存し、
前記印刷設定手段は前記メタデータを用いて印刷設定を行ない、
前記変換手段は前記メタデータを用いて前記印刷設定を変換することを特徴とする請求項１〜５のいずれか１項に記載の情報処理装置。
【請求項７】
前記ルール作成手段は前記ルールにレコードレベルを設定することを特徴とする請求項１〜６のいずれか１項に記載の情報処理装置。
【請求項８】
前記構成情報を編集する構成情報編集手段を更に有することを特徴とする請求項１〜７のいずれか１項に記載の情報処理装置。
【請求項９】
前記第１のＰＤＬデータは、ＰＤＦまたはＰＤＦ／Ｘのデータであることを特徴とする請求項１〜８のいずれか１項に記載の情報処理装置。
【請求項１０】
前記第２のＰＤＬデータは、ＰＤＦ／ＶＴのデータであることを特徴とする請求項１〜９のいずれか１項に記載の情報処理装置。
【請求項１１】
前記印刷設定はＪＤＦを用いて行うことを特徴とする請求項１〜１０のいずれか１項に記載の情報処理装置。
【請求項１２】
ルール作成手段が、繰り返し要素に対応した繰り返しルールを含み、かつ構成情報を作成するためのルールを作成するルール作成工程と、
構成情報作成手段が、前記作成されたルールを第１のＰＤＬデータに適用することによって、前記第１のＰＤＬデータに対する構成情報を作成する構成情報作成工程と、
保存手段が、前記構成情報作成工程で作成された前記構成情報を保存する保存工程と、
印刷設定手段が、ユーザの指示に基づいて、印刷設定を行う印刷設定工程と、
プリンタ指定手段が、印刷を行うプリンタを指定するプリンタ指定工程と、
変換手段が、前記構成情報と前記印刷設定と前記指定されたプリンタの能力とに基づいて、前記第１のＰＤＬデータを第２のＰＤＬデータに変換する変換工程と、
印刷制御手段が、前記変換工程で変換された前記第２のＰＤＬデータに従って印刷の制御を行う印刷制御工程と、を有することを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷用ファイルを作成・保存・編集・印刷する印刷ワークフローを提供する情報処理装置および情報処理方法に関する。特に、本発明は、ＰＤＦやＰＤＦ／Ｘなどを含む印刷用ファイル形式（フォーマット）を使用した情報処理装置および情報処理方法に関する。
【背景技術】
【０００２】
近年、印刷用ファイルを作成・保存・編集・印刷する印刷ワークフローでは、印刷用ファイルの形式（フォーマット）としてＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）が使用されることが多くなってきている。ＰＤＦは、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）、Ｍａｃ  ＯＳ（登録商標）を含めたさまざまなプラットフォームに対応している。また、ＰＤＦはフォントや画像等のすべてのデータを一つのファイルに格納することができる。
【０００３】
このため、ＰＤＦは印刷ワークフローに関わる複数の担当者間でやり取りするための可搬性にすぐれており、複数の担当者による校正作業も容易である。ＰＤＦは印刷目的以外の目的に使用する他の要素も格納することができる。これに関して、国際標準化機構（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｏｒｇａｎｉｚａｔｉｏｎ  ｆｏｒ  Ｓｔａｎｄａｒｄｉｚａｔｉｏｎ；以下、ＩＳＯと表記する）によって、ＰＤＦ／Ｘが策定された（非特許文献１）。ＰＤＦ／Ｘは、印刷用のデータ交換を目的としたＰＤＦのサブセットである。印刷ワークフローではＰＤＦ／Ｘも広く使用されている。
【０００４】
一方、電子写真方式の印刷装置やインクジェット方式の印刷装置の高速化・高画質化に伴い、プリント・オン・デマンド（Ｐｒｉｎｔ  Ｏｎ  Ｄｅｍａｎｄ；以下、ＰＯＤと表記する）と呼ばれる市場が広がりを見せている。ＰＯＤは、デジタル複写機やデジタル複合機等のデジタル画像形成装置を最大限に活用して、電子データを用いたデジタル印刷を行うことで、比較的小ロットのジョブを短納期で取り扱えることを目指している。
【０００５】
ＰＯＤでは、電子データを用いる特性を生かして、バリアブルデータ印刷（Ｖａｒｉａｂｌｅ  Ｄａｔａ  Ｐｒｉｎｔｉｎｇ；以下、ＶＤＰと表記する）として知られる印刷方法が行なわれている。ＶＤＰでは、文書中の固定部分と可変部分を分け、顧客ＤＢなどのデータソースから取得したデータを加工して可変部分のデータを作成する。こうして、顧客ごとに内容の異なる印刷を行うことを可能とする。
【０００６】
ＶＤＰでは顧客ごとに内容の異なる印刷を行うことができるが、文書中の固定部分に関しては共通の内容であるため、印刷時に固定部分の処理を効率化することが求められる。また、顧客の性別や購買履歴などの特性に応じて、用紙の選択や印刷ページの選択などの印刷制御を行うという要求も高くなってきている。このような印刷制御を行う際は、ＪＤＦ（Ｊｏｂ  Ｄｅｆｉｎｉｔｉｏｎ  Ｆｏｒｍａｔ）と呼ばれるジョブチケット形式を使用して印刷設定を記述することが広まりつつある。これらの要求に応えるために、ＰＤＦ／ＸをベースとしたＶＤＰ用のファイル形式として、ＩＳＯによってＰＤＦ／ＶＴが策定された（非特許文献２）。ＰＤＦ／ＶＴでは、固定部分の処理を効率的に行うための仕様や、ＪＤＦによる印刷設定を容易にするための階層構造やメタデータの仕様が追加されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平１１−２５００４１号公報
【特許文献２】特開２００６−２４４４６７号公報
【非特許文献】
【０００８】
【非特許文献１】ＩＳＯ  １５９３０  Ｇｒａｐｈｉｃ  ｔｅｃｈｎｏｌｏｇｙ  −  Ｐｒｅｐｒｅｓｓ  ｄｉｇｉｔａｌ  ｄａｔａ  ｅｘｃｈａｎｇｅ  ｕｓｉｎｇ  ＰＤＦ  −
【非特許文献２】ＩＳＯ  １６６１２−２  Ｇｒａｐｈｉｃ  ｔｅｃｈｎｏｌｏｇｙ  −  Ｖａｒｉａｂｌｅ  ｄａｔａ  ｅｘｃｈａｎｇｅ  −  Ｐａｒｔ  ２：  Ｕｓｉｎｇ  ＰＤＦ／Ｘ−４  ａｎｄ  ＰＤＦ／Ｘ−５（ＰＤＦ／ＶＴ−１  ａｎｄ  ＰＤＦ／ＶＴ−２）
【発明の概要】
【発明が解決しようとする課題】
【０００９】
従来から、企業においてはＰＤＦやＰＤＦ／Ｘファイル（以下、ＰＤＦファイルと総称する）の形式のデータの蓄積がなされている。これらＰＤＦやＰＤＦ／Ｘの印刷が可能なプリンタ（以下、ＰＤＦ対応プリンタと表記する）を保有する印刷ワークフローも存在する。
【００１０】
この従来の印刷ワークフローにおいて、ＰＤＦとＰＤＦ／ＶＴのいずれの印刷も可能なプリンタ（以下、ＰＤＦ／ＶＴ対応プリンタと表記する）を新たに導入した場合、ＰＤＦファイルの形式のままでは、ＰＤＦ／ＶＴ対応プリンタの利点が生かせない。
【００１１】
逆に、すべてのＰＤＦファイルをＰＤＦ／ＶＴ形式に変換した場合、そのＰＤＦ／ＶＴファイルに対する印刷設定を記述したＪＤＦファイルを作成すると、既存のＰＤＦ対応プリンタではその印刷設定に対応した印刷ができない。
【００１２】
また、ＰＤＦファイルからＰＤＦ／ＶＴ形式に変換する場合、ＪＤＦによる印刷設定を容易に行うためには階層構造の作成やメタデータの付加を行う必要がある。このための方法として、たとえば特許文献１は、文書画像のレイアウトから階層構造、参照構造、関係構造等の論理構造を抽出し、異なる形式に変換可能な方法を開示している。特許文献２は、ＰＤＦの各ページに注釈（アノテーション）として階層構造を意味する情報を付加しておき、この情報にしたがって階層を自動作成する方法を開示している。しかしながら、これらの方法では、文書に明示的に表れている構造にしか対応していないという課題や、ＶＤＰに特有な繰り返しの含まれる構造に対応していないという課題がある。
【課題を解決するための手段】
【００１３】
本発明の一実施形態の情報処理装置は、繰り返し要素に対応した繰り返しルールを含み、かつ構成情報を作成するためのルールを作成するルール作成手段と、前記作成されたルールを第１のＰＤＬデータに適用することによって、前記第１のＰＤＬデータに対する構成情報を作成する構成情報作成手段と、前記構成情報作成手段によって作成された前記構成情報を保存する保存手段と、ユーザの指示に基づいて、印刷設定を行う印刷設定手段と、印刷を行うプリンタを指定するプリンタ指定手段と、前記構成情報と前記印刷設定と前記指定されたプリンタの能力とに基づいて、前記第１のＰＤＬデータを第２のＰＤＬデータに変換する変換手段と、前記変換手段で変換された前記第２のＰＤＬデータに従って印刷の制御を行う印刷制御手段と、を有する。
【発明の効果】
【００１４】
本発明によれば、既存のページ記述言語によるファイル、例えばＰＤＦファイルを保持したまま、構成情報、例えばＪＤＦファイルを使用してその階層構造やメタデータを利用した印刷設定を行うことができる。また、本発明によれば、バリアブル印刷に特有の繰り返しの含まれる階層構造を定義することができる。
【００１５】
また、本発明によれば、既存のＰＤＦファイルと新たに作成したＪＤＦファイルを使って、既存のＰＤＦプリンタまたは新規のＰＤＦ対応プリンタのいずれにおいても上記の印刷設定を反映した印刷を行うことができる。また、本発明によれば、既存のＰＤＦファイルと新たに作成したＪＤＦファイルを使って、バリアブル印刷用のプリンタ、例えばＰＤＦ／ＶＴ対応プリンタでＰＤＦ／ＶＴの利点を生かした印刷を行うことができる。
【００１６】
なお、既存のページ記述言語によるファイルの形式はＰＤＦに限らず、ページ単位の記述能力を持ち、ページ単位でアクセス可能な任意のページ記述言語（Ｐｒｉｎｔ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ；以下、ＰＤＬと表記する）形式が使用可能である。ページ記述言語のファイルを変換した後のファイル形式はＰＤＦ／ＶＴに限らず、階層構造とメタデータのいずれかあるいは両方の機能を持つ任意のＰＤＬ形式が使用可能である。ジョブチケット形式はＪＤＦに限らず、目的の印刷設定を記述することのできる任意のジョブチケット形式が使用可能である。
【図面の簡単な説明】
【００１７】
【図１】本発明の情報処理装置の構成を示す図である。
【図２】（Ａ）は本発明の情報処理装置のＰＣの構成を示す図であり、（Ｂ）はＰＣ１０１、１０２の機能構成を示す図である。
【図３】ＰＤＦ／ＶＴ文書の構造を示す図である。
【図４】印刷情報の構造を示す図である。
【図５】本発明の情報処理装置の全体処理を表わすフローチャートである。
【図６】本発明の情報処理装置のルール作成画面を示す図である。
【図７Ａ】ルール作成画面で開始条件を指定した例を示す図である。
【図７Ｂ】オブジェクト指定の例を示す図である。
【図７Ｃ】ルール作成画面で終了条件を指定した例を示す図である。
【図８】（Ａ）は終了条件を指定して連結線が有効になった例を示し、（Ｂ）は開始条件を指定して連結線が有効になった例を示し、（Ｃ）は有効な連結線に対してリンク条件を指定した例を示す。
【図９Ａ】ルール作成画面でルールを作成した例を示す図である。
【図９Ｂ】入力するＰＤＦファイルの例を示す図である。
【図９Ｃ】本発明により作成された構成情報を示す図である。
【図１０Ａ】ルール作成画面でルールを作成した例を示す図である。
【図１０Ｂ】入力するＰＤＦファイルの例を示す図である。
【図１０Ｃ】本発明により作成された構成情報を示す図である。
【図１１】本発明によるメタデータを設定した構成情報の例を示す図である。
【図１２】構成情報を表すデータ構造を示す図である。
【図１３】構成情報のデータ構造のサンプルを示す図である。
【図１４】構成情報のＸＭＬ表現の例を示す図である。
【図１５】ルール適用の処理を表すフローチャートである。
【図１６Ａ】終端フォルダへの割り振り処理を表すフローチャートである。
【図１６Ｂ】終端フォルダへの割り振り処理を表すフローチャートである。
【図１６Ｃ】終端フォルダへの割り振り処理を表すフローチャートである。
【図１７】構成情報に対して印刷設定を追加した印刷情報を示す図である。
【図１８】不要なページを印刷しない例を示す図である。
【図１９Ａ】印刷情報をＰＤＦ／ＶＴに変換する処理を表わすフローチャートである。
【図１９Ｂ】印刷情報から変換されたＰＤＦ／ＶＴファイルを示す図である。
【図２０Ａ】印刷情報をＰＤＦに変換する処理を表わすフローチャートである。
【図２０Ｂ】印刷情報から変換されたＰＤＦファイルを示す図である。
【発明を実施するための形態】
【００１８】
（実施形態１）
以下、本発明を実施するための最良の形態について図面を用いて説明する。
＜ＰＯＤシステムの構成＞
図１は、本発明の実施形態に係る情報処理装置の構成を示す模式図である。この情報処理装置は、印刷ジョブ作成コンピュータ（ＰＣ）１０１と、ファイルサーバ１０２と、印刷オペレータＰＣ１０３と、ＰＤＦ対応プリンタ１０４と、ＰＤＦ／ＶＴ対応プリンタ１０５とを有し、これらはネットワーク１０６を介して接続されている。
【００１９】
印刷ジョブ作成ＰＣ１０１は印刷ジョブを作成し、ファイルサーバ１０２に格納する。ファイルサーバ１０２に対して、ネットワーク１０６経由でデータの読み書きが行われる。印刷オペレータＰＣ１０３は、ファイルサーバ１０２から取得した印刷ジョブを必要に応じて変更し、ＰＤＦ対応プリンタ１０４またはＰＤＦ／ＶＴ対応プリンタ１０５に送信する。ＰＤＦ対応プリンタ１０４またはＰＤＦ／ＶＴ対応プリンタ１０５は、受信した印刷ジョブの印刷を行う。
【００２０】
本発明の実施の形態では既存のＰＤＬデータのファイル形式としてＰＤＦを使用するが、本発明はこれに限定されるものではない。ページ単位の記述能力を持ち、そのページをページ番号や直接参照・間接参照によりアクセス可能なＰＤＬのＰＤＬデータであれば任意の形式が使用可能である。例えば、ＰＤＦ／Ｘであってもよい。
【００２１】
本発明の実施の形態では変換後のファイル形式としてＰＤＦ／ＶＴ（バリアブル印刷用のフォーマット）を使用するが、本発明はこれに限定されるものではなく、それ以外のファイル形式にも適用できる。階層構造とメタデータのいずれかあるいは両方の機能を持ち、その階層構造とメタデータのいずれかあるいは両方に外部からアクセスすることで印刷制御が可能なＰＤＬであれば任意の形式が使用可能である。
【００２２】
本発明の実施の形態ではジョブチケット形式としてＪＤＦを使用するが、本発明はこれに限定されるものではない。印刷ワークフローで行なわれる印刷の目的に合った設定を記述することのできる任意の形式が使用可能である。
【００２３】
本発明の実施の形態では、各ＰＣ、サーバが個々の機能を提供しているが、本発明はこれに限定されるものではない。個々の機能がさらに複数のコンピュータに分散していても良い。ＰＣ、サーバのうちのいくつか、あるいはすべてが同一コンピュータであっても良い。印刷ワークフローを構成するプログラムとして、全体のワークフローを管理するワークフローソフトや、印刷ジョブに関連する種々の情報を格納する経営情報システム（Ｍａｎａｇｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｙｓｔｅｍ；ＭＩＳ）が存在していても良い。印刷ジョブを入稿するＷｅｂ  ｔｏ  Ｐｒｉｎｔプログラム、プリンタ等のデバイスを管理するデバイスマネージャ、印刷ジョブを管理するジョブマネージャ、その他のプログラムが存在していても良い。
【００２４】
本発明の実施の形態では、ＰＤＦ対応プリンタとＰＤＦ／ＶＴ対応プリンタをそれぞれの能力に応じて使い分けているが、本発明はこれに限定されるものではない。同じ能力を持つプリンタが複数存在しても良い。ＰＤＦ対応プリンタのみが存在する場合や、ＰＤＦ／ＶＴ対応プリンタのみが存在する場合にも適用可能である。
【００２５】
本発明の実施の形態では、各ＰＣ、サーバ、プリンタがネットワーク接続されているが、本発明はこれに限定されるものでない。一部のＰＣ、サーバ、プリンタが遠隔地のネットワークに存在し、それらとリモート接続されているのでも良い。一部の機能はインターネットを通じてＷｅｂサービスとして実行されるのでも良い。一部のＰＣ、サーバがインターネット上でいわゆるクラウドサービスとして実行されるものでも良い。
【００２６】
＜コンピュータ装置の構成＞
次に、図２を使用して、本発明の実施の形態に係るコンピュータ装置の構成を説明する。図２（Ａ）は、印刷ジョブ作成ＰＣ１０１、ファイルサーバ１０２、印刷オペレータＰＣ１０３の構成の一例を示すブロック図である。
【００２７】
ＣＰＵ２０１はＲＡＭ２０２に格納されている制御プログラムに従って本装置全体の制御を行う。内部記憶部２０２はＣＰＵ２０１が実行する本装置の制御プログラムや、文書画像等のデータを格納するＲＡＭ等である。ネットワークインタフェース２０３はＣＰＵ２０１の制御の下にネットワーク１０６との接続を行なってデータ等を送受信する。外部記憶装置２０４はデータを保存する磁気ディスク等である。２０５はディスプレイ、２０６はキーボード、２０７はマウス等のポインティングデバイスである。ＲＡＭ２０２に格納されているプログラムは、所定の動作を行うために、同じくＲＡＭ２０２に格納されているＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）の機能を必要に応じて使用する。また、ＲＡＭ２０２に格納されているプログラムは、ＲＡＭ２０２に一時記憶するデータの内容の読み書きを行なったり、外部記憶装置２０４上でデータの読み書きを行なったり、ネットワークインタフェース２０３を通じてデータの送受信を行なったりする。また、ＲＡＭ２０２に格納されているプログラムは、キーボード２０６やポインティングデバイス２０７からの入力を受け取ったり、ディスプレイ２０５に表示を行なったりする。
【００２８】
クライアントＰＣ１０１は、ＲＡＭ２０２に格納されたプログラムがキーボード２０６やポインティングデバイス２０７からの入力を受け付けて印刷ジョブを作成し、ネットワークインタフェース２０３を通じてファイルサーバ１０２に書き込む。ファイルサーバ１０２は、外部記憶装置２０４に印刷ジョブを格納する。また、ＲＡＭ２０２に格納されたプログラムがネットワークインタフェース２０３を通じて印刷ジョブの読み書きを行う命令を受信すると、ＣＰＵ２０１が命令を実行してネットワークインタフェース２０３を通じて結果を送信する。
【００２９】
印刷オペレータＰＣ１０３は、ＲＡＭ２０２に格納されたプログラムがキーボード２０６やポインティングデバイス２０７からの入力を受け付けてネットワークインタフェース２０３を通じてファイルサーバ１０２から印刷ジョブを読み込む。そして、印刷オペレータＰＣ１０３は、印刷ジョブの形式を必要に応じて変更した上で、ＰＤＦ対応プリンタ１０４やＰＤＦ／ＶＴ対応プリンタ１０５にネットワークインタフェース２０３を通じてその印刷ジョブを送信する。
【００３０】
図２（Ｂ）は、印刷ジョブ作成ＰＣ１０１のＲＡＭ２０２に格納されている制御プログラムの機能ブロック図である。この制御プログラムは、構成情報４０３（図４）を作成する構成情報作成プログラム２１１（構成情報作成手段）と、構成情報の一部を追加、削除、変更するための構成情報編集プログラム２１２（構成情報編集手段）とを含んでいる。印刷オペレータＰＣ１０３は、印刷情報４０１のうちＪＤＦ４０４の部分を作成する印刷設定プログラム２１３（印刷設定手段）と、印刷情報を用いて印刷の指示等の制御を行う印刷制御プログラム２１４（印刷制御手段）を含んでいる。
【００３１】
＜ＰＤＦ／ＶＴの構造＞
次に、図３を使用して、ＰＤＦ／ＶＴ文書の構造を説明する。図３はＰＤＦ／ＶＴファイルに格納されるＰＤＦ／ＶＴ文書３０１の論理的な構造を概念的に示すブロック図である。Ｃａｔａｌｏｇ辞書３０２はＰＤＦ／ＶＴ文書３０１内に存在するさまざまなオブジェクトへの参照を格納する。これらの参照には、Ｐａｇｅ  Ｔｒｅｅ３０３やＤＰａｒｔＲｏｏｔ辞書３０５への参照が含まれる。Ｐａｇｅ  Ｔｒｅｅ３０３はＰＤＦ／ＶＴ文書３０１内に存在するＰａｇｅオブジェクト３０４の順序を保持する。Ｐａｇｅオブジェクト３０４は一ページ分の描画に必要なオブジェクトへの参照を保持する。ＤＰａｒｔＲｏｏｔ辞書３０５はＤＰａｒｔ（Ｄｏｃｕｍｅｎｔ  Ｐａｒｔ）階層構造に存在するルートノードへの参照を保持する。ＤＰａｒｔ辞書３０６はＤＰａｒｔ階層構造を構成する各ノードを表現する。ＤＰＭ（Ｄｏｃｕｍｅｎｔ  Ｐａｒｔ  Ｍｅｔａｄａｔａ）３０７は各ＤＰａｒｔ辞書に関連付けられたメタデータを保持する。ＤＰａｒｔ階層構造の終端ノードはＰａｇeオブジェクト３０４への参照を保持する。外部ＪＤＦファイル３０８はＰＤＦ／ＶＴ文書３０１のＤＰａｒｔ階層構造やＤＰＭメタデータを参照した印刷設定を記述することができる。
【００３２】
Ｃａｔａｌｏｇ辞書３０２、Ｐａｇｅ  Ｔｒｅｅ３０３、Ｐａｇｅオブジェクト３０４はＰＤＦにもともと定義されている構造である。ＤＰａｒｔＲｏｏｔ辞書３０５、ＤＰａｒｔ辞書３０６、ＤＰＭ辞書３０７、Ｃａｔａｌｏｇ辞書３０２からＤＰａｒｔＲｏｏｔ辞書３０５への参照、ＤＰａｒｔ辞書３０６からＰａｇｅオブジェクト３０４への参照はＰＤＦに対して拡張された構造である。
【００３３】
＜印刷情報の構成＞
次に、図４を使用して、本発明の実施の形態に係る印刷情報の構造を説明する。図４は本発明の実施の形態で使用する印刷ジョブの形式である印刷情報４０１の論理的な構造を概念的に説明するブロック図である。４０２はＰＤＦファイルである。構成情報４０３はＰＤＦファイル４０２を参照し、ＰＤＦ／ＶＴ文書３０１のＤＰａｒｔ階層構造やＤＰＭメタデータと同様の構造を保持することができる。
【００３４】
構成情報４０３がＰＤＦ／ＶＴ文書３０１のＤＰａｒｔ階層構造と異なる点が二点ある。一点は、ＤＰａｒｔＲｏｏｔ辞書３０５からの参照はないことである。もう一点は、終端ノードがＰａｇｅオブジェクト３０４への参照を保持しないことである。その代わり、構成情報４０３の終端ノードは、参照先のＰＤＦファイルのページ番号を保持する。ＪＤＦファイル４０４は構成情報４０３のＤＰａｒｔ階層構造やＤＰＭメタデータを参照して印刷設定を記述する。印刷情報４０１を外部記憶装置２０４に保持する際は、ＰＤＦファイル４０２、構成情報４０３、ＪＤＦファイル４０４をＺＩＰ形式でアーカイブする。
【００３５】
構成情報４０３とＰＤＦファイルの例は図９Ｃ、図１１を用いて後述する。印刷情報の例は図１７、図１８を用いて後述する。構成情報をＲＡＭ２０２に保持する際のデータ構造は図１２、図１３を用いて後述する。構成情報を外部記憶装置２０４に保持する際の表現形式は図１４を用いて後述する。
【００３６】
本発明の実施の形態では、ＰＤＦファイルを一つだけ使用しているが、本発明はこれに限定されるものではない。複数のＰＤＦファイルを使用し、それぞれのＰＤＦファイルのページを構成情報から参照することも可能である。本発明の実施の形態では、構成情報としてＰＤＦ／ＶＴと同様の構造を使用しているが、本発明はこれに限定されるものではない。階層構造とメタデータを表現する構造であれば任意の形式を使用可能である。本発明の実施の形態では、構成情報は参照先のＰＤＦファイルのページ番号を保持しているが、本発明はこれに限定されるものではない。ＰＤＦファイル内のページを参照することが可能であれば任意の形式が使用可能であり、たとえばＰＤＦのＲｅｆｅｒｅｎｃｅ  ＸＯｂｊｅｃｔを使用することもできる。
【００３７】
本発明の実施の形態では、印刷情報をＺＩＰ形式でアーカイブしているが、本発明はこれに限定されるものではない。ＬＺＨ形式などの各種のアーカイブ形式も使用可能である。ＯＰＣ（Ｏｐｅｎ  Ｐａｃｋａｇｅ  Ｃｏｎｖｅｎｔｉｏｎ）、ＭＩＭＥ（Ｍｕｌｔｉｐｕｒｐｏｓｅ  Ｉｎｔｅｒｎｅｔ  Ｍａｉｌ  Ｅｘｔｅｎｓｉｏｎｓ）などの各種のパッケージ形式も使用可能である。あるいは、ファイルシステムのディレクトリ構造を使用し、印刷情報内の各ファイルをアーカイブやパッケージしないことも可能である。
【００３８】
＜全体処理＞
次に、図５のフローチャートを使用して、本発明の実施形態に係る情報処理装置の全体処理を説明する。図５（Ａ）は情報処理装置の全体処理を表している。
【００３９】
まずステップ５０１で処理が開始される。次に、ステップ５０２で、印刷ジョブ作成ＰＣ１０１の構成情報作成プログラム２１１（構成情報作成手段）が、ユーザーからの入力を受け付けて、構成情報４０３を作成し、印刷情報の一部としてファイルサーバ５０２に格納する。構成情報作成処理の詳細についてはステップ５０７〜５１３で後述する。
【００４０】
ステップ５０３で、印刷ジョブ作成ＰＣ１０１の構成情報編集プログラム２１２（構成情報編集手段）が、ユーザーからの入力を受け付けて、ファイルサーバ５０２に格納されている印刷情報４０１のうち構成情報４０３の部分を編集する。構成情報４０３の編集は、構成情報作成処理で作成された構成情報４０３の一部を追加、削除、変更する処理であり、作成処理から自明であるので詳細は述べない。
【００４１】
ステップ５０４で、印刷オペレータＰＣ１０３の印刷設定プログラム（印刷設定手段）が、ユーザーからの入力を受け付けて、ファイルサーバ５０２に格納されている印刷情報４０１のうちＪＤＦ４０４の部分を作成する。印刷設定処理の詳細は図１７、図１８を用いて後述する。ステップ５０５で、印刷オペレータＰＣ１０３の印刷制御プログラム２１４（印刷制御手段）が、ユーザーからの入力を受け付けて、ファイルサーバ５０２に格納されている印刷情報４０１を用いて印刷の指示を行う。この印刷処理の詳細についてはステップ５１４〜５２２で後述する。ステップ５０６で処理が終了する。
【００４２】
図５（Ｂ）は、印刷ジョブ作成ＰＣ１０１の構成情報作成プログラム２１１が行う構成情報作成処理５０２の詳細を表すフローチャートである。ステップ５０７で、処理が開始される。
【００４３】
ステップ５０８で、構成情報作成プログラム２１１が、ルール作成手段として、ユーザーからの入力を受け付けて、構成情報４０３を作成するためのルールを作成する。ルールの作成方法については図６〜図１０を用いて後述する。ステップ５０９で、ステップ５０８で作成したルールを適用するために、構成情報作成プログラム２１１が印刷ジョブ作成ＰＣ１０１やファイルサーバ１０２に格納されているＰＤＦファイル（ＰＤＬデータ）の指定をユーザーから受け付ける。
【００４４】
ステップ５１０で、ルール適用手段として、構成情報作成プログラム２１１がステップ５０８で作成したルールをステップ５０９で指定されたＰＤＦファイルに適用し、構成情報４０３を作成する。ルール適用処理の詳細は図１５、図１６Ａ、図１６Ｂ、図１６Ｃを用いて後述する。ステップ５１１で、構成情報作成プログラム２１１が、ユーザーからの入力を受け付けて、ステップ５１０で作成した構成情報４０３にメタデータを設定する。メタデータ設定の詳細は図１１を用いて後述する。
【００４５】
ステップ５１２で、構成情報作成プログラム２１１が、ユーザーからの入力を受け付けて、ステップ５１０、ステップ５１１で作成・編集した構成情報４０３を印刷情報の一部としてファイルサーバ５０２に格納する。ステップ５１３で、処理が終了する。
【００４６】
図５（Ｃ）は、印刷オペレータＰＣ１０３の印刷制御プログラム２１４が行う印刷処理５０５の詳細を表わすフローチャートである。ステップ５１４で処理が開始される。
ステップ５１５で、印刷制御プログラム２１４が、ファイルサーバ１０２に格納されている印刷情報４０１のいずれかの指定をユーザーから受け付ける。ステップ５１６で、印刷制御プログラム２１４が、プリンタ指定手段として、印刷を行うプリンタの指定をユーザーから受け付ける。
【００４７】
ステップ５１７で、印刷制御プログラム２１４が、ステップ５１６で指定されたプリンタがＰＤＦ／ＶＴファイルを印刷可能かどうかを判定する。判定は、ステップ５１６で指定されたプリンタの能力をたとえばＪＭＦ（Ｊｏｂ  Ｍｅｓｓａｇｉｎｇ  Ｆｏｒｍａｔ）のような形式を用いて印刷制御プログラム２１４が問い合わせ、その能力を調べることで行う。あるいは、ネットワーク上で使用可能なすべてのプリンタの能力を印刷制御プログラム２１４がアクセス可能な場所にあらかじめ静的に格納しておき、ステップ５１６で指定されたプリンタの能力を印刷制御プログラム２１４がそれを読み込むことで行っても良い。プリンタがＰＤＦ／ＶＴファイルを印刷可能な場合は、ステップ５１８に進む。それ以外の場合はステップ５２０に進む。本実施形態では、ユーザーがＰＤＦ対応プリンタ１０４を指定した場合は、ステップ５２０に進む。ユーザーがＰＤＦ／ＶＴ対応プリンタ１０５を指定した場合は、ステップ５１８に進む。
【００４８】
ステップ５１８で、変換手段としての印刷制御プログラム２１４が、ステップ５１５で指定された印刷情報を変換してＰＤＦ／ＶＴファイルとＪＤＦファイルを作成する。ＰＤＦ／ＶＴへの変換処理の詳細は図１９Ａ、図１９Ｂを用いて後述する。ステップ５１９で、印刷制御プログラム２１４が、ステップ５１８で作成したＰＤＦ／ＶＴファイルとＪＤＦファイルを、ステップ５１６で指定されたプリンタに送信する。ステップ５２０で、変換手段としての印刷制御プログラム２１４が、ステップ５１５で指定された印刷情報を変換してＰＤＦファイルとＪＤＦファイルを作成する。ＰＤＦへの変換処理の詳細は、図２０Ａ、図２０Ｂを用いて後述する。ステップ５２１で、印刷制御プログラム２１４が、ステップ５２０で作成したＰＤＦファイルとＪＤＦファイルを、ステップ５１６で指定されたプリンタに送信する。ステップ５２２で、処理が終了する。
【００４９】
＜ルール作成画面＞
次に、図６〜図８を使用して、ステップ５０８でルール作成手段として使用するルール作成画面について説明する。前述したように、ここで作成するルールをＰＤＦファイルに適用することで構成情報４０３が作成される。
【００５０】
図６は、印刷ジョブ作成ＰＣ１０１の構成情報作成プログラム２１１がディスプレイ２０５に表示するルール作成画面の一例を示す図である。ルール作成画面６０１は、フォルダ作成ペイン６０２、開始条件指定ペイン６０７、終了条件指定ペイン６０９を含んでいる。
【００５１】
フォルダ作成ペイン６０２で、構成情報作成プログラム２１１がユーザーからの入力を受け付けて階層構造のフォルダを作成・編集し、その結果を階層表示する。ここで作成する階層構造が、構成情報４０３を作成する際の階層構造として使用される。ユーザーからの入力を受け付けて階層構造のフォルダを作成、移動、変更、削除する方法は、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）のエクスプローラー等で既知であるので詳細は述べない。６０３はフォルダ作成ペインで作成されたフォルダである。各フォルダには名前を指定することができる。フォルダの階層は、左から第一階層、第二階層…のように呼ぶ。図６のルール作成画面の場合、第一階層にＣｕｓｔｏｍｅｒフォルダ、第二階層にＬｅｔｔｅｒフォルダ、第三階層にＣｏｖｅｒＬｅｔｔｅｒフォルダとＢｒｏｃｈｕｒｅフォルダが作成されている。
【００５２】
チェックボックス６０４はフォルダが構成情報４０３で繰り返し使用されることをユーザーに指示させるために用いられる。図６のルール作成画面の場合、Ｃｕｓｔｏｍｅｒフォルダが繰り返しフォルダ（すなわち、繰り返し要素）であると指定されている。繰り返しフォルダは、ルールをＰＤＦファイルに適用すると、構成情報４０３の階層構造内で繰り返しルールとして繰り返し使用される。
【００５３】
ボタン６０５、６０６はフォルダの階層がレコードレベル（Ｒｅｃｏｒｄ  Ｌｅｖｅｌ；ＲＬ）であることをユーザーに指示させるために用いられる。ここで、レコードレベルについて説明する。ＶＤＰでは、ＶＤＰ文書テンプレートにデータソースの各行（レコード）を適用して印刷ジョブを生成する。したがって、ＶＤＰの印刷ジョブでは、１つのレコードを適用することによって生成されるページ群が、データソースの行数だけ繰り返される構造になっているのが一般的である。レコードレベルとは、この繰り返しが行なわれるフォルダ階層のことである。ボタン６０５はレコードレベルが有効である状態を示しており、そのフォルダの階層がレコードレベルであることを示す。ボタン６０６はレコードレベルが無効である状態を示しており、そのフォルダの階層がレコードレベルではないことを示す。フォルダ作成ペイン６０２で作成されたフォルダの階層においてレコードレベルであると指定可能なのは一つの階層のみである。また、その階層にはフォルダが一つだけ存在し、かつ、そのフォルダが繰り返しフォルダであると指定されていなければならない。図６のルール作成画面の場合、レコードレベルであると指定可能なのは第一階層のみである。ある階層がレコードレベルであると指定された場合、構成情報作成プログラム２１１は、その他の階層のボタンをすべて無効状態にする。
【００５４】
開始条件指定ペイン６０７で、構成情報作成プログラム２１１がユーザーの入力を受け付けて、フォルダ作成ペイン６０２で作成したフォルダのうち終端フォルダ（もっとも右の階層に位置するフォルダ）に対して開始条件を指定させる。ここで指定した開始条件は、ルールをＰＤＦファイルに適用する際に、ＰＤＦファイルのページをフォルダに割り振る際に使用される。なお、ドロップダウンリストボックス６０８は、個々の終端フォルダに対する開始条件をユーザーに指示させるために用いられる。
【００５５】
終了条件指定ペイン６０９で、構成情報作成プログラム２１１はユーザーの入力を受け付けて、フォルダペイン６０２で作成したフォルダのうち終端フォルダに対して終了条件を指定させる。ここで指定した終了条件は、ルールをＰＤＦファイルに適用する際に、ＰＤＦファイルのページをフォルダに割り振る際に使用される。ドロップダウンリストボックス６１０は、個々の終端フォルダに対する終了条件をユーザーに指示させるために用いられる。
【００５６】
連結線６１１は終了条件と開始条件の連結関係を示す。構成情報作成プログラム２１１は、フォルダペイン６０２で隣接する終端フォルダについては、先行する（図で上側に位置する）終端フォルダの終了条件と、後続の（図で下側に位置する）終端フォルダの開始条件を連結して表示する。図６のルール作成画面の場合、ＣｏｖｅｒＬｅｔｔｅｒフォルダの終了条件とＢｒｏｃｈｕｒｅフォルダの開始条件が連結されている。また、繰り返しフォルダが存在する場合、その繰り返しフォルダの下位にある終端フォルダのうち、最後の（図でもっとも下側に位置する）終端フォルダの終了条件と、先頭の（図でもっとも上側に位置する）終端フォルダの開始条件を連結して表示する。図６のルール作成画面の場合、Ｂｒｏｃｈｕｒｅフォルダの終了条件とＣｏｖｅｒＬｅｔｔｅｒフォルダの開始条件が連結されている。連結線には接続状態が無効である状態と有効である状態がある。図６のルール作成画面ではすべて無効状態である。後述のように開始条件または終了条件を指定することで連結線を有効化することができる。すべての連結線が有効化された場合、そのルールはＰＤＦファイルに適用可能となる。なお、６１２はルール作成内容を保存して終了するためのＯＫボタンである。６１３はルール作成内容を破棄して終了するためのキャンセルボタンである。
【００５７】
図７Ａ（ａ）は、ルール作成画面６０１において、ユーザーが開始条件ペイン６０７で指定可能な開始条件の一例を示す図である。開始条件指定ドロップダウンリストボックス６０８（図６）において、ＣｏｖｅｒＬｅｔｔｅｒフォルダに対して、「ページサイズ変化」が選択されている（７０１）。構成情報作成プログラム２１１は、この開始条件が指定されたフォルダがある場合、ルールをＰＤＦファイルに適用する際にＰＤＦファイルのページサイズの変化（例：Ａ４サイズ→Ａ３サイズ）をチェックする。そして、この開始条件が指定されたフォルダに対して、ＰＤＦファイルのページサイズが変わったページから割り振りを始める。
【００５８】
図７Ａ（ｂ）は、ルール作成画面６０１において、ユーザーが開始条件ペイン６０７で指定可能な開始条件の一例を示す図である。開始条件指定ドロップダウンリストボックス６０８（図６）において、ＣｏｖｅｒＬｅｔｔｅｒフォルダに対して「オブジェクト指定」が選択されている（７０２）。構成情報作成プログラム２１１は、この開始条件が指定されたフォルダがある場合、ルールをＰＤＦファイルに適用する際に、ＰＤＦファイルのページ内で指定されたオブジェクトが指定された位置に存在するかどうかをチェックする。そして、この開始条件が指定されたフォルダに対して、指定されたオブジェクトが指定された位置に存在するページから割り振りを始める。
【００５９】
図７Ｂは、図７Ａ（ｂ）で「オブジェクト指定」が選択された場合に構成情報作成プログラム２１１がディスプレイ２０５に表示するオブジェクト指定画面の一例を示す図である。オブジェクト指定画面７０３で、構成情報作成プログラム２１１は、ユーザーからの入力を受け付けて、オブジェクト指定で使用するＰＤＦファイルを指定させる。たとえば、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）であれば、デスクトップ画面やエクスプローラーからのドラッグ＆ドロップによってＰＤＦファイルを指定する方法がある。
【００６０】
ページ指定ペイン７０４で、構成情報作成プログラム２１１は、指定されたＰＤＦファイルに存在するページをすべて表示する。そして、構成情報作成プログラム２１１は、オブジェクトを選択するページをユーザーに選択させる。
オブジェクト指定ペイン７０５で、構成情報作成プログラム２１１は、ページ指定ペインで選択されたページの内容を表示する。そして、構成情報作成プログラム２１１は、そのページの表示を構成するオブジェクトのうち一つをユーザーに選択させる。構成情報作成プログラム２１１は、ここで選択されたオブジェクトの内容と位置を保持しておき、ルールをＰＤＦファイルに適用する際に使用する。なお、７０６は選択されたオブジェクトを示す。７０７はオブジェクト指定内容を保存して終了するためのＯＫボタンである。７０８はオブジェクト指定内容を破棄して終了するためのキャンセルボタンである。
【００６１】
図７Ｃ（ａ）は、ルール作成画面６０１において、ユーザーが終了条件ペイン６０９で指定可能な終了条件の一例を示す図である。終了条件指定ドロップダウンリストボックス６１０（図６）で、ＣｏｖｅｒＬｅｔｔｅｒフォルダに対して「ページ数指定」が選択され（７０９）、ページ数として「４」が入力されている（７１０）。構成情報作成プログラム２１１は、この終了条件が指定されたフォルダがある場合、ルールをＰＤＦファイルに適用する際にＰＤＦファイルのページ数をカウントする。そして、構成情報作成プログラム２１１は、この開始条件が指定されたフォルダに対して、ＰＤＦファイルのページの割り振りを開始した後、指定されたページ数（図７Ｃ（ａ）の例では４ページ）を割り振り終わると、そのフォルダへの割り振りを終了する。
【００６２】
図７Ｃ（ｂ）は、ルール作成画面６０１において、ユーザーが終了条件ペイン６０９で指定可能な終了条件の一例を示す図である。終了条件指定ドロップダウンリストボックス６１０で、ＣｏｖｅｒＬｅｔｔｅｒフォルダに対して、「オブジェクト指定」が選択されている（７１１）。構成情報作成プログラム２１１は、この開始条件が指定されたフォルダがある場合、ルールをＰＤＦファイルに適用する際に、ＰＤＦファイルのページ内で指定されたオブジェクトが指定された位置に存在するかどうかをチェックする。そして、構成情報作成プログラム２１１は、この終了条件が指定されたフォルダに対して、ＰＤＦファイルのページの割り振りを開始した後、指定されたオブジェクトが指定された位置に存在するページを割り振り終わると、そのフォルダへの割り振りを終了する。オブジェクトの指定方法は図７Ｂに示したものと同様である。
【００６３】
図８（Ａ）は、ルール作成画面６０１において、連結された終了条件と開始条件が有効状態になった一例を示す図である。フォルダ作成ペイン６０２では、ＣｏｖｅｒＬｅｔｔｅｒとＢｒｏｃｈｕｒｅという二つの終端フォルダが作成されている。終了条件指定ドロップダウンリストボックス６１０（図６）で、先行する終端フォルダであるＣｏｖｅｒＬｅｔｔｅｒフォルダに対して「ページ数指定」が選択され、ページ数として「４」が入力されている（８０１）。構成情報作成プログラム２１１がＣｏｖｅｒＬｅｔｔｅｒフォルダに対してＰＤＦファイルのページの割り振りを開始したのち、４ページを割り振り終わると、ＣｏｖｅｒＬｅｔｔｅｒフォルダへの割り振りを終了する。そして、後続の終端フォルダであるＢｒｏｃｈｕｒｅフォルダへの割り振りを開始する。つまり、先行する終端フォルダであるＣｏｖｅｒＬｅｔｔｅｒに有効な終了条件が指定されていれば、後続する終端フォルダであるＢｒｏｃｈｕｒｅには開始条件を指定する必要がない。このため、構成情報作成プログラム２１１は、両終端フォルダの連結線８０２を有効表示する。
【００６４】
図８（Ｂ）は、ルール作成画面６０１において、連結された終了条件と開始条件が有効状態になった一例を示す図である。フォルダ作成ペイン６０２では、ＣｏｖｅｒＬｅｔｔｅｒとＢｒｏｃｈｕｒｅという二つの終端フォルダが作成されている。後続の終端フォルダであるＢｒｏｃｈｕｒｅフォルダに対して、開始条件指定ドロップダウンリストボックス６０８で「オブジェクト指定」が選択されている（８０３）。構成情報作成プログラム２１１がＣｏｖｅｒＬｅｔｔｅｒフォルダに対してＰＤＦファイルのページの割り振りを開始した後、８０３で指定されたオブジェクトが指定された位置に存在するページを見つけると、Ｂｒｏｃｈｕｒｅフォルダへの割り振りを開始する。つまり、後続する終端フォルダであるＢｒｏｃｈｕｒｅに有効な開始条件が指定されていれば、先行する終端フォルダであるＣｏｖｅｒＬｅｔｔｅｒには終了条件を指定する必要がない。このため、構成情報作成プログラム２１１は、両終端フォルダの連結線８０４を有効表示する。
【００６５】
図８（Ｃ）は、ルール作成画面６０１において、連結された終了条件と開始条件が有効状態になった一例を示す図である。フォルダ作成ペイン６０２は図８（Ａ）、図８（Ｂ）と同様である。ＣｏｖｅｒＬｅｔｔｅｒフォルダの終了条件指定８０５は８０１と同様である。Ｂｒｏｃｈｕｒｅフォルダの開始条件指定８０６は８０３と同様である。
【００６６】
ＣｏｖｅｒＬｅｔｔｅｒフォルダの終了条件とＢｒｏｃｈｕｒｅフォルダの開始条件が指定されているので、両終端フォルダの連結線８０７が有効表示されている。ただし、この例では終了条件と開始条件がどちらも指定されているため、両条件が矛盾する可能性がある。このため、構成情報作成プログラム２１１はリンク条件の指定ポップアップメニュー８０８を表示して、ユーザーに連結線の動作を選択させる。選択可能な動作、すなわち状態遷移の条件となるものは「ＡＮＤ」「ＯＲ」「ＳＫＩＰ」の三種類である。ＡＮＤを選択した場合は、構成情報作成プログラム２１１は、両終端フォルダの条件が満たされれば後続する終端フォルダであるＢｒｏｃｈｕｒｅフォルダへの割り振りを開始する。「ＯＲ」を選択した場合は、構成情報作成プログラム２１１は、いずれかの終端フォルダの条件が満たされれば後続する終端フォルダであるＢｒｏｃｈｕｒｅフォルダへの割り振りを開始する。「ＳＫＩＰ」を選択した場合は、先行する終端フォルダであるＣｏｖｅｒＬｅｔｔｅｒフォルダの終了条件が満たされれば、構成情報作成プログラム２１１は、後続フォルダであるＢｒｏｃｈｕｒｅへの割り振りをスキップする。そして、Ｂｒｏｃｈｕｒｅに後続する終端フォルダへの割り振りを行うかどうかを判断する。リンク条件が指定されている場合の割り振り処理の詳細は図１６Ａ〜図１６Ｃを用いて後述する。
【００６７】
＜ルールの適用例＞
次に、図９〜図１０を使用して、構成情報作成プログラム２１１がステップ５１０のルール適用処理を行なって構成情報４０３を作成する様子を例を挙げて説明する。ここでは適用結果だけを示し、ルール適用処理の詳細は図１５、図１６Ａ〜図１６Ｃを用いて後述する。
【００６８】
図９ａは、ルール作成画面６０１において、ルールを作成した一例を示す図である。Ｃｕｓｔｏｍｅｒフォルダが繰り返しフォルダとして指定されている。Ｃｕｓｔｏｍｅｒフォルダの階層がレコードレベルであると指定されている。終端フォルダはＣｏｖｅｒＬｅｔｔｅｒフォルダとＢｒｏｃｈｕｒｅフォルダであり、この順で隣接している。ＣｏｖｅｒＬｅｔｔｅｒフォルダに対して、終了条件指定ドロップダウンリストボックス６１０で「ページ数指定」が選択され、ページ数として「１」が入力されている（９０１）。Ｂｒｏｃｈｕｒｅフォルダに対して、終了条件指定ドロップダウンリストボックス６１０で「ページ数指定」が選択され、ページ数として「３」が入力されている（９０２）。９０３はＣｏｖｅｒＬｅｔｔｅｒフォルダの終了条件とＢｒｏｃｈｕｒｅフォルダの開始条件との連結線である。連結線９０３は、先行する終端フォルダであるＣｏｖｅｒＬｅｔｔｅｒフォルダの終了条件が指定されているので、有効表示されている。
【００６９】
９０４はＢｒｏｃｈｕｒｅフォルダの終了条件とＣｏｖｅｒＬｅｔｔｅｒフォルダの開始条件との連結線である。Ｃｕｓｔｏｍｅｒフォルダが繰り返しフォルダとして指定されている。このため、その下位にある終端フォルダのうち、最後の終端フォルダであるＢｒｏｃｈｕｒｅフォルダの終了条件と、先頭の終端フォルダであるＣｏｖｅｒＬｅｔｔｅｒフォルダの開始条件が連結されている。連結線９０４は、先行する終端フォルダであるＢｒｏｃｈｕｒｅフォルダの終了条件が指定されているので、有効表示されている。
【００７０】
図９ｂは、入力するＰＤＦファイルの内容をサムネールで示した図である。ＰＤＦファイル９０５は、図９Ｂに示すように８ページで構成されている。
図９Ｃは、図９ＢのＰＤＦファイルに対して図９Ａで作成したルールを適用した結果、作成される構成情報の論理的な構造を概念的に説明するブロック図である。９０６は作成された構成情報である。９０７は構成情報９０６のルートノードである。ルートノードは常に「ＰＤＦＶＴ」という名前となる。９０８は図９Ａで第一階層がレコードレベルであると指定されているのに対応してルートノードに生成されたメタデータである。このメタデータの使い方については図１９Ａ、図１９Ｂを用いて後述する。
【００７１】
９０９〜９１６は、図９Ａのフォルダ作成ペイン６０２で作成したフォルダに対応して構成情報９０６に作成されたノードである。Ｃｕｓｔｏｍｅｒフォルダが繰り返しフォルダとして指定されていたため、Ｃｕｓｔｏｍｅｒノードが繰り返し作成されている。９１７は図９Ｂに示した入力ＰＤＦファイルである。９１８〜９２１はＰＤＦファイル９１７の各ページである。９２２〜９２５は、構成情報９０６の終端ノードからＰＤＦファイル９１７のページへのリンクである。図９Ａに示すように、作成したルールではＣｏｖｅｒＬｅｔｔｅｒに１ページ、Ｂｒｏｃｈｕｒｅフォルダに３ページの割り振りが指定されていた。このルールに従って、ノード９１１に最初の１ページ、ノード９１２に次の３ページ、ノード９１５に次の１ページ、ノード９１６に次の３ページがリンクされている。ＰＤＦファイルのページへのリンクは、前述のようにリンク先のページのページ番号を保持している。
【００７２】
図１０Ａは、ルール作成画面６０１において、ルールを作成した別の例を示す図である。
フォルダ作成ペインの内容は図９Ａと同様である。ＣｏｖｅｒＬｅｔｔｅｒフォルダに対して、開始条件指定ドロップダウンリストボックス６１０で「オブジェクト指定」が選択されている（１００１）。この時のオブジェクトとしては、オブジェクト指定画面７０３において、図１０Ｂに示すＰＤＦファイルのオブジェクト１００６または１００８が指定されているものとする。オブジェクト１００６とオブジェクト１００８は同じ内容で同じ位置に描画されるオブジェクトである。
【００７３】
また、Ｂｒｏｃｈｕｒｅフォルダに対して、開始条件指定ドロップダウンリストボックス６１０で「オブジェクト指定」が選択されている（１００２）。この時のオブジェクトとしては、オブジェクト指定画面７０３において、図１０Ｂに示すＰＤＦファイルのオブジェクト１００７または１００９が指定されているものとする。オブジェクト１００７とオブジェクト１００９は同じ内容で同じ位置に描画されるオブジェクトである。
【００７４】
１００３はＣｏｖｅｒＬｅｔｔｅｒフォルダの終了条件とＢｒｏｃｈｕｒｅフォルダの開始条件との連結線である。連結線１００３は、後続する終端フォルダであるＢｒｏｃｈｕｒｅフォルダの開始条件が指定されているので、有効表示されている。１００４はＢｒｏｃｈｕｒｅフォルダの終了条件とＣｏｖｅｒＬｅｔｔｅｒフォルダの開始条件との連結線である。Ｃｕｓｔｏｍｅｒフォルダが繰り返しフォルダとして指定されている。このため、その下位にある終端フォルダのうち、最後の終端フォルダであるＢｒｏｃｈｕｒｅフォルダの終了条件と、先頭の終端フォルダであるＣｏｖｅｒＬｅｔｔｅｒフォルダの開始条件が連結されている。連結線１００４は、後続する終端フォルダであるＣｏｖｅｒＬｅｔｔｅｒフォルダの開始条件が指定されているので、有効表示されている。
【００７５】
図１０Ｂは、入力するＰＤＦファイルの内容をサムネールで示した図である。ＰＤＦファイル１００５は、図に示すように８ページで構成されている。前述のように、１ページ目のオブジェクト１００６と５ページ目のオブジェクト１００８は同じ内容で同じ位置に描画されるオブジェクトである。また、４ページ目のオブジェクト１００７と８ページ目のオブジェクト１００９は同じ内容で同じ位置に描画されるオブジェクトである。
【００７６】
図１０Ｃは、図１０ＢのＰＤＦファイルに対して図１０ａで作成したルールを適用した結果、作成される構成情報の論理的な構造を概念的に説明するブロック図である。１０１０〜１０１３は図９Ｃと同様に作成されたノードである。１０１４〜１０１７は入力されたＰＤＦファイル１００５の各ページである。１０１８〜１０２１は、構成情報の終端ノードからＰＤＦファイルのページへのリンクである。図１０Ａに示すように、作成したルールでは、ＣｏｖｅｒＬｅｔｔｅｒに対して、オブジェクト１００６、１００８と同じ内容を同じ位置を持つページがあれば割り振りを開始するように指定していた。このルールに従って、ＣｏｖｅｒＬｅｔｔｅｒノード１０１０から、オブジェクト１００６を持つ１ページ目にリンク１０１８が作成されている。また、作成したルールでは、Ｂｒｏｃｈｕｒｅフォルダに対して、オブジェクト１００７、１００９と同じ内容を同じ位置に持つページがあれば割り振りを開始するようにしていた。このルールに従って、Ｂｒｏｃｈｕｒｅフォルダ１０１１から、オブジェクト１００７を持つ４ページ目にリンクが作成されている。リンク１０２１、１０２２についても同様である。ＰＤＦファイルのページへのリンクの保持方法については図１２、図１３を用いて後述する。
【００７７】
＜メタデータの設定＞
次に、図１１を使用して、ステップ５１１で構成情報４０３にメタデータを設定した様子を説明する。図１１は、図９Ｃの構成情報に対してメタデータを設定した一例を説明するブロック図である。
【００７８】
構成情報では任意のノードに任意のメタデータを設定することができる。本実施の形態では、メタデータはキーと値を「Ｋｅｙ＝Ｖａｌｕｅ」の形式で表現する。Ｃｕｓｔｏｍｅｒフォルダ１１０４にメタデータ１１２１「Ｎａｍｅ＝Ｊｏｎｅ  Ｄｏｅ」とメタデータ１１２２「Ｇｅｎｄｅｒ＝Ｍａｌｅ」が設定されている。Ｃｕｓｔｏｍｅｒフォルダ１１０８にメタデータ１１２３「Ｎａｍｅ＝Ｊａｎｅ  Ｄｏｅ」とメタデータ１１２４「Ｇｅｎｄｅｒ＝Ｆｅｍａｌｅ」が設定されている。ユーザーからの入力を受け付けてメタデータを作成、変更、削除する方法はＭｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）のプロパティ設定等で既知であるので詳細は述べない。
【００７９】
＜構成情報の内部表現＞
次に、図１２〜図１３を使用して、構成情報作成プログラム２１１が構成情報４０３をＲＡＭ２０２に保持する際のデータ構造について説明する。図１２は構成情報作成プログラム２１１が構成情報４０３をＲＡＭ２０２に保持する際に使用するデータ構造をＵＭＬ（Ｕｎｉｆｉｅｄ  Ｍｏｄｅｌｉｎｇ  Ｌａｎｇｕａｇｅ）を用いて表記したクラス図である。本発明の実施の形態では以下のような仮想的な基本データ型と文法構造を使用する。
【００８０】
基本データ型はｂｏｏｌｅａｎ、ｉｎｔｅｇｅｒ、ｓｔｒｉｎｇの三種類である。ｂｏｏｌｅａｎは真偽値型であり、値としてｔｒｕｅ（真）またはｆａｌｓｅ（偽）を格納する。ｉｎｔｅｇｅｒは整数型であり、値として任意の整数値を格納する。ｓｔｒｉｎｇは文字列型であり、値として任意長の文字列を格納する。文法構造は構造体、ポインタ、配列の三種類である。構造体、ポインタはＣ言語で使用可能なものと同等である。無効なポインタ値としては０を使用する。配列も表記法はＣ言語で使用可能なものと同等であるが、宣言時にサイズを指定する必要がなく、実行時に必要に応じてサイズが拡張あるいは縮小される。
【００８１】
１２０１はＤＰａｒｔノードの情報を格納するためのＤＰａｒｔ構造体である。ｐａｒｅｎｔ１２０２は親ＤＰａｒｔノードへの参照を格納するためのポインタである。ｎａｍｅ１２０３はＤＰａｒｔノードの名前を格納するための文字列である。ｉｓＬｅａｆ１２０４はＤＰａｒｔノードが終端ノードかどうかを格納するための真偽値である。ｃｈｉｌｄｒｅｎ１２０５は子ＤＰａｒｔノードへの参照を格納するためのポインタの配列である。ｐａｇｅ１２０６はリンク先のＰＤＦのページ番号を格納するための整数の配列である。構成情報４０３の定義により、ｉｓＬｅａｆ１２０４の値がｔｒｕｅの場合はｐａｇｅ１２０６を使用し、ｃｈｉｌｄｒｅｎ１２０５は使用しない。ｉｓＬｅａｆ１２０４の値がｆａｌｓｅの場合はｃｈｉｌｄｒｅｎ１２０５を使用し、ｐａｇｅ１２０６は使用しない。ｍｅｔａｄｅｔａ１２０７はＤＰＭ構造体１２０８への参照を格納するためのポインタの配列である。１２０８はＤＰＭメタデータの情報を格納するためのＤＰＭ構造体である。ｋｅｙ１２０９はメタデータのキーを格納するための文字列である。ｖａｌｕｅ１２１０はメタデータの値を格納するための文字列である。
【００８２】
本発明の実施形態では、上記のような仮想的なデータ型や文法構造を使用したが、本発明はこれに限定されるものではない。構成情報作成プログラム２１１を記述する言語で使用可能なデータ型や文法構造であれば任意のものが使用可能である。本発明の実施形態では、メタデータの値を文字列に限定しているが、本発明はこれに限定されるものではない。構成情報作成プログラム２１１を記述する言語で使用可能なデータ型や文法構造であれば任意のものが使用可能である。
【００８３】
図１３は、図１１に示した構成情報１１０１を図１２に示したデータ構造を用いて表現したインスタンス図である。
ＤＰａｒｔ構造体１２０１のインスタンス１３０１はノード１１０２に対応する。親ノードはないのでｐａｒｅｎｔ１２０２に無効なポインタ値として０を格納する。ｎａｍｅ１２０３はノード１１０２の名前である「ＰＤＦＶＴ」を格納する。ノード１１０２は終端ノードではないので、ｉｓＬｅａｆ１２０４はｆａｌｓｅを格納する。ノード１１０２は子ノードとして１１０４、１１０８を持つので、ｃｈｉｌｄｒｅｎ１２０５はそれぞれの子ノードに対応するインスタンスである１３０２へのポインタ（ｐ２）と１３０６へのポインタ（ｐ６）を格納する。ｐａｇｅ１２０６は使用しない。ノード１１０２はメタデータとして１１０３を持つので、ｍｅｔａｄａｔａ１２０７はメタデータ１１０３に対応するインスタンスである１３１０へのポインタ（ｐ９）を格納する。
【００８４】
ＤＰａｒｔ構造体１２０１のインスタンス１３０２はノード１１０４に対応する。親ノードは１１０２なので、ｐａｒｅｎｔ１２０２はノード１１０２に対応するインスタンスである１３０１へのポインタ（ｐ１）を格納する。ノード１１０４はメタデータとして１１２１、１１２２を持つので、ｍｅｔａｄａｔａ１２０７はそれぞれのメタデータに対応するインスタンスである１３１１へのポインタ（ｐ１０）と１３１２へのポインタ（ｐ１１）を格納する。
【００８５】
ＤＰａｒｔ構造体１２０１のインスタンス１３０４はノード１１０６に対応する。ノード１１０６は終端ノードなので、ｉｓＬｅａｆ１２０４はｔｒｕｅを格納する。ｃｈｉｌｄｒｅｎ２０５は使用しない。ノード１１０６はＰＤＦファイル１１１２の１ページ目である１１１３へリンクしているので、ｐａｇｅ１２０６にはページ番号として「１」を格納する。
【００８６】
ＤＰＭ構造体１２０８のインスタンス１３１０はメタデータ１１０３に対応する。メタデータ１１０３は「ＲｅｃｏｒｄＬｅｖｅｌ＝１」なので、ｋｅｙ１２０９に「ＲｅｃｏｒｄＬｅｖｅｌ」、ｖａｌｕｅ１２１０に「１」を格納する。他のインスタンス１３０３、１３０５〜１３０９、１３１１〜１３１４についても上記と同様である。
【００８７】
＜構成情報のＸＭＬ表現＞
次に図１４を使用して、構成情報作成プログラム２１１が構成情報４０３を外部記憶装置２０４に保持する際の記述方法について説明する。図１４は、構成情報作成プログラム２１１が図１３に示した構成情報を外部記憶装置２０４に保持する際の記述方法の一例を示す図である。
【００８８】
ここでは、構成情報４０３をＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）で表記している。これは、非特許文献２のＡｐｐｅｎｄｉｘ  Ｂ“ＸＭＬ  Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ  ｏｆ  ｔｈｅ  ｄｏｃｕｍｅｎｔ  ｐａｒｔ  ｈｉｅｒａｒｃｈｙ”で規定されている表記方法に従ったものである。図１３と図１４の構成要素は一対一に対応しており、図１３から図１４への変換方法は自明であるので詳しくは述べない。
【００８９】
本発明の実施の形態では、上記のようなＸＭＬ表記方法を使用したが、本発明はこれに限定されるものではない。構成情報を表現可能な表記方法であれば任意のものが使用可能である。
【００９０】
＜ルール適用処理＞
次に図１５〜図１６Ｃを使用して、構成情報作成プログラム２１１がステップ５１０のルール適用手段が構成情報４０３を作成する処理の詳細について説明する。ここでは処理内容の概要だけを説明し、実際のルールから構成情報を作成する例については後述する。
【００９１】
図１５（Ａ）は、構成情報作成プログラム２１１がルール作成画面６０１で作成したルールをＰＤＦファイルに適用する際の処理の詳細を示すフローチャートである。
ステップ１５０１で、構成情報作成プログラム２１１が処理を開始する。ステップ１５０２で、構成情報作成プログラム２１１は、ルール作成画面６０１のフォルダ作成ペイン６０２で作成したフォルダのうちルートフォルダを指すポインタを変数Ｐｆに格納する。ステップ１５０３で、構成情報作成プログラム２１１は、適用するＰＤＦファイルのうち１ページ目を指すポインタを変数Ｐｐに格納する。ステップ１５０４で、構成情報作成プログラム２１１は、Ｐｆが指すフォルダ（以降、単にＰｆフォルダと表記する）が終端フォルダかどうかを判定する。終端フォルダでない場合はステップ１５０５に進み、終端フォルダの場合はステップ１５０６に進む。
【００９２】
Ｐｆフォルダが終端フォルダでない場合、ステップ１５０５で、構成情報作成プログラム２１１はＰｆとＰｐを引数としてステップ１５０８から始まる「非終端ループ」処理を呼び出す。Ｐｆフォルダが終端フォルダの場合、ステップ１５０６で、構成情報作成プログラム２１１はＰｆとＰｐを引数として図１６Ａのステップ１６０１から始まる「終端ループ」処理を呼び出す。ステップ１５０７で、構成情報作成プログラム２１１は処理を終了する。
【００９３】
図１５（Ｂ）は、構成情報作成プログラム２１１が行う「非終端ループ」処理の詳細を示すフローチャートである。
ステップ１５０８で、構成情報作成プログラム２１１が「非終端ループ」処理を開始する。なお、引数のＰｆは処理対象のルールフォルダ、引数のＰｐは処理対象のＰＤＦファイルのページを表わす。ステップ１５０９で、構成情報作成プログラム２１１は、Ｐｆフォルダのうち、最初の子フォルダを指すポインタを変数Ｃｆに格納する。Ｐｆフォルダは非終端フォルダなので、子フォルダが少なくとも一つ存在する。ステップ１５１０で、構成情報作成プログラム２１１は、Ｃｆが指すフォルダ（以降、単にＣｆフォルダと表記する）が終端フォルダがどうかを判定する。終端フォルダでない場合はステップ１５１１に進み、終端フォルダの場合はステップ１５１２に進む。
【００９４】
Ｃｆフォルダが終端フォルダでない場合、ステップ１５１１で構成情報作成プログラム２１１はＰｆフォルダの子フォルダに対するループを開始する。ステップ１５１２で、構成情報作成プログラム２１１はＣｆとＰｐを引数としてステップ１５０８から始まる「非終端ループ」処理を呼び出す。ステップ１５１３で、構成情報作成プログラム２１１はＰｆフォルダの子フォルダのうち、Ｃｆフォルダの次の子フォルダをＣｆに格納する。ステップ１５１４で、ステップ１５１１から始まるループが終了する。すなわち、Ｐｆフォルダの子フォルダがまだ存在すれば、構成情報作成プログラム２１１はステップ１５１０に戻って処理を繰り返す。構成情報作成プログラム２１１がＰｆフォルダの子フォルダに対する処理をすべて終了すればステップ１５１５に進む。
【００９５】
Ｃｆフォルダが終端フォルダである場合、ステップ１５１５で、構成情報作成プログラム２１１はＣｆとＰｐを引数として図１６Ａのステップ１６０１から始まる「終端ループ」処理を呼び出す。ステップ１５１６で、構成情報作成プログラム２１１は「非終端ループ」を終了する。
【００９６】
図１６Ａ〜図１６Ｃは、構成情報作成プログラム２１１がルール作成画面６０１で作成したルールをＰＤＦファイルに適用する際に、終端フォルダに対してＰＤＦファイルのページを割り振る処理の詳細を示すフローチャートである。
ステップ１６０１で、構成情報作成プログラム２１１は処理を開始する。引数のＰｆは処理対象のルールフォルダ、引数のＰｐは処理対象のＰＤＦファイルのページを表す。ステップ１６０２で、構成情報作成プログラム２１１はＰｆフォルダに対応するノードを構成情報４０３に作成する。Ｐｆフォルダの祖先フォルダに対応するノードが構成情報４０３に存在しない場合は、構成情報作成プログラム２１１はそれも作成する。
【００９７】
ステップ１６０３で、ルール作成画面６０１の開始条件指定ペイン６０７・終了条件指定ペイン６０９において、構成情報作成プログラム２１１はＰｆフォルダの終了条件と連結されている開始条件を検索する。そして構成情報作成プログラム２１１は、その開始条件に対応するフォルダを指すポインタを変数Ｆｆに格納する。
【００９８】
ステップ１６０４で、構成情報作成プログラム２１１はＰｆフォルダに終了条件が設定されているかどうかを判定する。Ｐｆフォルダに終了条件が設定されていなければステップ１６０５に進む。終了条件が設定されていればステップ１６０６に進む。
【００９９】
Ｐｆフォルダに終了条件が設定されていない場合、ステップ１６０５で、構成情報作成プログラム２１１はＦｆフォルダの開始条件を満たしているかどうかを判定する。前述のように、ルールのすべての連結線が有効状態になった場合にそのルールがＰＤＦファイルに適用可能となるため、Ｐｆフォルダに終了条件が設定されていない場合は、Ｆｆが指すフォルダ（以降、単にＦｆフォルダと表記する）に開始条件が設定されている。Ｆｆフォルダの開始条件を満たしていない場合は、Ｐｆフォルダでの割り振り処理が継続することになる。その場合は、ステップ１６１９に進んで、構成情報作成プログラム２１１はＰｐが指すＰＤＦファイルのページ（以降、単にＰｐページと表記する）をＰｆフォルダに割り振る処理を行う。Ｆｆフォルダの開始条件を満たしている場合は、Ｐｆフォルダでの割り振り処理が終了することになる。その場合は、処理はステップ１６２３に進んで、構成情報作成プログラム２１１はＦｆフォルダに対する割り振り処理を開始する。
【０１００】
Ｐｆフォルダに終了条件が設定されている場合、ステップ１６０６で構成情報作成プログラム２１１はＦｆフォルダに開始条件が設定されているかどうかを判定する。Ｆｆフォルダに開始条件が設定されていなければステップ１６０７に進む。終了条件が設定されていればステップ１６０８に進む。
【０１０１】
Ｐｆフォルダに終了条件が設定されており、Ｆｆフォルダに終了条件が設定されていない場合、ステップ１６０７で構成情報作成プログラム２１１はＰｆフォルダの終了条件を満たしているかどうかを判定する。Ｐｆフォルダの終了条件を満たしていない場合は、Ｐｆフォルダでの割り振り処理が継続することになる。その場合は、処理はステップ１６１９に進んで、構成情報作成プログラム２１１はＰｐページをＰｆフォルダに割り振る処理を行う。Ｐｆフォルダの終了条件を満たしている場合は、Ｐｆフォルダでの割り振り処理が終了することになる。その場合は、処理はステップ１６２３に進んで、構成情報作成プログラム２１１はＦｆフォルダに対する割り振り処理を開始する。
【０１０２】
Ｐｆフォルダに終了条件が設定されており、Ｆｆフォルダに開始条件が設定されている場合、ステップ１６０８で構成情報作成プログラム２１１は両終端フォルダに設定されているリンク条件を判定する。前述のように、両終端フォルダの条件が設定されている場合は、リンク条件の指定ポップアップメニュー８０８を表示して、ユーザーに連結線の動作を選択させている。リンク条件が「ＡＮＤ」の場合はステップ１６０９に進む。リンク条件が「ＯＲ」の場合はステップ１６１１に進む。リンク条件が「ＳＫＩＰ」の場合はステップ１６１３に進む。
【０１０３】
ステップ１６０９、ステップ１６１０は、ＰｆフォルダとＦｆフォルダのリンク条件が「ＡＮＤ」の場合の処理である。前述のように、この場合は両終端フォルダの条件が満たされれば構成情報作成プログラム２１１はＦｆフォルダに対する割り振り処理を開始する。このため、ステップ１６０９で構成情報作成プログラム２１１はＰｆフォルダの終了条件を満たしているかどうかを判定し、ステップ１６１０でＦｆフォルダの開始条件を満たしているかどうかを判定する。いずれかの条件が満たされていない場合は、ステップ１６１９に進んで、構成情報作成プログラム２１１はＰｐページをＰｆフォルダに割り振る処理を行う。両方の条件を満たしている場合は、ステップ１６２３に進んで構成情報作成プログラム２１１はＦｆフォルダに対する割り振り処理を開始する。
【０１０４】
ステップ１６１１、ステップ１６１２は、ＰｆフォルダとＦｆフォルダのリンク条件が「ＯＲ」の場合の処理である。前述のように、この場合はいずれかの終端フォルダの条件が満たされれば構成情報作成プログラム２１１はＦｆフォルダに対する割り振り処理を開始する。このため、ステップ１６１１で構成情報作成プログラム２１１はＰｆフォルダの終了条件を満たしているかどうかを判定し、ステップ１６１２でＦｆフォルダの開始条件を満たしているかどうかを判定する。両方の条件が満たされていない場合は、ステップ１６１９に進んで、構成情報作成プログラム２１１はＰｐページをＰｆフォルダに割り振る処理を行う。いずれかの条件を満たしている場合は、ステップ１６２３に進んで構成情報作成プログラム２１１はＦｆフォルダに対する割り振り処理を開始する。
【０１０５】
ステップ１６１１、ステップ１６１２は、ＰｆフォルダとＦｆフォルダのリンク条件が「ＳＫＩＰ」の場合の処理である。前述のように、この場合はＰｆフォルダの終了条件が満たされればＦｆフォルダに対する割り振り処理をスキップする。このため、ステップ１６１３で構成情報作成プログラム２１１はＰｆフォルダの終了条件を満たしているかどうかを判定する。Ｐｆフォルダの終了条件が満たされていない場合は、ステップ１６１９に進んで、構成情報作成プログラム２１１はＰｐページをＰｆフォルダに割り振る処理を行う。Ｐｆフォルダの終了条件を満たしている場合は、ステップ１６１４に進んで構成情報作成プログラム２１１はＦｆフォルダに対するスキップ処理を行う。
【０１０６】
図１６Ｂに進んで、ステップ１６１４は、ＰｆフォルダとＦｆフォルダのリンク条件が「ＳＫＩＰ」で、Ｐｆフォルダの終了条件を満たしており、Ｆｆフォルダに対するスキップを行う場合の処理である。まず、構成情報作成プログラム２１１は現在のＦｆフォルダを指すポインタを変数Ｐｆに格納する。そして、ルール作成画面６０１の開始条件指定ペイン６０７・終了条件指定ペイン６０９において、構成情報作成プログラム２１１はＰｆフォルダの終了条件と連結されている開始条件を検索し、その開始条件に対応するフォルダを指すポインタを変数Ｆｆに格納する。
【０１０７】
ステップ１６１５で、構成情報作成プログラム２１１はＦｆフォルダに開始条件が設定されているかどうかを判定する。開始条件が設定されていない場合は、ステップ１６２３に進んで構成情報作成プログラム２１１はＦｆフォルダに対する割り振り処理を開始する。開始条件が設定されている場合はステップ１６１６に進む。
【０１０８】
ステップ１６１６で、構成情報作成プログラム２１１は、スキップ対象のＰｆフォルダと、現在割り振りを行なおうとしているＦｆフォルダに、リンク条件が設定されているかどうかを判定する。リンク条件が設定されていない場合はステップ１６１７に進む。リンク条件が設定されている場合はステップ１６１８に進む。
【０１０９】
ステップ１６１７は、Ｆｆフォルダに開始条件が設定されており、ＰｆフォルダとＦｆフォルダにリンク条件が設定されていない場合の処理である。構成情報作成プログラム２１１はＦｆフォルダの開始条件を満たしているかどうかを判定し、満たしている場合はステップ１６２３に進んでＦｆフォルダに対する割り振り処理を開始する。Ｆｆフォルダの開始条件を満たしていない場合は、ルール作成画面６０１で作成したルールが適用中のＰＤＦファイルと合致していないことになるので、ステップ１６２４に進んで構成情報作成プログラム２１１は割り振りエラー処理を行う。
【０１１０】
ステップ１６１８で、ＰｆフォルダとＦｆフォルダにリンク条件が設定されている場合に、構成情報作成プログラム２１１がそのリンク条件を判定する。ここでは、スキップ対象のＰｆフォルダの終了条件は満たしていると仮定する。リンク条件が「ＡＮＤ」の場合は、Ｆｆフォルダの開始条件を満たしているかどうかだけを判定するためにステップ１６１７に進む。リンク条件が「ＯＲ」の場合は、ステップ１６２３に進んで、構成情報作成プログラム２１１はＦｆフォルダに対する割り振り処理を開始する。リンク条件が「ＳＫＩＰ」の場合は、ステップ１６１４に進んで、構成情報作成プログラム２１１はＦｆフォルダに対するスキップ処理を行う。
【０１１１】
図１６Ｃに進んで、ステップ１６２０で、構成情報作成プログラム２１１はＰｆフォルダにＰｐページを割り振る。ステップ１６２１で、構成情報作成プログラム２１１はＰｐページがＰＤＦファイルで最後のページかどうかを判定する。最後のページでない場合はステップ１６２２に進んで、構成情報作成プログラム２１１は割り振り処理を継続する。最後のページの場合はステップ１６２６に進んで、構成情報作成プログラム２１１は割り振り処理を終了する。ステップ１６２２で、次のページの割り振り処理を行うために、構成情報作成プログラム２１１はＰｐページの次のページを指すポインタを変数Ｐｐに格納する。ステップ１６２２で、構成情報作成プログラム２１１はステップ１６０１から始まる「終端ループ」処理を呼び出して、Ｐｆフォルダに対するＰｐページの割り振り処理を行う。ステップ１６２３で、構成情報作成プログラム２１１はステップ１６０１から始まる「終端ループ」処理を呼び出して、Ｆｆフォルダに対するＰｐページの割り振り処理を行う。一方、ステップ１６２５で、構成情報作成プログラム２１１は割り振りエラーを見つけた場合のエラー処理を行う。ステップ１６２５で、構成情報作成プログラム２１１は処理を終了処理する。
【０１１２】
＜ルール適用処理の例＞
次に、図１５〜図１６Ｃで説明したフローチャートを使用して、図９Ａ、図９Ｂで説明したルールとＰＤＦファイルから図９Ｃで説明した構成情報９０６が生成される様子を説明する。
【０１１３】
ステップ１５０２で、ＰｆフォルダはＣｕｓｔｏｍｅｒフォルダとなる。ステップ１５０３で、Ｐｐページは１ページ目となる。ステップ１５０４で、Ｃｕｓｔｏｍｅｒフォルダは終端フォルダではないため、構成情報作成プログラム２１１はステップ１５０５からステップ１５０８を呼び出す。ステップ１５０９で、ＣｆフォルダはＬｅｔｔｅｒフォルダとなる。ステップ１５１０で、Ｌｅｔｔｅｒフォルダは終端フォルダではないため、構成情報作成プログラム２１１はステップ１５１２からステップ１５０８を呼び出す。
【０１１４】
ステップ１５０９で、ＣｆフォルダはＣｏｖｅｒＬｅｔｔｅｒフォルダとなる。ステップ１５１０で、ＣｏｖｅｒＬｅｔｔｅｒフォルダは終端フォルダのため、構成情報作成プログラム２１１はステップ１５１５からステップ１６０１を呼び出す。ステップ１６０１で、ＰｆフォルダはＣｏｖｅｒＬｅｔｔｅｒフォルダとなり、Ｐｐページは１ページ目である。
【０１１５】
ステップ１６０２で、構成情報作成プログラム２１１はＰｆフォルダに相当するＣｏｖｅｒＬｅｔｔｅｒノード９１１を構成情報９０６に作成する。この時点で親ノードが作成されていなかったため、構成情報作成プログラム２１１はＰＤＦＶＴノード９０７、Ｃｕｓｔｏｍｅｒノード９０９、Ｌｅｔｔｅｒノード９１０も同時に作成する。図９Ａのルール作成画面で第一階層がレコードレベルであると指定されているため、構成情報作成プログラム２１１はＰＤＦＶＴノード９０７の作成時にＲｅｃｏｒｄＬｅｖｅｌ＝１というメタデータ９０８を作成する。
【０１１６】
ステップ１６０３で、ＦｆフォルダはＢｒｏｃｈｕｒｅフォルダとなる。Ｐｆフォルダに終了条件があり、Ｆｆフォルダに開始条件がないため、ステップ１６０７に進む。ステップ１６０７で、Ｐｆフォルダには構成情報作成プログラム２１１がまだＰＤＦページの割り振りを行なっていないため、Ｐｆフォルダの終了条件を満たさず、ステップ１６１９に進む。
【０１１７】
ステップ１６１９で、構成情報作成プログラム２１１はＰｆフォルダに相当するＣｏｖｅｒＬｅｔｔｅｒノード９１１にＰｐページである１ページ目９１８を割り当て、リンク９２２を作成する。ステップ１６２０〜１６２１でＰｐページが２ページ目となり、構成情報作成プログラム２１１はステップ１６２２からステップ１６０１を呼び出す。
【０１１８】
ステップ１６０１で、ＰｆフォルダはＣｏｖｅｒＬｅｔｔｅｒフォルダであり、Ｐｐページは２ページ目である。この時点でＰｆフォルダに相当するＣｏｖｅｒＬｅｔｔｅｒノード９１１は作成済みのため、ステップ１６０２では何も行なわれない。ステップ１６０３で、ＦｆフォルダはＢｒｏｃｈｕｒｅフォルダとなる。Ｐｆフォルダに終了条件があり、Ｆｆフォルダに開始条件がないため、ステップ１６０７に進む。ステップ１６０７で、すでにＰＤＦページの割り振りを１ページ行なっているため、Ｐｆフォルダの終了条件を満たし、ステップ１６２３からステップ１６０１を呼び出す。
【０１１９】
ステップ１６０１で、ＰｆフォルダはＢｒｏｃｈｕｒｅフォルダ、Ｐｐページは２ページ目である。ステップ１６０２で、構成情報作成プログラム２１１はＰｆフォルダに相当するＢｒｏｃｈｕｒｅノード９１２を構成情報９０６に作成する。ステップ１６０３で、ＦｆフォルダはＣｏｖｅｒＬｅｔｔｅｒフォルダとなる。Ｐｆフォルダに終了条件があり、Ｆｆフォルダに開始条件がないため、ステップ１６０７に進む。
【０１２０】
ステップ１６０７で、ＰｆフォルダにはまだＰＤＦページの割り振りを行なっていないため、Ｐｆフォルダの終了条件を満たさず、ステップ１６１９に進む。ステップ１６１９で構成情報作成プログラム２１１はＰｆフォルダに相当するＢｒｏｃｈｕｒｅノード９１２にＰｐページである２ページ目（９１９の１ページ目）を割り当て、リンク９２３を作成する。
【０１２１】
ステップ１６２０〜１６２１でＰｐページが３ページ目となり、ステップ１６２２からステップ１６０１を呼び出す。ステップ１６０１で、ＰｆフォルダはＢｒｏｃｈｕｒｅフォルダ、Ｐｐページは３ページ目である。この時点でＰｆフォルダに相当するＢｒｏｃｈｕｒｅノード９１２は作成済みのため、ステップ１６０２では何も行なわれない。ステップ１６０３で、ＦｆフォルダはＣｏｖｅｒＬｅｔｔｅｒフォルダとなる。Ｐｆフォルダに終了条件があり、Ｆｆフォルダに開始条件がないため、ステップ１６０７に進む。
【０１２２】
ステップ１６０７で、Ｐｆフォルダにはまだ１ページしかＰＤＦページの割り振りを行なっていないため、Ｐｆフォルダの終了条件を満たさず、ステップ１６１９に進む。ステップ１６１９で構成情報作成プログラム２１１はＰｆフォルダに相当するＢｒｏｃｈｕｒｅノード９１２にＰｐページである３ページ目（９１９の２ページ目）を割り当てる。
【０１２３】
ステップ１６２０〜１６２１でＰｐページが４ページ目となり、ステップ１６２２からステップ１６０１を呼び出す。ステップ１６０２、１６０２、１６０３、１６０４、１６０６は上記Ｐｐページが３ページ目の処理と同様である。ステップ１６０７で、すでにＰｆフォルダに割り振りを３ページ行なっているため、Ｐｆフォルダの終了条件を満たし、ステップ１６２３からステップ１６０１を呼び出す。
【０１２４】
ステップ１６０１で、ＰｆフォルダはＣｏｖｅｒＬｅｔｔｅｒフォルダであり、Ｐｐページは５ページ目である。ステップ１６０２で、Ｐｆフォルダに相当するＣｏｖｅｒＬｅｔｔｅｒノード９１５を構成情報９０６に作成する。この時点で親ノードが作成されていなかったため、構成情報作成プログラム２１１はＣｕｓｔｏｍｅｒノード９１３、Ｌｅｔｔｅｒノード９１４も同時に作成する。ステップ１６０３、１６０４、１６０７は上記Ｐｐページが１ページ目の処理と同様である。
【０１２５】
ステップ１６１９で、構成情報作成プログラム２１１はＰｆフォルダに相当するＣｏｖｅｒＬｅｔｔｅｒノード９１５にＰｐページである５ページ目９２０を割り当て、リンク９２４を作成する。ステップ１６２０〜１６２１でＰｐページが６ページ目となり、ステップ１６２２からステップ１６０１を呼び出す。
【０１２６】
ステップ１６０１で、ＰｆフォルダはＣｏｖｅｒＬｅｔｔｅｒフォルダであり、Ｐｐページは６ページ目である。ステップ１６０２、１６０３、１６０４、１６０６は上記Ｐｐページが２ページ目の処理と同様である。
【０１２７】
ステップ１６０７で、すでにＰＤＦページの割り振りを１ページ行なっているため、Ｐｆフォルダの終了条件を満たし、ステップ１６２３からステップ１６０１を呼び出す。
ステップ１６０１で、ＰｆフォルダはＢｒｏｃｈｕｒｅフォルダ、Ｐｐページは６ページ目である。ステップ１６０２で、構成情報作成プログラム２１１はＰｆフォルダに相当するＢｒｏｃｈｕｒｅノード９１６を構成情報９０６に作成する。ステップ１６０３、１６０４、１６０６、１６０７は上記Ｐｐページが２ページ目の処理と同様である。
【０１２８】
ステップ１６１９で、構成情報作成プログラム２１１はＰｆフォルダに相当するＢｒｏｃｈｕｒｅノード９１６にＰｐページである６ページ目（９２１の１ページ目）を割り当て、リンク９２５を作成する。以降、７ページ目と８ページ目も上記３ページ目と４ページ目と同様に作成する。最後に、ステップ１６２０でＰｐが８ページ目の時に最後のページと判定され、ステップ１６２５に進んで処理を終了する。
【０１２９】
＜印刷情報の設定＞
次に、図１７〜図１８を使用して、ステップ５１５で構成情報４０３を参照する印刷設定４０４を印刷設定プログラム２１３が印刷情報４０１に追加した様子を説明する。図１７は、図１１の構成情報に対して印刷設定を追加した一例を説明するブロック図である。
【０１３０】
本発明の実施の形態では印刷設定のジョブチケット形式としてＪＤＦ（ワークフロー用の工程指示ファイルフォーマット）を使用している。しかし、ＪＤＦの記述方式は複雑であり、またその記述方式は既知であるため、図１１では説明の煩雑さを避けるために印刷設定の内容を自然言語で表現している。
【０１３１】
ＪＤＦ１７２５で、「ＰＤＦＶＴ￥Ｃｕｓｔｏｍｅｒ￥Ｌｅｔｔｅｒ￥ＣｏｖｅｒＬｅｔｔｅｒ直下のページはＡ４コート紙カラーで印刷」という印刷設定が行なわれている。このため、ＣｏｖｅｒＬｅｔｔｅｒノード１７０６がリンクしているページ１７１３と、ＣｏｖｅｒＬｅｔｔｅｒノード１７１０がリンクしているページ１７１５はＡ４コート紙カラーで印刷される。
【０１３２】
ＪＤＦ１７２５で、「ＰＤＦＶＴ￥Ｃｕｓｔｏｍｅｒ￥Ｌｅｔｔｅｒ￥Ｂｒｏｃｈｕｒｅ直下のページはＡ４上質紙モノクロで印刷」という印刷設定が行なわれている。このため、Ｂｒｏｃｈｕｒｅノード１７０７がリンクしているページ１７１４と、Ｂｒｏｃｈｕｒｅノード１７１１がリンクしているページ１７１６はＡ４上質紙モノクロで印刷される。
【０１３３】
ＪＤＦ１７２５で、「ＰＤＦＶＴ￥Ｃｕｓｔｏｍｅｒ単位で封入封緘」という印刷設定が行なわれている。このため、Ｃｕｓｔｏｍｅｒノード１７０４の下位ノードがリンクしているページ１７１３、１７１４と、Ｃｕｓｔｏｍｅｒノード１７０８の下位ノードがリンクしているページ１７１５、１７１６は別々に封入封緘される。
【０１３４】
ＪＤＦ１７２５で、「封入封緘の際の封筒は、ＰＤＦＶＴ￥ＣｕｓｔｏｍｅｒのメタデータＧｅｎｄｅｒがＭａｌｅなら青い封筒、Ｆｅｍａｌｅならピンクの封筒を使用」という印刷設定が行なわれている。このため、Ｃｕｓｔｏｍｅｒノード１７０４の下位ノードがリンクしているページ１７１３、１７１４には青い封筒が使用される。Ｃｕｓｔｏｍｅｒノード１７０８の下位ノードがリンクしているページ１７１５、１７１６にはピンクの封筒が使用される。
【０１３５】
図１８は、印刷設定プログラム２１３が別の構成情報に対して印刷設定を追加した一例を説明するブロック図である。
この構成情報１８０２では、Ｉｇｎｏｒｅノード１８０３、１８０４が追加されており、ＰＤＦファイル１８０５の４ページ目１８０６と８ページ目１８０７をそれぞれリンクしている。ＪＤＦ１８０１で、「ＰＤＦＶＴ￥Ｃｕｓｔｏｍｅｒ￥Ｌｅｔｔｅｒ￥Ｉｇｎｏｒｅ直下のページは印刷しない」という印刷設定が行なわれている。このため、Ｉｇｎｏｒｅノード１８０３がリンクしているページ１８０６と、Ｉｇｎｏｒｅノード１８０４がリンクしているページ１８０７は印刷されない。
【０１３６】
このように、本実施形態によれば、個々のＰＤＦファイル４０２のページに依存せず、構成情報４０３のノードとメタデータを参照して印刷設定４０４を記述した印刷情報４０１を作成することができる。ユーザーからの入力を受け付けて印刷設定を作成する方法は既知であるので詳細は述べない。
【０１３７】
＜ＰＤＦ／ＶＴへの変換処理＞
次に、図１９Ａ、図１９Ｂを使用して、ステップ５１８で印刷情報をＰＤＦ／ＶＴファイルとＪＤＦファイルに変換する処理の詳細を説明する。図１９Ａは、構成情報作成プログラム２１１が印刷情報４０１をＰＤＦ／ＶＴファイルとＪＤＦファイルに変換する処理の詳細を示すフローチャートである。図１９Ｂは、図１７に示した印刷情報から変換したＰＤＦ／ＶＴファイルとＪＤＦファイルを説明するブロック図である。
【０１３８】
ステップ１９０１で、構成情報作成プログラム２１１が処理を開始する。ステップ１９０２で、構成情報作成プログラム２１１は印刷情報４０１のＰＤＦファイル４０２からＰＤＦ／ＶＴファイルのひな型を作成する。図１９Ｂの例では、ＰＤＦファイル１７１２を使用して、Ｃａｔａｌｏｇ辞書、Ｐａｇｅ  Ｔｒｅｅ、Ｐａｇｅオブジェクトを含むＰＤＦ／ＶＴファイル１９０９を作成する。
【０１３９】
ステップ１９０３で、構成情報作成プログラム２１１は、ステップ１９０２で作成したＰＤＦ／ＶＴファイルにＤＰａｒｔＲｏｏｔ辞書３０５を作成する。この時、構成情報作成プログラム２１１は、構成情報４０３のルートノードに付加したＲｅｃｏｒｄＬｅｖｅｌメタデータを参照して、ＤＰａｒｔＲｏｏｔ辞書３０５のＲｅｃｏｒｄＬｅｖｅｌプロパティを設定する。図２０の例では、ＤＰａｒｔＲｏｏｔ辞書１９１０を作成する。この時、構成情報１７０１のルートノード１７０２にはＲｅｃｏｒｄＬｅｖｅｌメタデータ１７０３の値として「１」が設定されている。これを参照して、ＤＰａｒｔＲｏｏｔ辞書１９１０のＲｅｃｏｒｄＬｅｖｅｌプロパティ１９１１を作成し、値として「１」を設定する。
【０１４０】
ステップ１９０４で、構成情報作成プログラム２１１は、構成情報４０３を参照してステップ１９０３で更新したＰＤＦ／ＶＴファイルにＤＰａｒｔ階層構造を作成する。図１９Ｂの例では、構成情報作成プログラム２１１はＰＤＦＶＴノード１７０２からＤＰａｒｔ１９１２を作成する。同様に、Ｃｕｓｔｏｍｅｒノード１７０４、１７０８からＤＰａｒｔ１９１３、１９１７がそれぞれ作成される。同様に、Ｌｅｔｔｅｒノード１７０５、１７０９からＤＰａｒｔ１９１４、１９１８がそれぞれ作成される。同様に、ＣｏｖｅｒＬｅｔｔｅｒノード１７０６、１７１０からＤＰａｒｔ１９１５、１９１９がそれぞれ作成される。同様に、Ｂｒｏｃｈｕｒｅノード１７０７、１７１１からＤＰａｒｔ１９１６、１９２０がそれぞれ作成される。同様に、メタデータ１７２１、１７２２からＤＰＭ１９２１、１９２２がそれぞれ作成される。同様に、メタデータ１７２３、１７２４からＤＰＭ１９２３、１９２４がそれぞれ作成される。
【０１４１】
ステップ１９０５で、構成情報作成プログラム２１１は構成情報４０３を参照して、ステップ１９０４で更新したＰＤＦ／ＶＴファイルのＤＰａｒｔ階層構造から、ステップ１９０２で作成したＰａｇｅオブジェクトへの参照を作成する。前述したように、構成情報４０３の終端ノードはＰＤＦファイル４０２のページ番号を保持しているが、ＰＤＦ／ＶＴのＤＰａｒｔ終端ノードはＰａｇｅオブジェクトへの参照を保持するので、この変換を行う。図１９Ｂの例では、リンク１７１７からＰａｇｅオブジェクトへの参照１９２５が作成される。同様に、リンク１７１８、１７１９、１７２０から、Ｐａｇｅオブジェクトへの参照１９２６、１９２７、１９２８がそれぞれ作成される。
【０１４２】
ステップ１９０６で、構成情報作成プログラム２１１は、印刷情報４０１のＪＤＦファイル４０４から、ステップ１９０２〜１９０６で作成したＰＤＦ／ＶＴファイルを参照するＪＤＦファイルを作成する。図１９Ｂの例では、ＪＤＦファイル１７１５からＪＤＦファイル１９０８が作成される。印刷設定の内容は同じである。ステップ１９０７で、構成情報作成プログラム２１１は処理を終了する。
【０１４３】
＜ＰＤＦへの変換処理＞
次に、図２０Ａ、図２０Ｂを使用して、ステップ５２０で印刷情報をＰＤＦファイルとＪＤＦファイルに変換する処理の詳細を説明する。図２０Ａは、構成情報作成プログラム２１１が印刷情報４０１をＰＤＦファイルとＪＤＦファイルに変換する処理の詳細を示すフローチャートである。図２０Ｂは、図１７に示した印刷情報から変換したＰＤＦファイルとＪＤＦファイルを説明するブロック図である。
【０１４４】
ステップ２００１で、構成情報作成プログラム２１１が処理を開始する。ステップ２００２で、構成情報作成プログラム２１１は印刷情報４０１のＰＤＦファイル４０２をそのまま使用したＰＤＦファイルを作成する。図２０Ｂの例では、構成情報作成プログラム２１１はＰＤＦファイル１７１２を使用してＰＤＦファイル２００６を作成する。両ＰＤＦファイルの内容は同じである。
【０１４５】
ステップ２００３で、構成情報作成プログラム２１１は印刷情報４０１のＪＤＦファイル４０４から、ステップ２００２で作成したＰＤＦファイルを参照するＪＤＦファイルを作成する。ＰＤＦファイルは構造化されていないため、階層構造やメタデータを使用した印刷設定は使用できない。このため、ＰＤＦファイルのページ番号を参照した印刷設定に変換する。
【０１４６】
ＪＤＦファイル１７２５では、「ＰＤＦＶＴ￥Ｃｕｓｔｏｍｅｒ￥Ｌｅｔｔｅｒ￥ＣｏｖｅｒＬｅｔｔｅｒ直下のページはＡ４コート紙カラーで印刷」という印刷設定が行なわれている。このため、前述のように、ページ１７１３とページ１７１５がＡ４コート紙カラーで印刷される。図２０の例では、ページ１７１３とページ１７１５にそれぞれ対応するページ番号１と５を使用し、「１ページと５ページはＡ４コート紙カラーで印刷」という印刷設定に変換している。
【０１４７】
また、ＪＤＦファイル１７２５では、「ＰＤＦＶＴ￥Ｃｕｓｔｏｍｅｒ￥Ｌｅｔｔｅｒ￥Ｂｒｏｃｈｕｒｅ直下のページはＡ４上質紙モノクロで印刷」という印刷設定が行なわれている。このため、前述のように、ページ１７１４とページ１７１６がＡ４上質紙モノクロで印刷される。図２０の例では、ページ１７１４とページ１７１６にそれぞれ対応するページ番号２―４、６−８を使用し、「２−４ページと６−８ページはＡ４上質紙モノクロで印刷」という印刷設定に変換している。
【０１４８】
また、ＪＤＦファイル１７２５では、「ＰＤＦＶＴ￥Ｃｕｓｔｏｍｅｒ単位で封入封緘」という印刷設定が行なわれている。このため、前述のように、ページ１７１３、１７１４と、ページ１７１５、１７１６が別々に封入封緘される。図２０の例では、それぞれ対応するページ番号を使用し、「１−４ページと５−８ページを封入封緘」という印刷設定に変換している。
【０１４９】
また、ＪＤＦファイル１７２５では、「封入封緘の際の封筒は、ＰＤＦＶＴ￥ＣｕｓｔｏｍｅｒのメタデータＧｅｎｄｅｒがＭａｌｅなら青い封筒、Ｆｅｍａｌｅならピンクの封筒を使用」という印刷設定が行なわれている。このため、前述のように、ページ１７１３、１７１４には青い封筒、ページ１７１５、１７１６にはピンクの封筒が使用される。図２０の例では、それぞれ対応するページ番号を使用し、「１−４ページには青い封筒、５−８ページにはピンクの封筒を使用する」という印刷設定に変換している。ステップ２００４で、構成情報作成プログラム２１１は処理を終了する。
【０１５０】
以上述べたように、本発明によれば、既存のページ記述言語によるファイル、例えばＰＤＦファイルを保持したまま、構成情報、例えばＪＤＦファイルを使用してその階層構造やメタデータを利用した印刷設定を行うことができる。また、本発明によれば、バリアブル印刷に特有の繰り返しの含まれる階層構造を定義することができる。
【０１５１】
また、本発明によれば、既存のＰＤＦファイルと新たに作成したＪＤＦファイルを使って、既存のＰＤＦプリンタまたは新規のＰＤＦ対応プリンタのいずれにおいても上記の印刷設定を反映した印刷を行うことができる。また、本発明によれば、既存のＰＤＦファイルと新たに作成したＪＤＦファイルを使って、バリアブル印刷用のプリンタ、例えばＰＤＦ／ＶＴ対応プリンタでＰＤＦ／ＶＴの利点を生かした印刷を行うことができる。
【０１５２】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【０１５３】
１０１  印刷ジョブ作成コンピュータ（ＰＣ）
１０２  ファイルサーバ
１０３  印刷オペレータＰＣ
１０４  ＰＤＦ対応プリンタ
１０５  ＰＤＦ／ＶＴ対応プリンタ
【図１】
0005812695.tif 000002
【図２】
0005812695.tif 000003
【図３】
0005812695.tif 000004
【図４】
0005812695.tif 000005
【図５】
0005812695.tif 000006
【図６】
0005812695.tif 000007
【図７Ａ】
0005812695.tif 000008
【図７Ｂ】
0005812695.tif 000009
【図７Ｃ】
0005812695.tif 000010
【図８】
0005812695.tif 000011
【図９Ａ】
0005812695.tif 000012
【図９Ｂ】
0005812695.tif 000013
【図９Ｃ】
0005812695.tif 000014
【図１０Ａ】
0005812695.tif 000015
【図１０Ｂ】
0005812695.tif 000016
【図１０Ｃ】
0005812695.tif 000017
【図１１】
0005812695.tif 000018
【図１２】
0005812695.tif 000019
【図１３】
0005812695.tif 000020
【図１４】
0005812695.tif 000021
【図１５】
0005812695.tif 000022
【図１６Ａ】
0005812695.tif 000023
【図１６Ｂ】
0005812695.tif 000024
【図１６Ｃ】
0005812695.tif 000025
【図１７】
0005812695.tif 000026
【図１８】
0005812695.tif 000027
【図１９Ａ】
0005812695.tif 000028
【図１９Ｂ】
0005812695.tif 000029
【図２０Ａ】
0005812695.tif 000030
【図２０Ｂ】
0005812695.tif 000031