(57)【特許請求の範囲】
【請求項１】
１以上のデータを含む複数のデータセットが格納されるデータセット格納部と、
複数のデータセットのレイアウトを定義する情報であるテンプレート情報が格納されるテンプレート格納部と、
前記データセットと、前記テンプレート情報と、当該データセットが配置される出力単位との対応関係を示す情報であって、テンプレート情報とデータセットとの対応関係が１対ｎ（ｎは２以上の整数）であることを示す情報であるデータレイアウト管理情報が格納されるデータレイアウト管理情報格納部と、
前記テンプレート情報に対する変更指示を受け付ける変更指示受付部と、
前記変更指示に応じて、前記テンプレート情報の内容を変更した場合に、当該変更されたテンプレート情報が定義するレイアウトで出力単位に配置される複数のデータセットのそれぞれが、変更されたテンプレート情報に適合するか否かを判断する適合判断部と、
前記適合判断部の判断結果を出力する判断結果出力部とを備えたレイアウト処理装置。
【請求項２】
出力単位の情報である出力単位情報が格納される出力単位情報格納部と、
前記出力単位に対応したデータセットを、当該データセットと対応するテンプレート情報が示すレイアウトで配置して、出力単位の情報である出力単位情報を生成し、前記出力単位情報格納部に蓄積する出力単位情報生成部と、
前記出力単位情報格納部に格納された出力単位情報を出力する出力部と、
前記変更指示に応じて前記テンプレート情報を変更するテンプレート変更部と、
前記適合判断部が変更されたテンプレート情報に適合すると判断したデータセットを、前記テンプレート変更部により変更されたテンプレート情報が定義するレイアウトで配置した出力単位情報を生成して、テンプレート情報を変更する前の前記出力単位情報格納部に格納されている出力単位情報を更新する出力単位情報更新部とを更に備えた請求項１記載のレイアウト処理装置。
【請求項３】
前記テンプレート情報は、データが配置される領域であるフレームを示す情報であるフレーム情報を有しており、
前記適合判断部は、データセットに含まれるデータの大きさと、変更後のテンプレート情報が示す当該データが配置されるフレームの大きさとを比較して、レイアウトに適合するか否かを判断し、
前記適合判断部により、変更されたテンプレート情報に適合しないと判断されたデータセットのデータのうちの、フレームの大きさに適合しないと判断されたデータを、当該データが前記フレームの大きさに適合するよう縮小または拡大し、当該縮小または拡大されたデータを有する前記データセットを、前記テンプレート変更部により変更されたテンプレート情報が定義するレイアウトで配置した出力単位情報を生成して、テンプレート情報を変更する前の出力単位情報を更新する出力単位情報更新部を更に備え、
前記出力部は、出力単位情報更新部が更新した出力単位情報を出力する請求項２記載のレイアウト処理装置。
【請求項４】
前記テンプレート情報は、データが配置される領域であるフレームを示す情報であるフレーム情報を有しており、
前記適合判断部は、データセットに含まれるデータの大きさと、変更後のテンプレート情報が示す当該データが配置されるフレームの大きさとを比較して、データセットを構成する全てのデータが、変更後のテンプレート情報が示す各データが配置されるフレーム内に収まるか否かにより、各データセットが変更後のテンプレート情報に適合するか否かを判断する請求項１記載のレイアウト処理装置。
【請求項５】
前記テンプレート情報は、データが配置される領域であるフレームを示す情報であるフレーム情報を有しており、
前記フレーム情報に対するデータ配置の条件を示す情報である配置条件情報が格納される配置条件情報格納部を更に備え、
前記適合判断部は、変更後のテンプレート情報が示すフレームに配置されるデータセットのデータが、当該配置されるフレームに対応する配置条件情報を満たすか否かにより、各データセットが変更後のテンプレート情報に適合するか否かを判断する請求項１または請求項２記載のレイアウト処理装置。
【請求項６】
前記適合判断部は、データセットを変更後のテンプレート情報が定義するレイアウトで配置した場合に、当該データセットが対応付けられている出力単位内に収まるよう配置できるか否かにより、各データセットが変更後のテンプレート情報に適合するか否かを判断する請求項１から請求項４いずれか記載のレイアウト処理装置。
【請求項７】
前記出力単位情報生成部は、異なる複数のデータタイプの出力単位情報を生成する請求項２または請求項３記載のレイアウト処理装置。
【請求項８】
１以上のデータを含む複数のデータセットが格納されるデータセット格納部と、複数のデータセットのレイアウトを定義する情報であるテンプレート情報が格納されるテンプレート格納部と、前記データセットと、前記テンプレート情報と、当該データセットが配置される出力単位との対応関係を示す情報であって、テンプレート情報とデータセットとの対応関係が１対ｎ（ｎは２以上の整数）であることを示す情報であるデータレイアウト管理情報が格納されるデータレイアウト管理情報格納部と、変更指示受付部と、適合判断部と、判断結果出力部とを用いて行われるレイアウト処理方法であって、
前記変更指示受付部が、前記テンプレート情報に対する変更指示を受け付ける変更指示受付ステップと、
前記適合判断部が、前記変更指示に応じて、前記テンプレート情報の内容を変更した場合に、当該変更されたテンプレート情報が定義するレイアウトで出力単位に配置される複数のデータセットのそれぞれが、変更されたテンプレート情報に適合するか否かを判断する適合判断ステップと、
前記判断結果出力部が、前記適合判断ステップによる判断結果を出力する判断結果出力ステップとを備えたレイアウト処理方法。
【請求項９】
１以上のデータを含む複数のデータセットがデータセット格納部に格納されており、
複数のデータセットのレイアウトを定義する情報であるテンプレート情報がテンプレート格納部に格納されており、
コンピュータを、
前記テンプレート情報に対する変更指示を受け付ける変更指示受付部と、
前記変更指示に応じて、前記テンプレート情報の内容を変更した場合に、データレイアウト管理情報格納部に格納されている前記データセットと、前記テンプレート情報と、当該データセットが配置される出力単位との対応関係を示す情報であって、テンプレート情報とデータセットとの対応関係が１対ｎ（ｎは２以上の整数）であることを示す情報であるデータレイアウト管理情報が示す、当該変更されたテンプレート情報が定義するレイアウトで出力単位に配置される複数のデータセットのそれぞれが、変更されたテンプレート情報に適合するか否かを判断する適合判断部と、
前記適合判断部の判断結果を出力する判断結果出力部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データセットを、テンプレートを用いてレイアウトするレイアウト処理装置等に関するものである。
【背景技術】
【０００２】
データベースパブリッシング方法として、物件情報掲載誌に掲載される可能性のある物件データをデータベースに格納し、フィルタにより当該物件掲載誌に物件データをデータベースから選択し、テンプレート化された小組をページに配置し、ページに配置された小組に選択された物件データを割り付ける。そして、所定の位置に配置され、物件データが割り付けられた小組を含むページを印刷するための組版用電子文書であるＸＳＬ−ＦＯ電子文書を生成するものが知られていた。（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−１５０５８１号公報（第１頁、第１図等）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記のような技術においては、データセットのレイアウトを決定するテンプレートを変更すると、変更内容によっては、データが配置される領域が増減したり、領域のサイズが拡大縮小される結果、データセット内のデータの一部が配置されなくなったり、データが配置される領域に収まらなかったりしてしまう。この結果、データを適切に配置したページや画面等が得られないという課題があった。
【課題を解決するための手段】
【０００５】
本発明のレイアウト処理装置は、１以上のデータを含むデータセットが格納されるデータセット格納部と、データセットのレイアウトを定義する情報であるテンプレート情報が格納されるテンプレート格納部と、データセットと、テンプレート情報と、データセットが配置される出力単位との対応関係を示す情報であるデータレイアウト管理情報が格納されるデータレイアウト管理情報格納部と、テンプレート情報に対する変更指示を受け付ける変更指示受付部と、変更指示に応じて、テンプレート情報の内容を変更した場合に、変更されたテンプレート情報が定義するレイアウトで出力単位に配置される各データセットが、変更されたテンプレート情報に適合するか否かを判断する適合判断部と、適合判断部の判断結果を出力する判断結果出力部とを備えたレイアウト処理装置である。
【０００６】
かかる構成により、変更されたテンプレート情報に対するデータセットの不適合を検出することができる。
【０００７】
また、本発明のレイアウト処理装置は、前記レイアウト処理装置において、出力単位の情報である出力単位情報が格納される出力単位情報格納部と、出力単位に対応したデータセットを、データセットと対応するテンプレート情報が示すレイアウトで配置して、出力単位の情報である出力単位情報を生成し、出力単位情報格納部に蓄積する出力単位情報生成部と、出力単位情報格納部に格納された出力単位情報を出力する出力部と、変更指示に応じてテンプレート情報を変更するテンプレート変更部と、適合判断部が変更されたテンプレート情報に適合すると判断したデータセットを、テンプレート変更部により変更されたテンプレート情報が定義するレイアウトで配置した出力単位情報を生成して、テンプレート情報を変更する前の出力単位情報格納部に格納されている出力単位情報を更新する出力単位情報更新部とを更に備えたレイアウト処理装置である。
【０００８】
かかる構成により、変更されたテンプレート情報に適合するデータセットを、テンプレート情報が示すレイアウトで配置した出力単位情報を出力することができる。
【０００９】
また、本発明のレイアウト処理装置は、前記レイアウト処理装置において、テンプレート情報は、データが配置される領域であるフレームを示す情報であるフレーム情報を有しており、適合判断部は、データセットに含まれるデータの大きさと、変更後のテンプレート情報が示すデータが配置されるフレームの大きさとを比較して、レイアウトに適合するか否かを判断し、適合判断部により、変更されたテンプレート情報に適合しないと判断されたデータセットのデータのうちの、フレームの大きさに適合しないと判断されたデータを、データがフレームの大きさに適合するよう縮小または拡大し、縮小または拡大されたデータを有するデータセットを、テンプレート変更部により変更されたテンプレート情報が定義するレイアウトで配置した出力単位情報を生成して、テンプレート情報を変更する前の出力単位情報を更新する出力単位情報更新部を更に備え、出力部は、出力単位情報更新部が更新した出力単位情報を出力するレイアウト処理装置である。
【００１０】
かかる構成により、変更されたテンプレート情報のフレームに対して、大きさが適合しないデータを含むデータセットを、テンプレート情報が示すレイアウトで配置した出力単位情報を出力することができる。
【００１１】
また、本発明のレイアウト処理装置は、前記レイアウト処理装置において、テンプレート情報は、データが配置される領域であるフレームを示す情報であるフレーム情報を有しており、適合判断部は、データセットに含まれるデータの大きさと、変更後のテンプレート情報が示すデータが配置されるフレームの大きさとを比較して、データセットを構成する全てのデータが、変更後のテンプレート情報が示す各データが配置されるフレーム内に収まるか否かにより、各データセットが変更後のテンプレート情報に適合するか否かを判断するレイアウト処理装置である。
【００１２】
かかる構成により、変更されたテンプレート情報のフレームに対して、大きさが適合しないデータを含むデータセットを、テンプレート情報に適合しないデータセットとして検出することができる。テンプレート情報の変更により、フレームに収まらないデータセットが発生したことを容易に認識することが可能となる。
【００１３】
また、本発明のレイアウト処理装置は、前記レイアウト処理装置において、テンプレート情報は、データが配置される領域であるフレームを示す情報であるフレーム情報を有しており、フレーム情報に対するデータ配置の条件を示す情報である配置条件情報が格納される配置条件情報格納部を更に備え、適合判断部は、変更後のテンプレート情報が示すフレームに配置されるデータセットのデータが、配置されるフレームに対応する配置条件情報を満たすか否かにより、各データセットが変更後のテンプレート情報に適合するか否かを判断する請求項１またはレイアウト処理装置である。
【００１４】
かかる構成により、テンプレート情報のフレーム毎に適した条件を用いて、配置されるデータとの不具合を検出することができ、より細かい不適合を検出することができる。
【００１５】
また、本発明のレイアウト処理装置は、前記レイアウト処理装置において、適合判断部は、データセットを変更後のテンプレート情報が定義するレイアウトで配置した場合に、データセットが対応付けられている出力単位内に収まるよう配置できるか否かにより、各データセットが変更後のテンプレート情報に適合するか否かを判断するレイアウト処理装置である。
【００１６】
かかる構成により、テンプレート情報の変更により、出力単位内に収まらないデータセットが発生したことを容易に認識することが可能となる。
【発明の効果】
【００１７】
本発明によるレイアウト処理装置等によれば、変更されたテンプレート情報に対するデータセットの不適合を検出することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施の形態におけるレイアウト処理装置１のブロック図
【図２】同実施の形態のレイアウト処理装置１の動作を説明するためのフローチャート
【図３】同実施の形態のレイアウト処理装置１の概念図
【図４】同実施の形態のデータセット格納部に格納されているデータセットを管理するデータセット管理表を示す図
【図５】同実施の形態のテンプレート格納部に格納されているテンプレート情報を管理するためのテンプレート管理情報を示す図
【図６】同実施の形態の動作を説明するための、テンプレート情報に含まれるフレームの配置を模式的に示した図
【図７】同実施の形態のデータレイアウト管理情報格納部に格納されているデータレイアウト管理情報を示す図
【図８】同実施の形態の出力単位情報生成部が取得したデータセットを示す図
【図９】同実施の形態の出力単位情報生成部が生成した１ページ目の出力単位情報を示す模式図
【図１０】同実施の形態の動作を説明するための、変更後のテンプレート情報を含むテンプレート管理情報を示す図
【図１１】同実施の形態の配置条件情報格納部に格納されている配置条件管理情報の一例を示す図
【図１２】同実施の形態の変更後のテンプレート情報に適合しないデータを管理する不適合管理情報を示す図
【図１３】同実施の形態の判断結果出力部の表示例を示す図
【図１４】同実施の形態の出力部の表示例を示す図
【図１５】同実施の形態におけるレイアウト処理装置を実現するコンピュータの外観の一例を示す図
【図１６】同実施の形態におけるレイアウト処理装置を実現するコンピュータの構成の一例を示す図
【発明を実施するための形態】
【００１９】
以下、レイアウト処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
【００２０】
（実施の形態）
図１は、本実施の形態におけるレイアウト処理装置１のブロック図である。
レイアウト処理装置１は、データセット格納部１０１、テンプレート格納部１０２、データレイアウト管理情報格納部１０３、出力単位情報生成部１０４、出力単位情報格納部１０５、出力部１０６、変更指示受付部１０７、配置条件情報格納部１０８、適合判断部１０９、判断結果出力部１１０、テンプレート変更部１１１、および出力単位情報更新部１１２を備える。
【００２１】
データセット格納部１０１には、１以上のデータセットが格納される。データセットは、具体的には１以上のデータを含むデータ群である。データセットに含まれるデータは、出力可能なデータであればどのようなデータであっても良い。データセットに含まれるデータは、例えば、出力単位にレイアウトして配置可能なデータである。出力単位とは、例えば、出力媒体において情報が出力される単位である。出力単位は、具体的には、ページや画面等である。データセットに含まれるデータは、レイアウト対象データと考えても良い。データセットに含まれるデータは、例えば、テキストデータまたは画像データである。画像データは動画像データであっても、静止画像データであっても良い。また、配置されるデータは、出力単位上で動作可能なインタラクティブなデータであっても良い。データセットに含まれるデータはマルチメディアデータでも良い。データセットに含まれるデータのデータタイプやファイル形式等は問わない。例えば、テキストデータは、書式付きのテキストであっても、書式なしのテキストであっても良い。画像データは、ＪＰＥＧやＴＩＦＦ等、どのようなファイル形式であっても良い。
一のデータセットに含まれるデータには、データセット内でデータを識別するための識別情報であるデータ識別情報が対応付けられていても良い。データ識別情報は、少なくとも一のデータセット内でデータを識別可能な情報であればよい。ただし、データ識別情報は、データセット格納部１０１内に格納されている全てのデータを識別可能な情報であっても良い。データ識別情報は、例えば、データセットのデータを管理する管理情報の項目名等であっても良い。また、データ識別情報は、データに付与されたＸＭＬやＨＴＭＬ等のタグであっても良い。例えば、一のデータセットに含まれるデータが、データ識別情報としてＸＭＬやＨＴＭＬ等のタグが付けられたデータであり、、データセットが、ＸＭＬやＨＴＭＬ等のマークアップ言語で記述されたファイル等であってもよい。この場合、データセットを示すＸＭＬファイルやＨＴＭＬファイル等にリンクされている画像データ等も、一のデータセットのデータと考えても良い。データセットは、どのように管理されていても良い。一のデータセットは、例えば、タグが付けられた複数のデータを含むＸＭＬファイルのデータを構成していても良い。また、データセットは、一のデータセットを一のレコードとするデータベース等で管理されていても良く、データセットの各データは、項目別（フィールド別）に管理されていても良い。この場合、この項目をデータ識別情報としても良い。なお、同じテンプレート情報を用いてレイアウトされるデータセット間においては、データセットのデータの構成は、同様であることが好ましい。例えば、同じタイプのデータを同じ数だけ有することが好ましい。また、データセット間において対応しているデータには、通常、同じタグや同じ項目等のデータ識別情報等が割り当てられているようにすることが好ましい。また、データセット内のデータには、データの表示属性等の属性を示す属性情報等が対応付けられていてもよい。
【００２２】
各データセットには、例えば、データセットの識別情報であるデータセット識別情報が対応付けられている。例えば、一のデータセットを構成する１以上のデータが、マークアップ言語で記述された一のファイルのデータである場合、このファイル名や、ファイルのディレクトリやアドレス等を、データセット識別情報と考えても良い。また、データセットのデータが、データベースの一のレコードで管理されている場合、このレコードの管理用のＩＤ等をデータセット識別情報と考えても良い。
【００２３】
データセット格納部１０１にデータセットが蓄積される過程は問わない。例えば、記録媒体を介してデータセットが蓄積されてもよい。また、通信回線等を介して送信されたデータセットがデータセット格納部１０１に蓄積されても良い。また、入力デバイス等を介して入力されたデータセットがデータセット格納部１０１に蓄積されても良い。
【００２４】
データセット格納部１０１は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
【００２５】
テンプレート格納部１０２には、１以上のテンプレート情報が格納される。テンプレート情報は、データセットのレイアウトを定義する情報である。レイアウトとは、具体的には、データ等を出力単位上に割り付けることや、配列することや、位置決めして配置することを意味する。出力単位上に割り付けるとは、例えば、出力単位（例えばページ）のサイズや形状等を定義する情報で示される領域内に、データセットを配置することを意味する。データセットを配置する、とは、データセットを構成するデータの配置、またはサイズ等を設定することと考えても良い。また、本実施の形態では、レイアウトは、配置されるデータの書式等の表示属性等を示す情報を含むと考えても良い。また、本実施の形態では、一のテンプレート情報は、１以上のデータセットのレイアウトを定義する情報であるとする。
【００２６】
テンプレート情報は、例えば、レイアウトを定義する情報として、データセットを構成するデータが配置される領域を定義する情報を１以上有している。データが配置される領域を、ここでは、フレームと呼ぶ。ここで述べるフレームは、フレーム枠や、ボックスや、フィールド等と呼ばれることもある。また、フレームを定義する情報を、ここではフレーム情報と呼ぶ。フレーム情報は、フレームの属性を示す情報と考えても良い。フレーム情報は、例えば、フレームの大きさや位置、形状等を定義する情報である。位置を定義する情報は、例えば、座標情報である。この座標情報は、このテンプレート情報が配置される出力単位内の座標を示す座標情報であっても良い。出力単位（例えばページ）内の座標は、例えば、出力単位を定義する情報で定義される領域内の座標である。また、位置情報は、フレームを有するテンプレート情報が示す領域内における座標情報であっても良い。あるいは位置を定義する情報は、フレーム間の位置関係（上下左右）等またはフレーム間の間隔等を定義する情報であっても良い。
【００２７】
各フレーム情報は、フレーム内に配置されるテキストデータの書式等を定義する情報を含んでもよい。また、フレーム情報は、フレーム内に配置される画像等の解像度等を定義する情報を含んでもよい。各フレーム情報には、フレーム情報の識別情報であるフレーム識別情報を含んでもよい。
【００２８】
各フレーム情報には、例えば、フレームに配置されるデータセットのデータを指定するデータ指定情報が対応付けられていてもよい。データ指定情報は、配置されるデータを検索するための条件情報と考えても良い。例えば、データ指定情報は、画像形式がＪＰＥＧであるデータを検索することを指示する条件情報であっても良い。データ指定情報は、例えば、上述したデータ識別情報に対応する情報であってもよい。データ指定情報とフレーム識別情報との対応関係は、どのように管理されていても良く、例えば、各フレーム情報に対応するデータ指定情報が、各フレーム情報内に配置されていても良い。また、データ指定情報とフレーム識別情報との対応関係を管理する管理情報が、テンプレート情報内や、図示しない格納部等に格納されていてもよい。なお、データセットのデータに、当該データが配置される領域であるテンプレート情報のフレームを指定する情報、例えばフレーム識別情報が対応付けられているようにしてもよい。
【００２９】
なお、テンプレート情報のデータタイプやファイル形式等は問わない。テンプレート情報は、ＣＳＳやＸＳＬ等のスタイルシートの情報であっても良い。例えば、データセットのデータがタグ付けられたデータである場合、テンプレート情報は、各タグ、あるいはクラスまたはＩＤのセレクタ等に対してフレームや位置を定義するスタイルシートの情報であっても良い。また、テンプレート情報は、文字列や画像のデータを含んでいてもよい。文字列のデータ等をテンプレート情報に配置しておくことで、テンプレート情報を用いてデータセットを配置した場合に、データセットの内容に関わらず、同じ場所に文字列や画像のデータを配置することができる。
【００３０】
テンプレート情報には、例えば、テンプレート情報の識別情報であるテンプレート識別情報が対応付けられている。テンプレート識別情報は、例えば、テンプレート情報のファイル名やテンプレート名である。例えば、一のテンプレート情報が、一以上のファイルで構成されるデータである場合（例えば、タグ付けられたデータの配置を定義するＣＳＳ等のスタイルシートのデータである場合）、このデータのファイル名や、ファイルのディレクトリやアドレス等を、データセット識別情報と考えても良い。テンプレート情報とテンプレート識別情報との対応関係は、どのように管理されていても良い。例えば、各テンプレート情報内に、テンプレート識別情報が含まれていても良いし、テンプレート情報と、テンプレート識別情報との対応関係を管理する管理情報が、テンプレート情報内や、図示しない格納部等に格納されていても良い。
【００３１】
テンプレート情報は、レイアウトを定義する情報に加えて、データセット格納部１０１に格納されているデータセットが未配置の状態である出力単位の情報（例えば空白のページや画面の情報）等を含んでいてもよいし、含まないと考えても良い。例えば、データセットが配置されていない出力単位を定義する情報と、当該出力単位上のフレーム等を定義する情報を組み合わせた情報でも良い。出力単位を定義する情報は、例えばページのサイズやマージン等を定義するページ定義情報である。
【００３２】
テンプレート格納部１０２にテンプレート情報が蓄積される過程は、上述したデータセットと同様に問わない。なお、テンプレート情報は、後述する変更指示受付部１０７が受け付けたテンプレート情報の変更指示に応じて、テンプレート変更部１１１等により更新され得る。テンプレート格納部１０２は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
【００３３】
データレイアウト管理情報格納部１０３には、データセットと、テンプレート情報と、データセットが配置される出力単位との対応関係を示す情報であるデータレイアウト管理情報が格納される。データレイアウト管理情報は、具体的には、出力単位に配置されるデータセットと、このデータセットが配置される際のレイアウトを定義するテンプレート情報とを対応付けて管理する情報である。
【００３４】
例えば、データレイアウト管理情報は、データセット格納部１０１に格納されているデータセットを示す情報と、テンプレート格納部１０２に格納されているテンプレート情報を示す情報と、出力単位を示す情報とを対応付けて管理する情報である。データセットを指定する情報は、例えば、データセット識別情報である。また、テンプレート情報を示す情報は、テンプレート識別情報である。出力単位とは、データセットがレイアウトされて出力される出力の単位を示す。ここで述べる出力は、例えば、表示または印刷である。出力単位を示す情報は、例えば、ページ番号や、画面名や、フレーム番号や、これらの識別情報である。出力単位を示す情報が、出力単位を定義する情報そのものであっても良い。出力単位を定義する情報は、例えば、ページ等の出力単位のサイズや形状やマージン等を定義する情報である。出力単位の背景色等を定義する情報を含んでいてもよい。
【００３５】
ただし、データレイアウト管理情報は、データセットそのものと、テンプレート情報そのものと、出力単位を示す情報とを対応付けて管理する情報としてもよい。例えば、上述したデータセット格納部１０１とデータレイアウト管理情報格納部１０３とを一の格納部で構成するようにして、データレイアウト管理情報に、データセットを指定する情報の代わりにデータセットそのものが格納されるようにしても良い。また、上述したテンプレート格納部１０２とデータレイアウト管理情報格納部１０３とを一の格納部で構成するようにして、データレイアウト管理情報には、テンプレート情報を指定する情報の代わりに、テンプレート情報そのものが格納されていてもよい。
【００３６】
データレイアウト管理情報において、データセットとテンプレート情報との対応関係はｎ対１である（ｎは１以上の整数）。また、テンプレート情報と出力単位との対応関係はｍ対１である（ｍは１以上の整数）。
【００３７】
データレイアウト管理情報には、出力単位に対するテンプレート情報でデータセットがレイアウトされて配置される位置を定義する情報が、出力単位とテンプレート情報とに対応付けて格納されていても良い。例えば、テンプレート情報に出力単位の領域に対する位置を定義する情報がない場合、このような位置を定義する情報を用いて、出力単位上のテンプレート情報でレイアウトが行われる領域を、出力単位情報生成部１０４が認識することが可能となる。
【００３８】
なお、データレイアウト管理情報は、結果的に、データセットと、テンプレート情報と、データセットが配置される出力単位とが対応付けられた情報であれば良く、例えば、データセットとテンプレート情報とを対応付けた管理情報と、データセットと出力単位とを対応付けた管理情報とで構成されても良いし、テンプレート情報と出力単位とを対応付けた管理情報と、データセットと出力単位とを対応付けた情報とで構成されても良い。
【００３９】
データレイアウト管理情報格納部１０３にデータレイアウト管理情報が蓄積される過程は、上述したデータセットと同様に問わない。データレイアウト管理情報格納部１０３は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
【００４０】
出力単位情報生成部１０４は、出力単位に対応したデータセットを、データセットと対応するテンプレート情報が示すレイアウトで配置して、データセットが配置された出力単位の情報である出力単位情報を生成する。そして作成した出力単位情報を、後述する出力単位情報格納部１０５に蓄積する。出力単位情報は、例えば、データセットを対応するテンプレート情報が示すレイアウトで配置したページや、画面の情報である。具体的には、出力単位情報生成部１０４は、出力単位（例えばページ）のサイズや形状等を定義する情報により示される出力単位の領域上に、データレイアウト管理情報により対応付けられているデータセットを、データレイアウト管理情報により対応付けられているテンプレート情報が示すレイアウトで配置して出力単位情報を生成する。ここでの用いられる出力単位を定義する情報は、例えば、デフォルトやユーザ等により定義されたものであり、例えば、図示しない格納部等に予め格納されているものが、出力単位情報生成の際等に読み出される。。出力単位情報は、上述した出力単位を定義する情報を含むと考えても良い。出力単位情報生成部１０４は、例えば、テンプレート情報が示すフレームに、対応するデータを配置する（流しこむ）ことで、出力単位情報を生成する。なお、データセットと対応するテンプレート情報とは、結果的にデータセットと対応付けられたテンプレート情報であればよく、例えば、データセットが出力単位と対応付けられており、出力単位がテンプレート情報と対応付けられていて、データセットとテンプレート情報との対応関係が特定できる場合も、このテンプレート情報を、データセットと対応付けられたテンプレート情報と考えても良い。
【００４１】
出力単位情報生成部１０４が生成する出力単位情報は、具体的には、データセットが配置された出力単位を出力するためのデータである。出力単位情報は、例えば、画像またはテキストや、出力単位を定義する情報等で構成される。具体的には、出力単位情報生成部１０４は、表示用の出力単位情報、印刷用の出力単位情報、または蓄積用の出力単位情報を生成する。出力単位情報は、最終的な出力に用いられる出力単位のデータと考えてもよいし、編集中の表示に用いられる出力単位のデータと考えても良い。
【００４２】
出力単位情報生成部１０４は、例えば、出力の対象となる出力単位に対応付けられたデータセットと、このデータセットと対応付けられたテンプレート情報とを、データレイアウト管理情報を用いて取得する。具体的には、ユーザ等により指定された出力対象となる出力単位の識別情報（例えばページ番号やファイル名等）を検索キーとして、データレイアウト管理情報において、この検索キーと一致する出力単位と対応付けられたデータセットを示す情報と、テンプレート情報を示す情報とを検索する。そして、検索により取得したデータセットを示す情報が示すデータセットと、取得したテンプレート情報を示す情報が示すテンプレート情報とを取得する。そして、データセットが配置されていない出力単位の領域を示すデータ（例えばデータが配置されていない空白ページのデータ）を生成し、この出力単位の領域内の、取得したテンプレート情報が示すデータの配置領域となるフレームが示す領域に、データセットに含まれるデータのうちの、このフレームと対応付けられたデータを取得して配置することで、テンプレート情報が示すレイアウトでデータセットが配置された出力単位情報を取得することができる。フレームと対応付けられたデータとは、フレームに対応付けられたデータ指定情報が指定するデータである。データセットが配置されていない出力単位のデータは、例えば、図示しない記憶媒体等に格納されているデータセットが配置されていない出力単位のデータを複製することで取得してもよい。また、テンプレート情報が有する出力単位のデータを複製して取得してもよい。
【００４３】
なお、出力単位情報生成部１０４が蓄積する出力単位情報と、当該出力単位情報の生成に用いられたデータレイアウト管理情報とは、対応付けて管理されるようにすることが好ましい。例えば、出力単位情報生成部１０４は、出力単位情報内に、データレイアウト管理情報を埋め込んで出力しても良い。この場合、出力単位情報をデータレイアウト管理情報として用いることができるため、例えば、出力単位情報が、蓄積される出力単位情報格納部１０５と、データレイアウト管理情報格納部１０３とを一の格納部で構成するようにしても良い。
【００４４】
なお、テンプレート情報を用いて、データセットのデータを自動でレイアウトして配置していく技術等については公知技術であるので、ここでは詳細な説明は省略する。
【００４５】
なお、出力単位情報生成部１０４が生成する出力単位情報のデータタイプ等は問わない。また、出力単位情報生成部１０４は、異なる複数のデータタイプの出力単位情報を生成しても良い。出力単位情報生成部１０４が生成する異なるデータタイプの出力単位情報は、例えば、電子文書用フォーマットのデータや、ＨＴＭＬ形式等のマークアップ言語のデータや、ワードプロセッサ用のデータや、ＤＴＰ装置固有の形式のデータや、印刷用言語等で記述されたデータや、電子配布専用フォーマットのデータ等である。
【００４６】
出力単位情報生成部１０４は、通常、ＭＰＵやメモリ等から実現され得る。出力単位情報生成部１０４の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００４７】
出力単位情報格納部１０５には、出力単位情報生成部１０４が生成した、出力単位の情報である出力単位情報が格納される。ここでの格納は、一時記憶も含む概念である。例えば、出力単位情報生成部１０４が生成した（あるいは生成中の）出力単位情報が、一時的に蓄積されていても良い。また、出力単位情報格納部１０５は、着脱可能な記録媒体であっても良い。出力単位情報格納部１０５は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
【００４８】
出力部１０６は、出力単位情報格納部１０５に格納されている出力単位情報を出力する。また、出力部１０６は、出力単位情報格納部１０５に格納されている後述する出力単位情報更新部１１２が更新した出力単位情報を出力してもよい。出力部１０６は、出力単位情報生成部１０４が生成して出力単位情報格納部１０５に蓄積した１以上の出力単位情報を出力単位情報別に出力しても良いし、複数の出力単位情報をまとめて１つのデータとして出力しても良い。ここで述べる出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラム等への処理結果の引渡し等を含む概念である。
【００４９】
出力部１０６は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。出力部１０６は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
【００５０】
変更指示受付部１０７は、テンプレート格納部１０２に格納されているテンプレート情報に対する変更指示を受け付ける。変更指示は、テンプレート情報の内容を変更する指示である。変更指示は、具体的には、テンプレート情報が示すフレームを追加したり削除したりする変更の指示、フレームのサイズや位置や形状の変更の指示、フレーム内に配置されるテキストのデータの書式等の表示属性の変更の指示、フレームに配置される画像のデータの解像度等の表示属性の変更の指示、フレームに配置されるデータのデータタイプを変更する指示、またはフレームに対応付けられたデータ指定情報を変更する指示等である。
【００５１】
ここで述べる受け付けとは、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、有線もしくは無線の通信回線を介して送信された情報の受信、光ディスクや磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。入力手段は、テンキーやキーボードやマウスやメニュー画面によるもの等、何でも良い。変更指示受付部１０７は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
【００５２】
配置条件情報格納部１０８は、テンプレート情報が示すフレーム情報に対するデータ配置の条件を示す情報である配置条件情報が格納される。配置条件情報は、各フレームに対応付けられた情報であって、フレームに配置されるデータが、フレームに適合するものであるか否かを判断するための条件を示す情報である。例えば、フレームに配置されるデータセットのデータの平面的な大きさが、フレームの平面的なサイズよりも大きいこと（即ち、データがフレームからはみ出すこと）を、フレームに適合しない条件とする情報である。また、一のデータセットのデータ数に対して、テンプレート情報のフレーム数が多い、もしくは少ないことを、フレームに適合しない条件とする情報であってもよい。あるいは、フレームに配置されるデータのデータタイプと、フレームに配置されるデータとして予め指定されたデータタイプと異なることを、フレームに適合しない条件とする情報であってもよい。配置条件情報は、通常、フレーム情報と対応付けて管理されている。配置条件情報は、結果的にフレーム情報に対応付けられれば良く、例えば、フレーム毎に個別に配置条件情報が対応付けられていても良い。また、フレーム情報の属性等と配置条件情報とが対応付けられていても良い。この場合、ある属性を有するフレーム情報が、配置条件情報の適用先となるフレームとなる。また、例えば、フレーム情報に対応付けられたデータ指定情報と配置条件情報とが対応付けられていても良い。この場合、あるデータ指定情報と対応付けられたフレーム情報が、配置条件情報の適用先となるフレームとなる。
【００５３】
配置条件情報と、フレーム情報との対応付けはどのように管理されていても良い。例えば、配置条件情報（あるいは配置条件情報を識別する情報）と、この配置条件情報に対応付けられたフレーム情報を識別する情報とを有する管理情報が配置条件情報格納部１０８等に格納されていても良い。また、配置条件情報とテンプレート情報を識別する情報とを有する管理情報が配置条件情報格納部１０８等に格納されていても良い。
【００５４】
なお、配置条件情報が、各テンプレート情報内に、フレーム情報と対応付けて含まれているようにしてもよい。この場合、テンプレート格納部１０２と配置条件情報格納部１０８とを一の格納部で構成するようにすればよい。
【００５５】
配置条件情報格納部１０８に配置条件情報が蓄積される過程は、上述したデータセットと同様に問わない。配置条件情報格納部１０８は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
【００５６】
適合判断部１０９は、変更指示に応じて、テンプレート情報の内容を変更した場合に、変更されたテンプレート情報が定義するレイアウトで出力単位に配置される各データセットが、変更されたテンプレート情報に適合するか否かを判断する。例えば、上述したデータレイアウト管理情報により変更されたテンプレート情報と対応付けられているデータセットを、上述したデータレイアウト管理情報によりデータセットと対応付けられている出力単位に、上述したデータレイアウト管理情報により変更されたテンプレート情報が示すレイアウトで配置した場合に、データセットが変更されたテンプレート情報に適合するか否かを判断する。
【００５７】
データセットがテンプレート情報に適合するとは、テンプレート情報によってレイアウトされるデータセットが、テンプレート情報が示すレイアウト通りに配置可能なものであることを意味する。レイアウトとは、上述したようにデータセットに含まれるデータの割り付けや配置を意味する。ここでは、データの表示属性、例えば書式等も含めたものをレイアウトと考えるようにしても良い。レイアウト通りとは、例えば、テンプレート情報が示す位置に、テンプレート情報が示す表示属性またはデータ自身に指定された表示属性を適用したデータが配置されることや、テンプレート情報が示す領域内に表示属性を適用したデータが収まること等である。
【００５８】
データセットが、変更されたテンプレート情報に適合するか否かの判断とは、例えば、データセットが、変更されたテンプレート情報が示す（つまり、定義する）レイアウトに適合するか否かの判断であってもよい。具体的には、テンプレート情報が示すレイアウト通りにデータセットのデータが配置されるか否かの判断であってもよい。また、テンプレート情報が示す書式（またはデータ自身に指定された書式）等の表示属性でデータが配置できるか否かの判断であってもよい。また、テンプレート情報が示す一のデータセットのデータが配置される領域内に、一のデータセットのデータが全て配置されるか否かの判断であっても良い。また、適合するか否かの判断は、テンプレート情報が配置を指示するデータが、データセット内にあるか否かや、テンプレート情報が示す配置可能なデータ数と、データセット内のデータ数とが一致する、またはそれ以下か否かの判断等であっても良い。
【００５９】
適合判断部１０９は、例えば、テンプレート情報が示すよう配置されるデータセットのデータが、予め用意された適合を判断するための条件を満たすか否かによって適合するか否かを判断する。適合判断部１０９は、具体的には、一のデータセットに含まれる全てのデータを、変更されたテンプレート情報が定義する位置やフレームに配置した場合に、全てのデータが予め指定された適合の条件を満たすか否かで判断する。
【００６０】
予め用意された適合を判断するための条件は、例えば、全てのデータセットに対して用意された条件であっても良いし、予め指定された１以上のテンプレート情報に対して用意された条件であっても良い。また、特定のフレームに対して用意された条件であっても良い。例えば、この条件を示す情報は、上述した配置条件情報であっても良い。
【００６１】
予め用意された適合を判断するための条件がどのような条件であるかは問わない。データセットが、変更後のテンプレート情報に適合しているための条件は、例えば、テンプレート情報が示すフレーム数とレイアウトされるデータセットのデータ数が一致しているという条件や、テンプレート情報が示す配置対象となるデータの属性別フレーム数とレイアウトされるデータセットの属性別のデータ数が一致しているという条件である。また、一のテンプレート情報で配置されるデータセットの全てのデータに割り付けられた項目（タグ）に対応したフレームが、変更後のテンプレート情報にあるという条件である。そして、上記のような条件を満たすか否かを判断し、条件を満たす場合に、適合すると判断する。なお、条件を満たさない場合に適合すると判断される条件を用いても良い。この場合も、結果的に、条件を満たさない、という条件を満たすことを適合の条件となる。
【００６２】
なお、適合判断部１０９は、用途等に応じて、データセット内の全てのデータの中から、予め指定された一部のデータ（例えば配置対象でないデータや、配置されてもされなくてもどちらでも良いデータ等）を除外して、この除外されたデータ以外のデータが配置の条件を満たすか否かを判断するようにしてもよい。この場合、データセット内の全てのデータは、予め指定された一部のデータを除外した、配置が必須のデータと考えても良い。例えば、除外するデータには、除外したことを示すフラグ等の情報を付与おくようにすればよい。
【００６３】
以下、適合判断部１０９の判断処理の例を簡単に説明する。適合判断部１０９は、例えば、データセットに含まれるデータの大きさと、変更後のテンプレート情報が示すデータが配置されるフレームの大きさとを比較して、レイアウトに適合するか否かを判断する。具体的には、適合判断部１０９は、例えば、データセットに含まれるデータが配置される際の大きさを算出等により取得し、この大きさと、変更後のテンプレート情報が示すデータが配置されるフレームの大きさとを比較して、データセットを構成する全てのデータが、変更後のテンプレート情報が示す各データが配置されるフレーム内に収まるか否かにより、各データセットがレイアウトに適合するか否かを判断する。なお、ここで述べるデータの大きさとは、データを出力単位に配置した場合の平面的な大きさである。このようなデータの平面的な大きさを、以下、配置サイズと呼ぶ。配置サイズは、通常、縦横の長さで表される。配置サイズは、例えば、データセットのデータを、このデータが配置されるフレームに設定されている書式情報（文字サイズ、フォント、行間、文字間、禁則処理）や、表示属性等を適用してフレームに配置した場合のサイズである。書式情報は、例えば、テキストデータに対する文字サイズ、フォント、行間、文字間、禁則処理である。また、表示属性は、画像データに対する解像度、縦横比、拡大縮小の有無、フレームに合わせてフィットさせるか否かの属性等である。例えば、適合判断部１０９は、配置されるフレームの表示属性等を適用した場合のデータの配置サイズを算出し、この配置サイズとフレームのサイズとを比較して適合するか否かを判断する。あるいは、適合判断部１０９は配置されるデータを、実際に配置される表示属性等を用いて配置されるフレームの幅等に合わせてレンダリングして、レンダリングにより得られた画像データのサイズが、フレームのサイズより大きいか否かを判断して、データがフレームに適合するか否かを判断するようにしても良い。収まるということは、フレームの配置サイズが、配置されるデータの配置サイズ以上の大きさであることを意味する。例えば、フレームに収まる場合に、適合判断部１０９は、データがフレームに適合していると判断しても良い。
また、フレーム情報から当該フレームに配置可能な文字数の情報を取得して、この文字数がフレーム内に配置されるテキストデータの文字数以上の場合、フレームにデータが適合すると判断し、文字数未満である場合には、適合しないと判断しても良い。あるいは、フレーム情報から行数と各行の文字数の情報を取得して、テキストデータを改行コード等を考慮して改行してフレーム内に配置した場合の行数が、フレームの行数よりも多いか少ないかにより適合するか否かを判断しても良い。
【００６４】
なお、データセットに含まれるデータの配置サイズと、変更後のテンプレート情報が示すデータが配置されるフレームの配置サイズとを比較して、データの配置サイズよりも大きい配置サイズのフレームが検出された場合に、レイアウトに適合しないと判断しても良い。また、フレームの配置サイズが、配置されるデータの配置サイズと一致する場合だけ、適合すると判断しても良い。
【００６５】
また、配置されるデータの解像度やデータタイプ等から、テンプレート情報に適合するか否かを判断してもよい。例えば、配置サイズが固定された画像データが、テンプレート情報に対する変更指示に従った変更後のフレームのサイズと一致するか否かを判断し、一致しない場合、適合しないと判断しても良い。また、例えば、画像データが配置される一のフレームに配置される画像データの解像度の予め指定された下限値が適合の条件として指定されている場合において、変更指示に従ったテンプレート情報の変更により、テンプレート情報の画像データが配置されるフレームのサイズが拡大され、それに伴い、このフレーム内に配置されていた画像データが、画素数を維持したまま拡大されて配置されるようになった結果、解像度が低下したとする。この場合、適合判断部１０９は、フレームの配置サイズ変更によって、変化した画像データの解像度を算出し、この解像度が予め指定された解像度以下であれば、このデータセットが、変更後のテンプレート情報に適合しないと判断し、解像度以上であれば、適合すると判断してもよい。
【００６６】
適合判断部１０９は、予め用意された条件を示す情報が、上述した配置条件情報である場合、変更後のテンプレート情報が示すフレームに配置されるデータセットのデータが、配置されるフレームに対応する配置条件情報を満たすか否かにより、各データセットがレイアウトに適合するか否かを判断してもよい。
【００６７】
また、適合判断部１０９は、データセットを変更後のテンプレート情報が定義するレイアウトで出力単位に配置した場合に、データセットが対応付けられている出力単位内（例えば、ページ内や画面内）に収まるよう配置できるか否かにより、各データセットがレイアウトに適合するか否かを判断してもよい。例えば、一の出力単位に対応付けられた変更後のテンプレート情報が示すレイアウトでデータセットを配置した場合に、データセットの全てのデータが、出力単位の、データが配置可能な領域（例えば、出力単位内の余白等を除いた領域）内に収まるか否かを判断し、収まる場合、適合すると判断し、収まらない場合適合しないと判断しても良い。具体的には、変更されたテンプレート情報と対応付けられた出力単位、あるいは、変更されたテンプレートと対応付けられたデータセットが配置される出力単位について、変更されたテンプレート情報を用いてデータセットを配置した場合のデータセット全体の配置サイズを算出、あるいはレンダリングにより取得し、このサイズが、出力単位のデータセットが配置可能なサイズより大きいか否かを判断し、大きい場合に、この変更されたテンプレート情報に配置されるデータセットが、適合しないと判断しても良い。このような適合の判断は、変更されたテンプレート情報が示すフレームのサイズや位置が、配置されるデータによって可変である場合に特に有効である。
【００６８】
適合判断部１０９は、上記のような判断により得られた判断結果を、判断結果出力部１１０に出力する。判断結果は、判断の結果を示す情報であれば、どのような情報でも良い。判断結果は、例えば、適合しないデータセットがあるか否かを示す情報である。また、判断結果は、適合しないと判断されたデータセットや、そのデータを示す情報、（例えば、データセットの識別情報や、データの識別情報等）を含む情報でも良い。あるいは配置されるデータが適合しないテンプレート情報のフレームを示す情報を含む情報でも良い。なお、適合判断部１０９の判断は、例えば、データセット別に行われる。
【００６９】
適合判断部１０９が、上述したような適合の判断に用いる変更後のテンプレート情報は、後述するテンプレート変更部１１１がテンプレート情報の変更指示に応じて変更したテンプレート格納部１０２に格納されているテンプレート情報であってもよい。また、適合判断部１０９自身が、一時的に変更指示に応じて内容を変更したテンプレート情報を作成したテンプレート情報であってもよい。この場合、変更されたテンプレート情報は、例えば、図示しない記憶媒体等に一時的に記憶される。
【００７０】
適合判断部１０９は、通常、ＭＰＵやメモリ等から実現され得る。適合判断部１０９の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００７１】
判断結果出力部１１０は、適合判断部１０９の判断結果を出力する。具体的には、テンプレートの変更によって、適合しなくなったデータセットがあるか否かを示す判断結果を出力する。この判断結果は、適合するデータセットが「ある」または「ない」のいずれか一方の結果のみの出力でも良い。また、適合しなくなったデータセットを示す情報、例えば適合しなくなったデータセットを示す情報や、適合するデータセットを示す情報を出力しても良い。また、適合しなくなったデータやテンプレート情報のフレームを示す情報を示す情報や、適合するデータやテンプレート情報のフレームを示す情報を示す情報を出力しても良い。また、変更されたテンプレート情報を示す情報を出力しても良い。
【００７２】
判断結果出力部１１０は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。判断結果出力部１１０は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
【００７３】
テンプレート変更部１１１は、変更指示受付部１０７が受け付けた変更指示に応じてテンプレート情報を変更する。具体的には、テンプレート変更部１１１は、変更指示に応じてテンプレート情報内の情報を更新する。テンプレート変更部１１１は、変更指示を受け付けた直後に、テンプレート情報を変更しても良いし、適合判断部１０９が判断処理を行った後に、テンプレート情報を変更しても良い。テンプレート変更部１１１は、通常、ＭＰＵやメモリ等から実現され得る。テンプレート変更部１１１の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００７４】
出力単位情報更新部１１２は、適合判断部１０９により変更されたテンプレート情報に適合すると判断されたデータセットを、テンプレート変更部１１１により変更されたテンプレート情報が定義するレイアウトで配置して出力単位情報を生成する。そして、この出力単位情報で、テンプレート情報を変更する前の出力単位情報格納部１０５に格納されている出力単位情報を更新する。更新は、例えば、新しい出力単位情報で、古い出力単位情報を上書きして蓄積することや、古い出力単位情報を削除して、新しい出力単位情報を蓄積することである。出力単位情報更新部１１２が更新に用いる出力単位情報を生成する処理は、変更されたテンプレート情報を用いる点を除けば、上記出力単位情報生成部１０４の処理と同様であるので、ここでは詳細な説明を省略する。
【００７５】
なお、適合判断部１０９によって、変更されたテンプレート情報に適合しないと判断されたデータセットについては、変更されたテンプレート情報が定義するレイアウトで配置した出力単位情報を生成せず、出力単位情報を更新しないようにしても良い。
【００７６】
あるいは、以下のように、レイアウトに適合しないデータセットについては、配置されるデータの配置サイズを変更して全てのフレームにデータが適合するようにしたうえで、更新用の出力単位情報を生成して、出力単位情報格納部１０５に格納されている出力単位情報を更新するようにしてもよい。
【００７７】
即ち、出力単位情報更新部１１２は、適合判断部１０９により、変更されたテンプレート情報に適合しないと判断されたデータセットのデータのうちの、フレームの大きさに適合しないと判断されたデータを、データがフレームの大きさに適合するよう縮小または拡大する。そして、出力単位情報更新部１１２は、縮小または拡大されたデータを有するデータセットを、テンプレート変更部１１１により変更されたテンプレート情報が定義するレイアウトで配置した出力単位情報を生成して、テンプレート情報を変更する前の出力単位情報を更新する。例えば、適合判断部１０９により、フレームの大きさよりも、配置サイズが大きいと判断されたデータについては、フレームの大きさよりも小さくなるようにデータの配置サイズを縮小する。あるいは、フレームの大きさと少なくとも縦または横の一方の長さが同程度の大きさとなるようにデータの配置サイズを縮小しても良い。また、適合判断部１０９により、フレームの大きさよりも、配置サイズが小さいと判断されたデータについては、フレームの大きさと少なくとも縦または横の長さ一方が同程度の大きさとなるようにデータの配置サイズを拡大する。データの配置サイズの縮小または拡大は、データが画像データである場合、データの表示サイズを縮小または拡大すればよい。また、テキストデータである場合、テキストの表示サイズに関する書式情報等を、全体的に同じ比率で縮小または拡大しても良いし、文字サイズや行間等だけを個別に縮小または拡大しても良い。
【００７８】
なお、出力単位情報更新部１１２は、更新に用いる出力単位情報を生成する際に、テンプレート情報を変更する前の出力単位情報を、図示しない記憶媒体や出力単位情報格納部１０５等から読み出して、この出力単位情報の、レイアウトに適合すると判断された部分だけを、変更されたテンプレート情報を用いて更新することで、更新用の出力単位情報を生成するようにしても良い。
【００７９】
出力単位情報更新部１１２は、通常、ＭＰＵやメモリ等から実現され得る。出力単位情報更新部１１２の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００８０】
図２は、本実施の形態のレイアウト処理装置１の動作を説明するためのフローチャートである。以下、レイアウト処理装置１の動作について図２のフローチャートを用いて説明する。ここでは、例として、出力単位情報更新部１１２が、変更後のテンプレート情報に適合しないデータセットについては、レイアウトの変更を行った出力単位情報で更新を行わない場合を例に挙げて説明する。
【００８１】
（ステップＳ２０１）出力単位情報生成部１０４は、カウンターｎに１を代入する。
【００８２】
（ステップＳ２０２）出力単位情報生成部１０４は、カウンターｍに１を代入する。
【００８３】
（ステップＳ２０３）出力単位情報生成部１０４は、データレイアウト管理情報格納部１０３に格納されているデータレイアウト管理情報を参照して、ｎ番目の出力単位に対応付けられたｍ番目のデータセットを、データセット格納部１０１から読み出す。
【００８４】
（ステップＳ２０４）出力単位情報生成部１０４は、データレイアウト管理情報格納部１０３に格納されているデータレイアウト管理情報を参照して、ｍ番目のデータセットに対応付けられたテンプレート情報をテンプレート格納部１０２から読み出す。
【００８５】
（ステップＳ２０５）出力単位情報生成部１０４は、ｎ番目の出力単位に、ｍ番目のデータセットを、ステップＳ２０４で取得したテンプレート情報が示すレイアウトで配置する。具体的には、ステップＳ２０４で取得したテンプレート情報が示す各フレームに、各フレームに対して指定されたデータセットのデータを配置する。各フレームに対して指定されたデータセットのデータは、例えば、各フレームに対して対応付けられたタグ等のデータ識別情報等と一致するタグ等のデータ識別情報等と対応付けられたデータセット内のデータである。ｎ番目の出力単位の情報は、例えば、最初にデータセットを配置する際等に、適宜作成したり、図示しない格納部等から読み出すようにしても良いし、ステップＳ２０５で読み出したテンプレート情報に対応付けられた出力単位の情報を読み出しても良い。データを配置した出力単位情報は、図示しない記憶媒体等に一時記憶する。
【００８６】
（ステップＳ２０６）出力単位情報生成部１０４は、カウンターｍの値を１インクリメントする。
【００８７】
（ステップＳ２０７）出力単位情報生成部１０４は、データレイアウト管理情報格納部１０３に格納されているデータレイアウト管理情報を参照して、ｎ番目の出力単位に対応付けられたｍ番目のデータセットがあるか否かを判断する。ある場合、ステップＳ２０３に戻り、ない場合、ステップＳ２０８に進む。
【００８８】
（ステップＳ２０８）出力単位情報生成部１０４は、カウンターｎの値を１インクリメントする。
【００８９】
（ステップＳ２０９）出力単位情報生成部１０４は、データレイアウト管理情報を参照して、ｎ番目の出力単位があるか否かを判断する。ある場合、ステップＳ２０２に戻り、ない場合、ステップＳ２１０に進む。
【００９０】
（ステップＳ２１０）出力単位情報生成部１０４は、出力単位情報生成部１０４が生成した出力単位情報を出力単位情報格納部１０５に蓄積する。
【００９１】
（ステップＳ２１１）出力部１０６は、ステップＳ２１０で出力単位情報格納部１０５に蓄積された出力単位情報を図示しないモニタ等に表示する。なお、ここでは、出力部１０６が出力として表示する場合を例に挙げて説明したが、出力部１０６は、これら以外の出力を行うようにしても良い。
【００９２】
（ステップＳ２１２）変更指示受付部１０７は、テンプレート格納部１０２に格納されている１以上のテンプレート情報に対する変更指示を受け付けたか否かを判断する。受け付けた場合、ステップＳ２１３に進み、受け付けていない場合、ステップＳ２１２に戻る。
【００９３】
（ステップＳ２１３）テンプレート変更部１１１は、ステップＳ２１２で受け付けた変更指示に従ってテンプレート格納部１０２に格納されているテンプレート情報を変更する。
【００９４】
（ステップＳ２１４）適合判断部１０９は、カウンターｐに１を代入する。
【００９５】
（ステップＳ２１５）適合判断部１０９は、データレイアウト管理情報を参照して、ステップＳ２１３で変更されたテンプレート情報に対応付けられたｐ番目のデータセットがあるか否かを判断する。ある場合、ステップＳ２１６に進み、ない場合、ステップＳ２２７に進む。
【００９６】
（ステップＳ２１６）適合判断部１０９は、カウンターｑに１を代入する。
【００９７】
（ステップＳ２１７）適合判断部１０９は、ｐ番目のデータセットのｑ番目のデータが、変更されたテンプレート情報に適合するか否かを判断する。具体的には、変更されたテンプレート情報が示すｑ番目のデータが配置されるフレームに適合するか否か（例えば、フレーム内にデータが収まるか否か）を判断する。ここでは、一例として、データがフレームに適合するか否かの判断の条件が、予め用意された全てのテンプレート情報のフレームについて共通の条件である場合を例に挙げて説明する。適合すると判断された場合、ステップＳ２１９に進み、適合しないと判断された場合、ステップＳ２１８に進む。
【００９８】
（ステップＳ２１８）適合判断部１０９は、ｐ番目のデータセットのｑ番目のデータが変更後のテンプレート情報に適合しないデータであることを示す情報を、図示しない記憶媒体や、データセット格納部１０１等に蓄積する。例えば、適合しないデータであることを示す情報は、いわゆるフラグ情報であり、ｑ番目のデータ自身や、ｑ番目のデータの識別情報等と対応付けて管理される。そして、ステップＳ２１９に進む。なお、フラグの代わりに、適合しないデータのタグ等のデータ識別情報と、データセットの識別情報との組合せ等を図示しない記憶媒体等に蓄積して管理するようにしても良い。
【００９９】
（ステップＳ２１９）適合判断部１０９は、カウンターｑの値を１インクリメントする。
【０１００】
（ステップＳ２２０）適合判断部１０９は、ｐ番目のデータセットにｑ番目のデータがあるか否かを判断する。ある場合はステップＳ２１７に戻り、ない場合はステップＳ２２１に進む。
【０１０１】
（ステップＳ２２１）適合判断部１０９は、ｐ番目のデータセットが、変更されたテンプレート情報が示すレイアウトで配置された場合、変更前にｐ番目のデータセットが配置されていた出力単位内に配置されていたデータが全て、同じ出力単位内に収まるか否かを判断する。具体的には、テンプレート情報を変更してｐ番目のデータセットを配置した場合の、同じ出力単位に配置されていたデータ全体の大きさを算出するか、もしくはレンダリングし、その大きさが、出力単位のデータが配置可能な領域のサイズ以下か否かを判断する。サイズ以下であれば、配置可能であると判断して、ステップＳ２２２に進み、サイズより大きければ、変更されたテンプレート情報でデータを配置することができないと判断して、ステップＳ２２６に進む。なお、配置できないと判断した場合に、このｐ番目のデータセットが、テンプレート情報に適合しないデータセットであることを示す情報を、図示しない記憶媒体等に蓄積して管理するようにしても良い。
【０１０２】
（ステップＳ２２２）適合判断部１０９は、ｐ番目のデータセットに、ステップＳ２１３による変更後のテンプレート情報に適合しないデータがあったか否かを判断する。例えば、ｐ番目のデータセットのデータについて、ステップＳ２１９によって適合しないことを示す情報と対応付けられたデータがあるか否かを判断し、対応付けられたデータが１以上あった場合、適合しないデータがあることを示す判断結果を得る。適合しないデータが無い場合、ステップＳ２２３に進み、適合しないデータがあった場合、ステップＳ２２４に進む。
【０１０３】
（ステップＳ２２３）出力単位情報更新部１１２は、ｐ番目のデータセットのデータを、ステップＳ２１３で変更されたテンプレート情報が示すレイアウトで配置した出力単位情報を生成する。なお、例えば、ｐ番目のデータセットが配置される出力単位と同じ出力単位に配置されるデータセットがある場合、このデータセットとテンプレート情報とを、ステップＳ２０３やステップＳ２０４と同様に取り出して、ステップＳ２０５と同様に出力単位情報を構成する。または、出力単位情報格納部１０５に格納されている出力単位情報から、ｐ番目のデータセットが配置されている出力単位情報を読み出して、この出力単位情報のｐ番目のデータセットが配置されている領域を、ｐ番目のデータセットを変更後のテンプレート情報でレイアウトして更新することで、テンプレート情報の変更後の出力単位情報を生成する。そして、ステップＳ２２５に進む。
【０１０４】
（ステップＳ２２４）出力単位情報更新部１１２は、ｐ番目のデータセットのデータを、ステップＳ２１３で変更されたテンプレート情報が示すレイアウトで配置した出力単位情報を生成する。このとき、ステップＳ２１８で、適合しないことを示す情報と対応付けられたデータについては、変更後のテンプレート情報が示すこのデータが配置されるフレーム等に適合するものとなるように、データの配置サイズ等を変更して配置する。そして、ステップＳ２２５に進む。
【０１０５】
（ステップＳ２２５）出力単位情報更新部１１２は、ステップＳ２２３またはステップＳ２２４で作成した出力単位で、出力単位情報格納部１０５に格納されている出力単位情報を更新する。
【０１０６】
（ステップＳ２２６）適合判断部１０９は、カウンターｐの値を１インクリメントする。そして、ステップＳ２１６に戻る。
【０１０７】
（ステップＳ２２７）判断結果出力部１１０は、ステップＳ２１９において、適合しないことを示す情報が対応付けられたデータを１以上含むデータセットを検出し、適合しないデータセットがあることを示す判断結果を出力しても良い。具体的には、検出したデータセットが、変更されたテンプレート情報に適合していなかったことを示す情報を出力してもよい。この情報は、例えば、検出されたデータセットの識別情報等を含む情報である。また、ステップＳ２２１で蓄積された、テンプレート情報に適合しないデータセットを示す情報を出力するようにしても良い。
【０１０８】
（ステップＳ２２８）出力部１０６はステップＳ２２５で更新された出力単位情報を含む出力単位情報を出力単位情報格納部１０５から読み出し、図示しないモニタ等に表示する。そして、ステップＳ２１２に戻る。
【０１０９】
なお、ステップＳ２１８において、フレーム毎に対応付けられた条件により、データセットのデータが、変更されたテンプレート情報に適合するか否かを判断するようにしても良い。この場合、データが、それ自身が配置されるフレームに適合するか否かを判断する際に、このフレームに対応付けられた条件を逐次読み出して、その条件を満たすか否かを判断するようにすればよい。
【０１１０】
なお、図２のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【０１１１】
以下、本実施の形態におけるレイアウト処理装置１の具体的な動作について説明する。レイアウト処理装置１の概念図は図３である。
【０１１２】
図４は、データセット格納部１０１に格納されているデータセットを管理するデータセット管理表である。このデータセット管理表は、ここでは、一例としてＸＭＬ形式のデータであるとする。このデータセット管理表で管理されるデータセットは、例えばユーザが予め作成して蓄積したものであるとする。ここでは、例えば商品カタログに載せるための複数のデータセットが管理されているものとする。図４に示したデータセット管理表において、「＜」と「＞」とで囲まれているものがタグで、「＜」と「＞」とで囲まれている文字をタグ名とする。また、開始タグ「＜タグ名＞」と、終了タグ「＜／タグ名＞で囲まれている情報を要素とする。ここでは、開始タグ「＜商品情報＞」と、終了タグ「＜／商品情報＞で囲まれている要素が、一のデータセットであるとする。なお、開始タグ内の「ＩＤ＝」等は、データセット識別情報を示す。例えば、「＜商品情報  ＩＤ＝００１＞」は、タグの要素が、データセット識別情報が「００１」であるデータセットであることを示している。また、一のデータセット内のタグで囲まれた要素がデータセットを構成する各データであるとする。例えば、「＜商品単位＞３４０ｇ＜／商品単位＞」における「３４０ｇ」は、データセット内の商品単位タグが付けられたデータである。なお、「商品画像」タグ内には、データセットに含まれるデータの一つである画像情報のリンク先を識別する情報として「＜ｉｍｇ  ｓｒｃ＝"／ｉｍａｇｅｓ／・・・・・．ＪＰＧ"／＞等のリンクタグが記載されている。なお、画像データは、データセット格納部１０１に格納されていても良いし、データセット格納部１０１以外の格納部（図示せず）等に格納されていても良い。、データセット格納部１０１以外の格納部に格納されているデータが、上記のようにリンクされている場合には、実質的にデータセット格納部１０１内に格納されていると考えるようにしてよい。
【０１１３】
図５は、テンプレート格納部１０２に格納されているテンプレート情報を管理するためのテンプレート管理情報である。ここで管理されるテンプレート情報は、例えば、ユーザによって予め作成された情報である。テンプレート管理情報は、「テンプレートＩＤ」と、「フレームＩＤ」と、「位置（ｘ、ｙ）」と、「サイズ（幅、高さ）」と、「データタイプ」と、「データ識別情報」と、「表示属性」という項目を有している。「テンプレートＩＤ」は、テンプレート識別情報である。「フレームＩＤ」は、テンプレート情報が示すフレームのフレーム識別情報である。同じ「テンプレートＩＤ」に対応付けられている「フレームＩＤ」は、同じテンプレートに含まれるフレームのフレームＩＤである。「位置（ｘ、ｙ）」は、フレームの位置情報であり、ここでは、フレームの左上の座標である。単位は例えばポイントであるとする。１ポイントは、ここでは、７２分の１インチとする。「サイズ（幅、高さ）」は、フレームのサイズを示す情報であり、ここでは、フレームの幅と高さを示している。「データタイプ」はフレームに配置されるデータタイプを示している。ここでは、配置されるデータが画像データであるかテキストデータであるかを示している。「データ識別情報」は、フレームに配置されるデータを指定する情報であるデータ指定情報である。データ指定情報として、ここでは、データ識別情報のうちの、特に、タグ名を用いている。このタグ名は、上述したデータセットのデータに付けられているタグのタグ名に対応している。「表示属性」は、フレームに配置されるデータの表示属性を定義する情報である。画像データが配置されるフレームについては、例えば、画像をどのように配置するかを定義する情報が「表示属性」として格納されている。具体的には、画像を、フレームに対して右寄せして配置する、左寄せして配置する等の配置位置を定義する情報や、画像を幅（あるいは高さ）がフレーム幅と一致するよう、縦横比を維持して拡大縮小して配置する等を指示する情報が格納されている。また、テキストデータが配置されるフレームについては、例えば、テキストの書式等を定義する情報が「表示属性」として格納されている。書式を定義する情報は、例えば、テキストのフォントやフォントサイズを定義する情報や、行間隔や、行送りや、トラッキングやカーニング等を定義する情報や、テキストをフレームに対して右揃えする、左揃えする、中央揃えする等の配置を定義する情報等が格納される。なお、ここでは、「テンプレートＩＤ」の値が一致するレコードを、１のテンプレート情報と考える。
【０１１４】
図６は、図５に示した「テンプレートＩＤ」が「ＴＰ１」であるテンプレート情報に含まれるフレームの配置を模式的に示した図である。なお、フィールド内の文字は、図５の「フレームＩＤ」を示している。
【０１１５】
図７は、データレイアウト管理情報格納部１０３に格納されているデータレイアウト管理情報を示す図である。データレイアウト管理情報は、例えば、予めユーザ等により作成された情報であるとする。データレイアウト管理情報は、「ＩＤ」と、「ページＩＤ」と、「データセットＩＤ」と、「テンプレートＩＤ」という項目を有している。「ＩＤ」は、データレイアウト管理情報を管理するための識別情報であり、ここでは、データセットの配列される順番を示す情報としても利用される。「ページＩＤ」は、ページ識別情報であり、ここでは、例えば、商品カタログのページ番号を示している。なお、ここでは、出力単位として、ページを用いる場合を例に挙げて説明する。「データセットＩＤ」は、データセット識別情報であり、図４に示したデータセット管理情報のデータセット識別情報に対応する。「テンプレートＩＤ」は、テンプレート識別情報であり、図５のテンプレートＩＤに対応する。ここでは、同じ「ページＩＤ」と対応付けられたデータセットは、「ＩＤ」の値の小さいものから順に、同じページ内に、予め定義された間隔を隔てて上から並べて配置されるよう、予め設定されているものとする。
【０１１６】
まず、例えば、ユーザが、データセットを配置したページで構成されるカタログを作成する指示を、図示しない受付部等を介してレイアウト処理装置１に与えたとすると、レイアウト処理装置１は、以下のように、例えば１ページ目から順に、データセットを配置したページの作成を開始する。但し、ユーザにより指定されたページの情報だけを作成しても良い。
【０１１７】
まず、出力単位情報生成部１０４は、図７に示したデータレイアウト管理情報を参照して、１番目のページに対応付けられた１番目のデータセットを取得する。具体的には、「ページＩＤ」が「１」であるデータレイアウト管理情報のうちの、「ＩＤ」が一番小さい値「０００１」であるデータレイアウト管理情報から、「データセットＩＤ」の値「００１」を取得する。そして、データセット格納部１０１に格納されている図４に示すデータセット管理情報から、「商品情報」タグ内のＩＤが「００１」であるデータセットを取得する。以下、「データセットＩＤ」が「００１」であるデータセットを、データセット００１と呼ぶ
【０１１８】
図８は、出力単位情報生成部１０４が取得したデータセットを示す図である。
【０１１９】
また、出力単位情報生成部１０４は、図７に示したデータレイアウト管理情報を参照して、「データセットＩＤ」が「００１」であるデータレイアウト管理情報から、「テンプレートＩＤ」の値「ＴＰ１」を取得する。そして、データセット格納部１０１に格納されている図５に示すテンプレート管理情報から、「テンプレートＩＤ」項目の値が「ＴＰ１」であるテンプレート情報を取得する。以下、「テンプレートＩＤ」が「ＴＰ１」であるテンプレート情報をテンプレート情報ＴＰ１と呼ぶ。ここで取得するテンプレート情報は、例えば、「フレームＩＤ」が「ＦＬ１」から「ＦＬ７」までのフレームに関する情報である。以下、「フレームＩＤ」が「ＦＬ１」であるフレームをフレームＦＬ１と呼ぶ。
【０１２０】
つぎに、データセットが配置されていない１ページ目の出力単位情報を生成する。そして、出力単位情報生成部１０４は、取得したテンプレート情報ＴＰ１のフレームＩＤ「ＦＬ１」と対応付けられた「データ識別情報」を読み出して、この「データ識別情報」と同じタグ名のタグが付けられたデータ（タグの要素）を、図８に示したデータセット００１から取得する。そして、取得したデータを、１ページ目の出力単位情報の、テンプレート情報ＴＰ１のフレームＩＤ「ＦＬ１」と対応付けられた「位置」および「サイズ」が示すフレーム内（領域内）に、「表示属性」が示す属性を適用して順次配置する。
【０１２１】
同様の処理をテンプレート情報内の全てのフレームＩＤについて行う。これにより、データセット００１のデータを、このデータセットに対応するテンプレート情報ＴＰ１が示すフレーム内に配置してレイアウトすることができる。
【０１２２】
同様にして、１番目のページに対応付けられた２番目のデータセットを取得して、上記と同様に、このデータセットに含まれるデータを、このデータセットに対応するテンプレート情報ＴＰ１が示すフレーム内に配置する。そして、「ページＩＤ」が「１」に対応したデータセットがこれ以上ないため、一番目のページの出力単位情報を生成が終了する。生成した出力対象情報は、図示しないメモリ等の記憶媒体に一時記憶する。
【０１２３】
図９は、出力単位情報生成部１０４が生成した１ページ目の出力単位情報を示す模式図である。
【０１２４】
以下、２ページ以降の出力単位情報を同様にして生成する。そして、生成した出力単位情報を、出力単位情報格納部１０５に蓄積する。ここでは、例えば、生成された出力単位情報を１のファイルとして蓄積する。出力単位情報のファイル名は、例えば、「商品カタログ」であるとする。また、出力単位情報内には、この出力単位情報の作成に用いられた、図７に示すような複数のデータレイアウト管理情報を識別する情報が配置されているものとする。これにより、この出力単位情報を指定して、この出力単位情報のレイアウトに用いられたテンプレート情報の編集が可能となる。なお、図７に示すようなデータレイアウト管理情報を識別する情報は、データレイアウト管理情報のファイル名等である。
【０１２５】
そして、出力部１０６は、出力単位情報格納部１０５に蓄積された出力単位情報を表示する。例えば、出力単位情報の１ページ目等を表示する。表示される画像は、図９に示した模式図等と同様の画像である。ただし、フレームの枠等は非表示としてもよい。
【０１２６】
ここで、ユーザが、図示しないマウスやキーボード等を操作して、出力単位情報格納部１０５に格納されているファイル名が「商品カタログ」である出力単位情報のレイアウトに用いられたテンプレート情報ＴＰ１を、フレームのサイズ等を変更する変更指示を与えたとする。テンプレート変更部１１１は、変更指示に応じてテンプレート情報ＴＰ１を変更する。例えば、変更指示が、フレームＦＬ１の幅と高さを２８０ポイントに変更する指示と、フレームＦＬ２の幅を１７０ポイントに変更する指示であったとすると、図５に示したテンプレート管理情報の「テンプレートＩＤ」が「ＴＰ１」であるテンプレート情報の、「フレームＩＤ」が「ＦＬ１」であるレコードの「サイズ」の値を、（２８０，２８０）に、また、「フレームＩＤ」が「ＦＬ２」であるレコードの「サイズ」の値を、（１７０，３２）に、それぞれ変更する。
【０１２７】
図１０は、変更後のテンプレート情報を含むテンプレート管理情報である。
【０１２８】
図１１は、配置条件情報格納部１０８に格納されている配置条件管理情報の一例を示す図である。配置条件管理情報は、「テンプレートＩＤ」と、「フレームＩＤ」と、「条件」という項目を有している。「テンプレートＩＤ」は、テンプレート情報の識別情報であり、図５および図１０の「テンプレートＩＤ」に対応する。「フレームＩＤ」は、フレームの識別情報であり、図５および図１０の「フレームＩＤ」に対応する。「条件」は、各テンプレート情報のフレームに対応付けられた、フレームに配置されるデータが、フレームに適合するか否かの判断条件を示す配置条件情報である。例えば、「解像度が３５０ｄｐｉ以上」という「条件」は、フレームに配置された画像データの解像度が、３５０ｄｐｉ以上となる場合、データがフレームに適合すると判断される条件を示す。また、「フレームサイズ以下」という「条件」は、フレームに配置されるデータの配置サイズが、フレームのサイズ以下となる場合、データがフレームに適合すると判断される条件を示す。この配置条件管理情報は、例えばユーザ等により予め作成されたものである。
【０１２９】
次に、適合判断部１０９は、以下のように、変更指示受付部１０７が受け付けた変更指示により変更されるテンプレート情報によって配置されているデータセットが、変更後のテンプレート情報に適合するか否かを判断する。
【０１３０】
まず、適合判断部１１１は、変更されたテンプレート情報の「テンプレートＩＤ」である「ＴＰ１」を、変更指示受付部１０７やテンプレート変更部１１１等から取得する。そして、適合判断部１０９は、このテンプレート情報ＴＰ１でレイアウトされたデータセットの一つを検出する。具体的には、図７に示したデータレイアウト管理情報において、「テンプレートＩＤ」が「ＴＰ１」であるレコードの「データセットＩＤ」の値の一つである「００１」を、まず取得する。そして、データセット００１から、テンプレート情報ＴＰ１のフレームＦＬ１に配置されるデータを、テンプレート情報ＴＰ１のフレームＦＬ１に対応付けられたデータ識別情報「説明画像」を用いて取得する。ここでは、「ｅｂｉ．ＪＰＧ」という画像データを取得する。
【０１３１】
また、適合判断部１０９は、このテンプレート情報ＴＰ１のフレームＦＬ１に対応した配置条件情報を配置条件情報格納部１０８から取得する。具体的には、「テンプレートＩＤ」が「ＴＰ１」で、「フレームＩＤ」が「ＦＬ１」であるレコードの配置条件情報「解像度が３５０ｄｐｉ以上」を、図１１に示した配置条件管理情報より取得する。
【０１３２】
そして、適合判断部１０９は、取得した画像データ「ｅｂｉ．ＪＰＧ」を、変更されたテンプレート情報ＴＰ１のフレームＦＬ１内に、このフレームＦＬ１に対応付けられた「表示属性」を適用して配置した場合に、上記で取得した配置条件情報が示す条件を満たすか否かを判断する。ここでは、フレームＦＬ１に対応付けられた「表示属性」が「幅をフィット」であるため、適合判断部１０９は、画像データ「ｅｂｉ．ＪＰＧ」を、画素数を変更せずに、幅２８０ポイントのフレームに縦横比を変更せずに配置した場合の、画像の解像度を計算する。例えば、元々の画像データ「ｅｂｉ．ＪＰＧ」の画素数が、高さ１５６０ピクセル、幅１５６０ピクセルであったとすると、２８０ポイントのフレームに配置した場合の解像度は、１５６０÷２８０×７２＝４０１ｄｐｉとなり、３５０ｄｐｉ以上となるため、配置条件情報が示す条件を満たすこととなり、このフレームＦＬ１に配置されるデータは、このデータが配置される変更後のテンプレート情報のフレームに適合すると判断される。
【０１３３】
つぎに、適合判断部１０９は、データセット００１から、テンプレート情報ＴＰ１のフレームＦＬ２に配置されるデータを、テンプレート情報ＴＰ１のフレームＦＬ２に対応付けられたデータ識別情報「商品名」を用いて取得する。ここでは、「北海巻きえび（ギフト用化粧箱入り）」というテキストデータを取得する。
【０１３４】
また、適合判断部１０９は、このテンプレート情報ＴＰ１のフレームＦＬ２に対応した配置条件情報を配置条件情報格納部１０８から取得する。具体的には、「テンプレートＩＤ」が「ＴＰ１」で、「フレームＩＤ」が「ＦＬ２」であるレコードの配置条件情報「フレームサイズ以下」を、図１１に示した配置条件管理情報より取得する。
【０１３５】
そして、適合判断部１０９は、取得したテキストデータ「北海巻きえび」を、変更されたテンプレート情報ＴＰ１のフレームＦＬ２内に、このフレームＦＬ１に対応付けられた「表示属性」を適用して配置した場合に、上記で取得した配置条件情報が示す条件を満たすか否かを判断する。ここでは、フレームＦＬ１に対応付けられた「表示属性」が「３０ポイント」であるため、適合判断部１０９は、テキストデータ「北海巻きえび」を、３０ポイントのフォントサイズで配置した場合の、配置サイズを計算する。例えば、テキストデータの文字数が６文字であり、各文字間の間隔が０ポイントであるとすると、３０×６＝１８０ポイントとなり、フレームＦＬ２の幅である１７０ポイントよりも大きな値となる。このため、配置条件情報が示す「フレームサイズ以下」という条件を満たさないこととなり、このフレームＦＬ２に配置されるデータは、このデータが配置される変更後のテンプレート情報のフレームに適合しないと判断される。
【０１３６】
適合判断部１０９は、このデータセット００１のタグ名が「商品名」であるデータが、変更後のテンプレート情報に適合しないデータであることを示す管理情報である不適合管理情報を、図示しない記憶媒体等に蓄積する。
【０１３７】
図１２は、変更後のテンプレート情報に適合しないデータを管理する不適合管理情報を示す図である。不適合管理情報は、「データセットＩＤ」と「タグ名」という項目を有する。「データセットＩＤ」は、不適合のデータを含むデータセットの識別情報である。「タグ名」は、不適合のデータに付けられているタグ名である。適合しないと判断されたデータの属するデータセットＩＤが、「データセットＩＤ」に、また、そのデータのタグ名が、「タグ名」に蓄積される。
【０１３８】
以下、同様にして、変更後のテンプレート情報が示すフレームＦＬ３〜ＦＬ７に、これらのフレームと対応付けられたデータセット００１の残りのデータが適合するか否かを判断する。
【０１３９】
ここでは、データセット００１の残りのデータがフレームＦＬ３〜ＦＬ７に適合したとする。
【０１４０】
つぎに、適合判断部１０９は、変更後のテンプレート情報ＴＰ１を用いて配置されたデータセット００１のデータの代わりに、変更後のテンプレート情報ＴＰ１を用いて、データセット００１のデータを配置した場合に、１ページ目のページに配置されていたデータが、同じページ内に収まるか否かを判断する。具体的には、出力単位情報格納部１０５に格納されている出力単位情報から、１ページ目の出力単位情報を呼び出し、この出力単位情報に配置されているデータセット００１を、変更後のテンプレート情報ＴＰ１によりレイアウトしたデータセット００１に変更した場合に、このデータセット００１のデータや、他のデータ（ここでは、データセット００２のデータ）が、１ページ内に収まるか否かを判断する。具体的には、変更後のテンプレート情報ＴＰ１によりデータセット００１のデータをレイアウトして配置した場合の全体の配置サイズを算出し、そのサイズと、既に配置されている他のデータのサイズと、データセット間の配置間隔の合計が、１ページのデータが配置可能な領域以下であるか否かを判断することで判断可能である。例えば、テンプレート情報ＴＰ１のフレームとして、幅だけが定義されており、高さが可変であるフレームが含まれていたとすると、配置されるデータによって、データセットの高さが大きく変化する可能性があり、ページ内にデータセットが収まらなくなることが考えられる。ページ内に収まらないと判断された場合、後述するような出力単位情報更新部１１２による、変更されたテンプレート情報ＴＰ１を用いたデータセット００１の配置変更は行われない。また、ページ内に収まらないと判断された場合、このデータセット００１が、テンプレート情報に適合しないデータセットであることを示す情報を、適合判断部１０９の判断結果の一つとして、図示しない記憶媒体等に蓄積するようにしてもよい。例えば、このデータセットに対応付けて適合しないことを示すフラグ等を立てても良いし、このデータセットの識別情報を、適合しないデータセットを示す情報として蓄積しても良い。
【０１４１】
ここでは、テンプレート情報ＴＰ１全体の配置サイズが変わらず、また、１ページ目に配置されていたデータが、全て同じページ内に収まるため、適合判断部１０９は、データセット００１のレイアウトが、変更後のテンプレート情報に応じて変更されても、１ページ目に配置されていたデータは同じページ内に収まると判断される。
【０１４２】
このため、出力単位情報更新部１１２は、出力単位情報生成部１０４と同様に、データセット００１のデータを、変更後のテンプレート情報ＴＰ１の対応するフレームに配置したデータを生成する。ここで、データセット００１のデータを、変更後のテンプレート情報ＴＰ１の対応するフレームに配置したデータを生成する際に、出力単位情報更新部１１２は、図１２に示す不適合管理情報を参照し、この不適合管理情報が示すデータについては、フレーム内に収まるようにサイズを縮小して配置するようにする。例えば、図１２に示す「データセットＩＤ」が「００１」で、「タグ名」が「商品名」であるデータについては、このデータに対応するフレームＦＬ２に配置する際に、文字等のサイズを、フレームサイズ（ここでは、フレーム幅）に合わせて縮小して配置される。
【０１４３】
そして、このようにして変更後のテンプレート情報に従ってレイアウトしたデータセット００１で、出力単位情報格納部１０５に格納されている出力単位情報のうちの、データセット００１が配置されている出力単位情報の、データセット００１が配置されている部分を更新する。これにより出力単位情報格納部１０５に格納されている出力単位情報が、テンプレート情報の更新に伴って変更される。なお、更新の際に、更新されたデータセットと、既に配置済の他のデータセットとが重なった場合等には、それぞれが重ならないように、配置を変更するようにしても良い。このような技術が公知技術であるので、ここでは説明を省略する。
【０１４４】
以下、データセット００１以外のテンプレート情報ＴＰ１でレイアウトされて配置されたデータセットについても、上記と同様の処理を繰り返して、出力単位情報の更新を行う。
【０１４５】
なお、ここでは、出力単位情報更新部１１２は、出力単位情報格納部１０５に格納されている出力単位情報のテンプレートが変更されたデータセットが配置されている部分だけを更新するようにしたが、出力単位情報更新部１１２は、テンプレートが変更されたデータセットを含むページである出力単位情報を、変更後のテンプレート情報を用いて再度生成し、生成した出力単位情報で、出力単位情報格納部１０５に格納されている出力単位情報を更新するようにしても良い。
【０１４６】
また、ここでは、データセット毎に出力単位情報の更新を行うようにしたが、以下のように、出力単位情報毎に更新を行うようにしても良い。まず、出力単位情報毎（つまりページ毎）に、変更されたテンプレートに対応したデータセットがあるか否かを判断して、ある場合に、これらのデータセットが、それぞれ変更されたテンプレート情報に適合するか否かを上記と同様に判断する。さらに、変更されたテンプレート情報でデータセットをレイアウトして配置した場合に、各出力単位情報に対応付けられたデータセットが、対応付けられた出力単位情報内に配置可能であるか否かを判断する。そして、配置可能である場合には、その出力単位情報を、変更されたテンプレート情報を用いて生成し、生成した出力単位情報で、出力単位情報格納部１０５に格納されている出力単位情報を更新するようにしても良い。
【０１４７】
そして、判断結果出力部１１０は、図１２に示したような不具合管理情報の情報を読み出して、この不具合管理情報が示すデータがテンプレート情報の変更に不適合であったことを示す判断結果情報を作成して表示する。
【０１４８】
図１３は、判断結果出力部１１０の表示例を示す図である。このように変更されたテンプレート情報と適合しないデータをユーザに示すことができるため、ユーザは、変更したテンプレート情報を適用して得られた出力単位情報の不具合等を迅速に確認できる。また、テンプレート情報の変更が適切であったか否かを確認することができる。
【０１４９】
また、出力部１０６は、出力単位情報格納部１０５に格納されている更新された出力単位情報を、図示しないモニタ等に表示する。
【０１５０】
図１４は、出力部１０６の表示例を示す図である。
【０１５１】
以上、本実施の形態によれば、テンプレート情報を変更した際に、変更されたテンプレート情報に適合しないデータセットを検出して、適合しないデータセットがあることを示す情報を出力することができる。これにより、例えばユーザが出力単位情報を表示してチェックしなくても、テンプレート情報に適合しないデータがあることを容易にかつ早急に認識できるため、出力単位情報の修正やテンプレート情報等の修正を迅速に対応できることができ、データを適切に配置した出力単位の情報を出力することができる。
【０１５２】
なお、本実施の形態においては、適合判断部１１１は、変更指示により変更されたテンプレート情報のうちの、変更が行われたフレームについてだけ、配置されるデータがフレームに適合するか否かを判断を行うようにしても良い。そして、例えば、一のデータセットのデータのうちの、変更されたフレームに配置されるデータの全てが、それぞれが配置されるフレームに適合する場合に、そのデータセットが、変更されたテンプレート情報に適合すると判断し、全てが適合しない場合に、そのデータセットは、変更されたテンプレート情報に適合しないと判断してもよい。
【０１５３】
なお、上記各実施の形態において、各処理（各機能）は、単一の装置（システム）によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
【０１５４】
また、上記各実施の形態において、一の装置に存在する２以上の通信手段（情報送信部など）は、物理的に一の媒体で実現されても良いことは言うまでもない。
【０１５５】
また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりする情報や、各構成要素が処理で用いるしきい値や数式、アドレス等の情報等は、上記説明で明記していない場合であっても、図示しない記録媒体において、一時的に、あるいは長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、あるいは、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、あるいは、図示しない読み出し部が行ってもよい。
【０１５６】
また、上記各実施の形態では、レイアウト処理装置がスタンドアロンである場合について説明したが、レイアウト処理装置は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、出力部や受付部は、通信回線を介して入力を受け付けたり、画面を出力したりすることになる。
【０１５７】
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをＣＰＵ等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。
【０１５８】
なお、上記各実施の形態におけるレイアウト処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、１以上のデータを含むデータセットがデータセット格納部に格納されており、データセットのレイアウトを定義する情報であるテンプレート情報がテンプレート格納部に格納されており、コンピュータを、テンプレート情報に対する変更指示を受け付ける変更指示受付部と、変更指示に応じて、テンプレート情報の内容を変更した場合に、データレイアウト管理情報格納部に格納されているデータセットと、テンプレート情報と、データセットが配置される出力単位との対応関係を示す情報であるデータレイアウト管理情報が示す、変更されたテンプレート情報が定義するレイアウトで出力単位に配置される各データセットが、変更されたテンプレート情報に適合するか否かを判断する適合判断部と、適合判断部の判断結果を出力する判断結果出力部として機能させるためのプログラムである。
【０１５９】
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
【０１６０】
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
【０１６１】
図１５は、上記プログラムを実行して、上記実施の形態によるレイアウト処理装置を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
【０１６２】
図１５において、コンピュータシステム９００は、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）ドライブ９０５、ＦＤ（Ｆｌｏｐｐｙ（登録商標）  Ｄｉｓｋ）ドライブ９０６を含むコンピュータ９０１と、キーボード９０２と、マウス９０３と、モニタ９０４とを備える。
【０１６３】
図１６は、コンピュータシステム９００の内部構成を示す図である。図１６において、コンピュータ９０１は、ＣＤ−ＲＯＭドライブ９０５、ＦＤドライブ９０６に加えて、ＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）９１１と、ブートアッププログラム等のプログラムを記憶するためのＲＯＭ９１２と、ＭＰＵ９１１に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９１３と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク９１４と、ＭＰＵ９１１、ＲＯＭ９１２等を相互に接続するバス９１５とを備える。なお、コンピュータ９０１は、ＬＡＮへの接続を提供する図示しないネットワークカードを含んでいてもよい。
【０１６４】
コンピュータシステム９００に、上記実施の形態によるレイアウト処理装置等の機能を実行させるプログラムは、ＣＤ−ＲＯＭ９２１、またはＦＤ９２２に記憶されて、ＣＤ−ＲＯＭドライブ９０５、またはＦＤドライブ９０６に挿入され、ハードディスク９１４に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ９０１に送信され、ハードディスク９１４に記憶されてもよい。プログラムは実行の際にＲＡＭ９１３にロードされる。なお、プログラムは、ＣＤ−ＲＯＭ９２１やＦＤ９２２、またはネットワークから直接、ロードされてもよい。
【０１６５】
プログラムは、コンピュータ９０１に、上記実施の形態によるレイアウト処理装置の機能を実行させるオペレーティングシステム（ＯＳ）、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能（モジュール）を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム９００がどのように動作するのかについては周知であり、詳細な説明は省略する。
【０１６６】
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【０１６７】
以上のように、本発明にかかるレイアウト処理装置は、テンプレート情報を用いてレイアウトを行う装置として適しており、特に、１以上のデータセットをテンプレート情報を用いて、レイアウトして配置する装置等として有用である。
【符号の説明】
【０１６８】
１  レイアウト処理装置
１０１  データセット格納部
１０２  テンプレート格納部
１０３  データレイアウト管理情報格納部
１０４  出力単位情報生成部
１０５  出力単位情報格納部
１０６  出力部
１０７  変更指示受付部
１０８  配置条件情報格納部
１０９  適合判断部
１１０  判断結果出力部
１１１  テンプレート変更部
１１２  出力単位情報更新部
【図１】
0005857281.tif 000002
【図２】
0005857281.tif 000003
【図３】
0005857281.tif 000004
【図４】
0005857281.tif 000005
【図５】
0005857281.tif 000006
【図６】
0005857281.tif 000007
【図７】
0005857281.tif 000008
【図８】
0005857281.tif 000009
【図９】
0005857281.tif 000010
【図１０】
0005857281.tif 000011
【図１１】
0005857281.tif 000012
【図１２】
0005857281.tif 000013
【図１３】
0005857281.tif 000014
【図１４】
0005857281.tif 000015
【図１５】
0005857281.tif 000016
【図１６】
0005857281.tif 000017