<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end> <dfn><code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ni:</anchor></code></dfn> は、対象となる情報の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ハッシュ値</anchor>を使って<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">識別</anchor>する
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL scheme</anchor> です。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end> 「<code xmlns="http://www.w3.org/1999/xhtml" class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ni</anchor></code>」は Named Information を表します <src><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src>。</comment-p><section><h1>仕様書</h1><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> <cite xml:lang="en">RFC 6920 - Naming Things with Hashes</cite> (<time>2014-06-02 05:17:24 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://tools.ietf.org/html/rfc6920">http://tools.ietf.org/html/rfc6920</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="30" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[30]</anchor-end> <cite>Named Information</cite> (<time>2014-01-30 17:45:21 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.iana.org/assignments/named-information/named-information.xhtml#uri-parameter">http://www.iana.org/assignments/named-information/named-information.xhtml#uri-parameter</anchor-external></li></ul></refs></section><section><h1>構文</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ni:</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> は、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL scheme</anchor> の後に、
<code><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">//</anchor></code>、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">authority</anchor>、 <code><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">/</anchor></code>、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ダイジェストアルゴリズム</anchor>、
<code><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">;</anchor></code>、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ダイジェスト値</anchor>、
<code><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">?</anchor></code>、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">query</anchor>
が続きます。ただし <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">authority</anchor> と <code><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">?</anchor></code> 以下は省略可能です。 <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src></p><figure class="railroad"><ol><li><code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ni:</anchor><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">//</anchor></code></li><li>?<ol><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">authority</anchor></li></ol></li><li><code><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">/</anchor></code></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ダイジェストアルゴリズム</anchor></li><li><code><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">;</anchor></code></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ダイジェスト値</anchor></li><li>?<ol><li><code><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">?</anchor></code></li><li>名前=値</li><li>*<ol><li><code><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&amp;</anchor></code></li><li>名前=値</li></ol></li></ol></li></ol></figure><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[14]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ダイジェストアルゴリズム</anchor>と<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ダイジェスト値</anchor>は、
どちらもそれぞれ1文字以上の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 3986</anchor> <code class="ABNF" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">unreserved</anchor></code>
でなければなりません <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src>。構文上<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">パーセント符号化</anchor>が認められていません。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ダイジェストアルゴリズム</anchor>と<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ダイジェスト値</anchor>は、
この <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> によって表される<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">オブジェクト</anchor>についての値です。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ダイジェストアルゴリズム</anchor>は、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IANA</anchor> に登録された名前を使って表します <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src>。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="28" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[28]</anchor-end> バイナリ表現 (<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="27" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;27</anchor-internal>) では<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ダイジェストアルゴリズム</anchor>を
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Suite ID</anchor> という<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">アルゴリズム</anchor>に割り当てられた数値で表します。
<code xmlns="http://www.w3.org/1999/xhtml" class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">nih:</anchor></code> では、文字列の名前と数値のどちらも認められています。
しかし <code xmlns="http://www.w3.org/1999/xhtml" class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ni:</anchor></code> では文字列しか認められていないようです。</comment-p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="11" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[11]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ダイジェスト値</anchor>は、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 4648</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">base64url</anchor> で<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">符号化</anchor>したもの
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">詰め文字</anchor> <code><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">=</anchor></code> なし) でなければ<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><strong xmlns="http://www.w3.org/1999/xhtml">なりません</strong></anchor> <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src>。</p></section><section><h1>authority</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">authority</anchor> は、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> によって表される<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">オブジェクト</anchor>にアクセスするのを補助するものです
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src>。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="18" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[18]</anchor-end> <code xmlns="http://www.w3.org/1999/xhtml" class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">http:</anchor></code> などの多くの <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL scheme</anchor> とは違って、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">authority</anchor> は <code xmlns="http://www.w3.org/1999/xhtml" class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ni:</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor>
においては重要なものとはされていません。 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">authority</anchor> の値に関わらず、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ダイジェスト</anchor>の部分で <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> によって識別されるものは決まります
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ハッシュ値URLの比較</anchor>を参照)。</comment-p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">authority</anchor> は省略可能です <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src>。その場合 <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ni:</anchor><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">///</anchor></code>
から始まる <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> となります。 (<code><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">//</anchor></code> は省略できません。)</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">authority</anchor> は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 3986</anchor> の構文が参照されています <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src> が、
それ以上の制約や意味や処理モデルは定義されていません。</p></section><section><h1>query</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[12]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">query</anchor> は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 2616</anchor> の <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">http:</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor>
のものと同様とされています <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src>。<code>名前=値&amp;名前=値</code>のような構文を指している <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src>
とありますが、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 2616</anchor> にはそのような規定がなく
(実際にはそのような構文は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTTP</anchor> ではなく、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML</anchor> で用いられている
<code class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">application/x-www-form-urlencoded</anchor></code> のものです。)、
何が認められているのか曖昧となっています。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[15]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">query</anchor> では<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">パーセント符号化</anchor>が認められています。特に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">非ASCII文字</anchor>は、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">UTF-8</anchor> で<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">パーセント符号化</anchor>しなければ<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><strong xmlns="http://www.w3.org/1999/xhtml">なりません</strong></anchor> <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src>。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="20" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[20]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">query</anchor> は <code><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&amp;</anchor></code> 区切りの名前と値の組の列として定義されていますが、
そのそれぞれのことを<dfn><rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><anchor>引数</anchor><rt xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">parameter</rt></rubyb></dfn>や<dfn><rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">クエリー文字列属性<rt xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">query string attribute</rt></rubyb></dfn>と呼ぶ <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src> ようです。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="19" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[19]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">query</anchor> の解釈の詳細についてはまったく言及もありません。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">引数</anchor>の順序が重要なのか、未知の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">引数</anchor>をどう扱うのか、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">引数</anchor>の名前の大文字と小文字を区別するのか、
同じ名前の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">引数</anchor>を複数指定できるのかなどは不明です。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="21" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[21]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">引数</anchor>は、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IANA</anchor> に登録することになっています <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal>, <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="30" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;30</anchor-internal></src>。
現在次の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">引数</anchor>が存在しています。</p><figure class="short list"><ul><li><code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ct</anchor></code></li></ul></figure></section><section><h1>相対 URL</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="16" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[16]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">相対URL</anchor>として用いられることも想定されているようです。 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC</anchor> には次のような例があります。</p><figure class="quote"><pre class="HTML code">        &lt;base href=&quot;ni://example.com&quot;&gt;
...
        &lt;p&gt;Please check &lt;a href=&quot;sha-256;f4OxZX...&quot;&gt;this document&lt;/a&gt;.</pre></figure><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="17" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[17]</anchor-end> ところでこの <code xmlns="http://www.w3.org/1999/xhtml" class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">base</anchor></code> <code xmlns="http://www.w3.org/1999/xhtml" class="HTMLa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">href</anchor></code>
は <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;6</anchor-internal> の構文に適合していません。</comment-p></section><section><h1>比較</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ハッシュ値URLの比較</anchor>を参照してください。</p></section><section><h1>処理</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="13" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[13]</anchor-end> 実装は、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> の送信、受信、処理に当たって <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> と<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">資源</anchor>の対応関係の<rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">整合性<rt xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">integrity</rt></rubyb>を検査して構わない <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src>
とされています。ここでいう<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">整合性</anchor>が具体的に何を指しているのかはよくわかりません。</p></section><section><h1>HTTP URL への変換</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="22" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[22]</anchor-end> <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ni:</anchor>//<var>n-authority</var>/alg;val?query-string</code>
のような <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ni:</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> は、
<code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">http:</anchor>//<var>h-authority</var><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">/.well-known/ni</anchor>/alg/val?query-string</code>
のような <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">http:</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> (や <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">https:</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor>)
に変形できます <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src>。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="25" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[25]</anchor-end> ここで <var>h-authority</var> は、 <var>n-authority</var> が空でなければ、
同じ値でなければ<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><strong xmlns="http://www.w3.org/1999/xhtml">なりません</strong></anchor>。空の時は、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">応用</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文脈</anchor>により適当な値を設定できます。
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src></p><example xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><p xmlns="http://www.w3.org/1999/xhtml"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="26" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[26]</anchor-end> 例えば <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Webページ</anchor>内なら、その<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">起源</anchor>と同じものとできます <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src>。</p></example><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="23" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[23]</anchor-end> この変形は <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ni:</anchor></code> に対応した<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">クライアント</anchor>が使えない時にはいつでも利用できます
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src>。しかし得られるデータが意図したものとは限りません <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src>。また、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTTP</anchor> から <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ni:</anchor></code> への逆の変形もできますが、
やはり意図したものになるとは限りません <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src>。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="24" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[24]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">応答</anchor>は <code class="HTTP"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">3xx</anchor></code> かもしれませんが、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTTP</anchor>
に従い正しく処理できなければ<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><strong xmlns="http://www.w3.org/1999/xhtml">なりません</strong></anchor> <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src>。</p></section><section><h1>応用</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="33" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[33]</anchor-end> 使っているところを見たことがないです。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="34" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[34]</anchor-end> 聞いたことある?</p></section><section><h1>バイナリ形式</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="27" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[27]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC</anchor> は、可変長の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">バイナリ形式</anchor>も規定しています <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal></src>。</p></section><section><h1>人間可読形式</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="29" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[29]</anchor-end> 姉妹 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL scheme</anchor> として、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">人間可読</anchor>と称する <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">nih:</anchor></code> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL scheme</anchor> が定義されています。</p></section><section><h1>歴史</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end> <cite xml:lang="en">Subresource Integrity</cite>
( (<time>2014-03-15 05:47:19 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/TR/2014/WD-SRI-20140318/">http://www.w3.org/TR/2014/WD-SRI-20140318/</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="31" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[31]</anchor-end> <cite xml:lang="en"><strong></strong>[<strong></strong>Integrity<strong></strong>]<strong></strong> Revisit RFC6920 URIs for benefit of servers and Semantic  Web applications</cite>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Austin William Wright</anchor> 著, <time>2015-03-10 15:23:19 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://lists.w3.org/Archives/Public/public-webappsec/2015Mar/0048.html">https://lists.w3.org/Archives/Public/public-webappsec/2015Mar/0048.html</anchor-external></p><figure class="quote"><figcaption><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="32" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[32]</anchor-end> <cite xml:lang="en">hash-uri/README.md at master · hash-uri/hash-uri</cite>
( (<time>2016-10-08 20:55:23 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/hash-uri/hash-uri/blob/master/README.md">https://github.com/hash-uri/hash-uri/blob/master/README.md</anchor-external></figcaption><blockquote><p>Uses uncommon URI syntax that could break many parsers (; path arguments). The &quot;ni&quot; (Named Info) term is less meaningful and overlaps with URNs (Uniform Resource Names), which could potentially lead to use for non-content addresses.</p></blockquote></figure><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="35" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[35]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SRI</anchor> が逃げたのはやはり正しかった。 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> にすることの意味がなく、
逆に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">パーセント符号化</anchor>とか要らぬ複雑性を持ち込むだけだからな。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="36" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[36]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">参照元にハッシュ値を埋め込む提案と失敗の歴史</anchor>の1頁でした。</p></section></body></html>