第4章 InDesignによるJATS XMLの作成方法
山口 雅広
4.1 はじめに
(1) InDesignとは
Adobe Inc.が提供するDTP(Desktop Publishing)アプリケーションソフト、InDesignは、高度なグラフィック処理能力を備え、印刷出版関連のプロフェッショナルに広く愛用されています。広告、雑誌、パンフレット、カタログなど、多岐にわたるデザインやレイアウト機能を提供し、直感的な操作性を備えています。その人気の高さから、Webサイトには多くの情報が掲載されています。
本章では、InDesignによるJATS XMLの作成方法をテーマとして、主にXML組版とタグ付きテキストを取り上げ、ご紹介していきます。
(2) なぜInDesignでXML組版なのか?
まず、XML組版を最初に考えたとき、専用のアプリケーションソフトの導入を考える方が多いのではないでしょうか? もちろんそれも選択肢のひとつと言えます。しかし、専用ソフトはいちから操作を覚える必要があり、また高価で定期的なライセンス料やサポート費用が発生することがあります。対してInDesignは、サブスクリプション契約により良心的な価格で常に最新のバージョンが利用可能で、しかも画像の編集加工やトレースを行う際に必要となるPhotoshopやIllustrator、そして複数のフォントが利用可能なプランが提供されています。また、利用者数が多いことでバグの報告や修正も頻繁に行われており、機能強化のバージョンアップも毎年行われています。
このように、導入のしやすさや頻繁に行われる機能強化が理由として挙げられます(2024年現在)。
4.2 InDesign組版からJATS XMLを作成するための2つの方法
(1) XMLベース
JATS XMLをタグ付きテキスト経由でInDesignに読み込み自動組版する方法です。組版PDFの他に、JATS XMLの制作を視野に入れた、データの一元化による運用方法になります。以降、この運用方法をXMLベースと呼びます。
この運用方法の特徴は下記の通りです。
1) メリット
- ● 初回の組版テンプレートや各種処理構築により作業の効率化が可能。
- ● ワンソースマルチユース(ひとつのソースデータを、複数の用途に使用すること)が可能であり、組版PDFと同時にJATS XMLが完成する。そのため、校了後短期間で各種プラットフォーム(J-STAGEなど)への公開が可能。
- ● 組版PDFの校正と一緒にJATS XMLのチェックや修正が行えるため、作業が重複せず効率的。
2) デメリット
- ● 初回は、組版テンプレートや各種処理構築の準備に時間がかかる。
- ● XMLでの修正になるため、修正難易度が高くなる。
- ● 校正での修正が多い場合、また想定外の修正の場合、組版での負担が増えてしまう。
- ● JATS XMLに変換してから、そのデータを使用して組版を行うため、XML変換時に文字化けや文字欠落などがあるとJATS XMLだけでなく組版PDFにも影響してしまう。これは早い段階(組版段階)で間違いに気がつけるというメリットである一方で、著者が執筆した原稿を誤って変更してしまい、それが組版PDFにまで影響してしまうということで、デメリットの要素も含む。
(2) 組版ベース
InDesignで通常通り組版後、校了データからタグ付きテキストを書き出し、JATS XMLに変換する方法。以降この方法を組版ベースと呼びます。
この運用方法の特徴は下記の通りです。
1) メリット
- ● スタイルを定義して組版する以外、他に大きな制限は設けないため、組版に制限はなく通常通り組版することができる。既に組版を行っている場合は、既存のInDesignデータが利用できる。そのため、顧客からInDesignデータを支給してもらい、そこからJATS XMLを作成することが可能になる。
2) デメリット
- ● InDesign組版では、内容やレイアウトに制限がないため、JATS XMLに沿ったかたちに変換するのが困難な場合があり、変換後のチェックと修正の割合が多くなる。組版での校正の他に、XML化時にも再度チェックを行うというように、2重でのチェックが必要になる。そのため、校了からXMLの完成までに時間がかかる。
4.3 XMLベースでの運用について
InDesignは、標準でいくつかのXML関連の機能をサポートしています。InDesignでXML組版を考えたとき、その機能を利用することが一般的だと思います。しかし、今回ご紹介する方法は、InDesignの自由なレイアウトと豊富な機能を最大限活用するため、標準で提供されている機能を一切使わず、XML組版を行う方法になります。これにより、難易度は非常に高くなりますが、学術論文のレイアウトデザインを制限することなく、PDFとJATS XMLを同時に作成することができるようになります。
(1) XMLベースによる作業手順
XMLベースによる作業手順については、図4.1をご参照ください。

まず、eXtylesを使用してWordをJATS XMLに変換します(eXtylesについては、5.1節を参照)。そのJATS XMLを再度タグ付きテキストに変換し、InDesignに読み込み自動組版を行います。校正ではJATS XMLを修正します。
これにより、最終のソースデータをJATS XMLとして持つことができるようになります。
(2) タグ付きテキストについて
InDesignは、段落スタイル、文字スタイル、書式などの情報をタグ付きテキストという形式で書き出すことができます。
タグ付きテキストの書き出しは、InDesignでストーリーを選択、メニューの「ファイル」→「書き出し」で行います。
図4.2のように「書き出し」のファイルの種類で「Adobe InDesignタグ付きテキスト(*.txt)」を選択します。

次に、図4.3のようにタグ形式、及びエンコーディングの設定を選択し、書き出しを行います。

それでは、具体的なサンプルで見ていきましょう。サンプルとして図4.4のような書式設定された体裁をInDesignで作成します。

段落スタイルは図4.5のように設定します。ストーリーエディタで開くと左側に段落スタイル名が表示され、確認することができるようになります。

タグ形式を「略書き」とし、エンコーディングを「Unicode」にして、タグ付きテキストの書き出しを行うと図4.6のようなテキストが書き出されます。

このサンプルでは、「Title」という名前の段落スタイルは、<pstyle:Title>というタグになり、段落先頭に挿入されます。
また、「FirstName」という名前の文字スタイルは開始タグ「<cstyle:FirstName>」で始まり、終了タグ「<cstyle:>」で閉じられます。
ファイル先頭には、<UNICODE-WIN>というタグがありますが、これはWindows OSでUnicode書き出しを行ったタグ付きテキストであることを示しています。
このように、InDesignはスタイルや書式をタグとして書き出すことができ、逆に読み込む機能もサポートしています。そのため、タグ付きテキストを編集して読み込み直すことで、体裁を外部で制御することができるようになります(書き出したタグをそのまま読み込んでも全てを再現できるわけではありません。再現できない部分は、スクリプトで補完する必要があります)。
つまり、この機能を利用してJATS XMLをタグ付きテキストに変換し、InDesignに読み込ませることで、図4.1でご紹介した手順が実現可能となります。
(3) JATS XMLからタグ付きテキストへの変換について
タグ付きテキストへの変換は、XMLからの変換を得意とするXSLT(Extensible Stylesheet Language Transformations)や各種プログラミング言語を使用します。
XSLTやプログラミング言語の習得には、時間がかかりますが、幸いなことに、以前と比べて書籍や情報提供のウェブサイトが充実しています。最近ではChatGPTをはじめとする人工知能(AI)の登場により、正確性は自分で判断する必要がありますが、情報を素早く集めることができるようになりました。
組版においてのプログラミングは変換のための手段であって、それ自体がアプリケーションソフトのような最終成果物ではありません。はじめから完璧を求めるのではなく、まずはチャレンジし、上手くいかなければ手作業で調整をするといったように、まずは手を動かしてみるのがよいでしょう。
(4) InDesignでの自動組版について ~半自動運用への切替え準備を~
InDesignには、作業の自動化のためにスクリプトという機能が存在します。スクリプトはプログラミング言語のJavaScript、VBScript(Windowsのみ)、AppleScript(Macのみ)、UXPScript(Adobe Creative Cloud R2023以降)で記述することが可能で、同じ操作の繰り返しを自動化することができます。
タグ付きテキストで操作できない部分はスクリプトで自動化し、処理を構築していくことになります。
しかし、最初から最後まで全て自動で処理させようとすると例外的な修正に対応できなくなってしまったり、スクリプトの変更に時間がかかったりと、逆に効率が落ちてしまう場合があります。修正の内容や出現頻度に応じて手作業での修正に切り替えられるよう(半自動運用の)準備をしておくことが重要です。
たとえば、学術論文の組版においては、論文単位で組版ファイルを別にしておき、論文ごとに完全自動と半自動を切替えられるようにしておくのがよいでしょう。
(5) InDesignにおける学術論文のワンソースマルチユースについて
ワンソースマルチユースというと、データを一元化し、一つのソースデータ(XML)から複数の用途で書き出し、利用できるということでコストダウンに繋がるのではないかと魅力的に映ります。しかし、ソースデータ(XML)の修正作業が多く発生してしまうと、難易度の高い修正が裏目にでて、逆に効率が落ちてしまうことがあります。
具体的には、例外的な修正が発生した場合に、複数の出力先のことまで考えながらソースデータ(XML)を直していかなければならなかったり、実際に出力して想定通りの結果が得られるかを確認しながら修正を進めたりする場面がでてくることがあります。その場合、校了後のXML化が早くなる反面、内容を大幅に変更するような修正が多いと組版作業の負担が増え、想定通りにいかなくなってしまうことがあります。
その対策として重要なのが下記のような前準備になります。
- ● 原稿データの段階で掲載する図表の数や内容を確定しておき、組版後はレイアウトの調整と若干の修正のみとする。
- ● 事前にレイアウトルールを取り決め、その通りに組版していく。
重要ではありますが、現実にはなかなか思い通りにいかないこともあります。しかし、学術論文は著者が執筆を完了した論文になるため、組版後に文章が大きく変わる可能性は低いでしょう。また、ジャーナル内で体裁を統一するため、レイアウトルールもしっかり決まっています。
そのため、学術論文はこの2つの条件を満たしており、ワンソースマルチユースに向いていると言えます。
環境は揃っています。あとは、学術論文のXML化の規格であるJATSを学び、実行するのみです。
4.4 組版ベースでの運用について
組版ベースでの運用では、InDesignからタグ付きテキストを書き出し、必要な処理を加えてJATS XMLを作成していきます。タグ付きテキストについては、これまでに説明してきたように、段落スタイルと文字スタイルと書式情報がタグとして書き出されます。スタイル付けの精度は組版を行った組版オペレーターによって左右され、スタイルの割り当てがされていないテキストはタグが付かず、JATS XMLに必要な要素が抜け落ちてしまいます。そのため、タグ付きテキストからJATS XMLを完全自動で作成することは難しく、機械的な変換に加えて、手作業による修正と目視確認によるチェックが必要になります。
(1) 完全自動変換について
もし、組版ベースにより完全自動でJATS XMLの作成を目指すのであれば、スタイルの割り当てを正確に行い、かつスタイルを細かく割り当てる必要があります。たとえば、著者の姓名が同じ書体であっても、「姓」と「名」で文字スタイルを変えるといったように、スタイルは体裁で割り当てるのではなく、意味で割り当てることが重要です。そうすることで、そのスタイル情報をキーとして機械的に値を取得できるようになります。図4.7と図4.8にその例を示します。


図4.7のように、全て同じ書体で組まれた著者名と所属のサンプルがあったとします。体裁だけを考えれば、著者名と所属用の段落スタイルを1つ。あるいは著者名用1つと所属用1つで2つの段落スタイルとし、文字スタイルは割り当てないのが一般的でしょう。
しかし、意味でスタイルを割り当てると、図4.8のように「著者名」は段落スタイルの「<pstyle:Author>」を付け、その中の「姓」は文字スタイルの「<cstyle:LastName>~<cstyle:>」を、「名」は文字スタイルの「<cstyle:FirstName>~<cstyle:>」を、「所属番号」は「<cstyle:AffiliationNo>~<cstyle:>」を付ける。「所属」は、段落スタイルの「<pstyle:Affiliation>」を付け、著者の肩付きの所属番号と対応する「所属のラベル番号」には、文字スタイルの「<cstyle:AffiliationLabel>~<cstyle:>」を付け、「所属名」は文字スタイルの「<cstyle:AffiliationName>~<cstyle:>」を付ける。というように、細かく文字スタイルを割り当てていくことになります。
ここまでして、はじめて機械的に情報を取得できるタグ付きテキストが書き出せるようになります。しかし、タグを見ながら組版できないInDesignでは正確にスタイルを割り当てていくことは簡単なことではありません。場合によっては組版の難易度が何倍にも上がってしまいます。
だからといって、JATS XMLを手作業でタグ付けして作成するのは、間違いのリスクが高くおすすめできません。
(2) 半自動運用について
そこで、全てを自動化するのではなく、ある程度の手作業を許容することで全体を通しての効率化を図っていくことを考えてみます。具体的には、次のような方法になります。
スタイルは体裁で判断できる範囲までとし、スタイルが割り当てられず値の取得ができない場合(ブランクとなる箇所)には、ひとまず図4.9のように“〓”などの文字を仮で挿入し、機械的に一度JATS XMLを作成します。次に“〓”となっている部分を検索していきながら正しい値を手作業で補っていきます。最後に機械的に抽出してきた部分も含めて正しく作成できたか目視確認でチェックします。

以上のような完全自動でも手作業でもない、半自動運用という柔軟なアプローチが組版ベースでの運用には向いているように思います。
4.5 「XMLベース」と「組版ベース」どちらがよいのか?
「XMLベース」と「組版ベース」、いずれの方法でも効率的、かつ柔軟に対応するためとし、半自動での運用をご紹介してきました。組版では自由なレイアウトが可能です。しかし、自由にレイアウトを行ってしまうと結果として機械的に判断ができなくなってしまい間違いのリスクが増え、非効率な運用方法となってしまいます。半自動のうちの手作業での対応は最小限とし、できるだけ機械的に判断できるように関係者全員が意識していくことが大切です。
「XMLベース」と「組版ベース」では、それぞれにメリットとデメリットが存在することをご紹介しました。どちらがよいかは、状況によって異なり、書籍や雑誌の特徴やこだわりによって大きく左右されます。状況によって使い分けるのがよいでしょう。
InDesignをはじめとするAdobe製品は、毎年バージョンアップを続け進化しています。Adobe Inc.は自社製品に早い段階から人工知能(AI)を取り入れています。今最善と言われている方法が数年後には違っているかもしれません。我々はその情報を素早くキャッチし、取り入れていく必要があります。