OpenIDにかんするさまざまな疑問を解消していく本連載。前回も紹介したXRIだが、そもそもXRIは何のために考案されたのだろうか。XRIが生まれた背景とその理由について解説する。
こんにちは。前回XRIについて解説いただきましたが、それでもなおXRIを使う意義というのがいまひとつ分かりません。URLやURIと異なる特長はどこにあるのでしょうか。また、取りあえずi-nameを取得しておいた方がよいのでしょうか。
わたしたちが通常URLと読んでいる文字列は、URI(Uniform Resource Identifier)という限定された文字セットから構成されるもので表現されています。URI仕様はその後、Unicodeなどを扱えるようにシンタックスを拡張したIRI(International Resource Identifier)がRFC 仕様として策定されました。XRIは、IRIのシンタックスをさらに拡張したものであると考えていただいて問題ないでしょう。
このXRIですが、どのような意図で設計されたものなのかを「XRI 2.0 FAQ - 1.3 Why was XRI needed?」から抜粋していきます。
これらが表すことをもう少しかみ砕いて言えば、XRIとは
のように言えるでしょう。XRIの語彙(ごい)が豊富というのを例示するために、以下では筆者(zigorou)の友人である西尾泰和の連絡先をXRIで記述してみます。
xri://=zigorou/friends/(=nishiohirokazu/(+contact))
もちろんURIでも同等の表現ができるのですが、XRIではかっこでくくられたXRI(もしくはIRI)であることがシンタックス上、保障されているため、URIよりも汎用的で柔軟な記述が可能となっているわけです。3番目は特別な状況でもない限りはOpenIDとはあまり関係ありません。識別子とそれに対する問い合わせを提供するためのものだと理解しておけば十分でしょう。以上の内容がURIとの比較になります。
i-nameの取得の件ですが、コミュニティー i-name(=community*nameまたは@community*name形式のもの)であれば無料で取得できるところがあります。幾つか取得できるサービスがあるのですが完成度の高いものはfreexri.comのようです。
本格的に使いたい場合は、i-names registrationから有料のものを取得してください。筆者はlinksafeで取得しています。
サイボウズ・ラボで研究開発にいそしむPerlハッカー。Perlを中心とした開発のノウハウやネタをShibuya Perl Mongersのイベントで発表するなど講演活動も行う。最近ではOpenIDの実装方法や考察などをブログ「Yet Another Hackadelic」などで書き連ねている。山口氏へのコンタクトはこちらから。
Copyright © ITmedia, Inc. All Rights Reserved.