宛先を天空の城にしても届く、それが住所


住所表記は柔軟さを豊富に含む。
自分が子供の頃、年賀状の宛先を「市内 天空の城」で記したが相手に届いたことがあった。(※
名字がある程度珍しくその地域で一意に特定可能なものであれば、住所がかなり適当なものでも届く。
それが住所だ。

※)このツケは高校生の時、年賀状バイトで自ら払ったので弁償済みにしてもらいたい・・・。

住所は原型を留めぬほどのなりはてでも届くし、はたまた、ほんの一文字が判読不能になっても届かない。
矛盾を孕んだ存在、それが住所だ。

前回の続き、住所のお話し。

もはや自由記入欄の住所

住所とは届け先を一意に特定するための文字列であると定義したとき、それを欠くと届けることができなくなりうるすべての文字列が住所たりえる。

例をあげる。

  • 例1「不在時は宅配ボックスにお願いします」
  • 例2「奥の青い屋根の家の右のポスト」
  • 例3「CODE-999999999999999」

これすらも住所の一部たりえる。

不在時は宅配ボックスにお願いします

まだ宅配ボックスが珍しかったころに急に住所に登場した文字列。
宅配ボックスがマンション戸数と比較してすくない普及期に、配達人に考慮なしに宅配ボックスに入れられると宅配ボックスが溢れるので、判を押したようにこの文字列が流行した。宅配ボックスが一般化したことにより最近は減りつつあるが、住所はとうとう条件分岐(if文)を内包するようになった。

物流が逼迫し、再配達率を下げるためにはしかたのないこと。配送日時指定とかなどは条件分岐の最たるものであるが、住所がさらに複雑な論理構造を持つ未来も遠くはないだろう。

奥の青い屋根の家の右のポスト

一意に特定するために、アクセス方法を事細かに書いた住所だ。
京都や札幌で使われる、東入ルだの下ルなどのような、アクセスの仕方が書かれた住所もこれに分類されるだろう。

古い家で親族で土地を分けた場合、同じ住所地番に同じ名字の家が多く住まうことがある。
手前の山田さんと、奥の山田さんみたいに。
親の名前が似ているから子供の名前も似る。
二世帯住宅なんてものもある。建物が同じで、名字も同じ。だが、ポストは別。

だからそれを特定するためにポストの細かな情景描写をしなければならない。

「奥の青い屋根の家の右のポスト、ポストには表札はありませんがウサギのかわいらしいシールが貼ってあります。」

こだわれば小説のような情緒的な書き方すらできる。
あるいは漫才。緑の鞄に500万入れて白の紙で黄色の鞄言うて・・・。
だが、こんな情報でも抜ければ配達員は届けることができないのであれば、それは住所なのだ。

「CODE-999999999999999」

もはや乱数みたいなハッシュコード。なんにつかわれているのかもわからない。

最近の住所に含まれる、よくわからないアルファベットに数字が混ざったみたいな長い文字列。

10年以上前であれば、これらの文字列は、住所が漏れたときにどこから漏れたのかを特定するために、セキュリティ意識の高い人がつけることがあった。住所の中にショッピングモール-店名みたいな情報を含んでいた。滅多にいないが見たことはある程度。

5年ぐらい前、国外への小型郵便物流通網が生きていた頃は少し意味合いが変わってきて、P.O.(私書箱)的なハッシュコードの意味合いで使われた。

小さく軽量なものはSAL便なんかを利用すると、東京から九州、北海道への宅急便代金などより安い送料で国外に送れる時代があったのだが、サイズが一定より大きく重くなると、途端に送料が高くなる。

なので、国外から一定量を日本のネットショップで購入するひとは、日本国内の住所で一度受け取って、まとめて送ることで送料を節約できる国際転送代行サービスを利用することがある。そのとき、誰の注文物かを振り分けるために、住所欄にP.O.番号みたいな長いハッシュコードをつけることがある。名前から判断するに韓国の方の利用者が多かった。

そんなコードがどうも様子がここ最近おかしい。
受取人が日本名なのにやたら長いハッシュコードがついていることがある。

住所を隠蔽したまま商品をうけとるためのサービスなのかもしれないし、ただ単に宅配ボックスとかの登録コードなのかもしれないけど、このハッシュ値がやったら長い。

Amazonなんかの住所表示欄では、長すぎるということで表示上(htmlのtext-overflow)「…」(三点リーダー)とかに丸められてしまうことがある。というか、丸められる。CSVやExcelに落とすと、先頭がゼロ落ちしてしまうことがあるので、お手々でその元のデータを住所に反映してやらなければならない。

何につかわれているかはわからないのだけど、それが原因で届かなかったら困るので、落とすわけにもいかなそうな文字列なので、取り扱いに頭を悩ますのである。

ちなみにYahooStoreとかだと、電話番号が住所欄にはいってきちゃったりするので、そういうのは住所印字のときにtrimしている。落とさなきゃいけない電話番号みたいな数字の羅列と、落としちゃいけないハッシュが混在する。

もしかしたら人によって用途は違うのかもしれないが、ちょっとなんなのか想像がつかない。クレカや住所が使えるかとかのトラックコードとかだったらやだな。

マンション名ビル名会社名部署名屋号の地獄

人名や法人登記に使える文字は限られているが、マンション名や屋号、部署名などはその限りではない。

漢字、ひらがな、カタカナ、異体字、旧仮名、変体仮名、そして英語、英語のカタカナ表記、そしてここにきてフランス語やらのアクセント記号、アクサン・テギュやらドイツ語のウムラウト、そしてギリシャ数字。はたまた機種依存文字①、㈱みたいなものまで、どこまでも自由につかわれる。

住所印刷を投げるときにエクスポートするんだけどsjisでしか受け付けないシステムとかあるから、そういうのがデータが落ちたり文字化けしたりするのである。
SQLインジェクションかよって思うようなマンション名すらある。実際シングルクォーテーションを含むマンション名は多い。で、なんかのシステムを経由したためにエスケープシーケンスがついたり”になっちゃってたりみたいなこともよくある。

新宿の1階層ごとに郵便番号が異なる住所で、ビル名が長そうなものを適当に今ピックアップしてみた。

〒 160-6190
東京都
新宿区
西新宿住友不動産新宿グランドタワー(地階・階層不明)

www.post.japanpost.jp/cgi-zip/zipcode.php?pref=13&city=1131040&cmp=1

近代のビルには数千世帯(数千人)が同居していることも少なくない。
そして大抵、似たようなビル名は少し違うだけでA棟、B棟のように複数連立して立つのである。

件の例だと「西新宿住友不動産新宿オークタワー(地階・階層不明)」みたいに、グランドタワーとオークタワーみたいに似たビル名の建物が近隣にある。それぞれ38階と54階まで、別の郵便番号になっている。

ちょっとした田舎の町の人口がひとつのビルに出現するわけだ。

◯丁目◯番地◯号A棟2023号室
みたいに命名法に表記規則があればまだ管理は楽であっただろう。

例えばだけど、その地域にいくつも建つような建築会社のブランド「ライオンズマンション」みたいなものは、その地域の名前を復唱することがある。
[ライオンズマンション***市***町*丁目]のように。
住所を一意に特定するために必要なのはマンション名を抜いたあとの部分が必要なのだが、正式名称がそうであるためマンション名も丁寧に入力される。

先の新宿の例で考えるならば、
住所「西新宿住友不動産新宿グランドタワー(地階・階層不明)」
会社名「株式会社****西新宿住友不動産新宿グランドタワー支店~~~部~~~課」
みたいに続くことが容易に想像ができるだろう。

だが、データ登録欄、あるいは宛名印字のためのスペースが限られているのだ。

長いマンション名に押し出されて肝心な情報が欠落してしまうことがある。または、この中間に出現する謎の複雑怪奇なマルチ言語の文字列により文字化けをおこしたりなんだり。

つまり何かというと、うゔぁーなのだ。

パレスだとかレジデンスだとかヒルズだとかをしっかり入力したがために肝心の部屋番号が落ちてたりすると、あー、これじゃ届けられないぞと問い合わせが必要になったりするのだ。
で、調べてみた結果、部屋番号もない数軒程度アパートだったりして胸をなでおろしつつもやっとした気持ちになるのである。

感想

最近は在邦の外国の方も増え、特に、繁体字や簡体字はそのまま使われる方が多くなってきた。
今のところRLT (Right To Left)が無いのが唯一の救いではあるが、住所の正規化が簡単だなんてのたまうものは、地獄の劫火で焼かれるべきものである。

住所、まだまだいい足りないが、こんなもんで勘弁してやんよ!!


住所正規化問題は住所地獄の一丁目


前回のつづき。
どこまでが町名でどこが番地名だ、みたいな、住所正規化の問題。
そんなものはコンバーターの精度を競うまでもなく、住所問題を扱うときには実はさしたる問題ではない。

半角カタカナを全角ひらがなに変化できる程度のDX人材がいないと駄目だとか、なければ人員と努力忍耐根性が必要だとか、まあいろいろあるけれども、前回書いたような基礎自治体、町名ぐらいまでの問題のほとんどは郵便番号辞書で解決することができるからだ。

パソコンなどの日本語入力IMEの郵便番号辞書をONにしていれば、郵便番号の数字をいれるだけで住所に変換することができる。

新たに作ったシステム導入の説明ついでに、日本語入力IMEに郵便番号辞書をONにするやり方を教えてあげたら、それが一番喜ばれたなんていう悲しい体験があるほど郵便番号辞書の利用はDX化においてまずなされるべきことだと思う。


だから、そんなものは住所問題地獄の一丁目でしかない。
なにせ郵便番号辞書という「正解」があるのだからそれにぶつければよいだけの問題だからだ。

ふたとおりの正しい住所

というわけで、地獄の二丁目の門をくぐろう。

日本の住所には、本籍地などで使われる「法務局(登記所)が定めた住所」と、郵便物などでつかわれる「住居表示に関する法律」により定められたふたとおりの住所というものがある。土地登記地獄のフタもあるのでこれも盛大に不満をぶちまけたいが、ここでは触れない。

◯丁目◯番地◯号みたいなのは、住居表示実施適用済みの住所。
昭和37年より前は、地番が住所として使われていた。当時は家も人口少なかったから地域名に連番を振るだけで住所が管理できた。昭和中期のベビーブーム、人口爆発により、ひとつの土地に複数家族が住み始め、連番の途中に新たに家が立ち、アパートが立ち、ビルが立ち、そして、地名+連番+枝番による住所管理は破綻を迎えた。

いまの23区は東京市で、都は東京府で三鷹が村だったり町だったりした頃から現役の表札。地番表示。

昭和37年、住居表示に関する法律が制定された。
1962年の法律なら、もういい加減一律悉皆に適用されていそうだが、実はそうでもない。

田舎などは古い地番がそのままつかっていたり、北海道みたいな非人口密集地だと、無番地みたいなエリアも多い。まあそれくらいは、実務の用であるので使いやすいほうを選択しても問題はない気もする。

だが、実際は人口が多く入れ替わりが多い新宿区ですらまだ未実施地区はこんなにもあるのだ。

東側の青紫の色のところが未実施地区

新宿区住居表示実施図(PDF)
www.city.shinjuku.lg.jp/content/000280624.pdf

新宿だよ?
乗降車人数が世界最多の一日に350万人の新宿駅を擁する新宿区がだよ?
昭和37年の住所改正すらまだ途中なのよ。
しかも厄介なことに、住居表示実施適用済みでも古い地番の住所を使う人もいる。

新宿区からの注文で、住所が新宿区**町3番みたいな。
あー、書き漏れかな? 新宿みたいな人口多い地域でこれじゃ届かないだろと確認の問い合わせしたら、「うちはずっとこれで届いてきたから」と。
あえてそれを使う側にもこだわりもある。戦争で焼けなかった地域には残されたもののプライドも継いでいるわけさ。

郵便番号の地獄

古い番地が残る新宿の東側とは逆に、新宿区の西側、都庁がある超高層ビル群に変貌したエリアは、ひとつのビルに数百の会社、数千人がすし詰まっているので、ひとつのビルにいくつも郵便番号があったり、排他的論理和みたいな「次のビルを除く」表記になっていたりしてさらに混迷の様相をみせる。

丸の内とか、西新宿とかはこんなんばっかりだ。

〒163-0701 西新宿小田急第一生命ビル(1階)
〒163-0702 西新宿小田急第一生命ビル(2階)

フロアごとに郵便番号が異なる。
郵便番号データを信じすぎるとこういうデータとも戦わなければいけない。

郵便番号辞書を信頼しなければ始まらないが、信用してしまってはだめなのだ。

郵便番号が一つのエリアにユニークに紐づいていれば問題は少なかったのかもしれないが、現実はそれを許してはくれない。同じ町名なのに、郵便番号が分かれることもあれば、一つの郵便番号にも複数の異なる町名がぶら下がるなんてこともある。

厄介なことに、例えば「山田町」と「山田」みたいに似ているけれども非なるものが同じ郵便番号にぶら下がっていることも結構な出現頻度であるのだ。

拗音促音濁点半濁点地獄

オフコンや汎用機の時代に作られたシステムでは、小さい「ぁぃぅぇぉ」や「゛」「゜」が現在のシステムの扱いのそれとは異なることがある。顕著なのが自治体や郵便局、銀行など、80年代、90年代、システム化が早かった界隈だ。ATMなど制限された平面に物理の文字ボタンの入力に対応していたため、濁点などを含んだすべての読み仮名のボタンを配置することができなかったのだ。

うちは紅茶の茶葉さんなので会社名に「茶屋」という漢字が入る。
自分はこれを「ちゃや」のつもりでつけたのだけど、銀行口座をつくるときちょっとした手違いでふりがなが「ぢゃや」になってしまった。
日本郵便などは促音にも対応していない銀行の場合は、小さい「ャ」がなく、「ヂ」が「チ」+「゛」で表現される。つまり「ヂャヤ」は「チ゛ヤヤ」となるわけだ。

システム上(文字コード上も)、「ヂ」と「チ゛」はまったく別のものなのでこれを同じものと見做すためには、同じものですよと変換してやるか、それらを同じものとしてつないで定義してやらなければ検索することもできない。だから、システム化するときに「チ゛」は「ヂ」にしてデータベースに格納することにしよう。そんな風にして、全銀聯などはデータベース連携をすすめたのだろう。

なるほど、システムの更新や仕様策定のときにそう変換するルールを決めることは大切だ。
では、「ア゛」と入力された場合は?
そして運用をはじめて具体的な例外が次々に出てきて頭を抱えることになるのである。

「チ゛ヤヤ」と登録してしまったデータから「ヂャヤ」を復号することはできないのだ。
かくして「チ゛ヤヤ」のデータも正しいものとして生存し続けることになるわけだ。

タレントの中川翔子さんは、薔子(しょうこ)で命名しようとしたが「薔」が常用漢字でないために登録できず、しかも、促音の「ょ」が「よ」になってしまい本名「しようこ」で戸籍登録されてしまったそうである。あ、ご結婚おめでとうございます!

そんな感じに、名前は役所届け出のときに使えない漢字だの、つかえない読みだのと拒否されシステムにあわせて、担当者の胸先三寸で運用され、そして「正しい」データが増えていくのである。

法務局の屋号はチャヤになったのに銀行はヂヤヤだ。果たして我が社の正しい読み方とはなんぞや?

住所には宛名も含むので当然だが、同じような問題が住所にもおこる。

日本郵便の郵便番号辞書CSVのダウンロードページに行くと面白いものが今でも見れる。
読み仮名データの促音・拗音を小書きで表記しないものと、小書きで表記するものがある。
例:ホツカイドウ
例:ホッカイドウ

何故2023年にもなって「ホツカイドウ」のデータを残しておく必要があるのか?
名寄して変換できるじゃないか!というモノのみ石を投げよ。
マサカリが投げ返されることであろうぞ。

このペースで書いていくとあと2回ぶんぐらい続きそう。

他参考

IMIコンポーネントツール
info.gbiz.go.jp/tools/imi_tools/

(前回の投稿)明るい日本の住所表記に安心してくださいはできますか
kuippa.com/blog/?p=2228


明るい日本の住所表記に安心してくださいはできますか


久しぶりにマサカリが飛んでくるネタらしい。
ネットショップを20年近くやってると、うちみたいな弱小零細でも何万何十万と住所処理を処理することになり言わずには居られない鬱憤もたまる。
つくづく日本語のシステム、データベース化は難しい。

英語であればアルファベット24文字と大文字小文字ぐらいなのでUpper()なりlower()なりでどちらかに統一すれば検索できる。
日本語は漢字、ひらがな、カタカナぐらい?
漢字は一般的なコンピューターシステムでサポートされているJIS系の第1~4に補助漢字までいれてだいたい約16,000字ぐらいが一般的なフォントで対応されている。
ということは、24文字を1万6千文字に増やした分だけ頑張らなきゃいけないのか! それは大変だね!!

・・・なんていう枠には収まらない。

だからこそ、地獄のフタを一度でも開けた人たちはマサカリを投げつけるのである。完全に理解した曲線のバカ山の能天気さは絶望の谷底からみると眩しすぎるのだ。
地獄に落ちてしまった亡者が手をのばすほどには。

16000文字÷24文字=666.66666666666倍

そこは決して開けてはいけない地獄のフタなのである。

分かち書きカカシ先生は脳みそを求めて旅に出る地獄

ちょいと前に話題になった動画に「変なAI」というのがあった。

雨穴さんの【科学ホラーミステリー】変なAI
www.youtube.com/watch?v=NAv0aScEQm0

このホラーミステリー的な動画では作中にAI「kakashi」というのが出てくる。カカシと聞くと、インターネット老人会の人たちはすこしざわざわする。

古い話し。

kakashi、実は2000年の頃に実在していて、かつては全文検索エンジンをつくるのに、kakashiやらnamazuやらをつかって分かち書き、インデックス化をしている時代があった。

分かち書きというのは、英語の場合は単語と単語の間がスペースで区切られているため、単語で検索することができるが、「日本語 は 文中 に 区切り が ない」ので、こんな感じ分解してやる。

チャセンやらメカブやら形態素解析が一般化する前までは突っ込まれたテキストをどこで区切るのかは実に大問題で、無計画な全探索などをおこなってしまうと一生かけても応答しないぐずのろ検索エンジンになってしまうのだ。そんな風に予め持っている手持ちの辞書と突き合わせて文章を細切れにして索引をつけておく必要があった。

愛知海部飛島新田竹之郷ヨタレ南ノ割

これは日本一長い住所から、あえて郡とか字の区切り文字表記を抜いたものであるが、日本人の何人がこれを正確に分かち書くことができるだろうか?線でも引いて区切ってみてほしい。

正解はこれ。

愛知県 海部郡 飛島村 大字飛島新田 字竹之郷 ヨタレ南ノ割

人間に難しいことはAIにも難しい。
2023年現在、だいぶ進化したとは言え、ChatGPTに日本語の文字数を尋ねるとおかしな答えが帰ってくることがある。夏を季語に俳句を読んでもらった。

2023年なうてのAI、ChatGPTさんは俳句を読めても、それが何文字ですか?みたいな人間には簡単に見える質問には満足に答えることができないことがある。ここに日本語の難しさがある。

もしかしたらこれは、GPTの学習が「日本語」ではなく、文字コードのバイナリで線形学習していることによる弊害かもしれない。存在しない「視覴」なる単語を使いだしたという騒動を見ているとその確信を強くするが、マルチモーダルを目指す過程に今この瞬間だけ見ることができるマルチバイト言語に現れた時代の徒花と考えれば、音数え 趣深し 梅雨の藍。

これはおもしろい。UTF-8とChatGPTのトークン:
視覴 e8 a6 96 e8 a6 b4 |25038|244|25038|112|
視覚 e8 a6 96 e8 a6 9a |25038|244|25038|248|
視聴 e8 a6 96 e8 81 b4 |25038|244|36735|112|
「覚」の前半と「聴」の後半がくっついたみたい t.co/oSpUfNxsUN— Haruhiko Okumura (@h_okumura) June 8, 2023

ちょっとだけ解説すると、文字コードのUTF-8のバイナリはリバースにスタックされてるので日本語化するときは読み込み順を逆にしてからエンコードしてやらにゃならない。U+07FFみたいなんがバイナリ読み込みするとFF07みたいに拾われてくるので07FFに結合してUTF-8でデコードする感じ。これはUTF-8が1-4バイトの可変長であることに多分由来しているんだろうけど詳しくは知らんし自分には荷が重いので、ここではそんな地獄もあるよと軽く触れる程度で終える。しらんけど。

地名の読み方無限地獄

日本語を分かち書くことはただでさえ難しいのに、さらに厄介なことに、固有名詞、地名はさらに輪をかけてそれを困難にする。

地名をなんと読むか、読めない地名をどこで区切るかは母語を日本語にする人にもとても難しい問題だ。
そのため表現も揺らぎやすい。
やがて同じ読みでもいくつも書き方が存在するようになる。

山手、山の手、山ノ手。

ひとつの書き方にいくつも読み方、ひとつの読み方に複数の書き方が存在するようになる。
山手と書いて、やまのてと読んだり、やまてと読んだり、どちらでも正解だったり、読み方が決まっていたり、あるいはどちらとも間違いだったりする。会社によって自治体によって運送会社によって正解が変わる。東京にも山の手はあるし神奈川にも神戸にもある。

これに方言も混じれば読み方がさらに増え、さらに書き方が増える。
こんな風にして地名は発散する。

昨年ニホンゴムズイという、アプリを習作がてら作った。
歴史的な経緯(?)から千葉県にはとてもむずかしい難読地名が多いのだけど、それを4択クイズにしただけのそんなにおもしろくもないゲームだ。

※ 今はAppleデベロッパライセンス切れ(?)でダウンロードできないけど、一応リンクだけ残しておく
apps.apple.com/jp/app/%E3%83%8B%E3%83%9B%E3%83%B3%E3%82%B4%E3%83%A0%E3%82%BA%E3%82%A4/id1608182925

我孫子市、富津市、酒々井町、東庄町

匝瑳市、鋸南町、八街市

読めるだろうか?

正解は・・・

我孫子市(あびこし)、富津市(ふっつし)、酒々井町(しすいまち)、東庄町(とうのしょうまち)、匝瑳市(そうさし)、鋸南町(きょなんまち)、八街市(やちまたし)

千葉県の基礎自治体だけをあげつらっても、ごらんの難読さ加減。

ちなみ、今ちらっとゲームのデータを見てきたのだけど、千葉県では地名に使われる漢字は常用漢字うち737文字しか使われておらず、1538が不使用となっている。逆に139文字は常用漢字以外の漢字が使われていた。

同表記なのに別の場所という例もある。

181-0016 東京都三鷹市深大寺と182-0012 東京都調布市深大寺は数キロと絶妙に離れているが連続した一体エリアではない。


調布深大寺にある植物公園は神代寺植物公園だの神代高校だの、神代とする別の漢字表記もある。
深大寺がお寺の名前に由来しいて、神代は神代村に由来しているわけだが、こんな風にすこしの区別付けのために漢字表記をあえて変えた。そしてその変更にはそれなりのこだわりがあったので放棄するわけにはいかない。
三鷹の深大寺と調布の深大寺はまだ自治体が別だからよかった。だが、もし合併したら?

630-8016 奈良県奈良市南新町(みなみしんちょう)(52~212番地)
630-8356 奈良県奈良市南新町(みなみしんまち)(1~32番地)

950-3323 新潟県新潟市北区東栄町(とうえいちょう)
950-3104 新潟県新潟市北区東栄町(ひがしさかえまち)

673-0012 兵庫県明石市和坂(わさか)
673-0012 兵庫県明石市和坂(かにがさか)

住所については、例外の枚挙には暇がないのである。
そして永遠に地名は増殖する。

なんかまだまだまだまだいい足りないが、長くなったのであと2回ぐらいはつづく

参考

とにかく日本の住所のヤバさをもっと知るべきだと思います
note.com/inuro/n/n7ec7cf15cf9c

住居表示に関する法律
elaws.e-gov.go.jp/document?lawid=337AC0000000119

愛知県海部郡飛島村大字飛島新田字竹之郷ヨタレ南ノ割は本当に日本一長い地名か?
dailyportalz.jp/kiji/140708164564