دورة حياة التصنيف

تمر التصنيفات والحقول والخيارات بحالات معيّنة طوال دورة حياتها. بالإضافة إلى ذلك، قد تتضمّن التصنيفات مراجعات مختلفة. يوضّح المخطّط البياني التالي مراحل نشاط التصنيف، بما في ذلك مراجعة الإصدارات:

مخطّط مراحل نشاط التصنيفات
الشكل 3. مراحل نشاط التصنيف
  1. إنشاء تصنيف (create()): يتم إنشاء التصنيف وتخزينه في قاعدة بيانات باسم revision_id=1. حالة التصنيف هي UNPUBLISHED_DRAFT. في هذه الحالة:
    • لا يمكن للمستخدمين الاطّلاع على التصنيف
    • لا يمكن للمستخدمين تطبيق التصنيف على عناصر Drive.
  2. (اختياري) تعديل تصنيف أو حقل أو خيار (delta()): يتم تخزين كل تعديل، حتى قبل نشره، في قاعدة بيانات، ويتم زيادة رقم مراجعة التصنيف.
  3. نشر تصنيف (publish()): تكون حالة التصنيف PUBLISHED ويمكن للمستخدمين تطبيق التصنيف. يؤدي نشر التصنيف إلى زيادة رقم تنقيحه.
  4. (اختياري) تعديل تصنيف أو حقل أو خيار (delta()): يتم تعديل التصنيف أو الحقل أو الخيار وتخزينه في قاعدة بيانات كتصنيف مسودة. تكون حالة التصنيف PUBLISHED مع hasUnpublishedChanges=true، ما يعني أنّ هناك تغييرات في المسودة، ولكنّها غير متاحة للمستخدمين. يؤدي كل تعديل إلى زيادة رقم مراجعة التصنيف.
  5. (اختياري) نشر تصنيف (publish()): إذا كان متاحًا، سيتم نشر أحدث مسودة. حالة التصنيف هي PUBLISHED ويمكن للمستخدمين تطبيق التصنيف. يؤدي نشر التصنيف إلى زيادة رقمه.
  6. إيقاف تصنيف (disable()): تكون حالة التصنيف DISABLED، مع أنّ المستخدمين يمكنهم تطبيق التصنيف من خلال واجهة برمجة التطبيقات. ومع ذلك، لا يظهر تصنيف تم إيقافه في واجهة المستخدم إلا إذا تم ضبطه على الظهور. يؤدي إيقاف التصنيف نهائيًا إلى زيادة رقم مراجعته.
  7. تفعيل تصنيف (enable()): يتم إرجاع التصنيف إلى الحالة PUBLISHED ويمكن للمستخدمين تطبيق التصنيف. يؤدي نشر التصنيف إلى زيادة رقم تنقيحه.
  8. حذف تصنيف (delete()): يكون التصنيف في الحالة DELETED ولا يمكن تطبيقه. تتم إزالة التصنيفات المحذوفة نهائيًا في النهاية.

من المهم التأكيد على أنّ كل تعديل على تصنيف يزيد من رقم مراجعته. وإذا سبق أن تم نشر التصنيف، يعني نشره مرة أخرى بعد n تعديلات أنّ رقم المراجعة المنشور هو رقم المراجعة + n + 1 عدد التعديلات المتتالية.