<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="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI雛形</anchor>の<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">literals</rt></rubyb></dfn>は、その文字自体を表します。</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="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end> <cite xml:lang="en">RFC 6570 - URI Template</cite> (<time>2014-10-27 23:08:55 +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/rfc6570#section-2.1">http://tools.ietf.org/html/rfc6570#section-2.1</anchor-external></li><li><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> <cite xml:lang="en">RFC 6570 - URI Template</cite> (<time>2014-10-27 23:08:55 +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/rfc6570#section-3.1">http://tools.ietf.org/html/rfc6570#section-3.1</anchor-external></li></ul></refs></section><section><h1>意味</h1><p><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> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI雛形</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:">URI参照</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="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;2</anchor-internal></src>。</p><p><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> ただし <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI参照</anchor>で認められない<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文字</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:">パーセント符号化</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="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;2</anchor-internal></src>。</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:">RFC 3987</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI参照</anchor>に含まれ得る<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">符号位置</anchor>が含まれるようです。
ただし <code class="char"><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>としてのみ使うことができます。 <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="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;2</anchor-internal></src></p><figure class="railroad"><ol><li>|<ol><li><code class="char"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">U+0021</anchor></code></li><li><code class="char"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">U+0023</anchor></code></li><li><code class="char"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">U+0024</anchor></code></li><li><code class="char"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">U+0026</anchor></code></li><li><code class="char"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">U+0028</anchor></code>..<code class="char"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">U+003B</anchor></code></li><li><code class="char"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">U+003D</anchor></code></li><li><code class="char"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">U+003F</anchor></code>..<code class="char"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">U+005B</anchor></code></li><li><code class="char"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">U+005D</anchor></code></li><li><code class="char"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">U+005F</anchor></code></li><li><code class="char"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">U+0061</anchor></code>..<code class="char"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">U+007A</anchor></code></li><li><code class="char"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">U+007E</anchor></code></li><li><code class="ABNF" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ucschar</anchor></code></li><li><code class="ABNF" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">iprivate</anchor></code></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">パーセント符号化</anchor></li></ol></li></ol></figure><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="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[14]</anchor-end> <cite xml:lang="en">Character set &quot;$rfc6570:literals-char&quot;</cite> (<time>2015-01-17 22:22:51 +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://chars.suikawiki.org/set?expr=%24rfc6570:literals-char">http://chars.suikawiki.org/set?expr=%24rfc6570:literals-char</anchor-external></li></ul></refs></section><section><h1>展開</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:">リテラル</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="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;6</anchor-internal></src>。<figure class="steps"><ol><li><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:">RFC 3986</anchor> <code class="ABNF" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">unreserved</anchor></code>, <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:">reserved</anchor></code>, <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">パーセント符号化</anchor>のいずれかなら、
そのまま複製します。</li><li><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:">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:">パーセント符号化</anchor>したものを返します。</li></ol></figure></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 3986</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</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-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;10</anchor-internal>)。</p><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="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end> <cite xml:lang="en">Character set &quot;$rfc3986:unreserved | $rfc3986:reserved&quot;</cite> (<time>2015-01-17 22:15:46 +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://chars.suikawiki.org/set?expr=%24rfc3986%3Aunreserved+%7C+%24rfc3986%3Areserved">http://chars.suikawiki.org/set?expr=%24rfc3986%3Aunreserved+%7C+%24rfc3986%3Areserved</anchor-external></li></ul></refs><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> <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>の一部として含まれていた時だけ、
そのまま複製されます。<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:">URI雛形</anchor>の構文上認められておらず、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">リテラル</anchor>ではないので、
誤りとなります。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">展開</anchor>参照。</comment-p><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:">RFC 3986</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI参照</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>されません。ですから、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</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><figure class="quote"><figcaption><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> <cite xml:lang="en">Safari 9.0</cite>
(<time>2015-11-04 23:31:57 +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://developer.apple.com/library/safari/releasenotes/General/WhatsNewInSafari/Articles/Safari_9.html#//apple_ref/doc/uid/TP40014305-CH9-SW27">https://developer.apple.com/library/safari/releasenotes/General/WhatsNewInSafari/Articles/Safari_9.html#//apple_ref/doc/uid/TP40014305-CH9-SW27</anchor-external></p></figcaption><blockquote><p>The following ECMAScript 6 content is now supported by Safari:</p><p>Template Literals</p></blockquote></figure></section></body></html>