قاعدة بيانات المناطق الزمنية (tz database): الدليل الشامل

قاعدة بيانات tzالمناطق الزمنيةتوقيت UTCالتوقيت الصيفيIANAبرمجةأنظمة التشغيل

قاعدة بيانات المناطق الزمنية (tz database)

تعد قاعدة بيانات المناطق الزمنية، المعروفة أيضاً باسم tzdata أو قاعدة بيانات zoneinfo أو قاعدة بيانات المناطق الزمنية التابعة لـ IANA، تجميعاً تعاونياً للمعلومات المتعلقة بالمناطق الزمنية في العالم وقواعد تطبيق التوقيت الصيفي. صُممت هذه القاعدة بشكل أساسي للاستخدام في البرامج الحاسوبية وأنظمة التشغيل لضمان دقة التوقيت عالمياً.

تمثيل لقاعدة بيانات المناطق الزمنية
توضيح لهيكل وتنظيم بيانات المناطق الزمنية عالمياً

تاريخ وإدارة القاعدة

منذ عام 2005، يتولى بول إيغرت مسؤولية تحرير وصيانة قاعدة البيانات هذه، بدعم تنظيمي من مؤسسة ICANN. وتُعرف القاعدة أحياناً باسم قاعدة بيانات أولسون نسبةً إلى المساهم المؤسس آرثر ديفيد أولسون. تهدف القاعدة إلى تسجيل جميع المناطق الزمنية التاريخية والتغييرات المدنية التي حدثت منذ عام 1970 (حقبة زمن يونكس - Unix epoch)، كما تقوم بتسجيل الثواني الكبيسة.

هيكل البيانات في tz database

تعريف المنطقة الزمنية

في سياق هذه القاعدة، تُعرف المنطقة الزمنية بأنها أي منطقة وطنية اتفقت فيها الساعات المحلية منذ عام 1970. يركز هذا التعريف على المناطق الجغرافية التي حافظت على اتساق في الساعات المحلية، وهو ما يختلف عن مجرد إزاحة زمنية محددة عن التوقيت العالمي المنسق (UTC). لذا، قد تستخدم المنطقة الزمنية الواحدة عدة إزاحات عن UTC، مثل الإزاحة للتوقيت القياسي والإزاحة للتوقيت الصيفي.

تنسيقات الملفات

تُنشر قاعدة البيانات كمجموعة من الملفات النصية التي تسرد القواعد وانتقالات المناطق بتنسيق قابل للقراءة من قبل البشر. ولأغراض الاستخدام البرمجي، يتم تجميع هذه الملفات النصية إلى ملفات ثنائية (binary) مستقلة عن المنصة، بحيث يكون هناك ملف واحد لكل منطقة زمنية. يتضمن الكود المصدري المرجعي مترجماً يسمى zic (مترجم معلومات المنطقة)، بالإضافة إلى أكواد لقراءة هذه الملفات واستخدامها في واجهات برمجة التطبيقات القياسية مثل localtime() و mktime().

تسمية المناطق الزمنية

تعتمد القاعدة نظام تسمية موحد بصيغة "المنطقة/الموقع" (Area/Location)، مثل America/New_York أو Europe/Paris. تم تصميم هذا النظام ليكون دقيقاً ومستقراً، حيث يتم استخدام الأسماء الإنجليزية أو ما يعادلها، مع حذف علامات الترقيم واللواحق الشائعة، واستبدال المسافات بشرطة سفلية (_).

المنطقة (Area)

تمثل "المنطقة" اسم قارة، أو محيط، أو التصنيف الخاص Etc. تشمل المناطق: أفريقيا، أمريكا، القارة القطبية الجنوبية، القطب الشمالي، آسيا، الأطلسي، أستراليا، أوروبا، الهندي، والهادئ. يتم إدراج المحيطات لأن بعض الجزر يصعب ربطها بقارة معينة.

الموقع (Location)

يمثل "الموقع" اسم مكان محدد داخل المنطقة، وعادة ما يكون مدينة أو جزيرة صغيرة. لا تُستخدم أسماء الدول عادةً لأن الحدود السياسية تتغير بشكل متكرر، بينما تميل أسماء المدن الكبرى إلى أن تكون أكثر استقراراً وديمومة. وعادة ما يتم اختيار المدينة الأكثر سكانًا في المنطقة لتمثيل المنطقة الزمنية بأكملها.

قواعد التوقيت الصيفي (DST)

يتم تحديد قواعد التوقيت الصيفي في مجموعات قواعد مسماة. تحدد كل قاعدة السنة التي يبدأ فيها تطبيق القاعدة، والسنة التي تنتهي فيها، والشهر واليوم والوقت الذي تدخل فيه القاعدة حيز التنفيذ، ومقدار الوقت الذي يجب إضافته إلى الإزاحة عن UTC، والرمز المستخدم في اختصار المنطقة الزمنية (مثل "S" للتوقيت القياسي و "D" للتوقيت الصيفي).

أسئلة شائعة

ما هي قاعدة بيانات tz database؟

هي تجميع تعاوني للمعلومات حول المناطق الزمنية العالمية وقواعد التوقيت الصيفي، مصممة للاستخدام في أنظمة التشغيل والبرامج الحاسوبية.

لماذا لا تُستخدم أسماء الدول في تسمية المناطق الزمنية؟

لأن أسماء الدول وحدودها السياسية عرضة للتغيير المتكرر، بينما تعتبر أسماء المدن الكبرى أكثر استقراراً وديمومة.

من الذي يدير قاعدة بيانات المناطق الزمنية حالياً؟

يديرها بول إيغرت منذ عام 2005 بدعم تنظيمي من مؤسسة ICANN.