上記デモは、各著作権者が提供しているオープンデータを改変したものを利用させていただいております。このデモで使用している改変後のデータ及び、デモから出力されたデータは二次利用による再公開を認めません。
データを利用されたい場合は、各著作権者がデータを公開しているWebサイトから元データをダウンロードし、そのライセンスに従ってご利用ください。
自作のLinked Dataを、どのような手法で公開し、どう視覚化するか。悩みどころですよね。
特に大きな壁となるのが、LinkData4原則のうちの一つ、参照解決(dereference)ではないでしょうか。
特定の事物を表すURIを、参照解決可能にする方法はいくつかあります。
一つは、サーバーにリダイレクトの仕組みを構築することです。ただこの方法は、サーバーに関する詳しい知識が必要で、技術者でない者が自力で行うには困難が伴います。
もう一つは、LinkData.org のような、オープンデータ活用支援プラットフォームを活用する方法です。データの登録も簡単で、かつ他のデータとも「つながる」ことのできる、非常に有用な公開方法ですが、自分のホームページ内で、自分流にデータを提供したい、という要望には残念ながら応えられません。
また、RDF Linked Dataの特徴として、特定のデータを抽出したり、更新等の操作を行うためのクエリ言語 SPARQL の利用が挙げられます。
SPARQLを利用するには、VirtuosoやFusekiのようなRDFストアサーバを設置するのが理想ですが、
個人や小規模な市民グループが、自前で構築し、それを管理運用するのは、費用的・技術的に無理があります。
そこで、私のような趣味でLinked Dataを作っている者が、SPARQLを利用したい場合、
一般的には、RDFストアのクラウドサービスを利用させてもらうこととなります。
我が国においては、以前、Sparql EPCU という優れたプラットフォームがありましたが、現在は使えなくなってしまいましたので、海外のサービスを探すか、諦めるか、という状況となっています。
そこで私は、上記の諸問題をSmartに解決し、LODのさらなる発展に寄与するための技術基盤として、今回この「 LOD Smart Index 」を開発しました。その特徴は以下の通りです。
もちろん、LOD Smart Indexにも欠点はあります。
LOD Smart Indexは、HTMLとJavascriptのみでできており、すべてWebブラウザ上で動作するものです。そのため、ブラウザの「見た目上の」変化を起こすことはできますが、特定の事物のRDFそのものをサーバ出力させることはできません。また、SPARQLの「エンドポイント」としてレスポンスを出力させることもできません。
ですので、考え方によっては、機械判読性の向上を目指すLinked Dataの理念とは反しているものかもしれません。
しかしながら、草の根レベルでLinked Dataの普及を促進するためには、設置の容易さ、使いやすいインターフェース、そして優れた「人間判読性」が何より重要ではないでしょうか。
LOD Smart Indexを、Linked Data公開のスターターキットとして、上手に使っていただけたら幸いです。
あなたのデータで LOD Smart Index をご利用していただきましたら、活用事例としてこちらのホームページで紹介させていただきますので、もしご希望がありましたら、作者までご連絡をお願いします。
LOD Smart Index は、index.html 内に書き込まれたスクリプトにより、すべての処理をWebブラウザ上で行います。サーバサイドの処理は一切行いません。ただし、データを読み込むのにHTTP通信を利用するため、ローカルでは動作しません。
サーバ上の index.html をブラウザで開くと、同一ディレクトリに置いたRDFデータを自動的に読み込んで、すべてのトリプルをオブジェクトとしてメモリに格納します。そのメモリ上のデータを利用して、様々な処理を行います。
処理速度はクライアントPCの性能と、使用するWebブラウザに依存します。数万トリプルまでのデータセットであれば軽快に動作しますが、10万トリプルを超えると、動きが遅くなったり、SPARQLがフリーズすることもありますのでご了承ください。
RDFデータのネスト(入れ子)は6階層(※ブランクノードを5つ挟む状態)まで対応しています。
今後は、処理速度の向上のためにロジックを見直すとともに、さらに導入しやすくなるよう、ユーザーが入力する初期パラメータのセット方法を改善していきたいと考えています。
タートルパーサーとして Ruben Verborgh 氏の N3.js (MIT license) を、 SPARQL機能実装のため Antonio Garrote 氏の rdfstore-js (2011-2015 / MIT license) をソース内に組み込んでおります。