2つの「芸」

守岡知彦 / MORIOKA Tomohiko tomo @ kanji.zinbun.kyoto-u.ac.jp
2007年 1月 11日 (木) 16:52:48 JST


守岡です。

明けましておめでとうございます。
今年もよろしくお願いいたします。

それから、お返事遅くなってしまいすみません。

>>>>> [chise-ja : No.00526] にて
>>>>> KAMICHI Koichi <kamichi @ fonts.jp> さま曰く:

> > > 「芸」には「ゲイ」と読む「藝」の新字体と、「ウン」と読む本来の字
> > > の、2つの異なった漢字の同字形が重なった文字ですが、これを文字オ
> > > ブジェクトとして分けて考えることはできますか?

> > 可能です。

> > > 単純に2つの文字オブジェクトがあると考えればいいのですが、それら
> > > 2つのオブジェクトいずれに対しても、たとえばJISの同じコードポイ
> > > ントが両者に与えられます。私の理解ではCCSとcharIDは1対1でないと
> > > 処理できないと思っているのですが大丈夫でしょうか?

> > そんなことはないです。

> これは、理解しました。逆に、文字オブジェクト1つを探すときに、CCS経
> 由で探してはいけない(2つ以上オブジェクトが対応していることがある)
> という解釈でいいでしょうか。

CCS 経由(=CCS 素性)で探せば (decode-char)、その CCS の code point に
対応する(抽象)文字オブジェクトが得られます。それは unique に決まりま
す。

ただ、その code-point が包摂し得るオブジェクトが他にもありうるというこ
とです(これは =>CCS 素性で表されます。また、=>CCS 素性で decode-char
することはできません)。

また、今はまだ完全ではないですが、ある CCS の code point に map され得
る複数のオブジェクトが存在する場合、その各オブジェクトは、CCS の code
point の包摂範囲を表す抽象文字オブジェクトの子(孫、あるいは、子孫)オ
ブジェクトになります(これは <-subsumptive / <-denotational 素性で表現
されます)。

よって、=CCS 素性で decode した結果得られた文字オブジェクトの
->subsumptive 素性と ->denotational 素性をチェックすれば、包摂されたオ
ブジェクトを探すことができます(入れ子構造になっているので、全てのオブ
ジェクトを得るには、末端まで木構造を辿る必要があります)。


なお、こうした文字定義の継承を使って文字オブジェクトの包摂を表す方式に
なる前のデータの場合、Unicode の code point に相当するオブジェクトを経
由する必要があります。

即ち、あるオブジェクトが Unicode の code point に相当するオブジェクト
であり(=ucs 素性の値を持ち)、->ucs-unified 素性の値が存在すれば、そ
の要素としてその Unicode の code point に対応するオブジェクトが入って
います。

また、ある文字オブジェクトが Unicode の code point に相当するオブジェ
クトでなく、かつ、ある code point に mapし得る場合、=>ucs 素性の値に
対応する code point が書かれています。そこで、この code point で =ucs 
を decode-char すれば Unicode の code point に相当するオブジェクトが得
られますから、前述の ->ucs-unified 素性経由で各オブジェクトを得ること
ができます。

-- 
┯━…‥・懐かしい未来の記憶をふと思い出しかけた・‥…━━┯━━━┯━
││ ─ │  ─  /    ─   ┼─     ┬                ─   ─┼ ┬┴─
┼┼─┼|〓━─┼ 守岡 知彦 (MORIOKA Tomohiko) <tomo @ m17n.org> ─ ─┬
┻┻━┻━┷━━━━━━━━━━━━━━━━━━━━━━━━━━━━━





More information about the CHISE-ja mailing list