[19] 予約済は、 符号点型の1つです。 >>35 D10a 未指示済符号点 (未割当符号点) です。 >>53
[20] 予約済符号点, 未割当符号点は、 将来の割当のために予約されている Unicode符号点です。 >>35 D15
[21] サロゲート符号点と非文字は、 割当済符号点とみなされますが、 割当済文字ではありません。 >>35 D15 抽象文字が割当できないまたは割当されていないのですが、 しかし未割当符号点ではありません。
[28] ある時点で予約済符号点であっても、 将来の版の Unicode では抽象文字が割り当てられることがあります。 >>46 C3
Cn
[34]
General Category Cn
は、
抽象文字に割り当てられていない符号点であり、
非文字と未割当符号点が含まれます。
>>53
[25] 未割当済符号点にも、他の符号点同様に特性値があります。
[26] 全体共通の既定値が設定されている場合もあれば、 ブロックなどの単位で一括して設定された既定値となっていることもあります。
[27] 未割当済符号点に抽象文字が割当されたときに特性値が変更されるかどうかは、 特性によって違います。
[18] 特性
Age
の値
unassgined
は、
未割当済符号点を表します。
[22] 適合処理は、 用途が指定されていない符号点が現れたことを示す (例えばレンダリング時に欠けたることを示すグリフを示したり、 ストリーミングプロトコル中に適切なエラーを信号したりする) ことができます。 >>35
[23] しかし適合処理は、 未割当済符号点を抽象文字として解釈してはなりません。 >>46 C3, >>35
[29] 未割当済符号点であっても将来の改訂で抽象文字が割り当てられる可能性があることに鑑み、 注意しつつ一般的な取り扱いをしたほうが、 将来の版の Unicode に基づくデータに対して頑強となります。 >>46 C3
[30] プロトコルやアプリケーションによっては未割当済符号点が含まれる文字列をエラーとすることがあります。 識別子系の定義で除外されていることが特に多いようです。 そうした仕様にしてしまうと、 将来の版の Unicode で追加された文字が、 仕様や実装の改訂まで使えなくなってしまいます。 更新されないで放置される仕様や実装があると、 相互運用性に支障が出てしまいます。
[31] 逆に未割当済符号点まで認めてしまっているために、 将来の Unicode の版で特殊な用途にその符号点が使われてしまい、 それを認めていることが都合が悪くなってしまうことがあります。
[1] UNASSIGNED は、その符号位置が Unicode で未割り当てであることを表す導出特性値です。 >>2
[8] Unassigned カテゴリーの符号位置の導出特性値が UNASSIGNED です。
[9] UNASSIGNED だった符号位置に文字が割り当てられると、他の PVALID、CONTEXT、 DISALLOWED に導出特性値が変わります。
[10] 既存の符号位置から文字が削除されることは無いとされていますが、もしされた場合は RFC 5894 によれば DISALLOWED となるようです。
[11] 登録も lookup も、 UNASSIGNED な符号位置が含まれていれば失敗します。 これは、もし lookup だけでも認めてしまうと、将来文字が割り当てられて CONTEXT になったとき、条件によっては使用が認められないため、あるいは DISALLOWED になったとき、使用が認められないため、将来の版に対応した実装では lookup できないラベルを古い版に対応した実装では lookup できてしまい、都合が悪いからです。 >>7、>>15
[12] IDNA2003 では AllowUnassigned フラグがありました。通常 lookup ではこのフラグは未設定であり、 UNASSIGNED な符号位置を含んでいても失敗にはなりませんでした。
[16] 既に主要な用字系は Unicode に含められているので、今後追加される文字は古代文字などであって >>11 のような問題は無視できるため、未割当であっても lookup できるようにするべきという主張もあります。 しかし実際には「主要な用字系は既に含まれている」と言われ続けていますし、 現実に漢字はどんどん追加されており、その主張は成り立たないとされています。 >>15
[3] Unassigned は、 Unicode で文字が (まだ) 割り当てられていない符号位置を含むカテゴリーです。 >>4
[5] General_Category が Cn であり、かつ Noncharacter_Code_Point に含まれない符号位置が、 Unassigned に含まれます。 >>4
[40] Perl の正規表現 \p
において Unicode符号点でないもの
(U-00110000
以上) は (何の変哲もない) 未割当符号点のように扱われます。
Cs
に含まれています。