เอกสารนี้อธิบายสถานการณ์จริงจำนวนหนึ่งที่ API การตรวจสอบความถูกต้องของที่อยู่ให้สัญญาณตอบกลับสำหรับที่อยู่ที่รับประกันลักษณะการยืนยันจากระบบ โปรดดูภาพรวมของเวิร์กโฟลว์ในสร้างตรรกะการตรวจสอบสำหรับบริบท
ตัวอย่างทั่วไป: ยืนยัน
ตัวอย่างต่อไปนี้แสดงกรณีในเขตเมืองที่มีชื่อถนนคล้ายกัน สมมติว่าผู้ใช้ต้องการป้อนที่อยู่ของ Google Building D ในเคิร์กแลนด์ วอชิงตัน สหรัฐอเมริกา แต่แทนที่เคิร์กแลนด์จะเป็นเมือง พวกเขาเข้าสู่ ซีแอตเทิล โดยไม่ตั้งใจ
ป้อนที่อยู่แล้ว | ภูมิภาค |
---|---|
อาคาร 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
ซึ่งเป็นรายละเอียดที่ระบุไว้ในข้อมูล
คำตอบจะมีทั้งคอมโพเนนต์ที่ยังไม่ได้ยืนยันและแทนที่แล้ว
เพื่อให้เคล็ดลับที่รวมเรื่องนี้ไว้ในหมวดหมู่ confirm
การค้นหาคอมโพเนนต์ที่อยู่แสดงให้เห็นถึงข้อกังวลต่อไปนี้
{
"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 พบค่าใกล้เคียงของที่อยู่ที่ระบุไว้ในซีแอตเทิล และได้แทนที่รหัสไปรษณีย์ซึ่งเป็นองค์ประกอบในระดับที่สูงกว่าเพื่อแก้ไขเป็นที่อยู่ Seattle นี่อาจเป็นการแทนที่ที่ถูกต้องได้ แต่ทว่าควบคู่ไปกับข้อเท็จจริงที่ว่าส่วนประกอบต่างๆ ยังไม่ได้รับการยืนยัน คุณจึงควรตรวจสอบว่าผู้ใช้ต้องการป้อนที่อยู่ในซีแอตเทิล ไม่ใช่ที่อยู่อื่นๆ เช่น เคิร์กแลนด์
ตัวอย่างกรณีขอบ: ยืนยัน
ตัวอย่างต่อไปนี้แสดงประเภท Edge Case ต่อไปนี้
- การอนุมานเล็กๆ น้อยๆ ที่ได้รับการยืนยัน Address Validation API จะระบุประเทศ รหัสไปรษณีย์ หรือรัฐ แต่ข้อมูลทุกอย่างที่มีการระบุและยืนยันแล้ว การใช้ทั้งระดับรายละเอียดและระดับการยืนยันร่วมกันทำให้การอนุมานเล็กๆ น้อยๆ ไม่จำเป็นต้องยืนยัน
- ยังไม่ได้ยืนยันคอมโพเนนต์ที่อยู่ที่ไม่คาดคิด ส่วนที่อยู่ที่ยังไม่ได้รับการยืนยันจะเพิ่มเข้าไปในระดับความเสี่ยงของที่อยู่ ซึ่งน่าจะได้รับการยืนยัน
- องค์ประกอบที่อยู่ที่ไม่คาดคิดซึ่งได้รับการยืนยันแล้ว ไม่จำเป็นต้องมีคอมโพเนนต์นี้สำหรับที่อยู่ที่ถูกต้อง และ Address Validation API จะนำคอมโพเนนต์ออกจากเอาต์พุต ปัญหาเกี่ยวกับการจัดรูปแบบมักไม่ ได้รับการยืนยัน
การอนุมานเล็กน้อยที่ ARE ได้ยืนยัน
เมื่อรวมกับข้อมูลที่ยืนยันแล้วในระดับที่ละเอียดกว่า API จะยังคงทำการอนุมานที่ถูกต้องได้หากอินพุตไม่มีเพียงองค์ประกอบเดียวในประเภทต่อไปนี้
- เมือง
- รัฐ
- รหัสไปรษณีย์
- ประเทศ
ตัวอย่างเช่น ลูกค้าให้ที่อยู่ที่ถูกต้องสำหรับร้านอาหารแมคโดนัลด์ในสปริงฟิลด์ รัฐแมสซาชูเซตส์ แต่ลืมป้อนเมืองและระบุรหัสไปรษณีย์โดยไม่มีส่วนขยาย 4 หลัก
ป้อนที่อยู่แล้ว | ภูมิภาค |
---|---|
1402 ถนนพหลโยธิน กรุงเทพฯ 10400 | สหรัฐอเมริกา |
คำตัดสินเกี่ยวกับเมืองที่หายไป
{
"inputGranularity": "PREMISE",
"validationGranularity": "PREMISE",
"geocodeGranularity": "PREMISE",
"addressComplete": true,
"hasInferredComponents": true
}
ในกรณีที่ API การตรวจสอบที่อยู่อนุมานคอมโพเนนต์ระดับสูงกว่าเพื่อสร้างที่อยู่ที่นำส่งได้ คุณจะมีความมั่นใจในระดับที่สูงขึ้นว่าข้อมูลจากระบบนั้นถูกต้อง ทั้งนี้เนื่องจากองค์ประกอบที่อนุมานซึ่งแสดงถึงพื้นที่ทางภูมิศาสตร์กว้างจะจับคู่กับองค์ประกอบที่อยู่ที่ได้รับการยืนยันซึ่งมีรายละเอียดมากกว่า แม้แต่ในประเทศที่มีชื่อเมืองซ้ำกัน เช่น สปริงฟิลด์ ในสหรัฐอเมริกา ส่วนประกอบอื่นๆ ที่รวมกันแล้วสามารถสร้างที่อยู่ที่ไม่ซ้ำกันได้
จากตัวอย่างข้างต้น การสแกนคอมโพเนนต์ที่อยู่ทั้งหมดจะแสดงให้เห็นว่าคอมโพเนนต์ทั้งหมดได้รับการยืนยัน ซึ่งหมายความว่าคอมโพเนนต์นั้นๆ ตรงกับข้อมูลที่จัดเก็บโดย 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
}
องค์ประกอบที่อยู่ที่ไม่คาดคิดที่มีการยืนยัน IS
ตัวอย่างนี้แสดงการรวมประเทศของสหราชอาณาจักรในที่อยู่ที่ระบุ ซึ่งเป็นแนวทางปฏิบัติทั่วไป อย่างไรก็ตาม หน่วยงานด้านการไปรษณีย์ในสหราชอาณาจักรไม่ได้กำหนดให้ปฏิบัติตามข้อกำหนดนี้ และเราไม่ได้ปฏิบัติตามข้อกำหนดดังกล่าว โปรดดู postoffice.co.uk และวิธีจัดการกับไปรษณีย์ในสหราชอาณาจักรและระหว่างประเทศ
ดังนั้น เมื่อลูกค้าระบุข้อมูลเคาน์ตีในที่อยู่ในสหราชอาณาจักร บริการจะประเมินว่าเป็นข้อมูลที่ไม่คาดคิด
ป้อนที่อยู่แล้ว | ภูมิภาค |
---|---|
33 ดันนาลีย์สตรีท เชลเทนแฮม กลอสเตอร์เชอร์ GL50 4AP | สหราชอาณาจักร |
คำตัดสินสำหรับคอมโพเนนต์ที่อยู่ที่ไม่คาดคิดซึ่งได้รับการยืนยัน IS แล้ว
{
"inputGranularity": "PREMISE",
"validationGranularity": "PREMISE",
"geocodeGranularity": "PREMISE"
}
ที่นี่ address_complete
จะประเมินค่าเป็นเท็จ และการวิเคราะห์คอมโพเนนต์ที่อยู่จะแสดงค่าสถานะที่ไม่คาดคิด
{
"componentName": {
"text": "Gloucestershire",
"languageCode": "en"
},
"componentType": "administrative_area_level_2",
"confirmationLevel": "CONFIRMED",
"unexpected": true
}
แม้ว่ากลอสเตอร์เชอร์จะเป็นเคาน์ตีที่ถูกต้องสำหรับที่อยู่ที่ป้อน แต่ที่อยู่เองมีรูปแบบไม่ถูกต้อง อย่าลืมว่า API การตรวจสอบที่อยู่ก็ประเมิน ข้อมูลเพื่อการจัดรูปแบบที่เหมาะสมเช่นกัน