あたらしいBCCKS発表会とEPUB3.0とbxmlについて

Jacket h1

■もう一週間経ってしまいましたが、6月2日におこなわれた「あたらしいBCCKS」記者発表会にご参加いただいたみなさま、UstreamやTwitterでご高覧いただいたみなさまありがとうございました。前回のエントリを書いた時点ではあんまりそういう予定ではなかったんですが、発表会第二部では僕が開発担当している部分(bxmlというフォーマットの中身、BCCKSリーダーの機能などについて)をわりと詳細に紹介しつつ、BCCKSのCTO(今後は共同代表となることも発表されました)たけなかさんとEPUB(3.0)との関係や今後の電子書籍技術の共存のありかたなどについてこうしたい、こうなってほしいという話をしました。当日の発表資料、Ustreamのアーカイブ、Togetterや、いくつかの媒体での記事もまとまっているのであらためてどうぞ。

■さて、あまりそういう予定ではなかったのに第二部でフォーマットとリーダーの特徴や仕様の話をくわしくしたのは、EPUB3.0の仕様確定が間近なのもあって、電子書籍において「独自フォーマット」「独自拡張」「専用リーダー」といった言葉がそれだけでもういわゆるガラパゴス行きの船のように聞こえてしまうのではないか、と思ったためです(発表そのものも「この発表は『いま、独自規格ってどうなの?』がテーマです」というとこから始めました)。

というわけで、あたらしいBCCKSがイメージする電子書籍を実現するためにつくっている「bxml」というフォーマットが、とくに事実上デファクトとすべきEPUBとどういう関係にあり、どう拡張していて、それはEPUBユーザーにとってどう見えるのかという話が第二部の発表だったのですが、やはりまだ心配なのでここでも説明したいなーと思った次第です。要点でいうと3つになります。


(現状の)EPUBの仕様では満足できる組版、ページレイアウトが実現できなそう

■EPUB3.0の中身はHTML + CSS(2.1 + 3.0少々)なので、Webページでなんでもデザインできるという意味ではなんでもデザイン可能なのですけど、「ページネートする」「リフローする」「組版のルールを(最低限)守る」という3つの条件をのせると途端にむずかしくなり、仕様が足りていないのかなというのが実情だと思っています。でしかも、むしろ一般にはこの3条件を満たすもののことを「電子書籍」と呼びたく、商品価値を感じるのではないかというのが前のエントリに書いた僕個人の問題意識です。

もちろんCSSで組版やページレイアウトを実現する仕様はたくさん提案、議論されてるようですし(ページネートについてはどうなんだろう? 印刷CSS系の仕様? あまり知らないので知ってたら教えてください)、EPUBにもいずれ採択され、リーダーにも実装されていくのは間違いないと思ってるんですけど、現状でどうにかするには拡張するしかないかなと思いました。

なので、EPUB3.0の仕様の枠内でページレイアウトの情報を付加する独自仕様を埋め込む

■bxmlがEPUBの仕様とどこを共有し、どこに独特の仕様をいれているのかについては発表で触れているので発表資料とかUSTアーカイブを見ていただけるとうれしいです。簡単にいうと、

  • bxmlでは、コンテンツHTMLがsectionタグ(html5で導入されるドキュメントのセクショニングをおこなうためのタグ名ですな)で文節され、それぞれのsectionに「ページレイアウトスタイル」が指定されていることを前提とする
  • 「ページレイアウトスタイル」は、「ページレイアウトCSS」と呼んでいる独自のスタイルシートに指定されていて、BCCKS readerはこのページレイアウトCSSでのレイアウトをもとに、section単位のコンテンツをページネート、リフローしながらレンダリングする

という感じです。現状マークアップの指定やページレイアウトCSSの仕様については固まっていない部分もあるのですが、仕様拡張の方針はこんな感じでいけるのかなと思っています。

なので、bxmlはEPUBとしても読める(予定)

■ここ重要なとこです(というか、「そこ重要なとこなんだからもっと強調したほうがよかったのでは」と発表後に言われました)。bxmlとわれわれが呼んでいるものはコンテナの構造とコンテンツのフォーマット(HTML5)においてEPUB3.0と同一なので、bxml用のページレイアウトCSSと別に、EPUBリーダーでのスタイリングを行うためのCSSを同梱すれば、うまくすればたとえば拡張子を変えればEPUBリーダーでも読めるデータになりうるだろうと考えています。ただ、EPUB3.0の仕様は完全に決まっていないので決まったらあらためて(今後のバージョンアップに関する議論も参考にしながら)すり合わせないといけないのと、実際に読めるかどうかはEPUB(3.0の、しかも挙動が微妙に違うさまざまな)リーダーでの実証を経なければならないですね。なので、現状だと「互換」とは言えないし言わないようにしよう、と思っています。


■発表の締めの言葉は「だから…仲良くしていきましょう!」としていたんですけど、bxmlはEPUBが推進しているような電子書籍フォーマットの標準化、ユニバーサル化、オープン化とかを無視するつもりはさらさらない一方、いまの日本語の紙の書籍文化がつちかった組版やレイアウトルール、本を本たらしめるデザインをスポイルしたくないという気持ちが強いというかなり変な独自フォーマットだと言えると思います。世の中には「紙の本のデザインや体験に縛られすぎるのはどうか」的な先進的な意見もすくなからずあるので、ここまで独自wwwな試みがうまくいくのかよくわかりませんし、もっと普通にPDFが勝利、とかWebで無料で広告が勝利、みたいなシナリオもいぜん可能性高いわけですけど、そのへんも含めて仲良くしていけるとよいと思ってます。仲良くしていきましょう!!