[10] [[Unicode]] および近年の公的[[文字コード]]規格は、[[文字]]に[[ラテン文字]]その他による[DFN[[RUBYB[[[名前]]]@en[name]]]]を割り当てています。 [[文字]]の[[名前]]は、[[文字]]を一意に特定するもので、複数の[[符号化文字集合]]に属する[[文字]]同士の等価性は、 [[文字]]の[[名前]]が一致するか否かに拠るとされています。 * 仕様書 [REFS[ - [9] ]REFS] [11] [[文字]]の[[名前]]について横断的に定義した仕様は存在しませんが、事実上唯一現存する[[符号化文字集合]]である [[Unicode]] における[[名前]]の定義 (>>9) が最も規範的なものと考えられますし、 最も詳細に説明もされています。次節に示すように、 各種[[符号化文字集合]]規格にもそれぞれの定義が含まれています。 * 名前と言語 [12] [[ISO/IEC]] は[[英語]]と[[仏語]]の仕様書が存在するため、[[文字名称]]についても[[英語]]と[[仏語]]の2種類が存在しています。 [13] [[Unicode]] は[[英語]]の[[名前]]を採用しており、[[ISO/IEC 10646]] の[[英語]]の[[名前]]と一致するとされています [SRC[>>9]]。 [14] [[JIS]] は[[英語]]の[[文字の名前]]の他に[[日本語通用名称]]を定義していますが、 前者が[[規定]]であるのに対し、後者は[[参考]]とされています。 * 安定性 [15] [[Unicode]] の[[文字]]の[[名前]]は変更されることはない [SRC[>>9]] とされています。 [24] ただし過去には何度か変更されています。 [25] [[文字の名前]]が割り当てられた後に誤りが発覚した場合、 [DFN[[RUBYB[文字名別名]@en[character name alias]]]]が割り当てられます。 [[文字名別名]]は[[文字の名前]]と同じ名前空間を共有していて、一度割り当てられたら変更されません。 [SRC[>>9]] * 名前付き文字列 [26] [[文字]]の連続に対しても[[名前]]が割り当てられることがあり、 [RUBYB[[[名前付き文字列]]]@en[named character sequence]]と呼ばれています。 [[名前付き文字列]]も[[文字の名前]]と名前空間を共有しており、一度割り当てられたら変更されません。 [SRC[>>9]] * 構文 [20] [[Unicode]] の[[文字]]の[[名前]]は次の[[正規表現]]による[[擬似コード]]すべてに[[一致]]する文字列とされています [SRC[>>9]]。 [FIG[ - [16] /^[A-Z0-9\u0020-]+$/ - [17] not /^[0-9]/ and not /\u0020[0-9]/ - [18] not /^-/ and not /-$/ and not /--/ - [19] not /^\u0020/ and not /\u0020$/ and not /\u0020\u0020/ ]FIG] [21] [CODE(char)[[[U+0020]]]] や [CODE(char)[[[-]]]] が連続しているケースや、 [CODE(char)[[[-]]]] の有無によって別の[[文字]]を表すケースもあります。 [EG[ [22] [CODE(charname)@en[[[HANGUL JUNGSEONG OE]]]] と [CODE(charname)@en[[[HANGUL JUNGSEONG O-E]]]] は別の[[文字]]です。 ]EG] [EG[ [23] [CODE(charname)@en[[[TIBETAN LETTER A]]]] と [CODE(charname)@en[[[TIBETAN LETTER -A]]]] は別の[[文字]]です。 ]EG] * 他の定義 [5] > :5.3 文字の名前:この[[規格]]は、各[[文字]]に一つの[[名前]]を割り当てる。 さらに、[[制御文字]][[並びに]] [CODE(charname)[[[SPACE]]]] ([CODE(jcharname)[[[スペース]]]]) 及び [CODE(charname)[[[DELETE]]]] ([CODE(jcharname)[[[削除]]]]) について、その[[文字]]の[[略号]] ([[頭字語]]) を定義する。ここでは、[[文字]]の[[名前]]は、 [[英大文字]]、 [CODE(charname)[[[SPACE]]]] [[及び]][[ハイフン]]だけで[[表現]]する。[[略号]]は、 [[英大文字]][[及び]][[数字]]を用いる。[[規格本体]]の各[[国語]]への[[翻訳]]でも、 [[略号]][[及び]]この[[記法]]は、保たれなければならない。 [SRC[[[JIS X 0202]]:1998]] [6] > :4.3 名前:この[[規格]]では、規定するすべての[[文字]]に対して[[名前]]を割り当てる。 さらに、[[文字]] [CODE(charname)@en[[[SPACE]]]] ([CODE(jcharname)[[[スペース]]]]) 及び[[文字]] [CODE(charname)@en[[[DELETE]]]] ([CODE(jcharname)[[[抹消]]]]) に対する[[略号]]を規定する。 [[文字]]の[[名前]]の[[表記]]には、[[ラテン大文字]] ([CODE(char)[A]]〜[CODE(char)[Z]])、[[スペース]]及び[[ハイフン]]だけを使用する。 [[略号]]には、[[ラテン大文字]]だけを使用する。 > [[図形文字]]を示すために付けられた[[名前]]は、 [[文字]]の慣習的な意味を反映するようにしている。しかし、 この[[規格]]は、[[図形文字]]の意味を定義しないし、制限もしない。 > 参考 [[JIS X 0211]] (符号化文字集合制御機能) で規定する[[制御機能]]の[[略号]]には、 [[ラテン大文字]]及び[[数字]]だけを使用している。 [SRC@en[[[JIS X 0201]]:1997]] [1] > :文字の名前: この規格群は、すべての[[文字]]に意的な[[名前]]を付ける。 命名の基準は、次のいずれかとする。 - a) 文字の慣例的な意味を示す。 - b) 対応する[[図形記号]]の形を表す。 - c) 中国、日本及び韓国 ([[CJK]]) [[統合漢字]]については、 27. に示す規則に従う。 > a) 及び b) の場合に、文字の名前を構成するために用いる指針を附属書 K (参考) に示す。 ([[JIS X 0221]]‐1:2001 6.4) [3] > この規格群で規定する[[図形文字]]は、その名前で一意に識別する。名前が異なっていても、[[図形文字]]を可視化した[[図形記号]]が常に異なるわけではない。類似の図形記号をもつ図形文字の霊としては、 [CODE(char)[[[LATIN CAPITAL LETTER A]]]]、 [CODE(char)[[[GREEK CAPITAL LETTER ALPHA]]]] 及び [CODE(char)[[[CYRILLIC CAPITAL LETTER A]]]] がある。 (JIS X 0221‐1:2001 17. より) * 一覧 [28] [[文字名別名]]の一覧は [[Unicode Character Database]] の [DFN[[[NameAliases.txt]]]] に含まれています。 [27] [[名前付き文字列]]の一覧は [[Unicode Character Database]] の [DFN[[[NamedSequences.txt]]]] に含まれています。 * メモ [2] >>1 で、 CJK 統合漢字や CJK 互換漢字の名前のどの辺が[Q[意的な名前]]なのでしょう。 [4] 同じく 10646 の 19 によれば、文字名称の [CODE(char)[LEFT]] や [CODE(char)[RIGHT]] は、 ([[鏡像文字]]の場合) 「左向き」、「右向き」 ではなく「開き」、「閉じ」を意味するのだそうです。 10646 と統合する前の [[Unicode]] では名前も [CODE(char)[OPEN]] とか [CODE(char)[CLOSE]] だったのに。 [7] >>6 [[JIS X 0201]] 自体で定義されている[[文字]]が使われているのだと仮定すると、 [CODE(jcharname)[[[スペース]]]]は [CODE(charname)@en[[[SPACE]]]]、 [CODE(jcharname)[[[ハイフン]]]]は [CODE(charname)@en[[[HYPHEN-MINUS]]]] に対応します。 ([[名無しさん]] [sage]) [8] [[JIS C 0456]]:2005 ([[IEC 61286]]:2001 の[[翻訳規格]]で [[ISO-IR]] 181 に相当) は[SPAN(stantard-section)[附属書 C]] に [[JIS X 0221]] との対応が載っていますが、そこで [[UCS]] 側の[[文字]]の[[名前]]まで日本語訳されています。 ([[名無しさん]] [sage])