Information 0029
Indexed Database API を利用してサイト内でのブックマーク機能を提供する
Drupal 7 用モジュール「TNC Personal Bookmark Module」を開発しました。
TNC Personal Bookmark Module(※1)は、Drupal 7 における Block Module として、それがコールされる各ページにおいて、ユーザーに対してそのサイト内でのブックマーク機能を提供します。具体的には、ユーザーが当モジュールを介してブックマークする情報を、HTML5 の一機能である「Indexed Database API (IndexedDB)」を用いて、そのユーザーが利用しているブラウザが管理するデータベースに保存します。そして、そのユーザーがサイトにアクセスするたびに、ブラウザのデータベースから保存されているブックマーク情報を読み出し、当該ユーザーに対して提示します。それにより、ユーザーは、そのサイトにおいてよく利用するページや有益であると思うページなどを個人的にブックマークし、かつ、そこからいつでも当該ページに迅速にアクセスすることができる、というわけです。サイトの大規模化・コンテンツの充実化に伴うサイト構造の複雑化・ナビゲーション階層の多層化により、一方では、ユーザーにとってはサイトが「わかりにくい」「使いにくい」という状況が生まれやすくなりますが、当モジュールは、ブックマークという形でユーザーに対して目的とするページへの直接的なアクセス手段を提供することにより、サイトのユーザビリティの向上を図ります。ブックマークとは、言わば「ユーザー自身によりカスタマイズ可能な個人的ナビゲーション機能」であり、それにより、そのサイトが、ユーザーにとっての有益な「情報・知識基盤(Information Base / Knowledge Base)」、さらには、新たな「知識創造の場」「思考促進の場」としてより良く活用されることを目指しています。
TransNetCreation では、今後とも、「Think Future, Imagine Alternative, Create Real!」の精神で、アプリケーション開発、システム構築、サイト制作及び経営・マーケティング・ITコンサルティング、そしてそれらに関する情報発信などの活動に取り組んでいきたいと考えています。当サイト共々、今後とも TransNetCreation をよろしくお願い致します。
※1:2012年01月23日追記当モジュールの名称は、当初は、上記タイトル・本文中にあるように「TNC Personal Bookmark Module」でしたが、それを「TNC Personal Index Module」へと変更しました。名称変更の理由は、次の3点です。(1)「Bookmark」とは、Web においては、一般的に、Web 全体に対するマーキング行為として認識されている。(2)サイト内における「ブックマーク」行為は、実質的に、サイトの「インデックス(索引)」として機能する。(3)「Indexed Database API」を利用している当モジュールは、「Index」というキーワードとの親和性が高い。ということで、具体的には、旧名称は一般的な意味合いでの「Bookmark」との混同の可能性があるのと危惧から((1)の観点)、新名称として「Index」もしくは「Navigation」というキーワード候補が浮かびましたが((2)の観点)、(3)の観点において「Index」の方を採用し、「TNC Personal Index Module」とすることとしています。
※2:2012年02月03日追記Firefox 10(2012年01月31日リリース)において、Indexed Database API の実装が最新仕様に合わせて更新されたのに伴い、当モジュールもその実装に合わせるべく該当部分の修正を行い、Firefox 10 上で稼働するように対応しました。
※3:2012年03月19日追記Firefox 11 のリリースに伴い、Firefox 11 上での稼働を確認しました。Firefox 10 から 11 へのアップグレードにおいては、Indexed Database API の実装自体の変更点は少なかったため、このアプリケーションのコードについては、修正は(結果的には)不要でした。なお、Firefox 11 への対応確認過程で生じた若干の問題については、モジュールページ に記載しています。