編集者とデザイナーのためのXML勉強会


このエントリーは加筆した最新版が『マガジン航』に転載されていますので、そちらをご覧ください。
http://www.dotbook.jp/magazine-k/2010/04/28/xml_workshop_for_editors_and_designers/
以下は、発表当時のままのエントリーです。こちらもそのまま残しておきます。
HTMLもよくわからないという編集者とデザイナーのために、4月16日、XMLの勉強会を行いました。これだけでXMLが理解できるというものではなく、これから各自が自分で勉強していくためのガイダンスというか、入門の入門みたいな話です。具体的には、「文章」をコンピュータ上で「受け渡すための方法」や「再利用」「互換性」などに関する話です。
ここでは、勉強会で私が話した内容と資料を掲載しておきます。かなり端折った説明だったので、もし内容に間違いがある場合はコメントかメールしてださい。


■コンピュータの基本ファイルは「テキスト」
DTPやWeb、電子書籍などのコンテンツで「原稿」と呼ばれているものの大半は「テキスト」です。「プレーンテキスト」は、どのコンピュータであっても、受け渡しがほぼ保証されています。それ以外の、例えばワードやInDesignファイル、PDF、といったネイティブファイルは、互換性が制限されてしまいます。
さて、テキストファイルを文章原稿として受け渡しする場合、コンピュータはその文字列が何なのか理解することはできません。小説なのか詩なのかニュースなのか伝票の数字なのか、意味自体を理解することなく、ただ文字が並んでいることしか分からないのです。それを人間にもコンピュータにも分かるようにするのが「構造情報」や「書式情報」です。
テキスト中に「これは小説」「ここからここまでは見出し」「ここからここまでは本文」といった記述(マーク)を付けることを文書の構造化といい、こういった方法でテキストを構造化することを「マークアップ言語」といいます。「言語」というのはコンピュータ用の言葉で書かれた文章やプログラムという意味です。
さらに、「見出しは24ポイントのヒラギノW6で色は青」とか「本文はリュウミン-Rの9ポイント行間二分」といった「書式情報」を用意する場合もあります。これらはスタイルシートと呼ばれます。
今回はスタイルシートに関して説明する時間はないので、「マークアップ言語」について説明します。実は、HTMLもXMLも、このマークアップ言語なのです。
■HTMLとは
Webページの表示に使われてるHTML(Hyper Text Markup Language)は、昔からコンピュータの世界で文章の構造を表すために使用されていたSGML(Standard Generalized Markup Language)をベースに、1990年に開発されました。
SGMLは、文章中に「タグ」というマークを挿入して「ここからここまでは見出し」であるとか「ここからここまでは脚注」であるといった構造分けをしました。「見出し」や「脚注」などといったそれぞれの要素(エレメント)は、記述する人が自由にタグとして定義することができました。そして、「こういうタグを作ったから、こういう順番で使う」というルール(DTD)を自分で決めます。
それに対してHTMLはインターネット上での情報共有が目的だったため、DTDの定義を固定しました。文書の中に画像を埋め込む「インラインイメージ」や、テキストのボールドやイタリック、TABLEやフレームなど、ページのレイアウトや装飾のための要素が規定されました。
簡単なHTML
【簡単なHTML 図1】

最初、HTMLは「見出し」「本文」といった文章の要素を決めるだけで、表示用の解釈は各ブラウザに任せていました。ブラウザはそれぞれ独自の解釈で、自分のマシン内のフォントを使い、本文だったらこのくらいのポイント、見出しならボールドでこのくらいのサイズ、といった表示を勝手に行っていました。
しかしHTMLの普及が進み、ブラウザも増え、要求をどんどん取り入れて肥大化していった結果、HTMLにはさまざまな互換上の不都合が出てしまいました。そこで、HTMLを本来の目的である文書構造の記述だけに戻し、見栄えやレイアウトは「スタイルシート(CSS)」によって行うという考えが支持され始めます。
SGMLとXMLとHTML
【 図2】

■SGMLからXML、そしてXHTMLへ
ちょうどその頃に、HTMLのベースになったSGMLが古くなったので、インターネットの時代に合わせてSGMLを使いやすく作り直そうと生まれたのがXML(Extensible Markup Language)です。XMLは非常に簡潔で厳密な文法規則をもっており、高度なデータベースとして情報を活用できるため、テキストファイルのように今後のデータ形式の標準となっていく可能性があります。
現在のHTMLはかなりXMLに近いもの(XMLのサブセット)となっています。それがXHTML(HTMLのバージョン4.5)です。
HTMLとXMLは、仕組み的にはほぼ同じですが「タグ(DTD)」が違います。HTMLはW3Cという標準化団体が決めたタグしか使えませんが、XMLのタグ(DTD)は自分で定義することもできます。
■XMLのハンドリング
XML文書は、XML宣言、DTD、データ部分という3つの要素で構成されています。DTD部分では自分で「タグ」の種類や使い方のルールを決めなくてはなりません。一般的に「XML入門」といった書籍などでは、この部分の方法を解説していることが多いので、実際にXML文書を手書きで書いたり読んだりしたい場合は入門書を読んでください。今日はDTDやタグ(エレメント)の記述方法などには触れません。
XML文書の内容
【 図3】

さて、それでは普通の編集者やデザイナーはXMLをどう扱えばいいのでしょうか。じつは、まだ素のXMLを開いて編集したり修正したりするソフトはあまり普及していません。現在、直接XMLを編集する必要があるのはプログラマーの人くらいです。
しかし、普段のソフトでも、書類を保存するとき互換性を持たせるためにXMLを使用する場合があります。InDesignでは、そのまま保存すると「xxxx.indd」なのに、下位バージョン用の互換形式で保存すると「xxxx.inx」ファイルになります。「inx」ファイルはXML形式です。また、ワードやエクセルでも、最新バージョンで保存すると.docxや.xlsxといった拡張子に変更されています。これらもXML形式のひとつなのです。つまり、普通にワードやInDesignなどを使っていれば、XML形式での書き出しや読み込みは自動で行われるため、特別に意識をしなくても大丈夫です。
では、私たちがワードやInDesignを使うときに、どこを注意すればいいのか。それは「段落スタイル」です。ワープロやDTPソフトには、文章のカタマリに書式情報を適用するのに「段落スタイル」を使うことができます。流し込んだ文章に、「ここは見出し」「ここは本文」「ここはキャプション」というスタイルを適用していく作業は、XMLのタグを付けるのと同じ意味があります。
デザインや編集作業をするとき、ドロナワ式に文字を大きくしたり色を付けたりして作業していくのではなく、使用ソフトの「スタイル」機能を活用すれば、XMLでの互換性が高くなるということです。互換性の高いデータを作っておけば、Webへの展開や電子書籍への展開、機械翻訳や検索エンジンへの最適化などもずっと楽になります。
■電子書籍とePub
さて、巷で話題の電子書籍です。キンドルやiPadの出現でようやく電子書籍が現実的になってきました。流通方法も一新していくでしょう。
しかし、電子デバイスで書籍を読む方法はたくさんあります。テキストやPDFやWebページでの原稿公開も可能ですし、携帯小説やゲームノベルなども進化しています。一足早く電子書籍が普及し始めたアメリカでは、さまざまな電子ブックデバイスの覇権争いが始まりました。ゲーム機のようにデバイスとコンテンツがくっついてしまうと、普及に失敗するおそれがあります。
先行のキンドルは独自のファイル形式でした。それ以外のメーカーも当初はさまざまなファイル形式を採用し、アメリカでは25もの電子書籍フォーマットがありました。
http://en.wikipedia.org/wiki/Comparison_of_e-book_formats
キンドルの成功を横目にAmazon以外のメーカーは統一規格の採用を探りました。そこで採用されたのが、オープンの統一フォーマットePubです。EPUBと表記されることもあります。
特にGoogleとB&NのNOOK、SONYリーダー、Appleなどが採用したのは大きかったようで、現在電子ブックリーダでePubファイルを読めないのはキンドルだけになってしまいました。近いうちにキンドルも対応するのではと言われています。
このePubというファイル形式も、実は中身はXML(XHTML)ファイルなのです。
もう少し正確に言うと、ePubとはXHTMLファイルに、デザイン情報のCSSと、画像(JPEG)や図版(SVG)などを足してひとまとめにパッケージングしたファイル形式のことです。ファイル形式で言えばWebコンテンツとほぼ同じです。
■ePubは書籍用のフォーマット
成り立ちや仕組みから言うと、ePubでは複雑なレイアウトを再現することは現在は不可能です。つまり雑誌的な表現はできません。
iPadでデモンストレーションが行われているような複雑でリッチなコンテンツは、独自のプログラムによって作られており、ePubではありません。ePubはあくまでも文章を読ませる書籍のためのフォーマットで、せいぜいがコミックや写真集くらいまでです。
■ePubの作り方
ではInDesignで作った書籍をどうすればePubにすることができるか。これは簡単で、CS3以降のメニューにある「電子ブック(Digital Editions)の書き出し」を選べばいいだけです。ただし、現時点では日本語に正式対応していません。
これは、ePubで日本語の扱いをどうするかがまだ決まっていないからです。
ePubはアメリカの出版社協会のような団体が主導して仕様を決定しました。日本でも現在、日本電子出版協会(JEPA)が日本語用の仕様を策定して「IDPF」(International Digital Publishing Forum、国際デジタル出版フォーラム)に採用を申し出ているところです。
http://www.jepa.or.jp/
http://www.idpf.org/
日本語の仕様というのは、「縦組みの扱い」「禁則処理」「ルビ」の3つです。
今でも手作業で日本語のePubファイルを作ることは可能ですが、制限が多く、ビュアーも普及していないため、それまでは仕組みを勉強しておき、どうしてもというなら英語版のePubファイルを作った方がいいでしょう。
仕様の決定がいつになるかはまだわかりません。業界団体ではなんとか年内に、という声が出ているようです。横組みであれば、もっと早く扱えるようになるはずです。
正式な仕様が決定したら、ワードやInDesignに「ePub形式で保存」というメニューがつくのは間違いないと思いますし、「ePub作成ソフト」がたくさん出てくるはずです。
あわてずに、いまやるべきことをやりましょう。それは、「文章の構造化」ということの意味を理解すること、そして「スタイル」を活用した編集やDTP作業を行うことです。
以上です。今日の会場を無料で提供してくれたサイゾー編集部の揖斐くんと川原崎くんにもお礼を。

カテゴリー: 仕事 パーマリンク

コメントを残す