XMLとはeXtensible Markup Languageの略で、タグ付けさけた情報のことです。InDesignではXMLを標準で扱うことができ、定型物の自動組版に威力を発揮します。また、XMLを用いることで、ワンソース・マルチユース(ひとつのXMLドキュメントを、複数の異なる用途のドキュメントに用いること)を実現することも可能です。今回は、「No.33 データ結合」と同じように、名刺の作成をXMLを用いて行う手順について記述させていただきます。
まず、読み込むXMLドキュメントを用意します(通常は、データベース等から書き出します)。<タグ名>コンテンツタグ名>といったように、HTMLと同様にコテンツを<タグ名>で囲んで記述します。タグ名は、間にスペースを挟まない半角英数字で記述しましょう。なお、リンクファイルは<タグ名 href="file://ファイルパス>タグ名>と記述し、絶対パス、あるいはCS2ドキュメントからの相対パスで記述します(下図)。
InDesignで元となるドキュメントを作成します(下図)。なお、各フレームには、段落スタイルを設定しておきましょう。
[ファイル]メニューから[XMLを読み込み]を選択し、目的のファイルを読み込みます(下図)。
[XML読み込みオプションを表示]にチェックを入れた状態で読み込みを実行すると、下図のようなダイアログが表示されます。
それぞれ、以下のような内容で読み込みが実行されます。
モード:「内容を結合」を選択すると、既存のXML要素にコンテンツを結合し、「内容を追加」を選択すると、既存のXML要素とは別にコンテンツを追加します。
リンクを作成:XMLファイルに対するリンクを作成します。XMLに変更が生じるとリンクパレットにアラートを表示し、リンクを更新すればコンテンツが更新されます。
繰り返すテキスト要素を複製:タグつきテキストのプレースホルダでのフォーマットを、読み込んだXMLファイル内の反復要素に自動的に適用します。
既存の構造に一致する要素だけを読み込む:既存の構造以外の要素(およびコンテンツ)を読み込みません。
タグが一致した場合テキスト要素を表に読み込む:XML内のタグが、表とセルのタグと一致する時、表に要素を読み込みます。
空白のみの要素を読み込まない:XML要素のコンテンツが空白(改行文字やタブ文字などの場合を含む)の時、ドキュメント内の既存の内容を保持します。
読み込まれたXMLに一致しない要素、フレームおよび内容を削除:読み込んだXML構造に一致しない要素を、InDesignの構造ウィンドウおよびレイアウトから自動的に削除します。
読み込みを実行すると、ウィンドウ左側に読み込んだXMLの階層が表示されますので、タグをレイアウト上のオブジェクトにドラッグ&ドロップで対応させます(下図)。
タグをレイアウトの各オブジェクトに関連付けたものが下図です。
しかし、このままでは完成ではありません。タグと段落スタイルを関連付ける必要があります。[構造]メニューから[タグをスタイルにマップ]を選択します(下図)。
すると[タグをスタイルにマップ]ダイアログが表示されるので、各タグに対して、関連付ける段落スタイルを選択します(下図)。この時、[名前順にマップ]ボタンをクリックすると、タグと同名の段落スタイルを一気にマッピングすることができます。
つまり、あらかじめ作成しておく段落スタイル名を、タグと同じ名前で作成しておけば、[名前順にマップ]ボタンをクリックするだけで、マッピングが完了するわけです(下図)。
マッピングが完了すると、ドキュメントは下図のように表示されます。
これで名刺のテンプレートが完成しました。あとは同様のタグ構造を持つXMLドキュメントを読み込んであげれば、自動的に組版が完了します。
(補足)
XMLに関しては、以下のURLから「InDesign CS2で始めるXMLガイド」とサンプルファイルをダウンロードして参照して下さい。XMLの基本的な機能をわかりやすく解説していますので、ぜひ一読されることをお勧めいたします。
http://www.adobe.com/jp/print/printproinfo.html