OPDSとは
OPDSは、読書アプリが本のカタログとやり取りするための仕組みです。Fablumでカタログを開くたびに使われていますが、たいていは気づきません。
OPDSはOpen Publication Distribution Systemの略です。本のカタログを、ほかのプログラムが読める形で 公開するためのオープンな規格です。中身は項目の並んだフィードで、各項目にタイトル、著者、言語、 表紙、そしてファイルそのものへのリンクが入っています。読書アプリはそのフィードを取得して、本の 一覧として描きます。特定の店や特定のアプリのための仕組みではありません。
考え方はそれだけです。本について書かれたウェブページは人間のために書かれていますが、OPDSの カタログはソフトウェアのために書かれています。形式が決まっているおかげで、アプリはウェブページには できないことができます。カタログの中を検索し、絞り込み、表紙を並べて表示し、ダウンロードを ブラウザのダウンロードフォルダではなくライブラリへ直接渡せます。
ストアとの違い
カタログはストアではありません。カートもレジもアカウントもありません。OPDSの項目は、説明と 1つ以上のダウンロードリンクでできていて、アプリはそのリンクをたどるだけです。図書館、アーカイブ、 パブリックドメインのテキストを公開している人たちがこれを使うのは、商売の仕組みがいらないから です。
ファイル形式でもありません。本にあたるのがEPUBやPDFで、OPDSはそれを指し示す目次です。多くの カタログはHTTPの上のAtomかJSONにすぎません。だから、この規格を話せる読書アプリなら、プラグインなしで カタログを見られます。
Fablumでの使われ方
Fablumには公開カタログが1つ内蔵されていて、それがOPDSのカタログです。あのシートの中で起きている ことはすべて、アプリがOPDSのフィードを読み、見つけたものに従って動いているだけです。たどっていく 分類も、検索も、言語と種類の絞り込みも、ダウンロードも、ストリーミングもそうです。
- 1
Fablumを開き、ライブラリで+をタップして公開カタログを選びます。開くのは、パブリックドメインの本とオーディオブックが並ぶOPDSのカタログです。
- 2
検索するか、言語と種類の絞り込みを使います。どちらもOPDSの機能です。アプリがカタログに狭めたフィードを求め、一覧を描き直します。
- 3
本をタップしてダウンロードします。項目のダウンロードリンクが取得されて読み込まれ、そのあと本はライブラリからオフラインで開きます。
規格が扱う範囲
OPDSのフィードが記述するのは2つです。1つはナビゲーション、つまりたどっていく分類や棚。もう1つは 取得、つまり実際にダウンロードできる項目です。1つの項目が複数のファイル(EPUB、PDF、または オーディオブック)を示すこともあり、アプリは自分が開けるものを選びます。検索も規格の一部です。 だからこそ、カタログはウェブサイトではなくアプリの中で検索できます。
仕様は公開されていて、specs.opds.ioで誰でも見られる形で保守されています。 多くのカタログがいまも公開しているのはAtomをもとにした1.2で、2.0はそのJSON版の後継です。
同じカタログの実際の使い方は、無料の電子書籍を探す方法 をご覧ください。