<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="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[12]</anchor-end> <dfn>ACE<rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ラベル<rt xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">label</rt></rubyb></dfn>は、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Aラベル</anchor>に相当する
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IDNA2003</anchor> の用語でした。</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 3490 - Internationalizing Domain Names in Applications (IDNA)</cite> <ul><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> <strong><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://tools.ietf.org/html/rfc3490#section-2">https://tools.ietf.org/html/rfc3490#section-2</anchor-external></strong></li><li><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-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://tools.ietf.org/html/rfc3490#section-6.1">https://tools.ietf.org/html/rfc3490#section-6.1</anchor-external></li><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-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://tools.ietf.org/html/rfc3490#section-6.4">https://tools.ietf.org/html/rfc3490#section-6.4</anchor-external></li></ul></li></ul></refs></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></p><blockquote><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IDNA</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>で処理するために
<dfn>ACE <ruby>名札<rt>ラベル</rt><rt xml:lang="en">label</rt></ruby></dfn>を用います
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ACE</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:">ACE名札</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:">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:">ASCII</anchor> で表現できない任意の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">国際化名札</anchor>は、
<code xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ToASCII</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:">ACE名札</anchor>に変換できます
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ASCII名札</anchor>は <code xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ToASCII</anchor></code> で変更されません)。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ACE名札</anchor>は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">利用者</anchor>への表示用としては適当ではありません。
<code xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ToUnicode</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:">等価</anchor>な<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">非ACE名札</anchor>に変換します。
正式には<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ACE名札</anchor>は <code xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ToUnicode</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:">非ACE名札</anchor>は <code xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ToUnicode</anchor></code>
で変更されません)。
すべての <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ACE名札</anchor>は5章で規定する<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ACE接頭辞</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></blockquote></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:">ACEラベル</anchor>は、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ACE接頭辞</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="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;4</anchor-internal></src></p><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> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ACEラベル</anchor>を入力や表示に使っても<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>その他の特別な場合や、
表示上の制約がある場合などを除き、<rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">おすすめ<rt xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">encouraged</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="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;4</anchor-internal></src></p><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:">ACE</anchor> として符号化されている場合に、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ACEラベル</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:"><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:">ACEラベル</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="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;4</anchor-internal></src></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:">アプリケーション</anchor>が <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ToUnicode</anchor> で <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ACE</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:">U+FFFD</anchor> に置き換えて表示するのではなく、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ACE</anchor> に変換して表示する<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:">ToUnicode</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:"><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="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;8</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="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end> <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;9</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:">Unicode</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:">シフトJIS</anchor>のような、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">符号</anchor>変換によって情報が落ちてしまうシステムを想定しているのでしょうか・・・?</comment-p></section><section><h1>歴史</h1><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:">IDNA2008</anchor> では <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ACEラベル</anchor>に相当するものを<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Aラベル</anchor>と呼んでいます。</p></section></body></html>