要約:国立情報学研究所のシステムで使われているNCIDをお馴染みのISBNに変換するスクリプトを作った
久々に図書館システムの小ネタ、そしてすごくニッチな話です。
そろそろWebcat Plusと各種サービスのマッシュアップを作りは滋養かと思ったのだけど、そこで壁になるのが雑誌識別子の問題。
というのは、書籍などを特定するための識別子を使って各書籍を特定していくわけなのだけど、それが各サービス毎に違ってくるんですよね。
- ISBN(とISSN)
- ISBN=国際標準図書番号はおそらく一番有名な書籍の識別子。各国のAmazonもISBNが付いている図書はそれを識別子として用いている(ただし旧ISBNといわれる10桁ISBN)。いわゆる書籍JANコードに同じ。
- NCID
- NCIDは国立情報学研究所が運用している総合目録データベースにおける雑誌書誌IDのこと。ISBNがついていないものでもこれなら特定できる。
- BKID
- BKIDは日外アソシエーツ(株)など4社が著作権を持つデータベースで使われているID。
- NBN
- NBNは各国の国立図書館などが書籍につけているID。日本では全国書誌番号と呼ばれ、国立国会図書館が管理している。今回、出てこないので詳しくは参考リンク先の神崎さんの説明に譲る。
一例を挙げるとこんな感じです。
それで、先に挙げたWebcatPlusは各書籍の詳細ページにはNCID/BKIDとISBNを使っているようなのだけど、システム標準の識別子にはNCID/BKIDを使っているらしく、検索一覧ページではこれしか取得できません(詳しくは参考リンク先で)
つまり、Amazonなどの民間ウェブサービスはISBNがスタンダードということもあって、WebcatPlusのサービスからAmazonなんかにバトンをつなぎたい場合はこれを変換してやらなくちゃいけないわけです。
ということで、指定のNCID/BKIDをISBNに変換するコンバータを仕掛けてみました。変換にはWebcatPlusに問い合わせしているため、毎回お世話になるのもなんなので、リクエストが来たNCID/BKIDはSQLiteにデータベースとしてキャッシュするようにしています1 。ちなみに、これは既にid:myrmecoleonさんが一年前にやってらしたそうです。
ご覧のように、引数でNCID/BKIDを指定してやると旧ISBN(10桁)と新ISBN(13桁)などを書いたXMLが返ってくると思います。
一応スクリプトも公開しておきます。
- ダウンロード
- NCID/BKID⇔ISBN変換スクリプト
ちなみに、引数の詳細はNCID, jBKID, eBKIDの3種類があります。jBKIDは上記で言うBKID、eBKIDは外国の書籍に使われるIDのようで、Webcat Plusのクエリに使われるのと同様の物です。
次は図書館がらみのWebサービスを作るためのデータリストかなぁ。大学図書館でのそれは既にID:myrmecoleonさんがやってらっしゃるので、大丈夫かもしれないけど、公共図書館は恐ろしく手作業になりそうだな悪寒。
メタデータWikiを立てて、図書館情報学関係ブログの人たちのお手を借りてみんなで作れば、できそうという感じもする。しかし、と言いつつ去年の秋頃からずっとメタデータWikiの実験をやっているんだけど、まともに動いてないしそろそろ手動でなんとかするかな。
参考リンク
- Webcat Plusとは/収録データについて
- 所蔵館マップの裏側更新とXML出力 – Myrmecoleon in Paradoxical Library. はてな新館
- 2003年 01月 下旬:Alisato’s 本買い日誌
- 書籍と雑誌を特定するための方法とか – Ceekz Logs
- 続き物(シリーズ)の取得 その2 – natu_nの日記
- ちょっとしたメモ – 書籍の識別子と全国書誌番号
- ちょっとしたメモ – NBNあるいは書籍の識別
- ちょっとしたメモ – 13桁のISBN
- 1万件くらいならいいけど、100万くらいになるとさすがにMySQLにリプレースした方がよいかも[戻る]
Popularity: 2% [?]
- キーワード:
この記事はシリーズものの一篇です。Making OPAC 2.0シリーズのそのほかの記事もよろしければご覧ください
このシリーズ記事のフィード




読者のコメント
0件