所蔵図書館マップのMappletを作ってみた。


Google Developer Day 2007 自体にはあんまり興味なくて,Google Gearもまだなんかよくわかんなくて*1携帯電話向けの所蔵館マップとかをちみちみ作ってたりしたのだけど,http://yoshiori.org/blog/2007/06/google_mapplet.phpを見たらちょっと面白そうだなー,と思い,というか前にGeoRSS版作ったときいちいち別の本みるのにRSSのURL書き換えるのもめんどいやーとか不満を感じてたのもあり,所蔵館マップのGoogle Mappletを作ってみることにした。

でできたのがこれ。


Library Mapplet


日本語使えないわけじゃないんだけど,まあまだ始まったばっかのサービスだから英語のがいいかなー,と Library Mapplet命名。以前に鈴木氏にLibraryMapとつけてもらったのに関連。
ソースはこれ→ http://myrmecoleon.sytes.net/map/librarymap.xml

インストールの仕方は http://maps.google.co.jp/preview 行って「マップレット」というタグ押して「コンテンツを追加」をクリックして「URL を指定して追加」で上のURLを入れる。ってたぶんhttp://yoshiori.org/blog/2007/06/google_mapplet.phpのが詳しい。
操作は所蔵図書館マップと似たような感じ。ISBN入れて表示ボタンを押すと所蔵館が地図上にマーカーされる。NCIDは今回未対応。あと後述するようにGMarkerManagerが使えずあんまりマーカー出すと重いので,大学図書館については表示する館数を指定できるようにしました。ISBNはハイフンでも13桁でもOKっす。

試行錯誤


で,作る過程。
まずAPIのレファレンス,は英語だからスルーして(マテ すでに公開されてるオフィシャルなMappletの物真似から入る。まずMapplet Scratch Pad*2を導入して,公開済みのMappletやらhttp://www.google.com/apis/maps/documentation/mapplets/index.htmlにある例とかを読み込み&切り貼り切り貼り。
だいたいGoogle Map APIと同じものが使えること,表示するスクリプトやHTMLはどんなふうに書いてやるといいかを確認。


次にすでに作った所蔵図書館マップのスクリプトを切り貼りしてみる。見事に動作しない。調べてみると,まずGMarkerManagerがレファレンスの中にないことに気づく。あとXmlHttp関係が動かない。上記したドキュメントをみるとXMLは_IG_FetchXMLContentを使ってる。というかGoogle GadgetsAPIは一通り使えるらしい("Mapplets are a superset of standard Google Gadgets")。Google Gadgetsは扱ったことがなかったけれど,とりあえずxmlやhtmlを取得する関係の挙動だけ確認。
マーカーを作る関係の処理は変化がないようなので,そこは流用。_IG_FetchXMLContentを使って,XMLを呼び出してデータを拾うところだけ書き直す。とりあえずWebcat Plus分。
しばらく試行錯誤したらできた。ゆにかねっととALIS WebOPACも追加。あと書影表示もつける。それから粗く調整。


完成かどうかはともかくとして,とりあえず出来たので公開します。Java scriptがまだ使いこなせてないのでソースが荒いかもだけど勘弁。
まあ別に正式なサービスとかそういうことは考えてませんが,使えるようなら使ってみてくださいな。注文があればコメとかもくれるとナイス。

余談。


ちなみにググったらこんなこと言ってる人も。

With the custom markers and search form available it may be interesting to throw together a mapplet for worldcat or a local consortia, plotting the libraries that carry the item and possibly status if available. You could probably do color coded markers to give a quick glance of status. Maybe someone with more time than me will mock something up.

意訳
「マーカーと検索フォームが作れるんだから,World catとか地方のコンソーシアムとかを表示するMapplet作ったら面白そうじゃね? 貸し出せるかとかの情報まで含めて表示できるようなさ。あとマーカーで色分けしたり? まあどっかの俺より時間のある暇人が作るんじゃねーかなー」

http://blog.ryaneby.com/archives/google-mapplets/

ふっ,World catに勝ったな(マテ
って暇人かよorz

*1:ネットワーク使えないときにRSSリーダ見れても生殺しじゃんYO!

*2:MappletGoogle Mapの上でMappletのソースをちみちみ修正して試せるMapplet