真の Web 2.0: オープン・データにリンクする

Web 2.0 を Web 上の情報に革命をもたらす方法と見なすコミュニティーについて知る

LOD (Linking Open Data) について学びましょう。LOD は、分離した文書という考え方から広大なデータ情報空間へと Web を移行するための、コミュニティーによる活動です。LOD の重要な原則は、単純であること、Web 開発者が容易に採用できること、そして Web に関する他の多くの一般的な傾向を補完することです。データのコンポーネントを (皆さんが予想もしなかった方法で) 発見しやすく、価値を高め、再利用しやすくすることによって、データをもっと広く使われるようにする方法を学びましょう。

Uche Ogbuji (uche@ogbuji.net), Partner, Zepheira, LLC

Uche photoUche Ogbuji は次世代の Web 技術に特化してソリューションを提供する会社 Zepheira, LLC のパートナーです。Ogbuji 氏は XML、RDF、およびナレッジ管理アプリケーション用のオープン・ソース・プラットフォームである 4Suite の開発リーダーであり、Versa RDF 照会言語の開発リーダーでもあります。彼はナイジェリア出身のコンピューター・エンジニア兼ライターとして米国コロラド州ボールダーに住み、そこで働いています。彼に関して詳しくは、彼のブログである Copia を見てください



2008年 2月 05日

私はこのコラム全体をとおして、Web 2.0 の華やかな効果よりも、オープンで共有されるデータという側面での Web 2.0 を強調してきました。Ajax は確かに重要です。Ajax を適切に使用すれば、Web サイトのユーザビリティーを高めることができるからです。しかし Web フィードや、オープンで Web に適した API、そしてサードパーティーのプラグインやマッシュアップ機能こそ、Web 2.0 の真の実体です。元々 Web に関する事項に深く携わるコミュニティーである W3C は、そうした面から、ある特定の一貫したプラクティスに専念しています。一方 LOD (Linking Open Data) コミュニティーは、セマンティックな機能を使って Web の機能を強化するという W3C のビジョンと、本流の Web 2.0 の特徴である現実主義とを組み合わせています。このコミュニティーの中心には、W3C による準公式のプロジェクトがあり、このプロジェクトのメインのウィキは次のように言っています (「参考文献」を参照)。

W3C の SWEO [Semantic Web Education and Outreach] Linking Open Data コミュニティー・プロジェクトの目標は、オープンでさまざまなデータ・セットを RDF として Web 上に公開することにより、またさまざまなデータ・ソースからのデータ項目の間に RDF リンクを設定することにより、データという共有領域によって Web を拡張することです。

RDF を強調することは W3C にとっては当然のことです。W3C はこの 10 年間、RDF 技術を推進してきているからです。しかし LOD が支持された背景には、厳密な RDF フォーマットをすべてに対して強制することはおそらく Web 開発者の支持を得るための最善の現状戦略ではない、という認識を持った、影響力の大きい発言があったことがあります。

LOD は概念モデルとして RDF をサポートしていますが、ある 1 つの構文に重点を置くのではなく、リンク動作とオープンであることに新たに重点を置いています。結局のところ、RDF は単なる URI とリンク、そしてラベルであり、この 3 つを含むモデルはどんなモデルでもそのまま RDF システムで動作します。LOD コミュニティー全体を構成する人達には、私がこのコラムでこれまで説明してきた、データを開放することによるすべての利点をサポートする W3C 主導の中核的な人々から、RDF や Atom、JSON などを Web 開発者がデータを開放するための単なるツールとして見る人々に至るまで、さまざまな人が含まれています。

データの Web とは何か

LOD コミュニティーの多様性は、すべて Web の発明者である Tim Berners-Lee の考え方から着想を得ています。彼は「Giant Global Graph」(「参考文献」を参照) という記事の中で、この考え方の基本的な進化を、いくつかの適切な観察によって表現しています。

  • (インターネットの誕生の背後には)「興味深いものはケーブルではなく、コンピューターである」という認識がありました。ネットは、ケーブルを見なくてもコンピューターが見えるように設計されました。
  • World Wide Web は、私達がユーザーとして持っている力を再び強化します。そこには「興味深いものはコンピューターではなく文書である」という認識がありました。今や、山のように大量の文書を、どのコンピューターに文書が保存されているのかを気にすることなく、次々に見て回ることができます。
  • 人々は今度は、もう 1 つの心理的な動きを見せています。今や認識されているのは「重要なものは文書ではなく、文書によって記述されるものである」ということです。

Berners-Lee は、この進化のすべての段階がリンクのウェブに関するものだと指摘しています。つまりコンピューターのウェブ (ただし私達はこれを「ウェブ」ではなく「ネットワーク」と呼びます) や文書のウェブ (大部分の人が「Web」と呼ぶもの)、そして究極的に、私達が共有したいと望むあらゆるもののウェブです。彼は、Web の基本的な原則をもっと直接的にデータ (例えば従来のデータベースの内容など) にまで拡張する必要があり、またコンピューターではないリソース (例えば人間や、具体的なものと抽象的なもの、場所など) にリンクすることも避けるべきではない、と主張しています。コンピューターではないリソースのリンクに関する手法については後のセクションで説明します。このようにリンクを拡大して見る見方は「データの Web」と呼ばれ、LOD の基礎となっています。

LOD の基本

実際に LOD が何を意味するのかを詳しく調べてみると、その出発点には Berners-Lee が別の論文「Linked Data」(「参考文献」を参照) に起草した 4 つの基本的な原則があります。ウィキペディアではこれを以下のように解説しています。

  1. リソースとして Web に公開するさまざまなものを識別するために、URI を使う。
  2. 人々がそれらのものを発見し、参照 (逆参照) できるように、HTTP の URI を使う。
  3. リソースの URI が逆参照された場合には、リソースに関する有用な情報を提供する。
  4. Web 上での情報発見を向上させる手段として、公開されるデータの中に他の関連する URI へのリンクを含める。

原則 1 は、URI を使って可能な限り情報を公開する必要がある、という意味です。Web ページのみではなく、フロントオフィス・アプリケーションの文書や、データベースの行やメタデータ、個人データ、トランザクション・ログ、ビジネス・ルールやビジネス・ポリシー、さらにはサービスまで公開するのです。もしその情報を共有することが有用であるなら、その情報のコンポーネント部分に URI を与えることを検討します。セキュリティーを気にする人がいるかもしれません。皆さんはおそらく、従来のアプリケーションに依存してデータを保護することに慣れているはずです。人々が Web 上で銀行を利用することを思い出してください。人々は Web 上で株を売買し、Web 上で旅行を予約し、さまざまなものを購入します。Web は、ベスト・プラクティスが守られる限り、セキュアなデータの経路として十分に実証されています。

原則 2 は、あいまいな ID のスキームや、さらには URI のスキームさえもあきらめ、Web で大活躍してきた HTTP に固執する必要があるという意味です。これによって、非常にさまざまなツールやリソースが情報にアクセスすることができます。

原則 3 は、データの URI にアクセスする人々に提供するデータは、Web 上での共有に適した共通のフォーマットである必要があるという意味です。XML はそのための明らかな候補の 1 つですが、すべての XML が適しているわけではありません。セマンティクスが見える形で XML を使う必要があります。つまり XML の構成要素は、マシンによる処理が可能で、表現力豊かな方法で記述されている必要があります。RDF は LOD コミュニティーで使われているメインのフォーマットです。RDF はセマンティクスが非常によく見えるのですが、まだ RDF は XML ほど広範にはサポートされていません。両者の最も良い部分を組み合わせて活用するための 1 つの方法は、RDF のレンズをとおして XML を見るためのシステムである、GRDDL を使うことです。

皆さんの中には、Web 2.0 の世界で非常に有名になった JSON やマイクロフォーマットはどうなのかと思う人がいるかもしれません。JSON やマイクロフォーマットの問題は、ほとんどの場合、XML よりもさらにセマンティクスが見えないことです (ただしマイクロフォーマットで GRDDL を使うことはできます)。

原則 4 は基本的に、「富を共有する」という原則です。最初の 3 つの原則では、データへの Web ポインターを実現するよう、またそうしたポインターの指すデータの有用性を最大化するように奨励しています。いったんこうしたポインターが得られたら、それらを使わない手はありません。可能な限り広範にリンクを提供する必要があります。誰かが、あるいは何らかのマシンが皆さんのデータの Web にナビゲートするように選択するかもしれず、また LOD の全体としての目標は、元々考慮されていなかった方法でデータを使いやすくすることなのです。


データ以外のもの

前のセクションに挙げた原則は、既にコンピューター・データとして入手可能なものに対しては大いに意味があります。文書やファイル、データベースなどは、「情報リソース」と呼ばれます。しかし Berners-Lee は「重要なものは文書ではなく、文書によって記述されるものである」と言っています。当然のことですが、このカテゴリーに含まれるものの大部分は情報リソースではありません。それらは人間や場所、その他具体的なものと抽象的なものです。このような、存在がコンピューターの中に収まらないものの Web を、どのように構成すればよいのでしょう。この部分で LOD は非常に賢明な手法を使っています。情報リソースではないものに、構わず URI を与えてしまうのです (例えば http://censusdata.example.com/joe.cool など)。Joe Cool のホーム・ページ (http://joe.cool.name/heyjoe.html) を使って彼を識別することはしません。Joe Cool のホーム・ページを使ってしまうと、そのリンクは人との関係なのか、それともホーム・ページの文書との関係なのか、リンクをたどる人を混乱させてしまうからです。

この場合の秘密は、誰かが Joe Cool 自身の識別子 http://censusdata.example.com/joe.cool に行くと、「これは情報リソースではないため、リソース自体を提供することはできません。しかしリソースに関する情報をさらに得るための、いくつかのリンクを提供することができます。」という特別な HTTP レスポンス・コードが返される点にあります。この特別な HTTP コードは 303 です。そして関連情報へのメイン・リンクは Joe Coolのホーム・ページ http://joe.cool.name/heyjoe.html へのリンクかもしれません。しかし 303 によるステップによって、元々の識別子が人を指すこと、その人のホーム・ページを指すのではないことが明確にわかります。

私は長年、情報リソースではないものの識別子をあまりにも密接にコンピューター表現に結びつけようとするシステムには疑問を持っていました。そのように結びつける方法には基本的な考え方の問題があると思います。またシステムが非常に複雑になる傾向があると思います。私は正直なところ、303 による手法は、私がこれまで見た中で複雑さの問題が最も少ない手法だと認めざるを得ません。そしてこの手法が広範なプラクティスとしてどう発展するのか、興味を持って見守っています。考え方に関するいくつかの問題は実際に残っていますが、303 によるシステムが成功し、新しい時代を開けるかどうかは、元々の Web が目障りながらも有用な 404 と共に情報システムの新しい時代を開いたのと同じくらい深い意味があると言っても大げさではないと思います。


拡大するリンク

LOD コミュニティーは、LOD の原則を使うことで得られる、重要な公開データ・セットのダイアグラムを維持管理しています。図 1 は、そのダイアグラムの最近のバージョンです。

図 1. LOD のデータ・セット
LOD のデータ・セット

このダイアグラムの、クリックできるバージョンへのリンクを「参考文献」に挙げてあります。それぞれの円の大きさは、そのデータ・セットの中のデータの量を大まかに示しています。いくつかの興味深い項目として以下のものがあります。

  • Freshmeat はオープン・ソースのデータを一覧にした古典的なサイトの 1 つです。
  • MusicBrainz はデジタル音楽の曲やアルバムのオンライン・データベースです。
  • Project Gutenberg は著作権のなくなったテキストを自由に利用できるようにするという、昔からの尊いプロジェクトです。
  • FOAF はソーシャル・ネットワーキングへの、RDF による手法です。
  • DBPedia はウィキペディアの記事を取り巻く LOD ラッパーです。

まとめ

Web は大成功を収めていますが、まだまだ大いに改善の余地があります。W3C による、Web を改善するための作業の中心には、セマンティクスが見えるデータによるネットワークを構成しようという、セマンティック Web があります。LOD は基本的に、Web 開発者が非常に取り組みやすい方法でセマンティック Web を実現しており、Web 2.0 の最も重要な概念をうまく補完しています。私は以前、このコラムでマッシュアップを取り上げました。マッシュアップでは、サイト A からサービス出力を取り出し、それをサイト B から取り出したサービス出力と混合します。LOD の場合には、このプロセスはそうしたことを意識して各コンポーネント・サイトに特化したものである必要はありません。Web 全体に散らばった豊富なデータやサービスから、必要なものをそのまま引き出すことができるのです。一部は無料で使用でき、一部はセキュリティーや商取引用に制限されるかもしれませんが、そうしたことの大部分は Web 開発者が既に解決済みの細かなことにすぎません。

LOD は、Web 上に置かれた重要なものを人々が見つけやすくすること、またそうしたものを利用して、予想外の有益なことがより簡単に行えることを意味しています。皆さんが次回 Web プロジェクトに取り組む際には、どのような情報リソースと非情報リソースが Web アプリケーションの中で表現されるのかという観点で Web プロジェクトについて考えることから始めてください。そして各リソースに対して、適切に設計された HTTP の URI と、セマンティクスの面でリッチなデータ・フォーマットを提供し、また可能な限り多くのリンクを作成するために、あらゆることをしてみてください。

参考文献

学ぶために

議論するために

コメント

developerWorks: サイン・イン

必須フィールドは(*)で示されます。


IBM ID が必要ですか?
IBM IDをお忘れですか?


パスワードをお忘れですか?
パスワードの変更

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


お客様が developerWorks に初めてサインインすると、お客様のプロフィールが作成されます。会社名を非表示とする選択を行わない限り、プロフィール内の情報(名前、国/地域や会社名)は公開され、投稿するコンテンツと一緒に表示されますが、いつでもこれらの情報を更新できます。

送信されたすべての情報は安全です。

ディスプレイ・ネームを選択してください



developerWorks に初めてサインインするとプロフィールが作成されますので、その際にディスプレイ・ネームを選択する必要があります。ディスプレイ・ネームは、お客様が developerWorks に投稿するコンテンツと一緒に表示されます。

ディスプレイ・ネームは、3文字から31文字の範囲で指定し、かつ developerWorks コミュニティーでユニークである必要があります。また、プライバシー上の理由でお客様の電子メール・アドレスは使用しないでください。

必須フィールドは(*)で示されます。

3文字から31文字の範囲で指定し

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


送信されたすべての情報は安全です。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=Web development
ArticleID=293184
ArticleTitle=真の Web 2.0: オープン・データにリンクする
publish-date=02052008