2016-05-28 RFC 6570 URI Template をしらべた
RFC 6570 URI Template について調べた。結果は次の Gist および Repository にある。
- bouzuya/rfc6570-npm-packages
- RFC6570 - URI Template に関する覚書
- RFC6570 - URI Template のための npm package に関する覚書
RFC 6570 URI Template は URI の template を定義したもの。 template の式を展開して URI を生成できる。たとえば次のような感じ。
template: 'http://example.com/~{username}/'
variables: { username: 'mark' }
URI: 'http://example.com/~mark/'
きっかけは JSON Schema and Hyper-Schema で使われていたこと。URI Template に RFC があることを知らなかったので、驚いた。せっかくだから何かに活かせないかと思い、調べてみることにした。
仕様は RFC 6570 URI Template にある。
日本語の情報は検索してみたけど、あまりない。
- RFC 6570 - suikawiki
- JavaScriptによるRFC6570 - URI Templateの実装 - とあるプログラマの日記 @s025236
- 3分間・URIテンプレート - 檜山正幸のキマイラ飼育記
- [URI Templates の各言語実装 - Mi manca qualche giovedi`?](http://d.hatena.ne.jp/n_shuyo/20080614/uritemplates)
npm package はいくつかのすこしずつ名前が違う library を見つけた。各 npm package が正しく動いているのか怪しいので test するつもりだ。また余裕があれば自分で実装してみたり、使いかたについてまとめたい。
気になるのは match や extract が難しそうな構文だということ。変に展開に機能を追加しすぎているような印象を受けている。もうすこし調べてまた書くつもりだ。