本文档介绍了一些真实场景,在这些场景中,Address Validation API 会提供响应信号,表明您的系统需要执行 修复行为。此处的示例仅供说明,并不详尽。如需了解相关背景信息,请参阅 构建验证逻辑 中的 工作流概览。
常见示例:修复
本部分介绍了 Address Validation API 提供响应信号(表明地址信息的质量较低)的常见示例。
缺少城市和邮政编码
此示例说明了仅包含街道地址但缺少城市或邮政编码的条目。
| 输入的地址 | 区域 |
|---|---|
| 21 45 40th street | USA |
缺少城市和邮政编码的判定
以下示例重点介绍了响应中的重要信号。
{
"inputGranularity": "PREMISE",
"validationGranularity": "OTHER",
"geocodeGranularity": "OTHER",
"hasUnconfirmedComponents": true
}
这些信号表明地址无法送达,因此您可以查询 addressComponents 以了解详情:
{
"componentName": {
"text": "21",
"languageCode": "en"
},
"componentType": "street_number",
"confirmationLevel": "UNCONFIRMED_BUT_PLAUSIBLE"
},
{
"componentName": {
"text": "45 40th street",
"languageCode": "en"
},
"componentType": "route",
"confirmationLevel": "UNCONFIRMED_BUT_PLAUSIBLE"
},
{
"componentName": {
"text": "United States",
"languageCode": "en"
},
"componentType": "country",
"confirmationLevel": "CONFIRMED"
}
Address Validation API 仅将国家/地区(美国)作为 CONFIRMED 返回。
它将所有其他地址组成部分作为
UNCONFIRMED_BUT_PLAUSIBLE 返回,并省略了一些重要数据,例如所在地和邮政编码。
缺少门牌号
此示例显示了缺少门牌号的情况。
| 输入的地址 | 区域 |
|---|---|
| Buckingham Palace Road, SW1W 9TQ London | 英国 |
缺少门牌号的判定
{
"inputGranularity": "PREMISE_PROXIMITY",
"validationGranularity": "ROUTE",
"geocodeGranularity": "ROUTE"
}
validationGranularity 为 ROUTE,这表示与街道匹配,但没有足够的信息来确定具体位置。此外,判定中缺少
addressComplete 属性,因此该属性为 false。进一步查询 address 对象会发现缺少组成部分类型:
"missingComponentTypes": [
"street_number"
]
极端情况示例:修复
在某些情况下,您是修复、确认还是接受地址取决于您的具体业务场景。以下示例说明了可能不严格属于修复类别的场景。
门牌号未确认
在此场景中,Address Validation API 无法确认提供的门牌号,但表明地址完整。
| 输入的地址 | 区域 |
|---|---|
| 84 Buckingham Palace Road, SW1W 9TQ, London | 英国 |
门牌号未确认的判定
以下示例重点介绍了重要信号。
{
"inputGranularity": "PREMISE",
"validationGranularity": "PREMISE_PROXIMITY",
"geocodeGranularity": "PREMISE_PROXIMITY",
"addressComplete" : true,
"hasUnconfirmedComponents": true
}
值得调查一下验证粒度仅为位置级近似值且包含未确认组成部分的情况。查询 addressComponents 属性会显示以下未确认的
componentType:
{
"componentName": {
"text": "84",
"languageCode": "en"
},
"componentType": "street_number",
"confirmationLevel": "UNCONFIRMED_BUT_PLAUSIBLE"
}
在此示例中,street_number 的 confirmation_level 设置为 UNCONFIRMED_BUT_PLAUSIBLE。未确认表示该服务无法在其数据集中匹配门牌号 84,而
貌似合理表示组成部分数据可能仍然有效。
缺少子位置
此场景描述的地址仅缺少子位置(例如公寓或部门编号)。否则,Address Validation API 可以完全验证该地址。与缺少任何地址组成部分的情况一样,addressComplete
为 false,因此在手动检查判定时不会显示该属性。
例如,假设客户输入了旧金山市评估员办公室的有效地址,但在输入中遗漏了房间号。
| 输入的地址 | 区域 |
|---|---|
| 1 Doctor Carlton B Goodlett Place, San Francisco, CA 94102 | USA |
缺少子位置的判定
在此示例中,判定不会显示 addressComplete 属性,因此该属性为 false。因此,您知道至少有一个地址元素是意外的、未解决的或缺失的。
{
"inputGranularity": "PREMISE",
"validationGranularity": "PREMISE",
"geocodeGranularity": "PREMISE",
"hasInferredComponents": true
}
address 查询会显示以下内容:
"missingComponentTypes": [
"subpremise"
]
进一步查询后,USPS 数据会提供 dpvConfirmation 代码 D,这也表示缺少子位置。