معايير البيانات القرآنية
معيار موحد بني من مشاريع تراكمية، يساعد المطورين على بناء بيانات قرآنية موثوقة والاستفادة من مصادر البيانات المختلفة
مرقوم (Marqoom) يجمع العمل الجاري على معايير البيانات القرآنية. تشرح هذه التوثيقات المعايير، والمشكلات التي تعالجها، وكيف يمكن للمشاريع تطبيقها والاستفادة منها.
الهدف هو تقليل القرارات التي يكررها المطور عند التعامل مع البيانات القرآنية. عندما تختلف التسميات وطرق الترقيم وصيغ البيانات بين المصادر، يضطر كل تطبيق إلى بناء الربط بينها. الاتفاق على قواعد مشتركة وتوثيقها بأمثلة واضحة يسهّلان استخدام البيانات بين المشاريع.
مشاريع تستخدم هذه المعايير

مُنجّم لسطح المكتب
أداة مكتبية لتزمين التلاوات القرآنية ومحاذاتها مع النص.

الكتاب
تطبيق للقراءة والحفظ والمراجعة.

Quran.ws
بيانات وأدوات مفتوحة لبناء تطبيقات القرآن.

MP3 Quran
مكتبة تلاوات قرآنية لمئات القراء، مع إذاعات وتحميل.
لماذا معيار مشترك؟
لنفترض أنك تبني تطبيقًا يشغّل التلاوة مع النص: تأخذ التلاوات من MP3 Quran، وتوقيت الآيات من مُنجّم. إذا سمّى كل مشروع بياناته بطريقته، فستكتب محوّلًا (adapter) لكل مشروع يترجم أسماءه إلى أسمائك. والمشكلة لا تقف عندك: كل مشروع آخر يكتب محوّلاته أيضًا، فيتكرر العمل نفسه في كل مكان، ويكبر مع كل مشروع جديد.
أما إذا اتفقنا على الأسماء، فيتعلمها كل مشروع مرة واحدة، ويقرأ بعدها بيانات الجميع.
كل خط في الشكل الأول محوّل يكتبه مشروعان ليفهم أحدهما بيانات الآخر. أضف مشروعًا وانظر كم يزيد كل شكل.
١٠ محوّلات
٥ محوّلات على الأكثر
والمحوّلات ليست أسوأ ما في الأمر. بعض الاختلافات لا تظهر خطأً، بل تعطيك بيانات خاطئة: رقم آية بلا نظام عد قد يشير إلى آية أخرى في مصدر آخر. هذا ما يتغير في سجل آية واحدة:
ayah.json+5 −4 {− "sura": 2,− "aya": 255,+ "surah_number": 2,+ "ayah_number": 255,
اسم واحد لكل مفهوم: sura وaya تهجئتان أخريان لـsurah وayah، وnumber للرقم الذي يذكره القارئ. الرقم المرجعي
+ "ayah_numbering_system": "kufi",رقم الآية وحده لا يكفي. سورة البقرة ٢٨٥ أو ٢٨٦ أو ٢٨٧ آية بحسب نظام العد. أعداد الآيات
− "rewaya": "Hafs",+ "riwayah": "hafs_an_asim",
احفظ الرمز من السجل، لا نص العرض. وHafs اسم راوٍ، أما الرواية فهي حفص عن عاصم. سجل القراءات
− "timing": { … }+ "ayah_timing": { … }
timing وحدها لا تقول: توقيت آية أم توقيت كلمة؟ والقاموس يفرّق بين ayah_timing وword_timing. توقيت الآية
}
مجالات العمل
يجمع المعيار بين نوع من المحتوى وقواعد وصفه وتبادله. وتتوسع التوثيقات انطلاقًا من المصطلحات المشتركة إلى معايير مترابطة تُبنى عليها:
المصطلحات
المفاهيم والتعريفات وقواعد التسمية التي تُبنى عليها المعايير الأخرى: ٧٣ قاعدة و١٨٠ مفهومًا.
البيانات النصية
كيفية تمثيل النص القرآني وبنيته.
البيانات الصوتية
وصف التلاوة، بما في ذلك القارئ والرواية وما يحتويه الملف الصوتي.
التقطيع والتزمين
ربط المقاطع الصوتية وتوقيت الآيات أو الكلمات بالنص، وتحديد وحدات الزمن.
مرقوم