Re: JLReq の文字クラスと Unicode の文字クラスとの関係

 shimonoです

# -japaneseへ修正しました。


On 2020/03/06 20:24, Atsushi Shimono (W3C Team) wrote:
>> これで JLReq 文字クラスが本来の文字クラスに近づきました。残った JLReq 文字クラスと Unicode General Category の対応を調べてみました。cl-nn が JLReq 文字クラス、アルファベット大文字と小文字の組み合わせがそこに含まれる文字の General Category です。
>>
>>     cl-01Pi Ps
>>     cl-02Pe Pf
>>     cl-03Pd
>>     cl-04Po
>>     cl-05Po
>>     cl-06Po
>>     cl-07Po
>>     cl-08Lm Pd Po
>>     cl-09Lm
>>     cl-10Lm
>>     cl-11Lo
>>     cl-12Po Sc So
>>     cl-13Ll Po Sc So
>>     cl-14Zs
>>     cl-15Lo
>>     cl-16Lo
>>     cl-17Sm So
>>     cl-18Sm
>>     cl-19Ll Lo Lu Nd Nl No Po Sm So
> 
>  ふと思っていたのですが、cl-19はsec 1.3で
>> 原則として,日本語組版で使用する漢字等(cl-19),平仮名(cl-15),片仮名(cl-16)の文字の
>> 外枠は,正方形にデザインされており
> という定義になっています。が、L*,N*,P*になるcl-19で例示されてるコードポイントってほとんどが
> EAW=Nだと思うのです。。
> 
>>     cl-26Zs
>>     cl-27Cf Ll Lm Lo Lu Mn Nd No Pc Pd Pe Pf Pi Po Ps Sc Sk Sm So Zs
> 
>  で、cl-09,10,11とかの同じ文字クラスに該当するものは、付属の表1-6では同じような挙動を示すも
> のが見受けられる感じもあります。。
>  とかいうところを見ていると、うーん、結構JLReq本体も整合性を取るために文字クラス含めて整理
> しなおさないといけないのかなぁ、と。。

 前回投げたどこで利用されているかの表と、添付で追加した文字リストを眺めながら整理・簡約化を
うんうんとひねっているのですが、とりあえずのあまりまとまってない&熟成されていないですが、の、
所感として、議論のためのインプットとして、、。


0.Unicode(など)ですでに多言語対応かつJLreqでの規定について対応されている事項

 これについてはリファレンス文書としての現状のJLreqの記述を維持しつつ、該当する文字クラスにつ
いては例示として詳細は該当のunicodeの定義を参照してもらうのがいいのかな、と思っております。
# JLreqの記述を変更するのではなく、リファレンスとして"日本語について"記述を残すが文字集合の扱
いやリストアップとして拡張を検討はしない。
 具体的なリストとしては、

- Unicode Line Breaking Property (関連するのは禁則処理などの記述の節)
- Unicode East Asian Width (関連するのはCL-15,16,19)

です。また、欧文関係の定義、文字クラスではCL-26/27ですが、それぞれ参照箇所は7カ所と13カ所、
CL-26は空白文字(U+0020)となっていますが、これらについては参照箇所は
- CL-26
   - 和欧混植での空白 (3.2.2)、縦組みで寝かせた欧文の空白 (3.2.6)
   - 字取りでの空白の前後の扱い (3.7.3.b.2)
   - 行長調整 (3.8.2, 3.8.3.a, 3.8.3-2.a-d, 3.8.4)
- CL-27
   * 横組括弧との連続 (3.1.1.b.2.n49)、横組みでの中点の利用の扱い (3.1.3.n55)
   - 欧文全般 (3.1.10.f / 3.1.10.f.n81)
   - 自撮りであけない (3.7.3.b.1)
   * 記号など組み合わせ時の処理 (3.7.4.b, 3.7.4.c, 3.7.4.d)
   - 行長調整 (3.8.1.a, 3.8.3.f, 3.8.3-2.a-3, 3.8.4)
で、日本語との組み合わせの時特有の問題は先頭を*にした全角約物との組み合わせ処理で、他の行長処
理とかはここで記述がある"欧文"に限らない拡張になる(東南アジア諸語とかRTL言語とか)と思うと、日
本語に関する部分の記述にとどめて、それ以外の部分はこのJLreqの範疇を超えるので欧文を含むそれぞ
れの言語の規定を参照して取ってきてください、が現実的な拡張路線なのかなと思っているところです。
逆に、*を付けた部分はほかのCL-XXとの組み合わせで、そちら側で記述されるものかな、と。

0(b).約物に絡むJLreqの規定

 前回の表の中でJLreqで利用回数が最も多いグループが約物、特にCL-01からCL-07の括弧・句読点など
で、大きく分けて次のようないくつかの規定に絡んできています。

- spacing (2.5.3, 3.1.2-6) : これがないCL-3,4が参照箇所が少し少ない
   - 行長・詰め処理 (3.8)
   - 欧文との空白 (3.2.4-6)
- 禁則処理 (2.5.3, 3.1.7-9, 3.1.11.b)
- ルビのoverhang (3.3.8)
- 圏点、割注 (3.3.9, 3.4.2)
- 先頭字下げ処理 (3.5)
- 合字 (4.2.3)

 この中で文字への参照が避けられないものはspacingで、特に約物の1/2や1/4の空白取りでしょうか。
 CL-01,CL-02は、対応するほかの文字クラスにほぼ絡まないUnicode general categoryとして、
- CL-01: Pi, Ps (開き約物)
- CL-02: Pe, Pf (閉じ約物)
がありますが、文字リストとしてはgeneral categoryのものの方がかなり多いです。"が"、ここで大き
な課題だと思った点が、この4つの文字クラスの約物のリストを見ていただくとわかっていただけるか
と思うのですが、JLreqにないけれどもこの4つにあるものはほとんど1/2 spacingを含むとして扱われ
るべきものな感じを受けています。とはいえ、そのまま横滑りで持ってくるわけにはいかないので、個
別の約物の背景を調査する必要はあるかとは思います。(課題提起)
# こういった約物と記号の差ってどこにあるんですかね、、とふと思ったりも、、。


1.general category以外のプロパティーで定義を記述できると思われるもの

- cl-15: ひらがな : Script=Hiragana
- cl-16: カタカナ : Script=Katakana

 U+1BXXX、U+30FX後半の繰り返し記号、幾つかの正方形の複合文字(センチ、とか)、片仮名だと丸付き
文字・U+FFXXの半角、が混じってきてしまいますが。。

 これに近いものとして、CL-19がありますが、こちらはJLreqでの一般的記述を見る限りは、EAWで区切
るのが意味論的に一番近いのではないか、と思っています。現在のCL-19のリストの文字をそのままコー
ドポイントで見る限りはEAW=Nのも交じっていますが、全角・半角表現のブレで片付く範囲と思われます
し。


2.参照箇所が少ない文字クラス

 簡単なものから片付けてやろう!というよこしまな意識ではないところではあります(重要!)が、ぱっ
と目に付いたのが、CL-08,09,10,12,13,14の数カ所でしか使われていない文字クラスです。それぞれ、

- CL-08: 分離禁止文字 (2か所) 3.3.8.d ルビ、3.7.3.b.1 字取りで開けない場所
- CL-09: 繰り返し記号 (2か所) 3.1.7 行頭禁則
- CL-10: 調音記号 (3カ所) 3.1.7 行頭禁則、3.3.8.b ルビ
- CL-11: 小書きのかな (6カ所) 2.1.2 小書き、3.1.1.c 縦横での差異、3.1.7 行頭禁足、3.3.8 ルビ
- CL-12: 前置省略記号 (2か所) 3.1.10.a ベタ組、3.1.10.d 分割禁止
- CL-13: 後置省略記号 (2か所) 3.1.10.a ベタ組、3.1.10.c 分割禁止
- CL-14: 和字間隔 (2か所) 3.1.6.a 約物後ろ、3.7.3.b.2 字取りの空白前後

という感じです。カテゴリに置かれている文字は、12/13以外は少数で、文字クラスというよりは個別文
字参照の一種な感じです。
 CL-12/13については、通貨記号とか組文字などの単位の文字なので、木田さんのふるいの中では本来の
文字クラスにあるべき中に入っていましたが、いろいろ見ると個人的には文字そのもののというよりは意
味論での扱いなのかな、という印象は受けました。例えば、U+2032とかU+2033は確かに単位としても表記
に利用されますが、引用符としての方での用法が多い、とか。



3.のこり、、まだ考えがまとまらないもの

- CL-03: ハイフン類
- CL-04: 区切り約物
- CL-05: 中点類
- CL-06: 句点類
- CL-07: 読点類
- CL-17: 等号類
- CL-18: 演算記号

 前半のCL-03からCL-07はこのメールの0(b).で触れた、禁則・spacing・ルビ・行長合わせ処理、での
参照が多いですが、正直なところこれをunicodeに拡張して幸せになれる未来が見えないです。。禁則は
いいとしても、以前にも話がありましたがspacing処理はどうするのがいいんでしょうねぇ、、。

 CL-17,18ですが、参照箇所は3.7.4のみです。ごく一部にSoの文字はありますが、ほぼSmに入ってます。
でも、JLreqの記述を見る限り、そんなに拡張する意味も見受けられませんし、逆に厳密な定義をすること
に意味があるとも思えないのが正直な感想です。U+29F2とかはまだしも、U+27D5とかがふつーの文章で使
われることってまずないような気もしつつ。。

Received on Thursday, 17 September 2020 00:40:46 UTC