位置データは正常系だけでなくエッジケースでもテストする
よく地図化された市の中心部の住所からは、システムが農村部のルート、係争中の国境、極地付近のクエリをどう扱うかについてほとんど何もわかりません。難しいケースを意図的にテストしてください。
座標は、どの政府がそこを領有していると主張しているかを知りません。緯度と経度は物理的な事実ですが、ある場所に付けられる行政上のラベル、つまりどの国に属するのか、正式な名称は何かは、ときに本当の意味で争われている問題であり、複数の政府が同じ土地に対して正当な権利を主張しています。世界中のデータを返す位置情報のAPIは、いずれこうした地域に入る地点について問い合わせを受けることになります。そして正直に言えば、政治的に中立な選択肢は存在せず、どの慣習に従うかについての異なる選択があるだけです。
業界全体に共通する一般的なアプローチは、根底にある主権の問題を裁定するのではなく、現地に行政上存在しているもの、つまり使われている現地の郵便制度や日々実際に機能している行政の仕組みを記述することです。主権の問題は政府や国際機関が扱うものであり、ジオコーディングのレスポンスが扱うものではありません。そのため、係争地域でも通常は、座標、地区名、そこで機能している行政の仕組みなど、使える位置データが返され、APIがたまたま選んだ国のラベルに政治的な立場が埋め込まれることはありません。
これは、アプリケーションが税の管轄、配送のルール、法令遵守など、国単位の分類に基づいて判断を行う場合に、係争地域での国の分類には特に注意が必要な理由でもあります。係争地域に対するジオコーディングの結果は、その場所とそこで入手できるデータを記述したものとして扱うべきであり、法律上や規制上の目的で主権について権威ある表明をしたものとして扱うべきではありません。用途が管轄に結び付いた実際の法的な重みを持つ場合は、汎用のジオコーディングのレスポンスだけに頼るのではなく、その法的な目的のために特別に作られた情報源で確認してください。
ここでは、よく混同される2つの異なる考え方を分けておく価値があります。係争地域で使えるデータが返ってくるかどうかは、カバレッジの問題です。そのデータにどの国名や国コードが付けられるかは、ラベル付けの慣習の問題です。ある地域では、実在する通り、実際の郵便情報、実際の座標といった十分なカバレッジがありながら、同時に、妥当なデータプロバイダーの間でも国のフィールドのラベル付けについて異なる選択がなされる地域であることもありえます。
世界中のユーザーを対象に作るのであれば、この種のエッジケースは起こらないと決めつけず、起こるものとして想定し、意図的に設計してください。返された位置のフィールドは記述的なものとして扱い、あいまいな地域や係争地域の扱いを具体的にテストし、法的に慎重を要する管轄の判断は汎用のジオコーディングの出力とは切り離しておきます。私たちの逆ジオコーディングエンドポイントは、座標について入手できる最も役立つ正直な記述を返すことを目指しています。こうした地域では、それはどのAPIにも解決できる立場にない争いに決着をつけることではなく、存在するものを記述することを意味します。