版元ドットコム・書誌情報API公開しました、あるいはふたつの書誌データ

2010-2-24 水曜日

スタジオ・ポットSD 日高崇 :http://sd.pot.co.jp/

やります、やります、と言ってなかなか形にできなかった版元ドットコムの書誌データを外部から触れるようにする、「版元ドットコムAPI」の整備ですが、先日、ようやく第一歩をふみ出しました。(詳しくは「お知らせ » 版元ドットコムのAPI ( http://www.hanmoto.com/news/2010/02/19/hanmotocom-webapi/)」を御参照ください。)

「API」といっても、当面は書誌データに外部からアクセスしやすくする、というこの一点に目的がおかれているので、システム的には当初から実装されていたRSS配信などとさほど変わりません。RESTをサポート、と気取った(笑)言い方をして いますが、(X)HTMLの替わりに、XMLを返すようにしました、と言ってしまえばそれだけのことです。

時間がかかったのは、コーディング自体よりもむしろ、どういうフォーマットで書誌データをアウトプットするか、およびそのフォーマットへの「翻訳作業」でした。

現在、「書誌データ」と我々が呼んでいるものには、二種類ある、と感じています。ひとつは、図書館であったり、研究者であったり、というグループで使われている、「書誌学」の系譜につらなるもの。そしてもう一つが、ISBNに象徴される、 流通上の必要に応じて整備されたフォーマットとしての「書誌データ」です。

前者については、MARC/MACXMLやそのサブセットとして(ネット屋的に)使い勝手のよいMODS、資料の同定や相関性の概念にまで明確に視野を広げたFRBRのようなフォーマットが複数存在しています。当初はより標準的な存在である、これらのフォーマットを利用しよう、と考え資料を漁っていたのですが、結論から言ってしまうと、当初狙ったようなものにはなりませんでした。これらのフォーマットは、最低でも数十年、おそらくは千年単位の資料を扱うことを想定しており、(日本では)1980年にスタートしたISBNコードによって特定され、「今、この瞬間」の在庫の有無や、時には製本所がどこか、と いった情報が重要な意味を持つような、(版元自身を含む)流通業界が必要とする「書誌情報」とはその出自からして相容れない性格のものなのです(1980年以前の刊行物にISBNを付番する、といった作業をきちんと行っている出版社もありますが、たとえば「源氏物語」のISBNは何か、ということを考えてみると、後者では扱いきれない「書誌」はやはり存在するわけです)。

そうはいっても、大部分は読み替えればなんとかなりそうなので、MODSに「翻訳(超訳?)」するところまでは昨年やりました。しかし、前述のようにいくつも盛り込みようのない情報項目が残ってしまいました。MODSを勝手に拡張して、こういっ た流通情報を盛り込む、という案も考えましたが、かなりスジが悪そうです。版元ドットコムサイトの書誌情報の利用に図 書館業界の人が興味を持ってくれたとしても、それらの拡張情報はほとんど活用されないでしょう。結局、「流通サイド」 のためにはまったく別のフォーマットで配信する、という方針に変更しました。

では、「流通サイド」のためのフォーマットは何にすべきか。もう、版元ドットコムのデータベース構造そのままでもいいか、という気分にもなっていたのですが、やはりどういう人々が利用するか、ということをある程度念頭におくべき、と考えました。たとえば、いわゆる「本棚アプリ/サイト」やアフィリエイトツールのように、本の情報をネタにしたアプリ ケーションやweb上のサービスはすでに無数にあります。彼らが親しんでいるフォーマットに近い方が、使い勝手が良くなるはずです。

そう考えていくと、「流通のための書誌情報のXML配信」のデファクトスタンダードは、おそらくamazonのものでしょう。 ということで、現在、こちらのフォーマットはamazon のwebAPI(現在は「Product Advertising API」という名前になっています)に近似させました。このフォーマットは仕様がかなり豪華なので、それなりに一通り対応させるにはまだまだ時間がかかりそうです。また、ブログにペタっと貼るようなタイプのサービスと互換させるにはXSLTの整備なども必要かもしれませんが、基本的に、アマゾンの書誌情報をXMLとして取得して処理するタイプのプログラムについては、多少の改修で版元ドットコムの書誌情報にアクセスできるはずです。

実際、XMLで書誌情報を取得できるようになると、版元ドットコムサイト自体でもこれらを便利に使えそうだ、ということがわかってきました。当サイトは複数のシステムを組み合わせて運用しているので、データベースへのアクセス部分を毎回個別に書く必要があったのですが、このような統一APIを整備してしまえば、javascriptだろうがなんだろうが、書誌情報 をちょこっと取得してhtmlに展開する、といった作業がかなり簡単になります。php5になってxmlの扱いがえらく簡単になったこともあり、phpで書いてる内部のシステムから書誌データを呼び出すのが、めちゃめちゃ簡単になりました。これに気づいた時は、「もっと早くやればよかった……」とキョーレツに反省しました(実際には、それでもやはり盛り込めない 情報項目がいくつか発生したので、若干の「独自拡張」はしているんですが)。もちろん、これは内部に限った話ではない ので、会員版元の自社サイトからも、簡単に版元ドットコムの書誌情報を呼び出せるわけです。

改めて書いておきますが、サイトの下部にも記載してあるとおり、版元ドットコムに掲載されている書影・書誌・内容紹介 などすべての情報は、販売・紹介目的の場合にはご自由に使用できます。これを機に、当サイトの書誌情報をご活用いただ ければ、開発者としては望外のよろこびです。

版元ドットコムのデータベースが、外部からどんどんアクセスされるようになればなるほど、データベースの構造をどのように改修・維持していくのか、スケーラビリティは? セキュリティは? ということがますますシビアに問われていくことに なるわけで、今から戦々恐々としつつもワクワクしています。


▲ページの上端へ

このエント>リーをはてなブックマークに追加

2 コメント »

  1. […] 版元日誌 » 版元ドットコム・書誌情報API公開しました、あるいはふ…棚アプリ/サイト」やアフィリエイトツールのように、本の情報をネタにしたアプリ ケーションやweb上のサービスはすでに無数にあります。彼らが親しんでいるフォーマットに近い方が、使い勝手が良くなるはずです。 そう考えていくと、「流通のための書誌情報のxml配信」の…はてなブックマークより […]

    ピンバック by アフィリエイトツールが気になったので調べてみました - 稼ぐ情報商材アフィリエイト成功メソッド — 2010/08/15 日曜日 @ 15:24:41

  2. […] 版元日誌 » 版元ドットコム・書誌情報API公開しました、あるいはふ…棚アプリ/サイト」やアフィリエイトツールのように、本の情報をネタにしたアプリ ケーションやweb上のサービスはすでに無数にあります。彼らが親しんでいるフォーマットに近い方が、使い勝手が良くなるはずです。 そう考えていくと、「流通のための書誌情報のxml配信」の…はてなブックマークより […]

    ピンバック by アフィリエイトツール  | ネットビジネスに関連する金儲け情報一覧 — 2010/10/04 月曜日 @ 23:51:59

TrackBack URI : http://www.hanmoto.com/diary/2010/02/24/477/trackback/

コメントをどうぞ

Twitterでのつぶやかれ