BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース RESTful Worldでの素晴らしいURI

RESTful Worldでの素晴らしいURI

「最小の統合コストでマシン読み取りが可能なデータを共有するための、分散化ワールドワイド情報空間として思い描かれる」とは何を指しているのか? RESTだろうか?いや、違う。SWEOによると、これはSemantic Webということだ。素晴らしいURIは、こうすることを支援する。そこで、RESTful SOA URIも同様に「素晴らしい」のかどうかを確かめてみる価値はあるかもしれない。

Semantic Web Education and Outreach (SWEO)(source)Interest Groupは、 3月末にその権利が終わりを迎えた。最後の製品はCool URIs for the Semantic Web(source)についてのW3C Noteであった。URIは素晴らしいか?1988年(当時はまだ「Sir」ではない)のTim Berners-Lee氏による記事に言及する。
「何が素晴らしいURIを可能にするのか?
素晴らしいURIは、変化しない。
どんな種類のURIが変化するのか?  
URIは変化しない。人びとが変えているのだ」。

こんにちの素晴らしいURIはそんなに単純ではない。2005年、「HTTP修飾参照機能の範囲」(httpRange-14)(source)に関する長く続いた討論の 後、W3C Technical Architecture Group (TAG)は最終的に決定したのは、「HTTP応答コード200(うまくいった検索)が指定され、URIが情報リソースのためであり、しかし、そのような 応答がなく、または別のコードがあることを示唆しているなら、そんな試みはなかっただろう」と2005年にTBLによってまとめられた(source)ことである。現在の SWEO Noteは、Roy T.Fielding氏によるさらに詳細な投稿(source)に言及している。

a) 「http」リソースが2xx応答でGET要求に応答するならば、そのURIで特定されるリソースは情報リソースである。
b)「http」リソースが303(他、参照)応答でGET要求に応答するならば、そのURIで特定されるリソースはリソースである。
c) 「http」リソースが4xx(エラー)応答でGET要求に応答するならば、そのリソースの種類は不明である。

Fielding氏は、REST(参考記事リンク)アーキテクチャーの異名である。しかしながら、httpRange-14の決定は、ほとんどRESTful SOAでは認められていない。例として、Mark Bakers氏による「hypermedia constraint」(参考記事)やAnne Thomas Manes氏による「REST is about Resources」(source)などがある。URIは、概してRESTの基本的な概念である、Uniform Resource Identifiersである。SWEO Noteのみが、例証としての「RDF仕様の実装者の現実的なガイド」と追加している。

RDF(source)は、Resource Description Frameworkを表し、「ユーザが現実の人びと、組織、トピック、ものからのWebドキュメントおよび概念をコンピュータが処理可能な方法で記述する ことを可能にする。そよのうな記述のWeb上での公開は、Semantic Webを作成する」。 人が読解可能なドキュメント(別名:情報リソース)およびコンピュータが処理可能な記述またはセマンティクスコンセプトの共起は、HTTP URIの識別(source)に曖昧さを生じさせる。 http://www.example.com/people/alice はAliceの美しくデザインされたホームページを表しているのか、それともAliceについてのRDFがエンコードされたメタデータを表しているのか?企業固有のスキームに従ったvCard、FOAFレコード、またはHRデータセットであるのか?

そういった質問はプロトコルに依存しないURI構文(source)の範囲外であるので、ソリューションとしてコンテンツネゴシエーション(source)を提供するのはHTTPプロトコ ル次第である。HTTPクライアントは優先されたデータ形式と言語に加え要求ヘッダーでのターゲットURIを考慮に入れないので、コンテンツプロバイダー がこれらの設定を取り扱うべきである。SWEO Noteは、それぞれのデータ形式に1つの個別のURIを暗示するソリューションと「汎用」のURIを提供する。これにより、必要に応じて複数の提示の中 で具体的な好みへの直接リンクが可能になり、汎用URIは実行時間としてHTTP要求で指定された「受諾」設定にしたがって、これらの1つに転送する。 Apache HTTP Serveのさらに詳しいベストプラクティス(source)が公開されている。

これは主に修正ドキュメントファイルの準備に適合することを、RESTful SOAは議論するかもしれない。動的SOAサーバは転送することなしに、オンデマンドで要求されたフォーマットでコンテンツをレンダリングすることのみ で、簡単にこの「汎用」URIコンセプトを実装することができる。このビューはコンテンツの希望に沿いながら、転送アーキテクチャーがリンケージおよび参 照をサポートする。また、リソース管理およびガバナンス(source)を利用し、Semantic WebまたはRESTful SOAでそうする。そしておそらくこれらの2つのアプリケーションの分野はお互いにそれほど離れたものではない。

原文はこちらです:http://www.infoq.com/news/2008/04/cool-uris-rest

この記事に星をつける

おすすめ度
スタイル

BT