#?SuikaWiki/0.9 [1] [DFN[[RUBYB[合成除外表][Composition Exclusion Table]]]]は[[初等合成]]から除外されるものの表で、 にあります。 除外される文字には4種類あります。 :[[用字系]]特有:通常特定用字系で優先形とされない[[合成済文字]]。 (これは [[UCD]] の情報からは計算できない。) :合成後の版:[[Unicode3.0]] 以後に追加された合成済文字。 :一人っ子:一文字だけの[[分解]]を持つ文字 >>2 :非開始子分解:非[[開始子]]から始まる分解を持つ合成済文字。 これらを除外しておかないと、 [[NFC]] や [[NFKC]] の結果が一意に定まらないことになってしまいます。 除外文字の一覧表は にあります。 [2] [DFN[[RUBYB[一人っ子][singleton]]]]というのはちょっとわかりにくいのですが、 [[UAX]] #15 には次のような例が挙げられています。 = [CODE(char)[[[U+212B]]]] ([CODE(char)[[[ANGSTROM SIGN]]]]) の正準分解は [CODE(char)[<[[U+0041]], [[U+00C5]]>]] ([CODE(char)[<[[LATIN CAPITAL LETTER A, COMBINING RING ABOVE]]>]]) である。 = [CODE(char)[[[U+00C5]]]] ([CODE(char)[[[LATIN CAPITAL LETTER A WITH RING ABOVE ]]]]) の正準分解も [CODE(char)[]] である。 = つまり、 [CODE(char)[U+212B]] が [CODE(char)[U+00C5]] になってしまう ([DFN[一人っ子分解]])。 要は[[重複符号化]]の下らない後始末です。