PDLデータに対する構成情報を作成する構成情報作成手段と、前記構成情報に対して印刷設定を行う印刷設定手段と、前記構成情報および前記印刷設定に従って印刷の制御を行う印刷制御手段とを有し、前記構成情報作成手段は、前記構成情報を作成するルールを作成するルール作成手段と、前記ルールを前記PDLデータに適用するルール適用手段を有し、前記印刷制御手段は、印刷を行うプリンタを指定するプリンタ指定手段と、前記プリンタの能力に応じて前記PDLデータのページ記述言語および前記印刷設定を他のページ記述言語に変換する変換手段を有し、前記ルール作成手段は、繰り返し要素に対応した繰り返しルールを作成し、前記ルール適用手段は、前記繰り返しルールを使用して前記構成情報に繰り返し構造を作成することを特徴とする情報処理装置。前記構成情報は階層構造を有し、前記印刷設定手段は前記階層構造を用いて印刷設定を行い、前記変換手段は前記階層構造を用いた印刷設定を変換することを特徴とする請求項1記載の情報処理装置。前記構成情報はメタデータを有し、前記構成情報に対して前記メタデータを設定するメタデータ設定手段を有し、前記印刷設定手段は前記メタデータを用いて印刷設定を行ない、前記変換手段は前記メタデータを用いた印刷設定を変換することを特徴とする請求項1~2のいずれかに記載の情報処理装置。前記構成情報は印刷設定の単位となるレコードレベルを有し、前記ルール作成手段は前記構成情報にレコードレベルを設定することを特徴とする請求項1~3のいずれかに記載の情報処理装置。前記ルールは前記階層構造に対応した開始条件と終了条件を有し、前記ルール適用手段は、前記開始条件と前記終了条件との接続状態を判定し、判定の結果に応じて接続状態を有効化することを特徴とする請求項2~4のいずれかに記載の情報処理装置。前記開始条件には、ページサイズ変化、オブジェクト指定の少なくともいずれか一つが含まれることを特徴とする請求項5記載の情報処理装置。前記終了条件には、ページ数指定、オブジェクト指定の少なくともいずれか一つが含まれることを特徴とする請求項5~6のいずれかに記載の情報処理装置。前記接続状態に対して、状態遷移の条件としてAND、OR、SKIPのいずれかを選択可能とすることを特徴とする請求項5~7のいずれかに記載の情報処理装置。前記構成情報を編集する構成情報編集手段を有することを特徴とする請求項1~8のいずれかに記載の情報処理装置。前記記述言語は、PDFまたはPDF/Xであることを特徴とする請求項1~9のいずれかに記載の情報処理装置。前記他の記述言語として、PDF、PDF/X、またはPDF/VTのいずれかであることを特徴とする請求項1~10のいずれかに記載の情報処理装置。前記印刷設定はJDFを用いて行うことを特徴とする請求項1~11のいずれか記載の情報処理装置。PDLデータに対する構成情報を作成する構成情報作成工程と、前記構成情報に対して印刷設定を行う印刷設定工程と、前記構成情報および前記印刷設定に従って印刷の制御を行う印刷制御工程とを有し、前記構成情報作成工程は、前記構成情報を作成するルールを作成するルール作成工程と、前記ルールを前記PDLデータに適用するルール適用工程を有し、前記印刷制御工程は、印刷を行うプリンタを指定するプリンタ指定工程と、前記プリンタの能力および前記印刷設定に応じて前記PDLデータのページ記述言語を他のページ記述言語に変換する変換工程を有し、前記ルール作成工程は、繰り返し要素に対応した繰り返しルールを作成し、前記ルール適用工程は、前記繰り返しルールを使用して前記構成情報に繰り返し構造を作成することを特徴とする情報処理方法。従来から、企業においてはPDFやPDF/Xファイル以下、PDFファイルと総称するの形式のデータの蓄積がなされている。これらPDFやPDF/Xの印刷が可能なプリンタ以下、PDF対応プリンタと表記するを保有する印刷ワークフローも存在する。この従来の印刷ワークフローにおいて、PDFとPDF/VTのいずれの印刷も可能なプリンタ以下、PDF/VT対応プリンタと表記するを新たに導入した場合、PDFファイルの形式のままでは、PDF/VT対応プリンタの利点が生かせない。逆に、すべてのPDFファイルをPDF/VT形式に変換した場合、そのPDF/VTファイルに対する印刷設定を記述したJDFファイルを作成すると、既存のPDF対応プリンタではその印刷設定に対応した印刷ができない。また、PDFファイルからPDF/VT形式に変換する場合、JDFによる印刷設定を容易に行うためには階層構造の作成やメタデータの付加を行う必要がある。このための方法として、たとえば特許文献1は、文書画像のレイアウトから階層構造、参照構造、関係構造等の論理構造を抽出し、異なる形式に変換可能な方法を開示している。特許文献2は、PDFの各ページに注釈アノテーションとして階層構造を意味する情報を付加しておき、この情報にしたがって階層を自動作成する方法を開示している。しかしながら、これらの方法では、文書に明示的に表れている構造にしか対応していないという課題や、VDPに特有な繰り返しの含まれる構造に対応していないという課題がある。上述した課題を解決するため、本発明に係る情報処理装置は、PDLデータに対する構成情報を作成する構成情報作成手段と、前記構成情報に対して印刷設定を行う印刷設定手段と、前記構成情報および前記印刷設定に従って印刷の制御を行う印刷制御手段とを有し、前記構成情報作成手段は、前記構成情報を作成するルールを作成するルール作成手段と、前記ルールを前記PDLデータに適用するルール適用手段を有し、前記印刷制御手段は、印刷を行うプリンタを指定するプリンタ指定手段と、前記プリンタの能力および前記印刷設定に応じて前記PDLデータのページ記述言語を他のページ記述言語に変換する変換手段を有し、前記ルール作成手段は、繰り返し要素に対応した繰り返しルールを作成し、前記ルール適用手段は、前記繰り返しルールを使用して前記構成情報に繰り返し構造を作成する。本発明によれば、既存のページ記述言語によるファイル、例えばPDFファイルを保持したまま、構成情報、例えばJDFファイルを使用してその階層構造やメタデータを利用した印刷設定を行うことができる。また、本発明によれば、バリアブル印刷に特有の繰り返しの含まれる階層構造を定義することができる。また、本発明によれば、既存のPDFファイルと新たに作成したJDFファイルを使って、既存のPDFプリンタまたは新規のPDF対応プリンタのいずれにおいても上記の印刷設定を反映した印刷を行うことができる。また、本発明によれば、既存のPDFファイルと新たに作成したJDFファイルを使って、バリアブル印刷用のプリンタ、例えばPDF/VT対応プリンタでPDF/VTの利点を生かした印刷を行うことができる。なお、既存のページ記述言語によるファイルの形式はPDFに限らず、ページ単位の記述能力を持ち、ページ単位でアクセス可能な任意のページ記述言語PrintDescriptionLanguage;以下、PDLと表記する形式が使用可能である。ページ記述言語のファイルを変換した後のファイル形式はPDF/VTに限らず、階層構造とメタデータのいずれかあるいは両方の機能を持つ任意のPDL形式が使用可能である。ジョブチケット形式はJDFに限らず、目的の印刷設定を記述することのできる任意のジョブチケット形式が使用可能である。実施形態1以下、本発明を実施するための最良の形態について図面を用いて説明する。<PODシステムの構成>図1は、本発明の実施形態に係る情報処理装置の構成を示す模式図である。この情報処理装置は、印刷ジョブ作成コンピュータPC101と、ファイルサーバ102と、印刷オペレータPC103と、PDF対応プリンタ104と、PDF/VT対応プリンタ105とを有し、これらはネットワーク106を介して接続されている。印刷ジョブ作成PC101は印刷ジョブを作成し、ファイルサーバ102に格納する。ファイルサーバ102に対して、ネットワーク106経由でデータの読み書きが行われる。印刷オペレータPC103は、ファイルサーバ102から取得した印刷ジョブを必要に応じて変更し、PDF対応プリンタ104またはPDF/VT対応プリンタ105に送信する。PDF対応プリンタ104またはPDF/VT対応プリンタ105は、受信した印刷ジョブの印刷を行う。本発明の実施の形態では既存のPDLデータのファイル形式としてPDFを使用するが、本発明はこれに限定されるものではない。ページ単位の記述能力を持ち、そのページをページ番号や直接参照間接参照によりアクセス可能なPDLのPDLデータであれば任意の形式が使用可能である。例えば、PDF/Xであってもよい。本発明の実施の形態では変換後のファイル形式としてPDF/VTバリアブル印刷用のフォーマットを使用するが、本発明はこれに限定されるものではなく、それ以外のファイル形式にも適用できる。階層構造とメタデータのいずれかあるいは両方の機能を持ち、その階層構造とメタデータのいずれかあるいは両方に外部からアクセスすることで印刷制御が可能なPDLであれば任意の形式が使用可能である。本発明の実施の形態ではジョブチケット形式としてJDFを使用するが、本発明はこれに限定されるものではない。印刷ワークフローで行なわれる印刷の目的に合った設定を記述することのできる任意の形式が使用可能である。本発明の実施の形態では、各PC、サーバが個々の機能を提供しているが、本発明はこれに限定されるものではない。個々の機能がさらに複数のコンピュータに分散していても良い。PC、サーバのうちのいくつか、あるいはすべてが同一コンピュータであっても良い。印刷ワークフローを構成するプログラムとして、全体のワークフローを管理するワークフローソフトや、印刷ジョブに関連する種々の情報を格納する経営情報システムManagementInformationSystem;MISが存在していても良い。印刷ジョブを入稿するWebtoPrintプログラム、プリンタ等のデバイスを管理するデバイスマネージャ、印刷ジョブを管理するジョブマネージャ、その他のプログラムが存在していても良い。本発明の実施の形態では、PDF対応プリンタとPDF/VT対応プリンタをそれぞれの能力に応じて使い分けているが、本発明はこれに限定されるものではない。同じ能力を持つプリンタが複数存在しても良い。PDF対応プリンタのみが存在する場合や、PDF/VT対応プリンタのみが存在する場合にも適用可能である。本発明の実施の形態では、各PC、サーバ、プリンタがネットワーク接続されているが、本発明はこれに限定されるものでない。一部のPC、サーバ、プリンタが遠隔地のネットワークに存在し、それらとリモート接続されているのでも良い。一部の機能はインターネットを通じてWebサービスとして実行されるのでも良い。一部のPC、サーバがインターネット上でいわゆるクラウドサービスとして実行されるものでも良い。<コンピュータ装置の構成>次に、図2を使用して、本発明の実施の形態に係るコンピュータ装置の構成を説明する。図2Aは、印刷ジョブ作成PC101、ファイルサーバ102、印刷オペレータPC103の構成の一例を示すブロック図である。CPU201はRAM202に格納されている制御プログラムに従って本装置全体の制御を行う。内部記憶部202はCPU201が実行する本装置の制御プログラムや、文書画像等のデータを格納するRAM等である。ネットワークインタフェース203はCPU201の制御の下にネットワーク106との接続を行なってデータ等を送受信する。外部記憶装置204はデータを保存する磁気ディスク等である。205はディスプレイ、206はキーボード、207はマウス等のポインティングデバイスである。RAM202に格納されているプログラムは、所定の動作を行うために、同じくRAM202に格納されているOSOperatingSystemの機能を必要に応じて使用する。また、RAM202に格納されているプログラムは、RAM202に一時記憶するデータの内容の読み書きを行なったり、外部記憶装置204上でデータの読み書きを行なったり、ネットワークインタフェース203を通じてデータの送受信を行なったりする。また、RAM202に格納されているプログラムは、キーボード206やポインティングデバイス207からの入力を受け取ったり、ディスプレイ205に表示を行なったりする。クライアントPC101は、RAM202に格納されたプログラムがキーボード206やポインティングデバイス207からの入力を受け付けて印刷ジョブを作成し、ネットワークインタフェース203を通じてファイルサーバ102に書き込む。ファイルサーバ102は、外部記憶装置204に印刷ジョブを格納する。また、RAM202に格納されたプログラムがネットワークインタフェース203を通じて印刷ジョブの読み書きを行う命令を受信すると、CPU201が命令を実行してネットワークインタフェース203を通じて結果を送信する。印刷オペレータPC103は、RAM202に格納されたプログラムがキーボード206やポインティングデバイス207からの入力を受け付けてネットワークインタフェース203を通じてファイルサーバ102から印刷ジョブを読み込む。そして、印刷オペレータPC103は、印刷ジョブの形式を必要に応じて変更した上で、PDF対応プリンタ104やPDF/VT対応プリンタ105にネットワークインタフェース203を通じてその印刷ジョブを送信する。図2Bは、印刷ジョブ作成PC101のRAM202に格納されている制御プログラムの機能ブロック図である。この制御プログラムは、構成情報403図4を作成する構成情報作成プログラム211構成情報作成手段と、構成情報の一部を追加、削除、変更するための構成情報編集プログラム212構成情報編集手段とを含んでいる。印刷オペレータPC103は、印刷情報401のうちJDF404の部分を作成する印刷設定プログラム213印刷設定手段と、印刷情報を用いて印刷の指示等の制御を行う印刷制御プログラム214印刷制御手段を含んでいる。<PDF/VTの構造>次に、図3を使用して、PDF/VT文書の構造を説明する。図3はPDF/VTファイルに格納されるPDF/VT文書301の論理的な構造を概念的に示すブロック図である。Catalog辞書302はPDF/VT文書301内に存在するさまざまなオブジェクトへの参照を格納する。これらの参照には、PageTree303やDPartRoot辞書305への参照が含まれる。PageTree303はPDF/VT文書301内に存在するPageオブジェクト304の順序を保持する。Pageオブジェクト304は一ページ分の描画に必要なオブジェクトへの参照を保持する。DPartRoot辞書305はDPartDocumentPart階層構造に存在するルートノードへの参照を保持する。DPart辞書306はDPart階層構造を構成する各ノードを表現する。DPMDocumentPartMetadata307は各DPart辞書に関連付けられたメタデータを保持する。DPart階層構造の終端ノードはPageオブジェクト304への参照を保持する。外部JDFファイル308はPDF/VT文書301のDPart階層構造やDPMメタデータを参照した印刷設定を記述することができる。Catalog辞書302、PageTree303、Pageオブジェクト304はPDFにもともと定義されている構造である。DPartRoot辞書305、DPart辞書306、DPM辞書307、Catalog辞書302からDPartRoot辞書305への参照、DPart辞書306からPageオブジェクト304への参照はPDFに対して拡張された構造である。<印刷情報の構成>次に、図4を使用して、本発明の実施の形態に係る印刷情報の構造を説明する。図4は本発明の実施の形態で使用する印刷ジョブの形式である印刷情報401の論理的な構造を概念的に説明するブロック図である。402はPDFファイルである。構成情報403はPDFファイル402を参照し、PDF/VT文書301のDPart階層構造やDPMメタデータと同様の構造を保持することができる。構成情報403がPDF/VT文書301のDPart階層構造と異なる点が二点ある。一点は、DPartRoot辞書305からの参照はないことである。もう一点は、終端ノードがPageオブジェクト304への参照を保持しないことである。その代わり、構成情報403の終端ノードは、参照先のPDFファイルのページ番号を保持する。JDFファイル404は構成情報403のDPart階層構造やDPMメタデータを参照して印刷設定を記述する。印刷情報401を外部記憶装置204に保持する際は、PDFファイル402、構成情報403、JDFファイル404をZIP形式でアーカイブする。構成情報403とPDFファイルの例は図9C、図11を用いて後述する。印刷情報の例は図17、図18を用いて後述する。構成情報をRAM202に保持する際のデータ構造は図12、図13を用いて後述する。構成情報を外部記憶装置204に保持する際の表現形式は図14を用いて後述する。本発明の実施の形態では、PDFファイルを一つだけ使用しているが、本発明はこれに限定されるものではない。複数のPDFファイルを使用し、それぞれのPDFファイルのページを構成情報から参照することも可能である。本発明の実施の形態では、構成情報としてPDF/VTと同様の構造を使用しているが、本発明はこれに限定されるものではない。階層構造とメタデータを表現する構造であれば任意の形式を使用可能である。本発明の実施の形態では、構成情報は参照先のPDFファイルのページ番号を保持しているが、本発明はこれに限定されるものではない。PDFファイル内のページを参照することが可能であれば任意の形式が使用可能であり、たとえばPDFのReferenceXObjectを使用することもできる。本発明の実施の形態では、印刷情報をZIP形式でアーカイブしているが、本発明はこれに限定されるものではない。LZH形式などの各種のアーカイブ形式も使用可能である。OPCOpenPackageConvention、MIMEMultipurposeInternetMailExtensionsなどの各種のパッケージ形式も使用可能である。あるいは、ファイルシステムのディレクトリ構造を使用し、印刷情報内の各ファイルをアーカイブやパッケージしないことも可能である。<全体処理>次に、図5のフローチャートを使用して、本発明の実施形態に係る情報処理装置の全体処理を説明する。図5Aは情報処理装置の全体処理を表している。まずステップ501で処理が開始される。次に、ステップ502で、印刷ジョブ作成PC101の構成情報作成プログラム211構成情報作成手段が、ユーザーからの入力を受け付けて、構成情報403を作成し、印刷情報の一部としてファイルサーバ502に格納する。構成情報作成処理の詳細についてはステップ507~513で後述する。ステップ503で、印刷ジョブ作成PC101の構成情報編集プログラム212構成情報編集手段が、ユーザーからの入力を受け付けて、ファイルサーバ502に格納されている印刷情報401のうち構成情報403の部分を編集する。構成情報403の編集は、構成情報作成処理で作成された構成情報403の一部を追加、削除、変更する処理であり、作成処理から自明であるので詳細は述べない。ステップ504で、印刷オペレータPC103の印刷設定プログラム印刷設定手段が、ユーザーからの入力を受け付けて、ファイルサーバ502に格納されている印刷情報401のうちJDF404の部分を作成する。印刷設定処理の詳細は図17、図18を用いて後述する。ステップ505で、印刷オペレータPC103の印刷制御プログラム214印刷制御手段が、ユーザーからの入力を受け付けて、ファイルサーバ502に格納されている印刷情報401を用いて印刷の指示を行う。この印刷処理の詳細についてはステップ514~522で後述する。ステップ506で処理が終了する。図5Bは、印刷ジョブ作成PC101の構成情報作成プログラム211が行う構成情報作成処理502の詳細を表すフローチャートである。ステップ507で、処理が開始される。ステップ508で、構成情報作成プログラム211が、ルール作成手段として、ユーザーからの入力を受け付けて、構成情報403を作成するためのルールを作成する。ルールの作成方法については図6~図10を用いて後述する。ステップ509で、ステップ508で作成したルールを適用するために、構成情報作成プログラム211が印刷ジョブ作成PC101やファイルサーバ102に格納されているPDFファイルPDLデータの指定をユーザーから受け付ける。ステップ510で、ルール適用手段として、構成情報作成プログラム211がステップ508で作成したルールをステップ509で指定されたPDFファイルに適用し、構成情報403を作成する。ルール適用処理の詳細は図15、図16A、図16B、図16Cを用いて後述する。ステップ511で、構成情報作成プログラム211が、ユーザーからの入力を受け付けて、ステップ510で作成した構成情報403にメタデータを設定する。メタデータ設定の詳細は図11を用いて後述する。ステップ512で、構成情報作成プログラム211が、ユーザーからの入力を受け付けて、ステップ510、ステップ511で作成編集した構成情報403を印刷情報の一部としてファイルサーバ502に格納する。ステップ513で、処理が終了する。図5Cは、印刷オペレータPC103の印刷制御プログラム214が行う印刷処理505の詳細を表わすフローチャートである。ステップ514で処理が開始される。ステップ515で、印刷制御プログラム214が、ファイルサーバ102に格納されている印刷情報401のいずれかの指定をユーザーから受け付ける。ステップ516で、印刷制御プログラム214が、プリンタ指定手段として、印刷を行うプリンタの指定をユーザーから受け付ける。ステップ517で、印刷制御プログラム214が、ステップ516で指定されたプリンタがPDF/VTファイルを印刷可能かどうかを判定する。判定は、ステップ516で指定されたプリンタの能力をたとえばJMFJobMessagingFormatのような形式を用いて印刷制御プログラム214が問い合わせ、その能力を調べることで行う。あるいは、ネットワーク上で使用可能なすべてのプリンタの能力を印刷制御プログラム214がアクセス可能な場所にあらかじめ静的に格納しておき、ステップ516で指定されたプリンタの能力を印刷制御プログラム214がそれを読み込むことで行っても良い。プリンタがPDF/VTファイルを印刷可能な場合は、ステップ518に進む。それ以外の場合はステップ520に進む。本実施形態では、ユーザーがPDF対応プリンタ104を指定した場合は、ステップ520に進む。ユーザーがPDF/VT対応プリンタ105を指定した場合は、ステップ518に進む。ステップ518で、変換手段としての印刷制御プログラム214が、ステップ515で指定された印刷情報を変換してPDF/VTファイルとJDFファイルを作成する。PDF/VTへの変換処理の詳細は図19A、図19Bを用いて後述する。ステップ519で、印刷制御プログラム214が、ステップ518で作成したPDF/VTファイルとJDFファイルを、ステップ516で指定されたプリンタに送信する。ステップ520で、変換手段としての印刷制御プログラム214が、ステップ515で指定された印刷情報を変換してPDFファイルとJDFファイルを作成する。PDFへの変換処理の詳細は、図20A、図20Bを用いて後述する。ステップ521で、印刷制御プログラム214が、ステップ520で作成したPDFファイルとJDFファイルを、ステップ516で指定されたプリンタに送信する。ステップ522で、処理が終了する。<ルール作成画面>次に、図6~図8を使用して、ステップ508でルール作成手段として使用するルール作成画面について説明する。前述したように、ここで作成するルールをPDFファイルに適用することで構成情報403が作成される。図6は、印刷ジョブ作成PC101の構成情報作成プログラム211がディスプレイ205に表示するルール作成画面の一例を示す図である。ルール作成画面601は、フォルダ作成ペイン602、開始条件指定ペイン607、終了条件指定ペイン609を含んでいる。フォルダ作成ペイン602で、構成情報作成プログラム211がユーザーからの入力を受け付けて階層構造のフォルダを作成編集し、その結果を階層表示する。ここで作成する階層構造が、構成情報403を作成する際の階層構造として使用される。ユーザーからの入力を受け付けて階層構造のフォルダを作成、移動、変更、削除する方法は、MicrosoftWindows登録商標のエクスプローラー等で既知であるので詳細は述べない。603はフォルダ作成ペインで作成されたフォルダである。各フォルダには名前を指定することができる。フォルダの階層は、左から第一階層、第二階層...のように呼ぶ。図6のルール作成画面の場合、第一階層にCustomerフォルダ、第二階層にLetterフォルダ、第三階層にCoverLetterフォルダとBrochureフォルダが作成されている。チェックボックス604はフォルダが構成情報403で繰り返し使用されることをユーザーに指示させるために用いられる。図6のルール作成画面の場合、Customerフォルダが繰り返しフォルダすなわち、繰り返し要素であると指定されている。繰り返しフォルダは、ルールをPDFファイルに適用すると、構成情報403の階層構造内で繰り返しルールとして繰り返し使用される。ボタン605、606はフォルダの階層がレコードレベルRecordLevel;RLであることをユーザーに指示させるために用いられる。ここで、レコードレベルについて説明する。VDPでは、VDP文書テンプレートにデータソースの各行レコードを適用して印刷ジョブを生成する。したがって、VDPの印刷ジョブでは、1つのレコードを適用することによって生成されるページ群が、データソースの行数だけ繰り返される構造になっているのが一般的である。レコードレベルとは、この繰り返しが行なわれるフォルダ階層のことである。ボタン605はレコードレベルが有効である状態を示しており、そのフォルダの階層がレコードレベルであることを示す。ボタン606はレコードレベルが無効である状態を示しており、そのフォルダの階層がレコードレベルではないことを示す。フォルダ作成ペイン602で作成されたフォルダの階層においてレコードレベルであると指定可能なのは一つの階層のみである。また、その階層にはフォルダが一つだけ存在し、かつ、そのフォルダが繰り返しフォルダであると指定されていなければならない。図6のルール作成画面の場合、レコードレベルであると指定可能なのは第一階層のみである。ある階層がレコードレベルであると指定された場合、構成情報作成プログラム211は、その他の階層のボタンをすべて無効状態にする。開始条件指定ペイン607で、構成情報作成プログラム211がユーザーの入力を受け付けて、フォルダ作成ペイン602で作成したフォルダのうち終端フォルダもっとも右の階層に位置するフォルダに対して開始条件を指定させる。ここで指定した開始条件は、ルールをPDFファイルに適用する際に、PDFファイルのページをフォルダに割り振る際に使用される。なお、ドロップダウンリストボックス608は、個々の終端フォルダに対する開始条件をユーザーに指示させるために用いられる。終了条件指定ペイン609で、構成情報作成プログラム211はユーザーの入力を受け付けて、フォルダペイン602で作成したフォルダのうち終端フォルダに対して終了条件を指定させる。ここで指定した終了条件は、ルールをPDFファイルに適用する際に、PDFファイルのページをフォルダに割り振る際に使用される。ドロップダウンリストボックス610は、個々の終端フォルダに対する終了条件をユーザーに指示させるために用いられる。連結線611は終了条件と開始条件の連結関係を示す。構成情報作成プログラム211は、フォルダペイン602で隣接する終端フォルダについては、先行する図で上側に位置する終端フォルダの終了条件と、後続の図で下側に位置する終端フォルダの開始条件を連結して表示する。図6のルール作成画面の場合、CoverLetterフォルダの終了条件とBrochureフォルダの開始条件が連結されている。また、繰り返しフォルダが存在する場合、その繰り返しフォルダの下位にある終端フォルダのうち、最後の図でもっとも下側に位置する終端フォルダの終了条件と、先頭の図でもっとも上側に位置する終端フォルダの開始条件を連結して表示する。図6のルール作成画面の場合、Brochureフォルダの終了条件とCoverLetterフォルダの開始条件が連結されている。連結線には接続状態が無効である状態と有効である状態がある。図6のルール作成画面ではすべて無効状態である。後述のように開始条件または終了条件を指定することで連結線を有効化することができる。すべての連結線が有効化された場合、そのルールはPDFファイルに適用可能となる。なお、612はルール作成内容を保存して終了するためのOKボタンである。613はルール作成内容を破棄して終了するためのキャンセルボタンである。図7Aaは、ルール作成画面601において、ユーザーが開始条件ペイン607で指定可能な開始条件の一例を示す図である。開始条件指定ドロップダウンリストボックス608図6において、CoverLetterフォルダに対して、ページサイズ変化が選択されている701。構成情報作成プログラム211は、この開始条件が指定されたフォルダがある場合、ルールをPDFファイルに適用する際にPDFファイルのページサイズの変化例:A4サイズ→A3サイズをチェックする。そして、この開始条件が指定されたフォルダに対して、PDFファイルのページサイズが変わったページから割り振りを始める。図7Abは、ルール作成画面601において、ユーザーが開始条件ペイン607で指定可能な開始条件の一例を示す図である。開始条件指定ドロップダウンリストボックス608図6において、CoverLetterフォルダに対してオブジェクト指定が選択されている702。構成情報作成プログラム211は、この開始条件が指定されたフォルダがある場合、ルールをPDFファイルに適用する際に、PDFファイルのページ内で指定されたオブジェクトが指定された位置に存在するかどうかをチェックする。そして、この開始条件が指定されたフォルダに対して、指定されたオブジェクトが指定された位置に存在するページから割り振りを始める。図7Bは、図7Abでオブジェクト指定が選択された場合に構成情報作成プログラム211がディスプレイ205に表示するオブジェクト指定画面の一例を示す図である。オブジェクト指定画面703で、構成情報作成プログラム211は、ユーザーからの入力を受け付けて、オブジェクト指定で使用するPDFファイルを指定させる。たとえば、MicrosoftWindows登録商標であれば、デスクトップ画面やエクスプローラーからのドラッグドロップによってPDFファイルを指定する方法がある。ページ指定ペイン704で、構成情報作成プログラム211は、指定されたPDFファイルに存在するページをすべて表示する。そして、構成情報作成プログラム211は、オブジェクトを選択するページをユーザーに選択させる。オブジェクト指定ペイン705で、構成情報作成プログラム211は、ページ指定ペインで選択されたページの内容を表示する。そして、構成情報作成プログラム211は、そのページの表示を構成するオブジェクトのうち一つをユーザーに選択させる。構成情報作成プログラム211は、ここで選択されたオブジェクトの内容と位置を保持しておき、ルールをPDFファイルに適用する際に使用する。なお、706は選択されたオブジェクトを示す。707はオブジェクト指定内容を保存して終了するためのOKボタンである。708はオブジェクト指定内容を破棄して終了するためのキャンセルボタンである。図7Caは、ルール作成画面601において、ユーザーが終了条件ペイン609で指定可能な終了条件の一例を示す図である。終了条件指定ドロップダウンリストボックス610図6で、CoverLetterフォルダに対してページ数指定が選択され709、ページ数として4が入力されている710。構成情報作成プログラム211は、この終了条件が指定されたフォルダがある場合、ルールをPDFファイルに適用する際にPDFファイルのページ数をカウントする。そして、構成情報作成プログラム211は、この開始条件が指定されたフォルダに対して、PDFファイルのページの割り振りを開始した後、指定されたページ数図7Caの例では4ページを割り振り終わると、そのフォルダへの割り振りを終了する。図7Cbは、ルール作成画面601において、ユーザーが終了条件ペイン609で指定可能な終了条件の一例を示す図である。終了条件指定ドロップダウンリストボックス610で、CoverLetterフォルダに対して、オブジェクト指定が選択されている711。構成情報作成プログラム211は、この開始条件が指定されたフォルダがある場合、ルールをPDFファイルに適用する際に、PDFファイルのページ内で指定されたオブジェクトが指定された位置に存在するかどうかをチェックする。そして、構成情報作成プログラム211は、この終了条件が指定されたフォルダに対して、PDFファイルのページの割り振りを開始した後、指定されたオブジェクトが指定された位置に存在するページを割り振り終わると、そのフォルダへの割り振りを終了する。オブジェクトの指定方法は図7Bに示したものと同様である。図8Aは、ルール作成画面601において、連結された終了条件と開始条件が有効状態になった一例を示す図である。フォルダ作成ペイン602では、CoverLetterとBrochureという二つの終端フォルダが作成されている。終了条件指定ドロップダウンリストボックス610図6で、先行する終端フォルダであるCoverLetterフォルダに対してページ数指定が選択され、ページ数として4が入力されている801。構成情報作成プログラム211がCoverLetterフォルダに対してPDFファイルのページの割り振りを開始したのち、4ページを割り振り終わると、CoverLetterフォルダへの割り振りを終了する。そして、後続の終端フォルダであるBrochureフォルダへの割り振りを開始する。つまり、先行する終端フォルダであるCoverLetterに有効な終了条件が指定されていれば、後続する終端フォルダであるBrochureには開始条件を指定する必要がない。このため、構成情報作成プログラム211は、両終端フォルダの連結線802を有効表示する。図8Bは、ルール作成画面601において、連結された終了条件と開始条件が有効状態になった一例を示す図である。フォルダ作成ペイン602では、CoverLetterとBrochureという二つの終端フォルダが作成されている。後続の終端フォルダであるBrochureフォルダに対して、開始条件指定ドロップダウンリストボックス608でオブジェクト指定が選択されている803。構成情報作成プログラム211がCoverLetterフォルダに対してPDFファイルのページの割り振りを開始した後、803で指定されたオブジェクトが指定された位置に存在するページを見つけると、Brochureフォルダへの割り振りを開始する。つまり、後続する終端フォルダであるBrochureに有効な開始条件が指定されていれば、先行する終端フォルダであるCoverLetterには終了条件を指定する必要がない。このため、構成情報作成プログラム211は、両終端フォルダの連結線804を有効表示する。図8Cは、ルール作成画面601において、連結された終了条件と開始条件が有効状態になった一例を示す図である。フォルダ作成ペイン602は図8A、図8Bと同様である。CoverLetterフォルダの終了条件指定805は801と同様である。Brochureフォルダの開始条件指定806は803と同様である。CoverLetterフォルダの終了条件とBrochureフォルダの開始条件が指定されているので、両終端フォルダの連結線807が有効表示されている。ただし、この例では終了条件と開始条件がどちらも指定されているため、両条件が矛盾する可能性がある。このため、構成情報作成プログラム211はリンク条件の指定ポップアップメニュー808を表示して、ユーザーに連結線の動作を選択させる。選択可能な動作、すなわち状態遷移の条件となるものはANDORSKIPの三種類である。ANDを選択した場合は、構成情報作成プログラム211は、両終端フォルダの条件が満たされれば後続する終端フォルダであるBrochureフォルダへの割り振りを開始する。ORを選択した場合は、構成情報作成プログラム211は、いずれかの終端フォルダの条件が満たされれば後続する終端フォルダであるBrochureフォルダへの割り振りを開始する。SKIPを選択した場合は、先行する終端フォルダであるCoverLetterフォルダの終了条件が満たされれば、構成情報作成プログラム211は、後続フォルダであるBrochureへの割り振りをスキップする。そして、Brochureに後続する終端フォルダへの割り振りを行うかどうかを判断する。リンク条件が指定されている場合の割り振り処理の詳細は図16A~図16Cを用いて後述する。<ルールの適用例>次に、図9~図10を使用して、構成情報作成プログラム211がステップ510のルール適用処理を行なって構成情報403を作成する様子を例を挙げて説明する。ここでは適用結果だけを示し、ルール適用処理の詳細は図15、図16A~図16Cを用いて後述する。図9aは、ルール作成画面601において、ルールを作成した一例を示す図である。Customerフォルダが繰り返しフォルダとして指定されている。Customerフォルダの階層がレコードレベルであると指定されている。終端フォルダはCoverLetterフォルダとBrochureフォルダであり、この順で隣接している。CoverLetterフォルダに対して、終了条件指定ドロップダウンリストボックス610でページ数指定が選択され、ページ数として1が入力されている901。Brochureフォルダに対して、終了条件指定ドロップダウンリストボックス610でページ数指定が選択され、ページ数として3が入力されている902。903はCoverLetterフォルダの終了条件とBrochureフォルダの開始条件との連結線である。連結線903は、先行する終端フォルダであるCoverLetterフォルダの終了条件が指定されているので、有効表示されている。904はBrochureフォルダの終了条件とCoverLetterフォルダの開始条件との連結線である。Customerフォルダが繰り返しフォルダとして指定されている。このため、その下位にある終端フォルダのうち、最後の終端フォルダであるBrochureフォルダの終了条件と、先頭の終端フォルダであるCoverLetterフォルダの開始条件が連結されている。連結線904は、先行する終端フォルダであるBrochureフォルダの終了条件が指定されているので、有効表示されている。図9bは、入力するPDFファイルの内容をサムネールで示した図である。PDFファイル905は、図9Bに示すように8ページで構成されている。図9Cは、図9BのPDFファイルに対して図9Aで作成したルールを適用した結果、作成される構成情報の論理的な構造を概念的に説明するブロック図である。906は作成された構成情報である。907は構成情報906のルートノードである。ルートノードは常にPDFVTという名前となる。908は図9Aで第一階層がレコードレベルであると指定されているのに対応してルートノードに生成されたメタデータである。このメタデータの使い方については図19A、図19Bを用いて後述する。909~916は、図9Aのフォルダ作成ペイン602で作成したフォルダに対応して構成情報906に作成されたノードである。Customerフォルダが繰り返しフォルダとして指定されていたため、Customerノードが繰り返し作成されている。917は図9Bに示した入力PDFファイルである。918~921はPDFファイル917の各ページである。922~925は、構成情報906の終端ノードからPDFファイル917のページへのリンクである。図9Aに示すように、作成したルールではCoverLetterに1ページ、Brochureフォルダに3ページの割り振りが指定されていた。このルールに従って、ノード911に最初の1ページ、ノード912に次の3ページ、ノード915に次の1ページ、ノード916に次の3ページがリンクされている。PDFファイルのページへのリンクは、前述のようにリンク先のページのページ番号を保持している。図10Aは、ルール作成画面601において、ルールを作成した別の例を示す図である。フォルダ作成ペインの内容は図9Aと同様である。CoverLetterフォルダに対して、開始条件指定ドロップダウンリストボックス610でオブジェクト指定が選択されている1001。この時のオブジェクトとしては、オブジェクト指定画面703において、図10Bに示すPDFファイルのオブジェクト1006または1008が指定されているものとする。オブジェクト1006とオブジェクト1008は同じ内容で同じ位置に描画されるオブジェクトである。また、Brochureフォルダに対して、開始条件指定ドロップダウンリストボックス610でオブジェクト指定が選択されている1002。この時のオブジェクトとしては、オブジェクト指定画面703において、図10Bに示すPDFファイルのオブジェクト1007または1009が指定されているものとする。オブジェクト1007とオブジェクト1009は同じ内容で同じ位置に描画されるオブジェクトである。1003はCoverLetterフォルダの終了条件とBrochureフォルダの開始条件との連結線である。連結線1003は、後続する終端フォルダであるBrochureフォルダの開始条件が指定されているので、有効表示されている。1004はBrochureフォルダの終了条件とCoverLetterフォルダの開始条件との連結線である。Customerフォルダが繰り返しフォルダとして指定されている。このため、その下位にある終端フォルダのうち、最後の終端フォルダであるBrochureフォルダの終了条件と、先頭の終端フォルダであるCoverLetterフォルダの開始条件が連結されている。連結線1004は、後続する終端フォルダであるCoverLetterフォルダの開始条件が指定されているので、有効表示されている。図10Bは、入力するPDFファイルの内容をサムネールで示した図である。PDFファイル1005は、図に示すように8ページで構成されている。前述のように、1ページ目のオブジェクト1006と5ページ目のオブジェクト1008は同じ内容で同じ位置に描画されるオブジェクトである。また、4ページ目のオブジェクト1007と8ページ目のオブジェクト1009は同じ内容で同じ位置に描画されるオブジェクトである。図10Cは、図10BのPDFファイルに対して図10aで作成したルールを適用した結果、作成される構成情報の論理的な構造を概念的に説明するブロック図である。1010~1013は図9Cと同様に作成されたノードである。1014~1017は入力されたPDFファイル1005の各ページである。1018~1021は、構成情報の終端ノードからPDFファイルのページへのリンクである。図10Aに示すように、作成したルールでは、CoverLetterに対して、オブジェクト1006、1008と同じ内容を同じ位置を持つページがあれば割り振りを開始するように指定していた。このルールに従って、CoverLetterノード1010から、オブジェクト1006を持つ1ページ目にリンク1018が作成されている。また、作成したルールでは、Brochureフォルダに対して、オブジェクト1007、1009と同じ内容を同じ位置に持つページがあれば割り振りを開始するようにしていた。このルールに従って、Brochureフォルダ1011から、オブジェクト1007を持つ4ページ目にリンクが作成されている。リンク1021、1022についても同様である。PDFファイルのページへのリンクの保持方法については図12、図13を用いて後述する。<メタデータの設定>次に、図11を使用して、ステップ511で構成情報403にメタデータを設定した様子を説明する。図11は、図9Cの構成情報に対してメタデータを設定した一例を説明するブロック図である。構成情報では任意のノードに任意のメタデータを設定することができる。本実施の形態では、メタデータはキーと値をKey=Valueの形式で表現する。Customerフォルダ1104にメタデータ1121Name=JoneDoeとメタデータ1122Gender=Maleが設定されている。Customerフォルダ1108にメタデータ1123Name=JaneDoeとメタデータ1124Gender=Femaleが設定されている。ユーザーからの入力を受け付けてメタデータを作成、変更、削除する方法はMicrosoftWindows登録商標のプロパティ設定等で既知であるので詳細は述べない。<構成情報の内部表現>次に、図12~図13を使用して、構成情報作成プログラム211が構成情報403をRAM202に保持する際のデータ構造について説明する。図12は構成情報作成プログラム211が構成情報403をRAM202に保持する際に使用するデータ構造をUMLUnifiedModelingLanguageを用いて表記したクラス図である。本発明の実施の形態では以下のような仮想的な基本データ型と文法構造を使用する。基本データ型はboolean、integer、stringの三種類である。booleanは真偽値型であり、値としてtrue真またはfalse偽を格納する。integerは整数型であり、値として任意の整数値を格納する。stringは文字列型であり、値として任意長の文字列を格納する。文法構造は構造体、ポインタ、配列の三種類である。構造体、ポインタはC言語で使用可能なものと同等である。無効なポインタ値としては0を使用する。配列も表記法はC言語で使用可能なものと同等であるが、宣言時にサイズを指定する必要がなく、実行時に必要に応じてサイズが拡張あるいは縮小される。1201はDPartノードの情報を格納するためのDPart構造体である。parent1202は親DPartノードへの参照を格納するためのポインタである。name1203はDPartノードの名前を格納するための文字列である。isLeaf1204はDPartノードが終端ノードかどうかを格納するための真偽値である。children1205は子DPartノードへの参照を格納するためのポインタの配列である。page1206はリンク先のPDFのページ番号を格納するための整数の配列である。構成情報403の定義により、isLeaf1204の値がtrueの場合はpage1206を使用し、children1205は使用しない。isLeaf1204の値がfalseの場合はchildren1205を使用し、page1206は使用しない。metadeta1207はDPM構造体1208への参照を格納するためのポインタの配列である。1208はDPMメタデータの情報を格納するためのDPM構造体である。key1209はメタデータのキーを格納するための文字列である。value1210はメタデータの値を格納するための文字列である。本発明の実施形態では、上記のような仮想的なデータ型や文法構造を使用したが、本発明はこれに限定されるものではない。構成情報作成プログラム211を記述する言語で使用可能なデータ型や文法構造であれば任意のものが使用可能である。本発明の実施形態では、メタデータの値を文字列に限定しているが、本発明はこれに限定されるものではない。構成情報作成プログラム211を記述する言語で使用可能なデータ型や文法構造であれば任意のものが使用可能である。図13は、図11に示した構成情報1101を図12に示したデータ構造を用いて表現したインスタンス図である。DPart構造体1201のインスタンス1301はノード1102に対応する。親ノードはないのでparent1202に無効なポインタ値として0を格納する。name1203はノード1102の名前であるPDFVTを格納する。ノード1102は終端ノードではないので、isLeaf1204はfalseを格納する。ノード1102は子ノードとして1104、1108を持つので、children1205はそれぞれの子ノードに対応するインスタンスである1302へのポインタp2と1306へのポインタp6を格納する。page1206は使用しない。ノード1102はメタデータとして1103を持つので、metadata1207はメタデータ1103に対応するインスタンスである1310へのポインタp9を格納する。DPart構造体1201のインスタンス1302はノード1104に対応する。親ノードは1102なので、parent1202はノード1102に対応するインスタンスである1301へのポインタp1を格納する。ノード1104はメタデータとして1121、1122を持つので、metadata1207はそれぞれのメタデータに対応するインスタンスである1311へのポインタp10と1312へのポインタp11を格納する。DPart構造体1201のインスタンス1304はノード1106に対応する。ノード1106は終端ノードなので、isLeaf1204はtrueを格納する。children205は使用しない。ノード1106はPDFファイル1112の1ページ目である1113へリンクしているので、page1206にはページ番号として1を格納する。DPM構造体1208のインスタンス1310はメタデータ1103に対応する。メタデータ1103はRecordLevel=1なので、key1209にRecordLevel、value1210に1を格納する。他のインスタンス1303、1305~1309、1311~1314についても上記と同様である。<構成情報のXML表現>次に図14を使用して、構成情報作成プログラム211が構成情報403を外部記憶装置204に保持する際の記述方法について説明する。図14は、構成情報作成プログラム211が図13に示した構成情報を外部記憶装置204に保持する際の記述方法の一例を示す図である。ここでは、構成情報403をXMLeXtensibleMarkupLanguageで表記している。これは、非特許文献2のAppendixBXMLRepresentationofthedocumentparthierarchyで規定されている表記方法に従ったものである。図13と図14の構成要素は一対一に対応しており、図13から図14への変換方法は自明であるので詳しくは述べない。本発明の実施の形態では、上記のようなXML表記方法を使用したが、本発明はこれに限定されるものではない。構成情報を表現可能な表記方法であれば任意のものが使用可能である。<ルール適用処理>次に図15~図16Cを使用して、構成情報作成プログラム211がステップ510のルール適用手段が構成情報403を作成する処理の詳細について説明する。ここでは処理内容の概要だけを説明し、実際のルールから構成情報を作成する例については後述する。図15Aは、構成情報作成プログラム211がルール作成画面601で作成したルールをPDFファイルに適用する際の処理の詳細を示すフローチャートである。ステップ1501で、構成情報作成プログラム211が処理を開始する。ステップ1502で、構成情報作成プログラム211は、ルール作成画面601のフォルダ作成ペイン602で作成したフォルダのうちルートフォルダを指すポインタを変数Pfに格納する。ステップ1503で、構成情報作成プログラム211は、適用するPDFファイルのうち1ページ目を指すポインタを変数Ppに格納する。ステップ1504で、構成情報作成プログラム211は、Pfが指すフォルダ以降、単にPfフォルダと表記するが終端フォルダかどうかを判定する。終端フォルダでない場合はステップ1505に進み、終端フォルダの場合はステップ1506に進む。Pfフォルダが終端フォルダでない場合、ステップ1505で、構成情報作成プログラム211はPfとPpを引数としてステップ1508から始まる非終端ループ処理を呼び出す。Pfフォルダが終端フォルダの場合、ステップ1506で、構成情報作成プログラム211はPfとPpを引数として図16Aのステップ1601から始まる終端ループ処理を呼び出す。ステップ1507で、構成情報作成プログラム211は処理を終了する。図15Bは、構成情報作成プログラム211が行う非終端ループ処理の詳細を示すフローチャートである。ステップ1508で、構成情報作成プログラム211が非終端ループ処理を開始する。なお、引数のPfは処理対象のルールフォルダ、引数のPpは処理対象のPDFファイルのページを表わす。ステップ1509で、構成情報作成プログラム211は、Pfフォルダのうち、最初の子フォルダを指すポインタを変数Cfに格納する。Pfフォルダは非終端フォルダなので、子フォルダが少なくとも一つ存在する。ステップ1510で、構成情報作成プログラム211は、Cfが指すフォルダ以降、単にCfフォルダと表記するが終端フォルダがどうかを判定する。終端フォルダでない場合はステップ1511に進み、終端フォルダの場合はステップ1512に進む。Cfフォルダが終端フォルダでない場合、ステップ1511で構成情報作成プログラム211はPfフォルダの子フォルダに対するループを開始する。ステップ1512で、構成情報作成プログラム211はCfとPpを引数としてステップ1508から始まる非終端ループ処理を呼び出す。ステップ1513で、構成情報作成プログラム211はPfフォルダの子フォルダのうち、Cfフォルダの次の子フォルダをCfに格納する。ステップ1514で、ステップ1511から始まるループが終了する。すなわち、Pfフォルダの子フォルダがまだ存在すれば、構成情報作成プログラム211はステップ1510に戻って処理を繰り返す。構成情報作成プログラム211がPfフォルダの子フォルダに対する処理をすべて終了すればステップ1515に進む。Cfフォルダが終端フォルダである場合、ステップ1515で、構成情報作成プログラム211はCfとPpを引数として図16Aのステップ1601から始まる終端ループ処理を呼び出す。ステップ1516で、構成情報作成プログラム211は非終端ループを終了する。図16A~図16Cは、構成情報作成プログラム211がルール作成画面601で作成したルールをPDFファイルに適用する際に、終端フォルダに対してPDFファイルのページを割り振る処理の詳細を示すフローチャートである。ステップ1601で、構成情報作成プログラム211は処理を開始する。引数のPfは処理対象のルールフォルダ、引数のPpは処理対象のPDFファイルのページを表す。ステップ1602で、構成情報作成プログラム211はPfフォルダに対応するノードを構成情報403に作成する。Pfフォルダの祖先フォルダに対応するノードが構成情報403に存在しない場合は、構成情報作成プログラム211はそれも作成する。ステップ1603で、ルール作成画面601の開始条件指定ペイン607終了条件指定ペイン609において、構成情報作成プログラム211はPfフォルダの終了条件と連結されている開始条件を検索する。そして構成情報作成プログラム211は、その開始条件に対応するフォルダを指すポインタを変数Ffに格納する。ステップ1604で、構成情報作成プログラム211はPfフォルダに終了条件が設定されているかどうかを判定する。Pfフォルダに終了条件が設定されていなければステップ1605に進む。終了条件が設定されていればステップ1606に進む。Pfフォルダに終了条件が設定されていない場合、ステップ1605で、構成情報作成プログラム211はFfフォルダの開始条件を満たしているかどうかを判定する。前述のように、ルールのすべての連結線が有効状態になった場合にそのルールがPDFファイルに適用可能となるため、Pfフォルダに終了条件が設定されていない場合は、Ffが指すフォルダ以降、単にFfフォルダと表記するに開始条件が設定されている。Ffフォルダの開始条件を満たしていない場合は、Pfフォルダでの割り振り処理が継続することになる。その場合は、ステップ1619に進んで、構成情報作成プログラム211はPpが指すPDFファイルのページ以降、単にPpページと表記するをPfフォルダに割り振る処理を行う。Ffフォルダの開始条件を満たしている場合は、Pfフォルダでの割り振り処理が終了することになる。その場合は、処理はステップ1623に進んで、構成情報作成プログラム211はFfフォルダに対する割り振り処理を開始する。Pfフォルダに終了条件が設定されている場合、ステップ1606で構成情報作成プログラム211はFfフォルダに開始条件が設定されているかどうかを判定する。Ffフォルダに開始条件が設定されていなければステップ1607に進む。終了条件が設定されていればステップ1608に進む。Pfフォルダに終了条件が設定されており、Ffフォルダに終了条件が設定されていない場合、ステップ1607で構成情報作成プログラム211はPfフォルダの終了条件を満たしているかどうかを判定する。Pfフォルダの終了条件を満たしていない場合は、Pfフォルダでの割り振り処理が継続することになる。その場合は、処理はステップ1619に進んで、構成情報作成プログラム211はPpページをPfフォルダに割り振る処理を行う。Pfフォルダの終了条件を満たしている場合は、Pfフォルダでの割り振り処理が終了することになる。その場合は、処理はステップ1623に進んで、構成情報作成プログラム211はFfフォルダに対する割り振り処理を開始する。Pfフォルダに終了条件が設定されており、Ffフォルダに開始条件が設定されている場合、ステップ1608で構成情報作成プログラム211は両終端フォルダに設定されているリンク条件を判定する。前述のように、両終端フォルダの条件が設定されている場合は、リンク条件の指定ポップアップメニュー808を表示して、ユーザーに連結線の動作を選択させている。リンク条件がANDの場合はステップ1609に進む。リンク条件がORの場合はステップ1611に進む。リンク条件がSKIPの場合はステップ1613に進む。ステップ1609、ステップ1610は、PfフォルダとFfフォルダのリンク条件がANDの場合の処理である。前述のように、この場合は両終端フォルダの条件が満たされれば構成情報作成プログラム211はFfフォルダに対する割り振り処理を開始する。このため、ステップ1609で構成情報作成プログラム211はPfフォルダの終了条件を満たしているかどうかを判定し、ステップ1610でFfフォルダの開始条件を満たしているかどうかを判定する。いずれかの条件が満たされていない場合は、ステップ1619に進んで、構成情報作成プログラム211はPpページをPfフォルダに割り振る処理を行う。両方の条件を満たしている場合は、ステップ1623に進んで構成情報作成プログラム211はFfフォルダに対する割り振り処理を開始する。ステップ1611、ステップ1612は、PfフォルダとFfフォルダのリンク条件がORの場合の処理である。前述のように、この場合はいずれかの終端フォルダの条件が満たされれば構成情報作成プログラム211はFfフォルダに対する割り振り処理を開始する。このため、ステップ1611で構成情報作成プログラム211はPfフォルダの終了条件を満たしているかどうかを判定し、ステップ1612でFfフォルダの開始条件を満たしているかどうかを判定する。両方の条件が満たされていない場合は、ステップ1619に進んで、構成情報作成プログラム211はPpページをPfフォルダに割り振る処理を行う。いずれかの条件を満たしている場合は、ステップ1623に進んで構成情報作成プログラム211はFfフォルダに対する割り振り処理を開始する。ステップ1611、ステップ1612は、PfフォルダとFfフォルダのリンク条件がSKIPの場合の処理である。前述のように、この場合はPfフォルダの終了条件が満たされればFfフォルダに対する割り振り処理をスキップする。このため、ステップ1613で構成情報作成プログラム211はPfフォルダの終了条件を満たしているかどうかを判定する。Pfフォルダの終了条件が満たされていない場合は、ステップ1619に進んで、構成情報作成プログラム211はPpページをPfフォルダに割り振る処理を行う。Pfフォルダの終了条件を満たしている場合は、ステップ1614に進んで構成情報作成プログラム211はFfフォルダに対するスキップ処理を行う。図16Bに進んで、ステップ1614は、PfフォルダとFfフォルダのリンク条件がSKIPで、Pfフォルダの終了条件を満たしており、Ffフォルダに対するスキップを行う場合の処理である。まず、構成情報作成プログラム211は現在のFfフォルダを指すポインタを変数Pfに格納する。そして、ルール作成画面601の開始条件指定ペイン607終了条件指定ペイン609において、構成情報作成プログラム211はPfフォルダの終了条件と連結されている開始条件を検索し、その開始条件に対応するフォルダを指すポインタを変数Ffに格納する。ステップ1615で、構成情報作成プログラム211はFfフォルダに開始条件が設定されているかどうかを判定する。開始条件が設定されていない場合は、ステップ1623に進んで構成情報作成プログラム211はFfフォルダに対する割り振り処理を開始する。開始条件が設定されている場合はステップ1616に進む。ステップ1616で、構成情報作成プログラム211は、スキップ対象のPfフォルダと、現在割り振りを行なおうとしているFfフォルダに、リンク条件が設定されているかどうかを判定する。リンク条件が設定されていない場合はステップ1617に進む。リンク条件が設定されている場合はステップ1618に進む。ステップ1617は、Ffフォルダに開始条件が設定されており、PfフォルダとFfフォルダにリンク条件が設定されていない場合の処理である。構成情報作成プログラム211はFfフォルダの開始条件を満たしているかどうかを判定し、満たしている場合はステップ1623に進んでFfフォルダに対する割り振り処理を開始する。Ffフォルダの開始条件を満たしていない場合は、ルール作成画面601で作成したルールが適用中のPDFファイルと合致していないことになるので、ステップ1624に進んで構成情報作成プログラム211は割り振りエラー処理を行う。ステップ1618で、PfフォルダとFfフォルダにリンク条件が設定されている場合に、構成情報作成プログラム211がそのリンク条件を判定する。ここでは、スキップ対象のPfフォルダの終了条件は満たしていると仮定する。リンク条件がANDの場合は、Ffフォルダの開始条件を満たしているかどうかだけを判定するためにステップ1617に進む。リンク条件がORの場合は、ステップ1623に進んで、構成情報作成プログラム211はFfフォルダに対する割り振り処理を開始する。リンク条件がSKIPの場合は、ステップ1614に進んで、構成情報作成プログラム211はFfフォルダに対するスキップ処理を行う。図16Cに進んで、ステップ1620で、構成情報作成プログラム211はPfフォルダにPpページを割り振る。ステップ1621で、構成情報作成プログラム211はPpページがPDFファイルで最後のページかどうかを判定する。最後のページでない場合はステップ1622に進んで、構成情報作成プログラム211は割り振り処理を継続する。最後のページの場合はステップ1626に進んで、構成情報作成プログラム211は割り振り処理を終了する。ステップ1622で、次のページの割り振り処理を行うために、構成情報作成プログラム211はPpページの次のページを指すポインタを変数Ppに格納する。ステップ1622で、構成情報作成プログラム211はステップ1601から始まる終端ループ処理を呼び出して、Pfフォルダに対するPpページの割り振り処理を行う。ステップ1623で、構成情報作成プログラム211はステップ1601から始まる終端ループ処理を呼び出して、Ffフォルダに対するPpページの割り振り処理を行う。一方、ステップ1625で、構成情報作成プログラム211は割り振りエラーを見つけた場合のエラー処理を行う。ステップ1625で、構成情報作成プログラム211は処理を終了処理する。<ルール適用処理の例>次に、図15~図16Cで説明したフローチャートを使用して、図9A、図9Bで説明したルールとPDFファイルから図9Cで説明した構成情報906が生成される様子を説明する。ステップ1502で、PfフォルダはCustomerフォルダとなる。ステップ1503で、Ppページは1ページ目となる。ステップ1504で、Customerフォルダは終端フォルダではないため、構成情報作成プログラム211はステップ1505からステップ1508を呼び出す。ステップ1509で、CfフォルダはLetterフォルダとなる。ステップ1510で、Letterフォルダは終端フォルダではないため、構成情報作成プログラム211はステップ1512からステップ1508を呼び出す。ステップ1509で、CfフォルダはCoverLetterフォルダとなる。ステップ1510で、CoverLetterフォルダは終端フォルダのため、構成情報作成プログラム211はステップ1515からステップ1601を呼び出す。ステップ1601で、PfフォルダはCoverLetterフォルダとなり、Ppページは1ページ目である。ステップ1602で、構成情報作成プログラム211はPfフォルダに相当するCoverLetterノード911を構成情報906に作成する。この時点で親ノードが作成されていなかったため、構成情報作成プログラム211はPDFVTノード907、Customerノード909、Letterノード910も同時に作成する。図9Aのルール作成画面で第一階層がレコードレベルであると指定されているため、構成情報作成プログラム211はPDFVTノード907の作成時にRecordLevel=1というメタデータ908を作成する。ステップ1603で、FfフォルダはBrochureフォルダとなる。Pfフォルダに終了条件があり、Ffフォルダに開始条件がないため、ステップ1607に進む。ステップ1607で、Pfフォルダには構成情報作成プログラム211がまだPDFページの割り振りを行なっていないため、Pfフォルダの終了条件を満たさず、ステップ1619に進む。ステップ1619で、構成情報作成プログラム211はPfフォルダに相当するCoverLetterノード911にPpページである1ページ目918を割り当て、リンク922を作成する。ステップ1620~1621でPpページが2ページ目となり、構成情報作成プログラム211はステップ1622からステップ1601を呼び出す。ステップ1601で、PfフォルダはCoverLetterフォルダであり、Ppページは2ページ目である。この時点でPfフォルダに相当するCoverLetterノード911は作成済みのため、ステップ1602では何も行なわれない。ステップ1603で、FfフォルダはBrochureフォルダとなる。Pfフォルダに終了条件があり、Ffフォルダに開始条件がないため、ステップ1607に進む。ステップ1607で、すでにPDFページの割り振りを1ページ行なっているため、Pfフォルダの終了条件を満たし、ステップ1623からステップ1601を呼び出す。ステップ1601で、PfフォルダはBrochureフォルダ、Ppページは2ページ目である。ステップ1602で、構成情報作成プログラム211はPfフォルダに相当するBrochureノード912を構成情報906に作成する。ステップ1603で、FfフォルダはCoverLetterフォルダとなる。Pfフォルダに終了条件があり、Ffフォルダに開始条件がないため、ステップ1607に進む。ステップ1607で、PfフォルダにはまだPDFページの割り振りを行なっていないため、Pfフォルダの終了条件を満たさず、ステップ1619に進む。ステップ1619で構成情報作成プログラム211はPfフォルダに相当するBrochureノード912にPpページである2ページ目919の1ページ目を割り当て、リンク923を作成する。ステップ1620~1621でPpページが3ページ目となり、ステップ1622からステップ1601を呼び出す。ステップ1601で、PfフォルダはBrochureフォルダ、Ppページは3ページ目である。この時点でPfフォルダに相当するBrochureノード912は作成済みのため、ステップ1602では何も行なわれない。ステップ1603で、FfフォルダはCoverLetterフォルダとなる。Pfフォルダに終了条件があり、Ffフォルダに開始条件がないため、ステップ1607に進む。ステップ1607で、Pfフォルダにはまだ1ページしかPDFページの割り振りを行なっていないため、Pfフォルダの終了条件を満たさず、ステップ1619に進む。ステップ1619で構成情報作成プログラム211はPfフォルダに相当するBrochureノード912にPpページである3ページ目919の2ページ目を割り当てる。ステップ1620~1621でPpページが4ページ目となり、ステップ1622からステップ1601を呼び出す。ステップ1602、1602、1603、1604、1606は上記Ppページが3ページ目の処理と同様である。ステップ1607で、すでにPfフォルダに割り振りを3ページ行なっているため、Pfフォルダの終了条件を満たし、ステップ1623からステップ1601を呼び出す。ステップ1601で、PfフォルダはCoverLetterフォルダであり、Ppページは5ページ目である。ステップ1602で、Pfフォルダに相当するCoverLetterノード915を構成情報906に作成する。この時点で親ノードが作成されていなかったため、構成情報作成プログラム211はCustomerノード913、Letterノード914も同時に作成する。ステップ1603、1604、1607は上記Ppページが1ページ目の処理と同様である。ステップ1619で、構成情報作成プログラム211はPfフォルダに相当するCoverLetterノード915にPpページである5ページ目920を割り当て、リンク924を作成する。ステップ1620~1621でPpページが6ページ目となり、ステップ1622からステップ1601を呼び出す。ステップ1601で、PfフォルダはCoverLetterフォルダであり、Ppページは6ページ目である。ステップ1602、1603、1604、1606は上記Ppページが2ページ目の処理と同様である。ステップ1607で、すでにPDFページの割り振りを1ページ行なっているため、Pfフォルダの終了条件を満たし、ステップ1623からステップ1601を呼び出す。ステップ1601で、PfフォルダはBrochureフォルダ、Ppページは6ページ目である。ステップ1602で、構成情報作成プログラム211はPfフォルダに相当するBrochureノード916を構成情報906に作成する。ステップ1603、1604、1606、1607は上記Ppページが2ページ目の処理と同様である。ステップ1619で、構成情報作成プログラム211はPfフォルダに相当するBrochureノード916にPpページである6ページ目921の1ページ目を割り当て、リンク925を作成する。以降、7ページ目と8ページ目も上記3ページ目と4ページ目と同様に作成する。最後に、ステップ1620でPpが8ページ目の時に最後のページと判定され、ステップ1625に進んで処理を終了する。<印刷情報の設定>次に、図17~図18を使用して、ステップ515で構成情報403を参照する印刷設定404を印刷設定プログラム213が印刷情報401に追加した様子を説明する。図17は、図11の構成情報に対して印刷設定を追加した一例を説明するブロック図である。本発明の実施の形態では印刷設定のジョブチケット形式としてJDFワークフロー用の工程指示ファイルフォーマットを使用している。しかし、JDFの記述方式は複雑であり、またその記述方式は既知であるため、図11では説明の煩雑さを避けるために印刷設定の内容を自然言語で表現している。JDF1725で、PDFVTCustomerLetterCoverLetter直下のページはA4コート紙カラーで印刷という印刷設定が行なわれている。このため、CoverLetterノード1706がリンクしているページ1713と、CoverLetterノード1710がリンクしているページ1715はA4コート紙カラーで印刷される。JDF1725で、PDFVTCustomerLetterBrochure直下のページはA4上質紙モノクロで印刷という印刷設定が行なわれている。このため、Brochureノード1707がリンクしているページ1714と、Brochureノード1711がリンクしているページ1716はA4上質紙モノクロで印刷される。JDF1725で、PDFVTCustomer単位で封入封緘という印刷設定が行なわれている。このため、Customerノード1704の下位ノードがリンクしているページ1713、1714と、Customerノード1708の下位ノードがリンクしているページ1715、1716は別々に封入封緘される。JDF1725で、封入封緘の際の封筒は、PDFVTCustomerのメタデータGenderがMaleなら青い封筒、Femaleならピンクの封筒を使用という印刷設定が行なわれている。このため、Customerノード1704の下位ノードがリンクしているページ1713、1714には青い封筒が使用される。Customerノード1708の下位ノードがリンクしているページ1715、1716にはピンクの封筒が使用される。図18は、印刷設定プログラム213が別の構成情報に対して印刷設定を追加した一例を説明するブロック図である。この構成情報1802では、Ignoreノード1803、1804が追加されており、PDFファイル1805の4ページ目1806と8ページ目1807をそれぞれリンクしている。JDF1801で、PDFVTCustomerLetterIgnore直下のページは印刷しないという印刷設定が行なわれている。このため、Ignoreノード1803がリンクしているページ1806と、Ignoreノード1804がリンクしているページ1807は印刷されない。このように、本実施形態によれば、個々のPDFファイル402のページに依存せず、構成情報403のノードとメタデータを参照して印刷設定404を記述した印刷情報401を作成することができる。ユーザーからの入力を受け付けて印刷設定を作成する方法は既知であるので詳細は述べない。<PDF/VTへの変換処理>次に、図19A、図19Bを使用して、ステップ518で印刷情報をPDF/VTファイルとJDFファイルに変換する処理の詳細を説明する。図19Aは、構成情報作成プログラム211が印刷情報401をPDF/VTファイルとJDFファイルに変換する処理の詳細を示すフローチャートである。図19Bは、図17に示した印刷情報から変換したPDF/VTファイルとJDFファイルを説明するブロック図である。ステップ1901で、構成情報作成プログラム211が処理を開始する。ステップ1902で、構成情報作成プログラム211は印刷情報401のPDFファイル402からPDF/VTファイルのひな型を作成する。図19Bの例では、PDFファイル1712を使用して、Catalog辞書、PageTree、Pageオブジェクトを含むPDF/VTファイル1909を作成する。ステップ1903で、構成情報作成プログラム211は、ステップ1902で作成したPDF/VTファイルにDPartRoot辞書305を作成する。この時、構成情報作成プログラム211は、構成情報403のルートノードに付加したRecordLevelメタデータを参照して、DPartRoot辞書305のRecordLevelプロパティを設定する。図20の例では、DPartRoot辞書1910を作成する。この時、構成情報1701のルートノード1702にはRecordLevelメタデータ1703の値として1が設定されている。これを参照して、DPartRoot辞書1910のRecordLevelプロパティ1911を作成し、値として1を設定する。ステップ1904で、構成情報作成プログラム211は、構成情報403を参照してステップ1903で更新したPDF/VTファイルにDPart階層構造を作成する。図19Bの例では、構成情報作成プログラム211はPDFVTノード1702からDPart1912を作成する。同様に、Customerノード1704、1708からDPart1913、1917がそれぞれ作成される。同様に、Letterノード1705、1709からDPart1914、1918がそれぞれ作成される。同様に、CoverLetterノード1706、1710からDPart1915、1919がそれぞれ作成される。同様に、Brochureノード1707、1711からDPart1916、1920がそれぞれ作成される。同様に、メタデータ1721、1722からDPM1921、1922がそれぞれ作成される。同様に、メタデータ1723、1724からDPM1923、1924がそれぞれ作成される。ステップ1905で、構成情報作成プログラム211は構成情報403を参照して、ステップ1904で更新したPDF/VTファイルのDPart階層構造から、ステップ1902で作成したPageオブジェクトへの参照を作成する。前述したように、構成情報403の終端ノードはPDFファイル402のページ番号を保持しているが、PDF/VTのDPart終端ノードはPageオブジェクトへの参照を保持するので、この変換を行う。図19Bの例では、リンク1717からPageオブジェクトへの参照1925が作成される。同様に、リンク1718、1719、1720から、Pageオブジェクトへの参照1926、1927、1928がそれぞれ作成される。ステップ1906で、構成情報作成プログラム211は、印刷情報401のJDFファイル404から、ステップ1902~1906で作成したPDF/VTファイルを参照するJDFファイルを作成する。図19Bの例では、JDFファイル1715からJDFファイル1908が作成される。印刷設定の内容は同じである。ステップ1907で、構成情報作成プログラム211は処理を終了する。<PDFへの変換処理>次に、図20A、図20Bを使用して、ステップ520で印刷情報をPDFファイルとJDFファイルに変換する処理の詳細を説明する。図20Aは、構成情報作成プログラム211が印刷情報401をPDFファイルとJDFファイルに変換する処理の詳細を示すフローチャートである。図20Bは、図17に示した印刷情報から変換したPDFファイルとJDFファイルを説明するブロック図である。ステップ2001で、構成情報作成プログラム211が処理を開始する。ステップ2002で、構成情報作成プログラム211は印刷情報401のPDFファイル402をそのまま使用したPDFファイルを作成する。図20Bの例では、構成情報作成プログラム211はPDFファイル1712を使用してPDFファイル2006を作成する。両PDFファイルの内容は同じである。ステップ2003で、構成情報作成プログラム211は印刷情報401のJDFファイル404から、ステップ2002で作成したPDFファイルを参照するJDFファイルを作成する。PDFファイルは構造化されていないため、階層構造やメタデータを使用した印刷設定は使用できない。このため、PDFファイルのページ番号を参照した印刷設定に変換する。JDFファイル1725では、PDFVTCustomerLetterCoverLetter直下のページはA4コート紙カラーで印刷という印刷設定が行なわれている。このため、前述のように、ページ1713とページ1715がA4コート紙カラーで印刷される。図20の例では、ページ1713とページ1715にそれぞれ対応するページ番号1と5を使用し、1ページと5ページはA4コート紙カラーで印刷という印刷設定に変換している。また、JDFファイル1725では、PDFVTCustomerLetterBrochure直下のページはA4上質紙モノクロで印刷という印刷設定が行なわれている。このため、前述のように、ページ1714とページ1716がA4上質紙モノクロで印刷される。図20の例では、ページ1714とページ1716にそれぞれ対応するページ番号2―4、6-8を使用し、2-4ページと6-8ページはA4上質紙モノクロで印刷という印刷設定に変換している。また、JDFファイル1725では、PDFVTCustomer単位で封入封緘という印刷設定が行なわれている。このため、前述のように、ページ1713、1714と、ページ1715、1716が別々に封入封緘される。図20の例では、それぞれ対応するページ番号を使用し、1-4ページと5-8ページを封入封緘という印刷設定に変換している。また、JDFファイル1725では、封入封緘の際の封筒は、PDFVTCustomerのメタデータGenderがMaleなら青い封筒、Femaleならピンクの封筒を使用という印刷設定が行なわれている。このため、前述のように、ページ1713、1714には青い封筒、ページ1715、1716にはピンクの封筒が使用される。図20の例では、それぞれ対応するページ番号を使用し、1-4ページには青い封筒、5-8ページにはピンクの封筒を使用するという印刷設定に変換している。ステップ2004で、構成情報作成プログラム211は処理を終了する。以上述べたように、本発明によれば、既存のページ記述言語によるファイル、例えばPDFファイルを保持したまま、構成情報、例えばJDFファイルを使用してその階層構造やメタデータを利用した印刷設定を行うことができる。また、本発明によれば、バリアブル印刷に特有の繰り返しの含まれる階層構造を定義することができる。また、本発明によれば、既存のPDFファイルと新たに作成したJDFファイルを使って、既存のPDFプリンタまたは新規のPDF対応プリンタのいずれにおいても上記の印刷設定を反映した印刷を行うことができる。また、本発明によれば、既存のPDFファイルと新たに作成したJDFファイルを使って、バリアブル印刷用のプリンタ、例えばPDF/VT対応プリンタでPDF/VTの利点を生かした印刷を行うことができる。その他の実施例また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェアプログラムを、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ又はCPUやMPU等がプログラムを読み出して実行する処理である。