User:Hcm/日本語ロケールに於けるalias及びsort name

From MusicBrainz Wiki
< User:Hcm
Revision as of 10:42, 30 July 2014 by Hcm (talk | contribs) (書いた)
Jump to navigationJump to search

日本語で索引を付けて並べ替えをするには、表記と一緒に読みも正しく設定しないといけないわけですが、それについての考察。

問題

sort name(読み)での姓名のスペース

姓と名前の間にスペースを入れるかどうかは重要です。それによって人の名前の並び方が大きく変わります。例として以下に挙げた人の名前がスペースの有無でどう並ぶかを考えます。

姓:表記 名:表記 姓:読み 名:読み
隆志 ほり たかし
堀江 雄太 ほりえ ゆうた
堀口 ほりぐち さとる
堀谷 庸介 ほりや ようすけ
堀山 ほりやま ひろし
若奈 ほり わかな

スペースがある場合、姓・名が別々に並べ替えられ、電話帳で使われるような順番になります。

Alias Sort Name
堀隆志 ほり たかし
堀若奈 ほり わかな
堀江雄太 ほりえ ゆうた
堀口聡 ほりぐち さとる
堀谷庸介 ほりや ようすけ
堀山博 ほりやま ひろし

スペースが無い場合、姓名の区別が無くなり、単純な辞書順になります。

Alias Sort Name
堀江雄太 ほりえゆうた
堀口聡 ほりぐちさとる
堀隆志 ほりたかし
堀山博 ほりやまひろし
堀谷庸介 ほりやようすけ
堀若奈 ほりわかな

こんな感じで、見ての通り全く順番が変わってしまっています。特に堀若奈さんは姓だけだったら最初に来ていたのに名前も含めると一番最後に来てしまっています。もしスペースがあるデータと無いデータが混ざっていると、名前を探し出すのにあちこち飛ばされて面倒臭いことになります。

alias(表記)のスペース

日本語のaliasでたまに以下のような感じでスペース付きとスペース抜きの表記・読みを設定しているデータを見掛けます。

例: 神保彰
Alias Sort Name
神保 彰 じんぼ あきら
神保彰 じんぼあきら

これは表記のスペースの有無に違いが有りますが、同じ読みを持つデータであり、この2つは同じ場所に並ぶことが望ましいです。そのためsort nameは表記のスペースにかかわらずどちらかに揃えないと先程と同じような問題が起こります。

提案

文字体系

sort nameに使う文字は以下に限定する。

  • 間隔
    • 『 』
    • U+0020のみ使う。
  • 丸括弧
    • 『()』
  • アラビア数字
    • 『0123456789』
  • 平仮名
    • 『あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわゐゑをん』
    • 『ゔがぎぐげござじずぜぞだぢづでどばびぶべぼぱぴぷぺぽ』
    • 『ぁぃぅぇぉゕゖっゃゅょゎ』
  • 片仮名
    • 『アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヰヱヲン』
    • 『ヴガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポヷヸヹヺ』
    • 『ァィゥェォヵヶッャュョヮ』
  • 長音
    • 『ー』
  • 下駄
    • 『〓』

補足

  • 間隔は姓名の区切り、シリーズ物の名前を分離するのに使う。
  • 丸括弧は名義冒頭の『The』や『株式会社』など、索引に含めるのが不適当な物を末尾でまとめるために使う。
  • アラビア数字はシリーズ物や代を表すものに使う。
  • 下駄は読みの一部のみがわからない場合にその箇所を埋めるために使う。日本語ロケールにおいて下駄はあらゆる文字クラスの後に並ぶことが期待されているため。
  • JIS X 0213に収録されている、か行の鼻濁音である『か゚き゚く゚け゚こ゚』は、Unicodeにおいては単一のコードポイントが与えられておらず、例えば『か゚』なら『か』に合成用半濁点のU+0309を並べて表記する必要が有ります。これらの文字が他の濁音・半濁音が合成済みの仮名と混ざると、並べ替え処理が複雑になるので使わないほうが良いでしょう。
  • 片仮名の捨て仮名は他に『ㇰㇱㇲㇳㇴㇵㇶㇷㇷ゚ㇸㇹㇺㇻㇼㇽㇾㇿ』があり、日本語の正書法には無くアイヌ語で用いられます。この内『ㇷ゚』は『ㇷ』にU+0309を並べる必要が有り、上段の『か゚き゚く゚け゚こ゚』を用いた時と同じ問題が起こります。このためアイヌ語を表記する手段であるこれら捨て仮名を使うのは避けたほうが良いように思います。


基本

基本的に表記を仮名に書き下したものをそのまま使う。名義中にアラビア数字や記号が使われている場合も読みに直して仮名を使う。

補足

書き下した後に濁点を除いたり捨て仮名を直したり平仮名か片仮名に揃えるということはしない。アプリケーション毎の都合によって変換すべきです。

冠詞など

『The』『ザ』など、一般的に索引に含められないものが先頭にある場合、それを丸括弧で囲み、末尾に移動させ、間隔を挿入する。

株式会社・有限会社など

stub

代・巻・シリーズ番号など

『二代目田中太郎』など、ある名義についての続き物としての番号が降られているとみなせる場合、基本の名義の後に間隔を入れて、番号をアラビア数字に直して末尾に追加する。

人名

アーティスト名が姓名に分けられ、それが『姓・名』と並んでいる場合、姓と名の間に間隔を入れる。

補足

名義が姓と名に分けられるが『姓・名』の順に並んでいない場合は、sort nameの為に姓名の順に入れ替えるということはしない。一般的に日本の音楽関連のアーティスト索引は純粋な読みの順番で並んでいるため。

人名を含むグループ名

グループ名義の先頭に人名が含まれている場合、人名と後続の部分を間隔を入れて分けて、更に人名の部分についてsort nameの規則を適用する。

補足

このようにすることで、該当の名義がその人名の名義のすぐ後に並ぶことになり便利なため。

提案についての全体的な補足

姓名のスペースについて

巷のアーティストの索引を提供しているサイトでは、大体が名前にスペースが用いられず、辞書順で並ぶようになっています。にもかかわらずここで電話帳順になるような提案をしたのは、「アプリケーション側で間隔を取り除くだけで電話帳順から辞書順に簡単に変換できるから」です。電話帳順も辞書順も「最終的な読みは一緒」になりますから、電話帳順のデータを用意しさえすれば、あとでポリシーの違いで辞書順を使う必要が出てきても、先の操作だけで苦労せず移行できるはずで、結果的に両対応したことになります。これが、逆に辞書順から電話帳順に移行しようとなるとデータ全体を見直さなければならないため、一筋縄ではいかないでしょう…。

現実のデータに対する意見

あとで書く