このドキュメントでは、Address Validation API が、システムからの確認動作を必要とする住所に対してレスポンス シグナルを提供する、さまざまな実際のシナリオについて説明します。コンテキストについては、検証ロジックを構築するのワークフローの概要をご覧ください。
一般的な例: confirm
次の例は、類似した道路名を持つ大都市圏のケースを示しています。ユーザーが 米国ワシントン州カークランドにある Google ビル D のアドレスを入力するとします。しかし、都市として「Kirkland」ではなく「Seattle」と誤って入力してしまった。
住所を入力しました | 地域 |
---|---|
Building D, 451 7th Avenue South, Seattle, WA 98033 | 米国 |
置換されたデータの判定結果
次の例では、レスポンスの重要なシグナルを強調しています。
{
"inputGranularity": "SUB_PREMISE",
"validationGranularity": "PREMISE_PROXIMITY",
"geocodeGranularity": "PREMISE_PROXIMITY",
"addressComplete": true,
"hasUnconfirmedComponents": true
"hasReplacedComponents": true
}
PREMISE_PROXIMITY
は建物レベルのアドレスの近似値を示しますが、入力時に指定された粒度である SUB_PREMISE
ほど詳細ではありません。レスポンスには未確認と交換済みのコンポーネントの両方が含まれているため、この組み合わせは [確認] カテゴリに分類されます。
住所コンポーネントをクエリすると、次の懸念事項が明らかになります。
{
"componentName": {
"text": "451",
},
"componentType": "street_number",
"confirmationLevel": "UNCONFIRMED_BUT_PLAUSIBLE",
}
...
{
"componentName": {
"text": "98104",
},
"componentType": "postal_code",
"confirmationLevel": "CONFIRMED",
"replaced": true
}
...
{
"componentName": {
"text": "Building D",
"language_code": "en"
},
"componentType": "subpremise",
"confirmationLevel": "UNCONFIRMED_BUT_PLAUSIBLE",
}
.......
"unconfirmedComponentTypes": [
"street_number",
"subpremise"
]
この場合、Address Validation API は指定された住所(シアトル)に近い住所を見つけ、郵便番号(より上位のコンポーネント)を置き換えて シアトルの住所を解決しました。これは有効な置換ですが、コンポーネントが未確認であるという事実に加えて、ユーザーが Kirkland などではなく、シアトルの住所を入力するつもりであることを確認することは理にかなっています。
エッジケースの例: 確認
次の例は、次のエッジケースのタイプを示しています。
- 確認済みの軽微な推論。Address Validation API は、国、郵便番号、州のいずれかを推測しますが、それ以外はすべて指定して確認する必要があります。粒度と確認レベルの両方を組み合わせることで、確認アクションを必要としない軽微な推論が可能になります。
- 予期しない住所コンポーネントが確認されていません。未確認の住所構成要素は、住所のリスクレベルを高めます。この場合、確認が必要になることがあります。
- 確認済みの予期しない住所コンポーネント。このコンポーネントは、正しい住所には厳密には必要ありません。Address Validation API は、このコンポーネントを出力から削除します。通常、フォーマットの問題では確認は必要ありません。
確認済みの軽微な推論
より詳細なレベルの確認済みデータと組み合わせると、入力に次のタイプのコンポーネントが 1 つだけ欠落している場合でも、API は正しい推論を行うことができます。
- 市区町村
- 州
- 郵便番号
- 国
たとえば、マサチューセッツ州スプリングフィールドにあるマクドナルド レストランの有効な住所をお客様が入力したにもかかわらず、市区町村を入力し忘れ、4 桁の拡張子のない郵便番号を入力した場合です。
入力した住所 | 地域 |
---|---|
1402 Allen St, MA 01118 | 米国 |
都市が指定されていない場合の判定結果
{
"inputGranularity": "PREMISE",
"validationGranularity": "PREMISE",
"geocodeGranularity": "PREMISE",
"addressComplete": true,
"hasInferredComponents": true
}
Address Validation API が配送先住所を生成するために上位レベルのコンポーネントを推測する場合、システムのデータが正しいことをより高い信頼性で確認できます。これは、広範な地理的地域を表す推定コンポーネントが、より詳細な確認済みの住所コンポーネントと簡単に照合されるためです。米国のスプリングフィールドなど、都市名が重複する国でも、他のコンポーネントと組み合わせることで一意の住所を指定できます。
上記の例では、すべての住所コンポーネントをスキャンすると、すべてのコンポーネントが確認済みであることがわかります。つまり、Address Validation API によって保存されたデータと一致し、サービスによって 2 つの上位レベルのコンポーネントも推論されます。
{
"componentName": {
"text": "Springfield",
"languageCode": "en"
},
"componentType": "locality",
"confirmationLevel": "CONFIRMED",
"inferred": true
},
{
"componentName": {
"text": "1806"
},
"componentType": "postal_code_suffix",
"confirmationLevel": "CONFIRMED",
"inferred": true
}
予期しない住所コンポーネントが確認されていません
このシナリオは、コンポーネントが確認されていない場合に確認する重要性を示しています。住所コンポーネントが予期しない場合は、Address Validation API によって出力から削除されます。このような場合は、リスクレベルと信頼レベルに応じて、住所を承認するか、お客様に再確認します。
たとえば、郵便局が無視する無害な情報をお客様が入力することが多い地域の住所の場合は、その住所を承認します。ただし、未確認のコンポーネントがお客様が希望するものではない場合があります。
住所を入力しました | 地域 |
---|---|
1 Rue Grenache, la caritat 2, 34630 Saint-Thibéry | フランス |
予期しない住所コンポーネントの判定結果が確認されていません
{
"inputGranularity": "PREMISE",
"validationGranularity": "PREMISE",
"geocodeGranularity": "PREMISE",
"unconfirmedComponents": true
}
Address Validation API は、未確認のコンポーネントを含む判定結果に加えて、次の形式の住所を返します。
"formattedAddress": "1 Rue Grenache, 34630 Saint-Thibéry, France",
未確認のコンポーネントをスキャンすると、API が返された住所から la caritat 2 を削除したことがわかります。
{
"componentName": {
"text": "la caritat 2",
"languageCode": "fr"
},
"componentType": "sublocality_level_1",
"confirmationLevel": "UNCONFIRMED_BUT_PLAUSIBLE",
"unexpected": true
}
確認済みの予期しない住所コンポーネント
この例では、指定された住所に英国の郡を含めています。これは一般的な方法です。ただし、これは英国の郵便局の要件ではなく、基本的に無視されます。postoffice.co.uk と英国と国際郵便の宛名付け方法をご覧ください。
そのため、お客様が英国の住所の郡を指定すると、サービスはこれを予期しない入力として評価します。
入力した住所 | 地域 |
---|---|
33 Dunalley St, Cheltenham, Gloucestershire, GL50 4AP | 英国 |
確認済みの予期しない住所要素の判定結果
{
"inputGranularity": "PREMISE",
"validationGranularity": "PREMISE",
"geocodeGranularity": "PREMISE"
}
ここで、address_complete
は false と評価され、アドレス コンポーネントを分析すると、予期しないフラグが見つかります。
{
"componentName": {
"text": "Gloucestershire",
"languageCode": "en"
},
"componentType": "administrative_area_level_2",
"confirmationLevel": "CONFIRMED",
"unexpected": true
}
入力された住所の郡はグロスターシャーですが、住所自体の形式が正しくありません。Address Validation API は、適切な形式かどうかの情報も評価します。