الانتقال

الانتقال من OpenStreetMap Nominatim

يحتل Nominatim موقعًا غير معتاد بين خيارات الترميز الجغرافي لأنه في آن واحد برنامج مفتوح المصدر يمكنك تشغيله بنفسك ونسخة عرض عامة يمكن لأي شخص الاستعلام منها مباشرة، وتحكمها سياسة استخدام تتوقع ترويسة User-Agent وصفية ووتيرة طلبات معقولة بدلًا من مفتاح API رسمي. وتتضمن استجابة JSON الخاصة به نص display_name، وزوج lat وlon كنصوص وليس كأرقام، وكائن address يتبع اصطلاحات الوسوم لدى OpenStreetMap مثل road وsuburb وpostcode.

تميل الفرق إلى الاصطدام بحاجز مع النسخة العامة بمجرد أن تتجاوز حركة مرورها ما يُفترض أن يستوعبه مورد مجتمعي مشترك، والاستضافة الذاتية لبرنامج Nominatim خيار حقيقي لكنه ثقيل: فهي تتطلب تنزيل واستيراد مستخرج بيانات كبير من OpenStreetMap للكوكب كله أو لمنطقة، والحفاظ على تحديث هذه البيانات، وتشغيل البنية التحتية للخادم بنفسك إلى أجل غير مسمى. وهذه المقايضة، أي عمل البنية التحتية والصيانة مقابل التحكم، تستحق الصراحة قبل الالتزام بأي من المسارين.

يعيد المضيف المتوافق مع Nominatim من My Geocode إنتاج بنية حقول display_name وlat وlon والعنوان بدقة، ويبقى نص حقوق النشر والشروط والخصوصية المحتوى الوحيد الذي يختلف عن مخرجات Nominatim نفسه. والتفاصيل المرجعية متاحة في /compatibility/nominatim/. وينبغي أن يحلل الكود المكتوب للنسخة العامة من Nominatim، بما في ذلك حقول الإحداثيات النصية فيه، الاستجابات القادمة من المضيف المتوافق دون تغييرات.

ما الذي يتغير فعلًا في هذا الترحيل تحديدًا:

  • لا مزيد من اشتراط ترويسة User-Agent المرتبطة بسياسة استخدام مشتركة؛ بل تستخدم المصادقة مفتاحًا يُرسَل في ترويسة X-API-Key، أو ترويسة Authorization: Bearer، أو عبر مصادقة HTTP Basic، أو كمعامل في الاستعلام
  • حصة يومية متوقعة بدلًا من حد معدل طلبات غير محدد لمورد مشترك: 2,500 طلب مجاني يوميًا دون مفتاح، و2,500 طلب مجاني آخر لكل مفتاح يوميًا يُحتسب لكل شبكة
  • لا بنية تحتية لتشغيلها ولا مستخرج بيانات OpenStreetMap لصيانته، لأن الخدمة المستضافة تتولى ذلك

بعد تجاوز الحصة المجانية، يكون التسعير رصيدًا مسبق الدفع بسعر 0.0001 € لكل طلب أو مفتاح Unlimited بسعر 50 € شهريًا، وكل نقطة نهاية، بما فيها هذا المضيف المتوافق، مسعّرة مثل أي نقطة نهاية أخرى على المنصة.

بالنسبة للفرق التي قدّرت تحديدًا أساس Nominatim في البيانات الجغرافية المفتوحة، من المفيد معرفة أن تسمية الحقول المبنية على اصطلاحات OpenStreetMap، مثل suburb وpostcode بدلًا من مصطلحات أكثر عمومية، تنتقل في بنية هذا المضيف المتوافق، لذا ينبغي أن تظل مفردات العناوين التي يتوقعها كودك منطقية على الجانب الآخر من الترحيل.