Crossref Event Dataをさわってみた
その他, 2021.05.25こんにちは。izUiです。東京では緊急事態宣言が延長され、どこかに出かけたり人と会うイベントがなく、イベント欠乏症になっています。
そんなわけで今回はCrossrefが提供するサービス Event Dataについてです。
Event Dataとは
Event DataはCrossrefが2018年から提供を開始しているサービスです。正確な説明はCrossref本家のドキュメントを読んでいただくとして、ある程度簡単に説明したいと思います。
面白い論文を見つけ、それをTwitterでツイートしたとします。このときその論文のDOIを記述することで、論文DOIとツイートを関連付けた「イベント」と呼ばれるデータがCrossrefで作成されます。このイベントを収集し、APIで公開しているのがEvent Dataのサービスです。
イベントはTwitterだけでなく、Wikipediaやニュース記事、WordPressブログなどでDOIを記述することでも作成されますが、体感的にはTwitterのイベントが一番多いような気がします(根拠はありません)。
Webでそんな自動記録みたいなことやっているとすごい量だし収集できるの?と思うかもしれませんが、いくつかの収集エージェントが稼働して実現しているようです。この状況が確認できるデモサイトがあるのですが、これを見るともの凄い勢いでイベントが作成されていることがわかります。
それって美味しいの
なにやら雰囲気はわかったところで、じゃあこれでなにができるかが気になりますが、収集されたイベントの情報をAPIによってJSONで取得することができます。取得するためにいくつかパラメータが用意されているので、詳しくはそちらを見ていただくとして、ザックリ言うとこんなことができます。
- 「この論文どれくらいバズった?」←DOIを指定してイベントを取得
- 「この半年でTwitterでバズった論文どれ?」←期間を指定してTwitterイベントを取得
- 「この出版社で注目の論文どれ?」←DOIプレフィックスを指定してイベントを取得
おお、なんだか面白そうですね。
実験開発してみた
Event Data利用は無料ということもあり、これを使って面白いサービスを開発できないか、と実験開発プロジェクト…というと大げさで、社内の部活動として「Crossref Event Data部」が2019年に発足しました。部長となった発起人が初日の会合で「なにか動くものが出来たら廃部」と宣言し、廃部を目指して活動が始まりました。
APIドキュメントを元にサービス内容を検討した結果、「特定の論文のDOIを設定して、そのDOIに関するイベントがどれくらいあったかを確認できるChrome拡張」を作りました。
イメージとしては、研究者の方に使っていただき、自分が書いた論文が公開された後にTwitterやブログでの反響を週次で確認でき、「おおバズっている、ムフフ」とニンマリできるようなサービスです。
ところが…
プロトタイプ前提で公開することも想定してテストフェーズまで進めたのですが、どうもAPIから得られる結果が安定しなかったのです。調べてみると、Event DataのAPIがタイムアウトするなど負荷の問題があるというインシデントがCrossrefから報告されていました。
Crossrefに状況を問い合わせて事象の解決を待っていたのですが、なかなかすぐには解決せず、結局我々の部活は廃部とならず活動中止となりました。
その後
しばらくたち、2020年3月にCrossrefのブログでEvent Dataの状況についての記事が掲載されました。他の主要なプロジェクトにリソースを集中させたため、Event Dataのインシデント対応が進まなかったようです。この時点では、サービスは利用できるものの不安定であることと、2019年3月以降にCrossrefに参加したメンバーのDOIのイベントは取得できないことが注意として書かれていました。
その後2021年2月に再開の兆しととれる今後の計画のブログが公開されました。当初は月に200万件のイベントを作成していましたが、その数は現在2,000万を超えているのだとか。その状況下での安定稼働に向けインフラ改善には着手していてパフォーマンスは大幅に向上しているそうです。この先のロードマップについても述べられています。
おまけ
残念ながら我々の部活動は再開せず、のままです。あの夏は燃えていたんですけどね…。ということで、Event Dataを利用したサービスを開発しかけたけどできませんでした…という話なんですが、それだと寂しいので、このブログ執筆をきっかけに、J-STAGEで2021年4月の月間アクセス数ランキング 1位となった論文についてEvent Dataで少し調べてみました(ちなみにこの論文少し刺激が強くここではご紹介しません…)。
この論文のDOIを指定してEvent Dataのイベントを取得すると、4255件のTwitterのイベントが取得できました(2021年5月某日時点)。イベントの期間に着目すると、この論文が公開された2019年9月以降で2021年より前のイベントはTwitterで45件のみで、それ以外のイベントはすべて2021年4月22日以降だとわかりました。4月22日にこの論文を紹介したツイートをきっかけに一気にアクセスされた、と考えられそうです。公開から1年半後にバズったわけですね。SNSの力はすごいものです。あくまでEvent Dataで得たデータからの推測であり、この論文の実際のアクセス状況も調査しないと正確なことは言えませんが、Event Dataでこんなことがわかりそうという例でした。
というわけで、Crossref Event Dataに関するお話でした。ご興味持たれた方は公開されているAPIドキュメントをもとに試してみてください。なお、すべての論文のDOIにイベントがあるわけではない(収録対象外のDOIであるとか、そもそも言及されてない、など)ので、試してみる時はAltmetric Top 100から論文を選ぶと良いと思います。ただ、それはそれでイベントの数はすごいことになりますが…。