هنگام استفاده از Address Validation API، می توانید درخواست کنید که یک پاسخ اعتبارسنجی آدرس تبدیل شده به انگلیسی را نیز بازگرداند. هنگامی که سیستم شما نیاز به ارائه اطلاعات آدرس با حروف لاتین انگلیسی در هنگام دریافت آدرسی با زبان غیر انگلیسی دارد، از این ویژگی استفاده کنید. به عنوان مثال:
- شرکت شما ممکن است درخواست های حمل و نقل از سراسر جهان را برآورده کند و از حروف انگلیسی و انگلیسی زبان لاتین برای استاندارد کردن همه آدرس ها استفاده کند.
- کسبوکار شما ممکن است محمولههایی را به کشوری که از زبانی متفاوت از زبان آدرس ارائه شده استفاده میکند، انجام دهد.
نحوه برگرداندن آدرس به زبان انگلیسی
برای درخواست اعتبارسنجی آدرس با اجزای معادل انگلیسی موجود، موارد زیر را به بدنه درخواست اعتبار سنجی اضافه کنید:
languageOptions: { returnEnglishLatinAddress: "true" }.
مثال زیر هنگام تأیید آدرس موزه پرادو، مؤلفههای مبتنی بر انگلیسی را درخواست میکند:
curl -X POST -d '{ "regionCode" : ["ES"], "addressLines": ["C. de Ruiz de Alarcón, 23, 28014 Madrid, Spain"], "languageOptions": {returnEnglishLatinAddress: true} }' \ -H 'Content-Type: application/json' \ -H 'X-Goog-Api-Key: API_KEY' \ 'https://addressvalidation.googleapis.com/v1:validateAddress'
پاسخ آدرس انگلیسی را در فیلد englishLatinAddress
برمی گرداند. برای جزئیات بیشتر به مثال تبدیل آدرس در زیر مراجعه کنید. هر جزء از آدرس زبان محلی بازگشتی به بهترین شکل ممکن به انگلیسی تبدیل می شود. آدرس تبدیل شده قابل استفاده مجدد به عنوان ورودی به API نیست.
فیلد englishLatinAddress
از همان پروتو Address استفاده میکند که فیلد address
از آن استفاده میکند، با استثنائات زیر:
- فیلد
ConfirmationLevel
وجود ندارد - فیلد
unconfirmedComponentTypes
وجود ندارد
تبدیل آدرس چگونه کار می کند
Address Validation API تبدیل انگلیسی را برای هر جزء از آدرس اعمال می کند. این بدان معنی است که administrative_area
، locality
و سایر اجزای آدرس به صورت جداگانه در نظر گرفته می شود. برای لیستی از اجزای آدرس، AddressComponent را در مستندات مرجع ببینید.
نمودار زیر نشان میدهد که تبدیل انگلیسی برای آدرس Calle Dueñas, 5, 41003 Sevilla, España چگونه خواهد بود.
برای هر مؤلفه ای که برای تبدیل انگلیسی ارزیابی می شود، این سرویس از فرآیند توضیح داده شده در بخش های زیر استفاده می کند.
در صورت امکان از انگلیسی کاملاً ترجمه شده استفاده می کند
برخی از اجزای آدرس ممکن است یک نسخه کاملاً ترجمه شده برای استفاده داشته باشند. به عنوان مثال، کشور اسپانیایی España
به Spain
ترجمه می شود. در این صورت، سرویس از نسخه انگلیسی استفاده می کند. این معمولاً برای اجزای آدرس بزرگتر مانند country
و administrative_area_level_1
صادق است.
اگر انگلیسی در دسترس نباشد از لاتین کردن زبان محلی استفاده می کند
لاتین کردن به این معنی است که زبان محلی با استفاده از رونویسی به خط لاتین تبدیل می شود.
- اگر زبان محلی آدرس از مجموعه نویسههای لاتین استفاده میکند و هیچ معادل انگلیسی برای جزء آدرس وجود ندارد، این سرویس نویسههایی را از زبان محلی جایگزین میکند که مبتنی بر انگلیسی نیستند . به عنوان مثال،
Calle Dueñas
تبدیل بهCalle Duenas
می شود، جایی که ñ با n جایگزین می شود. - اگر زبان محلی آدرس از مجموعه نویسههای مبتنی بر لاتین استفاده نمیکند، و هیچ معادل انگلیسی برای مؤلفه آدرس وجود ندارد، در صورت موجود بودن، سرویس از نسخه لاتینشده زبان محلی استفاده میکند. به عنوان مثال، یک تبدیل ژاپنی، رومیسازی ژاپنی را برمیگرداند. هر نویسه غیر انگلیسی و غیر لاتین با حروف لاتین مبتنی بر انگلیسی جایگزین می شود. به عنوان مثال: 3丁目 می شود 3-chome.
- توجه داشته باشید که ژاپنی هنوز برای پیش نمایش فعال نشده است
- اگر نسخه لاتین شده زبان در دسترس نباشد، اجزا به زبان محلی برگردانده می شوند.
حروف لاتین را جایگزین می کند که به زبان انگلیسی نیستند
هر نویسه لاتینی که به زبان انگلیسی نباشد با معادل نویسه انگلیسی خود جایگزین می شود. به عنوان مثال، هر یک از کاراکترهای زیر با کاراکتر "o" جایگزین می شود: ð، ò، ó، ô، õ، ö، ø، ō، ŏ، ő، ơ، ṍ، ṏ، ṑ، ṓ، ọ، ỏ، ố، ồ، ổ، ỗ، ộ، ớ، ờ، ở، ỡ، و ợ. به عنوان مثال:
Calle de Ruiz de Alarcón تبدیل به Calle de Ruiz de Alarcon می شود
مثال تبدیل آدرس
مثال زیر یک پاسخ اعتبارسنجی از یک درخواست برای Palacio de las Dueñas در اسپانیا را نشان میدهد که englishLatinAddress
به صورت پررنگ است. این درخواست از فیلد returnEnglishLatinAddress
در پارامتر languageOptions
در ورودی استفاده کرد.
"result": { "verdict": { "inputGranularity": "PREMISE", "validationGranularity": "PREMISE", "geocodeGranularity": "PREMISE", "addressComplete": true, "hasInferredComponents": true }, "address": { "formattedAddress": "Calle Dueñas, 5, 41003 Sevilla, España", "postalAddress": { "regionCode": "ES", "languageCode": "es", "postalCode": "41003", "administrativeArea": "Sevilla", "locality": "Sevilla", "addressLines": [ "C. Dueñas, 5" ] }, "addressComponents": [ { "componentName": { "text": "Calle Dueñas", "languageCode": "es" }, "componentType": "route", "confirmationLevel": "CONFIRMED" }, { "componentName": { "text": "5", "languageCode": "es" }, "componentType": "street_number", "confirmationLevel": "CONFIRMED" }, { "componentName": { "text": "41003" }, "componentType": "postal_code", "confirmationLevel": "CONFIRMED" }, { "componentName": { "text": "Sevilla", "languageCode": "es" }, "componentType": "locality", "confirmationLevel": "CONFIRMED" }, { "componentName": { "text": "España", "languageCode": "es" }, "componentType": "country", "confirmationLevel": "CONFIRMED" }, { "componentName": { "text": "Sevilla", "languageCode": "es" }, "componentType": "administrative_area_level_2", "confirmationLevel": "CONFIRMED", "inferred": true } ] }, "geocode": { "location": { "latitude": 37.394849, "longitude": -5.9893604 }, "plusCode": { "globalCode": "8C9P92V6+W7" }, "bounds": { "low": { "latitude": 37.3948098, "longitude": -5.9894249 }, "high": { "latitude": 37.3948882, "longitude": -5.9893025 } }, "featureSizeMeters": 7.174035, "placeId": "ChIJzRDYbgRsEg0RDDgHlF80UoI", "placeTypes": [ "premise" ] }, "metadata": { "business": true, "residential": false }, "englishLatinAddress": { "formattedAddress": "Calle Duenas, 5, 41003 Seville, Spain", "postalAddress": { "regionCode": "ES", "languageCode": "en", "postalCode": "41003", "administrativeArea": "Seville", "locality": "Seville", "addressLines": [ "C. Duenas, 5" ] }, "addressComponents": [ { "componentName": { "text": "Calle Duenas", "languageCode": "es" }, "componentType": "route", }, { "componentName": { "text": "5", "languageCode": "es" }, "componentType": "street_number", }, { "componentName": { "text": "41003" }, "componentType": "postal_code", }, { "componentName": { "text": "Seville", "languageCode": "en" }, "componentType": "locality", }, { "componentName": { "text": "Spain", "languageCode": "en" }, "componentType": "country", }, { "componentName": { "text": "Seville", "languageCode": "en" }, "componentType": "administrative_area_level_2", "inferred": true } ] } }, "responseId": "e874d263-7d0d-413f-9213-119a784765ed"
گزینه های پشتیبانی برای نسخه های پیش نمایش
اگرچه Google از نسخههای پیشنمایش ، ویژگیها یا عملکرد سرویسها پشتیبانی نمیکند، ما درخواستها را در این مراحل توسعه به صورت موردی بررسی میکنیم.
از این توصیهها برای نسخههای پیش از GA استفاده کنید:
ویژگیهای Pre-GA توسط Google Maps Platform SLA پوشش داده نمیشوند.
از مکانیزم های بازگشتی استفاده کنید، به خصوص اگر از ویژگی pre-GA در محیط تولید استفاده می کنید. برخی از نمونههای موقعیتهای بازگشتی عبارتند از: فراتر از سهمیه، کدهای پاسخ غیرمنتظره و تأخیر، یا پاسخهای غیرمنتظره در مقایسه با رفتار موجود.
میتوانید از ردیاب مشکل برای درخواست ویژگیهای جدید یا پیشنهاد تغییرات در ویژگیهای موجود استفاده کنید. حتما موارد زیر را در درخواست خود لحاظ کنید:
ویژگی یا رفتار خاصی را که میخواهید اضافه شود و همچنین دلایلی که فکر میکنید مهم است را شرح دهید.
در صورت امکان، جزئیات خاصی را در مورد مورد استفاده خود و فرصتهای جدیدی که این ویژگی به شما اجازه میدهد درج کنید.
برای این بازخورد یا هر سؤال دیگری در مورد ویژگیها، یک ایمیل به خط مستقیم اعتبارسنجی آدرس ارسال کنید: address-validation-hotline@google.com.