トルコ住所生成ツールは、il と呼ばれる県から daire 番号にいたるまでの各区分が同じ土地を指すように組み立てられた、一件の住所記録を作る仕組みです。トルコの住所は欧州の多くの国と逆で、国から始めて最小区分へ進む大きな単位から小さな単位への順序を持ちます。この順序と、行政区の一覧、郵便番号の対応を同時に保たないと、見た目だけの住所ができあがります。ここでは階層の意味、五桁の郵便番号と県の関係、ドット付きの İ とドットなしの ı が入力で起こす問題、電話番号の地域符号と都市の対応を順に確認します。読み終えると、トルコ向けの住所フォームに必要な項目と、検証で入れるべき境界の値が分かります。
トルコの住所はどのような階層になっているのか
トルコの住所は、県にあたる il、県の下の区にあたる ilçe、地区にあたる mahalle、通りにあたる sokak または cadde、建物の番号にあたる bina no、そして建物内の番号にあたる daire という層で組み立てます。市区町村という二段の分け方に慣れていると、il と ilçe の二段に加えて mahalle がもう一段ある点でとまどうところです。
mahalle は郵便番号の区分というより、地域の呼び名として機能します。同じ ilçe のなかでも mahalle の名前は重複することがあり、単独では一件の場所を特定できません。通り名も同じで、複数の ilçe に同じ名前の cadde が存在します。したがって、住所を一意に扱うには、少なくとも il と ilçe を確定させたうえで、その下の層を組み合わせる必要があります。
bina no と daire の区別も重要です。bina no は建物そのものの番号で、daire はその建物のなかの住戸番号です。表記では daire の代わりに D という略号が使われることがあり、フォームの入力欄が一つのときに 三 と 五 のような二つの数字が並ぶことがあります。この二つを分けて受け取る設計にしておくと、番地の検証と住戸の検証を別々に書けます。
住所の書き順はなぜ欧州と違うのか?
トルコの郵便慣行では、国名から始めて県、区、地区、通り、番地、住戸へと進む順序で書きます。日本の住所と同じく大きな単位から小さな単位へ向かう並びで、番地を先頭に置く英米の並びとは逆になります。この違いは、住所を一行の文字列として扱うときに効いてきます。
英米向けのフォームは、番地と通り名の行を最初に持つ前提で組まれていることが多く、そのままトルコの住所を流し込むと、県名が番地の欄に、住戸番号が通りの欄に入ります。見た目は文字列として成立しますが、並びの意味が壊れています。国際的なフォームを設計するときは、並びの順序を国ごとの規則として持ち、表示だけを切り替える形が安全です。
宛名の書き方と、データとしての並びは別物として扱ってください。印字するときは大きな単位から始めますが、保存するときは各層を別の欄に分けておけば、並びの違いは表示の段階で吸収できます。
もう一点、住所の区切り記号にも国ごとの癖があります。トルコでは通り名と番地のあいだに区切りを置かず、番地のあとに住戸番号を続けて書く形が一般的です。区切りを手がかりに住所を分解する実装は、この形で誤って切れます。分解の根拠は記号ではなく、階層の一覧に置いてください。並びの一般則は国際住所の書き方で整理しています。
郵便番号と県はどう対応しているのか
トルコの posta kodu は五桁の数字で、先頭の二桁が県とおおむね対応します。トルコには八十一の県があり、それぞれに二桁の県番号が割り当てられています。郵便番号の先頭二桁はこの県番号と一致することが多く、残りの三桁が県のなかの配達区域を示します。
ここで注意したいのは、大都市の扱いです。イスタンブールのような人口の多い県では、同じ県番号の下に多数の区域があり、三桁の部分が広い範囲に広がります。先頭二桁だけを見て県を決める推測は、多くの場合で当たりますが、境界の区域や特別な符号では外れます。推測で埋めず、県と区域の一覧を根拠に持つほうが確実です。
郵便番号を必須にするかどうかも、フォームによって判断が分かれます。配達には郵便番号があるほうが確実ですが、mahalle や通り名だけで区域を特定できる場合もあります。いずれにせよ、郵便番号の桁数を数えるだけの検証は、存在しない区域の値を通してしまうため、県番号との整合まで見ておくと安心です。国ごとの郵便番号の形は郵便番号の書式で扱っています。
İ と ı の文字はどこで問題を起こすのか?
トルコ語のアルファベットには、点の付いた大文字 İ と点のない小文字 ı があり、英語の I と i とは別の文字として扱われます。イスタンブールを表す İstanbul の先頭は点付きの İ です。この文字を英語の I に置き換えると、別の綴りになり、検索でも照合でも一致しなくなります。
厄介なのは、多くの言語の標準的な小文字化の処理が、この区別を壊すことです。İ を機械的に小文字にすると i と結合記号の二文字に分解され、ı を大文字にすると I になります。結果として、同じ都市の名前が複数の表記で保存され、重複した区域として扱われます。住所の突き合わせや並べ替えを行うときは、トルコ語の規則に従った変換を使う必要があります。
表示の面でも問題が起きます。文字の高さが揃わないため、行の高さを固定した表では点が欠けて見えることがあります。フォントによっては ı と i の区別がつきにくく、目視の確認では見落とされます。住所の一覧を人が確認する場面では、この二文字を含む値を意図的に混ぜておくと、表示の破綻に気づきやすくなります。
電話番号の地域符号は都市と合うのか
トルコの電話番号は国番号の九十に続いて、三桁の地域符号と七桁の番号で構成されます。地域符号は県とおおむね対応しており、イスタンブール、アンカラ、イズミルといった大都市には固有の符号が割り当てられています。住所と電話番号を同じ人物の記録として扱うなら、この二つが同じ県を指している必要があります。
テストデータでよく起きる不整合は、住所の県と電話番号の地域符号が別の県を指している例です。どちらも単体では形式が正しいため、検証を通過してしまいます。しかし、住所から配達地域を決めて電話で連絡する、という業務の流れを想定すると、この組み合わせは成立しません。地域符号と県を対応づけた一覧を持ち、生成の段階で同じ県から両方を引く作りにしておくと、この種の矛盾が生まれません。符号と土地の対応は電話番号の地域符号と地名の整合で扱っています。
住所フォームではどの文字を試すべきか?
トルコ向けのフォームを検証するときは、まず İ と ı を含む値を入れてください。İstanbul、İzmir、Çankaya のような綴りが正しく保存され、正しく検索できるかを確かめます。次に、ç、ğ、ö、ş、ü を含む地名を入れます。これらの文字は並べ替えや大文字小文字の変換で扱いが変わり、実装によっては順序が崩れます。
数字の面では、郵便番号の先頭二桁が県番号と対応している値と、境界にあたる値を混ぜて入れてください。bina no と daire が一つの欄にまとまって入力された値も試す価値があります。三 と 五 のように二つの数字が並ぶ入力をどう解釈するかは、実装ごとに判断が分かれる箇所です。
文字数の上限も確認しておきます。長い通り名や mahalle の名前は、入力欄の幅を超えることがあります。切り詰める実装なら、切り詰めたあとに郵便番号との整合が崩れていないかを見てください。フォーム側の観点はチェックアウト住所フォームのテストケースにまとめています。
生成した住所はどこまで使えるのか
トルコ住所生成ツールが作り出すのは、il から daire までの階層が同じ土地を指し、郵便番号と県番号が整合した合成の記録です。実在の人物や建物に対応するものではなく、投函すれば届く宛先でもありません。地図で同じ番地を探しても、そこに建物があるとは限りません。
使う場面は、自分のシステムの検証に限られます。住所フォームが想定どおりの文字を受け取れるか、階層を分けた保存が崩れていないか、郵便番号と県の対応を検証できているかを確かめるための材料です。本人確認の場面で提示して通ることを狙う種類ではなく、そのような使い方は想定していません。
複数の国をまたいで確認するときは、国ごとに項目の意味が変わる点に注意してください。トルコの il は他の国の州と役割が似ていますが、必須かどうかの判断は同じではありません。
また、生成した値を長期のテストに使うなら、値の出所を記録しておいてください。実在の住所と混ざると、どちらが合成の値か分からなくなります。書き出した一覧には生成の条件を添え、本番のデータと同じ場所に置かない運用を決めておくと安全です。国ごとの違いは国別の住所データで扱っています。
導入前に決めておきたいこと
まず、住所の各層を別の欄として保存するかを決めてください。一行にまとめる設計は、後から県や区で絞り込む検索を難しくします。次に、文字の変換規則をトルコ語の規則に合わせます。最後に、電話番号の地域符号を住所の県と突き合わせる検証を入れておきます。この三つを整えてから、住所生成ツールでトルコを選び、境界の値を揃えてテストを始めてください。
郵便の宛名と画面の表示はどう違うのか
画面に出す住所と、封筒に書く住所は、同じ内容でも見え方が違います。封筒では大きな単位から小さな単位へ向かう並びと、行の折り返しが読みやすさを左右します。画面では、利用者が入力した順序や、欄ごとの幅のほうが重要になります。この二つを同じ文字列で賄おうとすると、どちらかの読みやすさが犠牲になります。
実装としては、保存した各層を並びの規則に従って組み立て直す処理を一つ持ち、用途ごとに改行の入れ方だけを変える形が素直です。封筒用には行を分け、画面用には一行につなぎます。つなぐときの区切り記号も、国ごとの慣習に合わせて切り替えます。
確認のためには、長い通り名と長い mahalle の名前を含む住所を一つ用意しておくと役に立ちます。区切りを誤る実装は、この一件で並びが崩れて見えます。短い値ばかりで試すと、この種の誤りは表に出ません。
どの項目を必須にすべきか
トルコの住所フォームで必須にする項目は、配達に必要な層を基準に決めます。il、ilçe、通り名、bina no は配達の根拠になるため必須とし、daire は集合住宅に限られるため任意とする判断が自然です。mahalle は地域によっては省略できる場合があり、必須にするかどうかは運用次第です。
郵便番号を必須にするかは、配達の確実さと入力の負担のどちらを重く見るかで変わります。任意にする場合でも、入力された値が県番号と食い違っていないかの検証は入れておいてください。食い違いを黙って受け入れると、後段の突き合わせで原因の分からない不一致になります。