10. Domain Name IDNA-Canonicalization (ドメイン名IDNA正規化)
IDNA正規化されたドメイン名 (IDNA-canonicalized domain name) は、以下のステップによって生成される出力文字列である。入力は、表面的には任意の"A-labels"、"U-labels"、および"NR-LDH labels" ([RFC5890] セクション2を参照) の組み合わせを使用して、ある区切り文字 (通常は".") で連結された推定ドメイン名文字列である。
-
入力の推定ドメイン名文字列を、順序を保持した個々のラベル文字列のシーケンスに変換する。
-
IDNA2008を実装する場合、[RFC5891] セクション5.3からセクション5.5で定義されたプロセスを使用して、個々のラベル文字列のシーケンスで見つかった各A-labelおよびU-labelを変換、検証、およびテストする。
それ以外の場合、IDNA2003を実装する場合、[RFC3490] セクション4の"ToASCII"変換を使用して各ラベルを変換する ([RFC3490] セクション2の"ラベルの同等性 (equivalence of labels)"の定義も参照)。
-
前のステップでエラーが発生しなかった場合、シーケンス内のすべてのラベルを順番に1つの文字列に連結し、各ラベルを次のラベルと%x2E (".")文字で区切る。結果の文字列は、セクション8 ("User Agent Processing Model") のコンテキストで使用するのに適したIDNA正規化されたドメイン名と呼ばれる。
それ以外の場合、エラーが発生した。入力の推定ドメイン名文字列はIDNA正規化に成功しなかった。このプロセスの呼び出し元は、適切なエラー回復を試みるべきである。
本仕様のセクション13 ("Internationalized Domain Names for Applications (IDNA): Dependency and Migration") およびセクション14.10 ("Internationalized Domain Names") も、詳細および考慮事項について参照。