تتبع مشكلات البحث عن العناوين
العثور على العنوان في المدينة الخطأ
في بعض الحالات، قد يُرجع البحث عن عنوان في OsmAnd نتائج لمدينة مختلفة عما هو متوقع. تنشأ هذه المشكلات بسبب كيفية تعريف حدود المدينة ومعالجتها في OpenStreetMap (OSM). إذا بحث المستخدم عن اسم شارع أو شارع برقم منزل دون تحديد مدينة، فقد تُرجع خوارزمية البحث بالنص الكامل تطابقًا من مدينة أخرى.
المشكلات ذات الصلة
تم الإبلاغ عن ح الات تعيين مدينة غير صحيحة في مشكلات GitHub التالية: 10679، 10677، 10699، 10921.
كيف يحدد OsmAnd حدود المدينة
يحدد OsmAnd حدود المدينة باستخدام علاقتها الإدارية في OpenStreetMap. لكي يُعتبر الحد صالحًا، يجب أن يفي بالمعايير التالية:
-
يجب أن تتضمن علاقة الحد العلامات:
- boundary = administrative أو postal_code
- place = [city, town, village, hamlet, etc.]
-
يجب أن تحتوي علاقة الحد على عضو علاقة:
- label
- admin_centre أو admin_center
-
يجب أن يتطابق اسم علاقة الحد تمامًا مع اسم عقدة المكان.
-
إذا لم يتم استيفاء هذه الشروط، فلن يتم التعرف على علاقة الحد كحد مدينة.
-
من بين الحدود المتداخلة، يختار OsmAnd الحد الأكبر.
-
تحدد طرق العلاقة الحد. يدعم OsmAnd كل من الطرق الداخلية والخارجية.
مطابقة الاسم الدقيقة
للمعالجة الدقيقة للعنوان، يجب أن تتطابق أسماء الشوارع تمامًا، بما في ذلك:
- الاختلافات في علامات التشكيل (على سبيل المثال، Rue André Chenier مقابل Rue André Chénier).
- الاختلافات في البادئات والاختصارات.
إذا حدث عدم تطابق، فقد تنشأ إحدى المشكلات التالية:
- يتم تعيين المنزل إلى الشارع الخطأ.
- يظهر نفس الشارع عدة مرات في حدود مدينة مختلفة.
انظر مشكلة GitHub 10036 للحصول على مثال.