<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><figure class="important"><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:">RFC 3987</anchor> は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IETF</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 Standard</anchor> により廃止されています。</p></figure><section><h1>6.  Use of IRIs</h1><section><h1>6.1.  Limitations on UCS Characters Allowed in IRIs</h1><blockquote><p>This section discusses limitations on characters and character
sequences usable for IRIs beyond those given in section 2.2 and
section 4.1.  The considerations in this section are relevant when
IRIs are created and when URIs are converted to IRIs.</p></blockquote><p>この章では <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>や<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文字列</anchor>についての
2.2節や4.1節の説明以上の制限について議論します。
この章の考察は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</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:">IRI</anchor> に変換する時に関係します。</p><blockquote><p>a.  The repertoire of characters allowed in each IRI component is
limited by the definition of that component.  For example, the
definition of the scheme component does not allow characters beyond US-ASCII.</p></blockquote><p><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>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">レパートリ</anchor>はその部品の定義により制限されます。
例えば、 <code class="ABNF"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">scheme</anchor></code> 部品の定義は <code class="charset"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">US-ASCII</anchor></code>
外の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文字</anchor>を認めていません。</p><blockquote><p>(Note: In accordance with URI practice, generic IRI software
cannot and should not check for such limitations.)</p></blockquote><p>(注意: <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</anchor> の慣習では一般の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</anchor>
ソフトウェアはこの種の制限を検査することはできませんし、
するべきでもありません。)</p><blockquote><p>b.  The UCS contains many areas of characters for which there are
strong visual look-alikes.  Because of the likelihood of
transcription errors, these also should be avoided.  This
includes the full-width equivalents of Latin characters,
half-width Katakana characters for Japanese, and many others.  It
also includes many look-alikes of &quot;space&quot;, &quot;delims&quot;, and
&quot;unwise&quot;, characters excluded in [RFC3491].</p></blockquote><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">UCS</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:">ラテン文字</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:">RFC 3491</anchor> で除外されているよく似た<q><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">間隔</anchor></q>,
<q>区切</q>, <q>賢くない</q><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文字</anchor>も含まれます。</p><blockquote><p>Additional information is available from [UNIXML].  [UNIXML] is
written in the context of running text rather than in that of
identifiers.  Nevertheless, it discusses many of the categories of
characters not appropriate for IRIs.</p></blockquote><p>追加情報が <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">UNIXML</src> から得られます。 <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">UNIXML</src>
は識別子ではなく普通の文章について書かれています。しかし、
<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>の分類の多くについて議論しています。</p></section><section><h1>6.2.  Software Interfaces and Protocols</h1><blockquote><p>Although an IRI is defined as a sequence of characters, software
interfaces for URIs typically function on sequences of octets or
other kinds of code units.  Thus, software interfaces and protocols
MUST define which character encoding is used.</p></blockquote><p><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>の列として定義されていますが、
<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>を定義しなければ<strong>なりません</strong>。</p><blockquote><p>Intermediate software interfaces between IRI-capable components and
URI-only components MUST map the IRIs per section 3.1, when
transferring from IRI-capable to URI-only components.  This mapping
SHOULD be applied as late as possible.  It SHOULD NOT be applied
between components that are known to be able to handle IRIs.</p></blockquote><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</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:">IRI</anchor> が使える部品から <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</anchor> だけの部品に転送する時は
3.1節に従って <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</anchor> を写像しなければ<strong>なりません</strong>。
この写像は可能な限り後の段階で適用する<strong>べきです</strong>。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</anchor> を扱うことができるとわかっている部品間で適用する<strong>べきではありません</strong>。</p></section><section><h1>6.3.  Format of URIs and IRIs in Documents and Protocols</h1><blockquote><p>Document formats that transport URIs may have to be upgraded to allow
the transport of IRIs.  In cases where the document as a whole has a
native character encoding, IRIs MUST also be encoded in this
character encoding and converted accordingly by a parser or
interpreter.  IRI characters not expressible in the native character
encoding SHOULD be escaped by using the escaping conventions of the
document format if such conventions are available. Alternatively,
they MAY be percent-encoded according to section 3.1. For example, in
HTML or XML, numeric character references SHOULD be used.  If a
document as a whole has a native character encoding and that
character encoding is not UTF-8, then IRIs MUST NOT be placed into
the document in the UTF-8 character encoding.</p></blockquote><p><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:">IRI</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:">IRI</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>し、
構文解析器か解釈器でそれに従って変換しなければ<strong>なりません</strong>。
その文字符号化で表現できない <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>は、
その文書書式に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">逃避</anchor>表現法があれば、それを使って<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">逃避</anchor>する<strong>べきです</strong>。
代わりに3.1節に従って<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">百分率符号化</anchor>しても<strong>構いません</strong>。
例えば、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML</anchor> や <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XML</anchor> では<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">数値文字参照</anchor>を使う<strong>べきです</strong>。
<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:">UTF-8</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>中に <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>で入れては<strong>なりません</strong>。</p><blockquote><p>Note: Some formats already accommodate IRIs, although they use
different terminology.  HTML 4.0 [HTML4] defines the conversion from
IRIs to URIs as error-avoiding behavior.  XML 1.0 [XML1], XLink
[XLink], XML Schema [XMLSchema], and specifications based upon them
allow IRIs.  Also, it is expected that all relevant new W3C formats
and protocols will be required to handle IRIs [CharMod].</p></blockquote><p>注意: 幾つかの書式は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</anchor> を採用しています
(違った用語を使っていることもありますが)。 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML 4.0</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:">URI</anchor> への変換を定義しています。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XML 1.0</anchor>, <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XLink</anchor>, <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XML Schema</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:">W3C</anchor> のすべての関係する新しい書式やプロトコルは
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</anchor> を扱えることが要求されることが期待されます。</p></section><section><h1>6.4.  Use of UTF-8 for Encoding Original Characters</h1><blockquote><p>This section discusses details and gives examples for point c) in
section 1.2.  To be able to use IRIs, the URI corresponding to the
IRI in question has to encode original characters into octets by
using UTF-8.  This can be specified for all URIs of a URI scheme or
can apply to individual URIs for schemes that do not specify how to
encode original characters.  It can apply to the whole URI, or only
to some part.  For background information on encoding characters into
URIs, see also section 2.5 of [RFC3986].</p></blockquote><p>この章は1.2節の c) についての詳細と例を示します。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</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:">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>しなければなりません。
これはある <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI scheme</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:">URI scheme</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:">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:">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:">RFC 3986</anchor> 
の2.5節もご覧下さい。</p><blockquote><p>For new URI schemes, using UTF-8 is recommended in [RFC2718].
Examples where UTF-8 is already used are the URN syntax [RFC2141],
IMAP URLs [RFC2192], and POP URLs [RFC2384].  On the other hand,
because the HTTP URL scheme does not specify how to encode original
characters, only some HTTP URLs can have corresponding but different IRIs.</p></blockquote><p>新しい <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI scheme</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:">RFC 2718</anchor>
で推奨されています。例えば <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URN</anchor> 構文や <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IMAP</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:">POP</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:">UTF-8</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:">URL</anchor> scheme は元の文字をどう符号化するか規定していませんから、
一部の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTTP</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:">IRI</anchor> を持つことはできません。</p><blockquote><p>For example, for a document with a URI of
&quot;http://www.example.org/r%C3%A9sum%C3%A9.html&quot;, it is possible to
construct a corresponding IRI (in XML notation, see, section 1.4):
&quot;http://www.example.org/r&amp;#xE9;sum&amp;#xE9;.html&quot; (&quot;&amp;#xE9&quot;; stands for
the e-acute character, and &quot;%C3%A9&quot; is the UTF-8 encoded and
percent-encoded representation of that character).  On the other
hand, for a document with a URI of
&quot;http://www.example.org/r%E9sum%E9.html&quot;, the percent-encoding octets
cannot be converted to actual characters in an IRI, as the
percent-encoding is not based on UTF-8.</p></blockquote><p>例えば、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</anchor> が <samp class="URI">http://www.example.org/r%C3%A9sum%C3%A9.html</samp>
の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書</anchor>で、対応する <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</anchor> を (1.4節の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XML</anchor> の記法で)
<samp class="URI">http://www.example.org/r<em>&amp;#xE9;</em>sum<em>&amp;#xE9;</em>.html</samp>
と構築することが可能です
(<code class="XML">&amp;#xE9;</code> は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">アキュート・アクセント</anchor>付きラテン文字 e
を表し、 <samp class="URI">%C3%A9</samp> はこの文字を <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>した表現です)。しかし <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</anchor>
が <samp class="URI">http://www.example.org/r%E9sum%E9.html</samp> の<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:">UTF-8</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>に変換することはできません。</p><blockquote><p>This means that for most URI schemes, there is no need to upgrade
their scheme definition in order for them to work with IRIs.  The
main case where upgrading makes sense is when a scheme definition, or
a particular component of a scheme, is strictly limited to the use of
US-ASCII characters with no provision to include non-ASCII
characters/octets via percent-encoding, or if a scheme definition
currently uses highly scheme-specific provisions for the encoding of
non-ASCII characters.  An example of this is the mailto: scheme [RFC2368].</p></blockquote><p>これはほとんどの <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI scheme</anchor> において <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</anchor>
が機能するように scheme の定義を更新する必要がないことを意味しています。
Scheme の定義を更新することに意味がある場合というのは主として scheme
の定義や scheme の特定の部品が厳密に <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">US-ASCII</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:">文字</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>によって含めることができない場合や、
scheme の定義が現在 scheme 規定の方法で非 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ASCII</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>を定めている場合です。この例に <samp class="URI"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">mailto</anchor>:</samp>
scheme があります。</p><blockquote><p>This specification does not upgrade any scheme specifications in any
way; this has to be done separately.  Also, note that there is no
such thing as an &quot;IRI scheme&quot;; all IRIs use URI schemes, and all URI
schemes can be used with IRIs, even though in some cases only by
using URIs directly as IRIs, without any conversion.</p></blockquote><p>この仕様はどの scheme 仕様をも更新しません。更新は別途行われなければなりません。
また、<q>IRI scheme</q> のようなものがないことにも注意して下さい。
すべての <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</anchor> は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI scheme</anchor> を使い、すべての <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI scheme</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:">URI</anchor>
を無変換で <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</anchor> として使うしか方法がないこともありますが。</p><blockquote><p>URI schemes can impose restrictions on the syntax of scheme-specific
URIs; i.e., URIs that are admissible under the generic URI syntax
[RFC3986] may not be admissible due to narrower syntactic constraints
imposed by a URI scheme specification.  URI scheme definitions cannot
broaden the syntactic restrictions of the generic URI syntax;
otherwise, it would be possible to generate URIs that satisfied the
scheme-specific syntactic constraints without satisfying the
syntactic constraints of the generic URI syntax.  However, additional
syntactic constraints imposed by URI scheme specifications are
applicable to IRI, as the corresponding URI resulting from the
mapping defined in section 3.1 MUST be a valid URI under the
syntactic restrictions of generic URI syntax and any narrower
restrictions imposed by the corresponding URI scheme specification.</p></blockquote><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI scheme</anchor> はその scheme の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</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:">URI</anchor>
が特定の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI scheme</anchor> 仕様によって課される狭められた構文的制約の下では認められないかもしれません。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI scheme</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:">URI scheme</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:">URI</anchor> が生成できてしまいます。
しかし、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI scheme</anchor> の仕様で課される追加の構文的制約は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</anchor>
にも適用され、3.1節で定義した写像の結果の対応する <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</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:">URI scheme</anchor>
の仕様で課された制限の下で妥当な <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</anchor> でなければ<strong>なりません</strong>。</p><blockquote><p>The requirement for the use of UTF-8 applies to all parts of a URI
(with the potential exception of the ireg-name part; see section
3.1).  However, it is possible that the capability of IRIs to
represent a wide range of characters directly is used just in some
parts of the IRI (or IRI reference).  The other parts of the IRI may
only contain US-ASCII characters, or they may not be based on UTF-8.
They may be based on another character encoding, or they may directly
encode raw binary data (see also [RFC2397]).</p></blockquote><p><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:">URI</anchor> のすべての部分に適用されます
(ただし <code class="ABNF"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ireg-name</anchor></code> 部は例外となり得ます)。
しかし、広範囲の文字を直接表現できる <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</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:">IRI参照</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:">US-ASCII</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>に基づいていても構いませんし、
生のバイナリ・データを直接符号化しても構いません。</p><blockquote><p>For example, it is possible to have a URI reference of
&quot;http://www.example.org/r%E9sum%E9.xml#r%C3%A9sum%C3%A9&quot;, where the
document name is encoded in iso-8859-1 based on server settings, but
where the fragment identifier is encoded in UTF-8 according to
[XPointer]. The IRI corresponding to the above URI would be (in XML notation)
&quot;http://www.example.org/r%E9sum%E9.xml#r&amp;#xE9;sum&amp;#xE9&quot;;.</p></blockquote><p>例えば、 <samp class="URI">http://www.example.org/r%E9sum%E9.xml#r%C3%A9sum%C3%A9</samp>
のように<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 class="charset"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">iso-8859-1</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>は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XPointer</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:">URI参照</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:">IRI</anchor> は (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XML</anchor> の記法で)
<samp class="URI">http://www.example.org/r%E9sum%E9.xml#r<em>&amp;#xE9;</em>sum<em>&amp;#xE9;</em></samp> 
となります。</p><blockquote><p>Similar considerations apply to query parts.  The functionality of
IRIs (namely, to be able to include non-ASCII characters) can only be
used if the query part is encoded in UTF-8.</p></blockquote><p>同様のことが<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">照会</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:">ASCII</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:">UTF-8</anchor> で<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">符号化</anchor>されている時のみ使えます。</p></section><section><h1>6.5.  Relative IRI References</h1><blockquote><p>Processing of relative IRI references against a base is handled
straightforwardly; the algorithms of [RFC3986] can be applied
directly, treating the characters additionally allowed in IRI
references in the same way that unreserved characters are in URI references.</p></blockquote><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">基底</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:">RFC 3986</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>を
<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></section></section><section><h1>License</h1><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFCのライセンス</anchor></p></section><section><h1>メモ</h1></section></body></html>