読者です 読者をやめる 読者になる 読者になる

まさかとは思ったけれども

まさかとは思ったけれども、2016年は一度もブログ更新がなかったようです。
2015年のまとめエントリを半分くらいEvernoteに書いていたのでそれをアップしようと思ったのですが、あまりにも、なので、やめました。以下、2015年と2016年を織り交ぜながら2017年の今の段階で2年分の振り返りを書いておきたいと思います。

2015年は仕事でけっこういろいろあり、もちろんそれなりの気持ちで仕事には取り組んできたつもりだけど、状況が状況なので2015年は自分なりに「(自分が)やりきるしかない」と覚悟を決めました。覚悟を決めた瞬間も覚えていて。自分がとびぬけて得意な仕事だったり、自分でなければならない仕事ではないけれども、このタイミングでここにいたのだから任された期間内は成功した部分も失敗した部分も全部最後まで見届けようと動き続けました。

あと、2015年はリードテックの福岡合宿でした。これは大成功だったんじゃないかな、と思います。2016年はLODチャレンジ以外はほとんど何もしませんでした。といってもLODチャレンジは「これで応募するよ」とメンバーには事後報告、自分一人で動いていたので、まともなリードテック活動はなかったかなと思います。メンバーに申し訳なく思っています。メンバーが東京にくるときも駆けつけることができないことが多く、こういう小さい(けれど自分にとっては大きい)ひとつひとつを切り離してしまいました。

2016年もけっこういろいろありました。2千グラムちょっとの小さいひとがうちにきてくれて。家族がひとり増えました。2月頭のことです。

働いている組織が年度で動いている部分もあり2016年3月末まではバタバタとしていました。朝6時くらいから会社にいることも珍しくなかったし、土日出勤も何度か、終電に飛び乗って一旦家に帰って車にのって高速を使ってまた会社に出勤して深夜3時に帰る->次の日出張、という目も当てられない状況の日もありました。

そんなこんなで、迎えた2016年4月。発足したばかりの新法人へと出向となりました。2015年度中に取り組んでいたのは新法人発足の準備でした。家から少し距離があるので、単身赴任的な感じになりました。

その後は、新しい法人の立ち上がりということで、ばたばたと気がつけば2016年の年末を迎えていました。

特に2016年は仕事も生活も結構変わった一年でした。(家族が)病院にいったり、(家族が)入院してまだ通院が続いていたり、とけっこういろいろありましたが、家族みな元気で年のはじめを迎えられたので、よかったです。

いつものことながら高野文子の「黄色い本」をときどき読み返していました。刊行と同時に買ってから年に何度かは読み返すなあ、と思って調べたら2002年に刊行、でびっくりしました。10年以上も読み返してるとは。あと、こちらもときどき読み返している岡崎京子のリバーズエッジがぼろぼろになったので、手に入るうちに、と愛蔵版を入手しました。

2015年と2016年をまとめて、箇条書きで。
・イベントはとりあえず2016年1月ごろに1つだけ参加したようです。
・手帳は結局、ほぼ日weeklyに戻しました。
・民間のと国のと、資格をいくつかとりました。
・LODチャレンジに2年続けてエントリしました。
・兼職が増えました。
SEO関連を少し真面目に勉強しようと調べていました。
・ちょこちょこと3DSドラクエⅧをやっていました(クリアせず)。
iOSアプリを少し書いていました。
・朝ドラ「まれ」を週末にやる再編集版でみてました。

2017年は、
・今年こそラズパイを買う(何年目?, 3年目?)。
・1日に何度か深呼吸をする。
・家族の写真を管理する良い方法を考える。
Androidアプリ作り。
・リードテックも少しだけ活動を復活?*1

ともかく健康で、また良い一年にしたいです。

本年もよろしくお願いいたします。

*1:今となっては何が「活動」なのか、というところもあり。

ER Linker のリリース

はじめに

ER Linker(E-Resources Linker) をリリースしました。

chrome.google.com


CiNii ArticlesやCiNii Books、NDL Search(NDL OPACは現在未対応)、J-Globalや各種OPACの書誌情報のページなどのあらゆるページでオープンなナレッジベースを利用したリンクを生成する拡張機能です。具体的にはオープンなナレッジベース(現在はERDB-JPに対応)に登録された情報源を利用してリンクを自動で作成し表示します。Google Chrome Extensionです。

f:id:haseharu:20150712154645p:plain

f:id:haseharu:20150712154655p:plain

f:id:haseharu:20150712154713p:plain

f:id:haseharu:20150712154726p:plain

動きの流れと仕組み

ERDB-JP(Electronic Resources Database-JAPAN)は国立情報学研究所が運用しているオープンアクセス誌を共有するための仕組みです。ERDBに登録されたデータはCC0 1.0 Universalとして公開されていて一括ダウンロード可能です。オープンなナレッジベースを活用するためのツールとしてER Linkerを作成しました*1

ERDB │ ニュース

ERDB-JPとは | ERDB-JP

具体的な動き

ページ内で「ISSNらしき文字列」をサーチし、「ISSNらしき文字列」にてERDBのリストへ検索・マッチングすることであらゆるページ上で動作するように作りました*2。あまり特殊な書き方をしていなければ、ISSNが表示されているページであれば、動作すると思います*3

最後に

ぜひ、ERDB-JPについてはWeb APIを公開していただきたいです。今回の実装において、ERDBのデータをいかに持つか、が一番の課題でした*4

*1:以前作成したどこでもリゾルバの流れを汲んでいるので、どこでもリゾルバ for ERDBとも言えます。

*2:公開直前にhttpsでの動作にはまだ未対応,ということに気がつきました。というわけでNDL OPACではまだ動作していません。

*3:動作しないページがあれば教えていただけると幸いです。

*4:Google拡張機能JavaScriptで動作しています。拡張機能内でデータを持ち、JavaScriptでERDBのリストと「ISSNらしき文字列」とのマッチングをかけてリスト生成するには少し状況が悪い場合があるのと、JSONを吐き出すAPIがあればなんの問題もないため、とりあえずAPIを立てて対応しています。もし公式のWeb APIなどを公開していただければ拡張機能以外の、また別の展開も考えられると思います。

3日目の福岡

今日はリードテック合宿の最終日。朝起きて、案の定、 id:kitone は寝ているので id:otani0083 と一緒に大濠公園をぐるりと散策。スタバでソイラテを買って戻る。

その後、CrossRef Taxonomy Interest Groupについての記事を書いて、


CrossRef Taxonomy Interest Group - Katachi

朝昼ごはんはうどんの和助で。

f:id:haseharu:20150308121332j:plain

肉ごぼうどん。上にのってるのがごぼうの天ぷら。圧巻。

さくさくしゃりしゃりでおいしかたです。

そのあと、ブックスキューブリックという本屋さんに連れて行ってもらいました。旅行中はだいたい財布のひもがゆるんでるので「コールド・スナップ」を買ってしまう。舞城王太郎、訳。図書館で借りずに買い続けているのは舞城くらい。

Amazon.co.jp: コールド・スナップ: トム・ジョーンズ, 舞城 王太郎: 本

その後、志賀島へ。

f:id:haseharu:20150308143758j:plain

id:kitoneid:otani0083 が二人でだーっと走っていってしまったので、あとを追う、の図です。

f:id:haseharu:20150308143829j:plain

f:id:haseharu:20150308144026j:plain

「Li:d tech」ではなく「Li:ed tech」となっているのがあとから分かり、あとの祭り。誰が書いたのかは内緒にしておきます。

その後、福岡空港から帰りの便に。

今回の合宿の成果もそのうち形になるかと思います。

2泊3日でお世話になりました。
また近いうちに集まって何かやりましょう。

今回で写真多め日記風エントリは一旦おしまい、でリードテックラボ風に戻ります。

CrossRef Taxonomy Interest Group

気づけば CrossRef Taxonomy Interest Group というのができてました。オントロジーとタクソノミーあたりを"Knowledge Model"と呼んでて、そのKnowledge Modelに関するノウハウやベストプラクティスなどの情報共有、コミュニティ形成あたりが目的のよう。将来的にはサービスプロバイダからの参加、フォーラムの開催なども視野に入れているみたいです。

サイト自体は2014年の12月に作っていた様子です。参加している出版社は、

  • ACM
  • AMERICAN PSYCHOLOGICAL ASSOCIATION *
  • De Gruyter
  • IOP
  • PLOS *
  • Taylor & Francis
  • Wiley

* をつけたのはあとから参加した出版社っぽいところです。

Knowledge Modelのテンプレが公開されていて、まずはそれをそれぞれ埋めて共有しましょうっていうステージの様子。2015年3月8日時点でKnowledge Modelが公開されているのは以下。

  • General Linguistics Taxonomy
  • Medical Subject Headings (MeSH®)
  • SNOMED CT
  • IOP Thesaurus
  • PLOS Thesaurus
  • Unified Astronomy Thesaurus
  • ACM Computing Classification System (CCS)
  • Thesaurus of Psychological Index Term®
  • NewsIndexer Thesaurus
  • NICEM Thesaurus

2015年3月3日にウェビナーがあったようで、その資料はこちら。
http://taxonomies.labs.crossref.org/wp-content/uploads/2015/03/2015-03-03-Webinar-CrossRef1.pdf

今後の活動が楽しみです。

2日目の福岡

リードテック合宿 in 福岡の2日目の記録です。

朝ご飯は前日のパンストックでのパンと id:kitone 特製のスムージーをいただきました。その後、ちょっと近所の図書館を見に行こう、ということで移動。お昼ご飯は、 id:shibure もおすすめの牧のうどん。肉うどんにごぼ天をつけてもらい、かしわめしはおにぎりにしてもらいました(1個70円)。

f:id:haseharu:20150307110653j:plain

f:id:haseharu:20150307110707j:plain

福岡のソウルフードとのことなので、これは外せません。やわやわ麺がスープを吸いつつ、スープを継ぎ足しながら麺が減らない様子を楽しみながら完食。普通においしかったです。

お昼ご飯後、さらに移動。休憩で寄ったコンビニでソウルフードの第2弾、ブラックモンブランを購入。こちらも普通においしかったです。

f:id:haseharu:20150307125056j:plain

そして、さらに移動。まずは伊万里図書館。

f:id:haseharu:20150307140002j:plain

「図書館」なんだなあ。記号的というかシンボル的というか。

その後、も少し移動して武雄師市図書館へ。最寄りの駐車場が満車で5分くらい待ち駐車。

f:id:haseharu:20150307162037j:plain

館内は人でごった返してました。入ってすぐに新刊本こんなに扱ってるのか、とややびっくり。武雄図書館せんべいと飴をセルフレジで購入。Tポイントが70円くらい貯まってたので全部使ってみました。はじめてでも特段迷うことなくセルフで支払うことができました。

f:id:haseharu:20150307160526j:plain

館内をきょろきょろしながら、スタバでちょっと休憩。

ジャズが流れてコーヒーの香りがする図書館は初めてでした。近くにあったら普通に使うだろうなあ。

その後、武雄温泉でまったり。

f:id:haseharu:20150307175943j:plain

選んだのは鷺の湯。外風呂とサウナが付いてる。

f:id:haseharu:20150307175929j:plain

その後、 id:otani0083 のおすすめのお店で1日のまとめ的な議論をして2日目が終了。なんだか観光ばかりじゃないか、と言われそうですが、明日*1がいよいよ合宿最終日です。

*1:これを書いてるのは3日目の朝

Local Storageのクロスドメイン問題

はじめに

前回のエントリで書いたChromeアドオンの実装で詰まった部分があるのでそれをメモ的に。


デジコレエクステンション with Taggy Bank - Katachi

技術的課題

今回、CiNii Books, NDL Search, Worldcatで件名標目を収集し、どのサイトにいてもその収集したタグを参照することができる仕組みが求められました。LocalStorageをとりあえず使ってみようかと思ったのですが、LocalStorageはシングルドメインでのみ利用可能である、というクロスドメイン問題が発生します。つまり

  • CiNii Booksで収集した件名標目はCiNii Booksドメインでのみ参照可能
  • NDL Searchで収集した件名標目はCiNii Books側で収集した件名標目ともマージできない
  • 収集した件名標目はそれぞれ収集したドメイン内でしか活用できない

という問題があります。いろんなウェブサイトから件名標目を収集していろんなサイトで活用するための仕組みとしては、ここをクリアする必要がありました。

Background.js

自分がとった方法はBackground.jsからLocalStorageを参照する方法です。

f:id:haseharu:20150306233640p:plain

Background.jsからLocalStorageを参照すると、上記のように、ローカルファイルをドメインとしてデータを記録します。参照されているローカルファイルはChrome拡張機能の保存されているローカルファイルです。つまり、どのサイトにアクセスしても、同一のドメインとして同一のLocalStorageに保存し参照することができます。

セキュリティ的にどうなのか、とかいろいろ検証が必要とは思いますが、とりあえずこんな方法もあるということで。

デジコレエクステンション with Taggy Bank

2014年9月19,20,21日に id:kitoneid:otani0083 とリードテック合宿をしたのですがその成果としてLODチャレンジ2014にエントリーしてみました。

NDL・NIIのデータセットをISBNをキーとしマッピングしたデータセット - データセットのエントリーシート | Linked Open Data Challenge Japan 2014

デジコレエクステンション with Taggy Bank - アプリケーションのエントリーシート | Linked Open Data Challenge Japan 2014

データセットを作ってそれはデータセット部門へ応募。そのデータセットを使ったアプリをアプリケーション部門へ応募しました。

データセット部門では、NDLがデータセットとして提供していたデータセット

対応一覧データセットとNIIが提供しているデータセット及びCiNii APIを利用して、CiNii側の識別子であるNCIDとNDL側の識別子であるNDLBibID,JPNO,NDLJPをISBNをキーとしてマッピングしたデータセットを作成しました。このデータセットによって、たとえばCiNii BooksとNDLデジタルコレクションがつながることになります。

アプリケーション部門では、そのデータセットを使ったアプリケーション(Chrome拡張機能)を作りました。仕組みは非常にシンプルでCiNii Booksの書誌情報ページからNDL SearchやNDLデジタルコレクションへのリンクを表示します。双方向に作ったので、NDL SearchからCiNii BooksとNDLデジタルコレクションへのリンク、NDLデジタルコレクションからCiNii BooksとNDL Searchへのリンクも表示されます。

フルテキストがウェブ上で公開されているにも関わらずそのフルテキストへのリンクがない書誌情報をどうするのか、は大きな課題だと思います。

Googleに5ドル払ってChromeウェブストアで公開中です。


デジコレエクステンション with Taggy Bank - Chrome Web Store


また、それ以外にも、実験的にメタデータを収集する仕組みを追加してみました。Taggy Bankというのがその機能です。具体的にはNDL Search、CiNii Books、Worldcatで書誌情報を閲覧した際にその書誌情報にNDLSH、BSH、FAST、LCSHなどの件名標目と呼ばれるメタデータが付与されている場合、全てアドオン側で勝手に収集します。収集したメタデータをあれこれ活用できたら面白い、と思いますが、とりあえずは収集された件名標目を組み合わせてCiNii Booksから検索し書誌情報をレコメンドする機能、としました。

f:id:haseharu:20150306225656p:plain

このTaggy Bankは、SIMILE ProjectのPiggy Bank*1を件名標目に応用したものです。

Piggy Bank

Taggy Bankの中身についてはまた次回書きたいと思います。

*1:現在は開発中止